Commit 6ae967e3 authored by 何鹏程's avatar 何鹏程

完成修改

parent 7a7b5145
......@@ -16,6 +16,14 @@ export function addOrUpdateEmergencyExpert(params) {
})
}
export function auditTeamEmergencyExpert(params) {
return request({
url: '/api/team/expert/auditTeamEmergencyExpert',
method: 'POST',
data: params
})
}
export function queryInfoById(params) {
return request({
url: '/api/team/expert/queryInfoById',
......@@ -30,4 +38,4 @@ export function deleteTeamEmergencyExpert(params) {
method: 'POST',
data: params
})
}
\ No newline at end of file
}
......@@ -16,6 +16,14 @@ export function saveOrUpdateEmergencyGreenway(params) {
})
}
export function auditTeamEmergencyGreenway(params) {
return request({
url: '/api/team/greenWay/auditTeamEmergencyGreenway',
method: 'POST',
data: params
})
}
export function queryInfoById(params) {
return request({
url: '/api/team/greenWay/queryInfoById',
......
......@@ -16,6 +16,14 @@ export function addOrUpdateEmergencyMedical(params) {
})
}
export function auditTeamEmergencyMedical(params) {
return request({
url: '/api/team/medical/auditTeamEmergencyMedical',
method: 'POST',
data: params
})
}
export function queryInfoById(params) {
return request({
url: '/api/team/medical/queryInfoById',
......
......@@ -16,6 +16,14 @@ export function addOrUpdateEmergencyRescue(params) {
})
}
export function auditTeamEmergencyRescue(params) {
return request({
url: '/api/team/rescue/auditTeamEmergencyRescue',
method: 'POST',
data: params
})
}
export function queryInfoById(params) {
return request({
url: '/api/team/rescue/queryInfoById',
......
import request from '../util/ajax'
export function queryTeamUserPageList(params) {
......@@ -15,4 +14,28 @@ export function updateInsideRole(params) {
method: 'POST',
data: params
})
}
\ No newline at end of file
}
export function saveOrUpdateUserInfo(params) {
return request({
url: '/api/team/user/saveOrUpdateUserInfo',
method: 'POST',
data: params
})
}
export function deleteUserInfo(params) {
return request({
url: '/api/team/user/deleteUserInfo',
method: 'POST',
data: params
})
}
export function queryUserInfoById(params) {
return request({
url: '/api/team/user/queryUserInfoById',
method: 'POST',
data: params
})
}
......@@ -110,11 +110,13 @@
<el-button
type="primary"
size="small"
v-if="checkPermission()"
@click="exportFile()"
>导出</el-button>
<el-button
type="primary"
size="small"
v-if="!checkPermission()"
@click="showEmergencyCarDialog()"
>新增</el-button>
</div>
......
......@@ -127,7 +127,7 @@
<script>
import { tableDataMixin } from '../../common/js/mixin'
import { queryEmergencyHospitalList } from '@/api/common'
import { queryEmergencyExpertPageList, addOrUpdateEmergencyExpert, deleteTeamEmergencyExpert } from '@/api/expert'
import { queryEmergencyExpertPageList, auditTeamEmergencyExpert, deleteTeamEmergencyExpert } from '@/api/expert'
import SaveDialog from './components/saveDialog.vue'
export default {
name: 'expertPage',
......@@ -242,7 +242,7 @@ export default {
})
},
auditData(id, auditStatus) {
addOrUpdateEmergencyExpert({ id: id, auditStatus: auditStatus }).then(res => {
auditTeamEmergencyExpert({ id: id, auditStatus: auditStatus }).then(res => {
if (res.msg === 201) {
this.$message.success('操作成功!')
} else {
......
......@@ -138,7 +138,7 @@
<script>
import { tableDataMixin } from '../../common/js/mixin'
import { queryEmergencyHospitalList } from '@/api/common'
import { queryEmergencyGreenwayPageList, saveOrUpdateEmergencyGreenway, deleteEmergencyGreenway } from '@/api/greenWay'
import { queryEmergencyGreenwayPageList, saveOrUpdateEmergencyGreenway, deleteEmergencyGreenway, auditTeamEmergencyGreenway } from '@/api/greenWay'
import SaveDialog from './components/saveDialog.vue'
export default {
name: 'expertPage',
......@@ -253,7 +253,7 @@ export default {
})
},
auditData(id, auditStatus) {
saveOrUpdateEmergencyGreenway({ id: id, auditStatus: auditStatus }).then(res => {
auditTeamEmergencyGreenway({ id: id, auditStatus: auditStatus }).then(res => {
if (res.msg === 201) {
this.$message.success('操作成功!')
} else {
......
......@@ -136,7 +136,7 @@
<script>
import { tableDataMixin } from '../../common/js/mixin'
import { queryEmergencyHospitalList } from '@/api/common'
import { queryEmergencyMedicalPageList, addOrUpdateEmergencyMedical, deleteEmergencyMedical } from '@/api/medical'
import { queryEmergencyMedicalPageList, auditTeamEmergencyMedical, deleteEmergencyMedical } from '@/api/medical'
import SaveDialog from './components/saveDialog.vue'
export default {
name: 'expertPage',
......@@ -244,7 +244,7 @@ export default {
})
},
auditData(id, auditStatus) {
addOrUpdateEmergencyMedical({ id: id, auditStatus: auditStatus }).then(res => {
auditTeamEmergencyMedical({ id: id, auditStatus: auditStatus }).then(res => {
if (res.msg === 201) {
this.$message.success('操作成功!')
} else {
......
......@@ -126,7 +126,7 @@
<script>
import { tableDataMixin } from '../../common/js/mixin'
import { queryEmergencyHospitalList } from '@/api/common'
import { queryTeamRescuePageList, addOrUpdateEmergencyRescue, deleteEmergencyRescue } from '@/api/rescue'
import { queryTeamRescuePageList, auditTeamEmergencyRescue, deleteEmergencyRescue } from '@/api/rescue'
import SaveDialog from './components/saveDialog.vue'
export default {
name: 'expertPage',
......@@ -240,7 +240,7 @@ export default {
})
},
auditData(id, auditStatus) {
addOrUpdateEmergencyRescue({ id: id, auditStatus: auditStatus }).then(res => {
auditTeamEmergencyRescue({ id: id, auditStatus: auditStatus }).then(res => {
if (res.msg === 201) {
this.$message.success('操作成功!')
} else {
......
......@@ -82,14 +82,14 @@
<el-button
type="primary"
size="small"
v-if="checkPermission()"
@click="exportFile()"
>导出</el-button>
<el-button
<!-- <el-button
type="primary"
size="small"
@click="showSaveDialog()"
v-if="!checkPermission()"
>新增</el-button>
>新增</el-button> -->
</div>
<table-mixin
:pageSize="pageSize"
......
<template>
<el-dialog
:title="title"
:visible.sync="dialogVisible"
width="500px"
@closed="closedHandler"
:close-on-click-modal="false"
>
<el-form
ref="dataForm"
:model="dataForm"
size="small"
label-width="100px"
:rules="rules"
:disabled="formDisabled"
v-loading="loading"
>
<el-form-item
label="用户名"
prop="userName"
>
<el-input
placeholder="请输入用户名"
v-model="dataForm.userName"
/>
</el-form-item>
<el-form-item
label="申请账号"
prop="rigisterName"
>
<el-input
placeholder="请输入申请账号"
:disabled="type != 'add'"
v-model="dataForm.rigisterName"
/>
</el-form-item>
<el-form-item
label="手机号"
prop="cellphone"
>
<el-input
placeholder="请输入手机号"
v-model="dataForm.cellphone"
/>
</el-form-item>
<el-form-item
label="性别"
prop="sex"
>
<el-radio-group v-model="dataForm.sex">
<el-radio label="1"></el-radio>
<el-radio label="2"></el-radio>
</el-radio-group>
</el-form-item>
<el-form-item
label="证件类型"
prop="idType"
>
<el-select
v-model="dataForm.idType"
placeholder="请选择证件类型"
style="width: 100%"
>
<el-option
v-for="item in idTypeList"
:label="item.name"
:key="item.id"
:value="item.val"
/>
</el-select>
</el-form-item>
<el-form-item
label="证件号码"
prop="idNo"
>
<el-input
placeholder="请输入证件号码"
v-model="dataForm.idNo"
/>
</el-form-item>
<el-form-item
label="员工工号"
prop="jobNo"
>
<el-input
placeholder="请输入员工工号"
v-model="dataForm.jobNo"
/>
</el-form-item>
<el-form-item
label="邮件地址"
prop="email"
>
<el-input
placeholder="请输入邮件地址"
v-model="dataForm.email"
/>
</el-form-item>
<el-form-item
label="机构名称"
prop="hospitalCode"
>
<el-select
v-model="dataForm.hospitalCode"
placeholder="请选择机构名称"
style="width: 100%"
>
<el-option
v-for="item in hospitalList"
:label="item.hospitalName"
:key="item.id"
:value="item.hospitalCode"
/>
</el-select>
</el-form-item>
</el-form>
<span
slot="footer"
class="dialog-footer"
>
<el-button
size="small"
@click="dialogVisible = false"
>取 消</el-button>
<el-button
type="primary"
size="small"
:disabled="formDisabled"
@click="submitForm()"
>确 定</el-button>
</span>
</el-dialog>
</template>
<script>
import { queryUserInfoById, saveOrUpdateUserInfo } from '@/api/user'
import { queryEmergencyHospitalList } from '@/api/common'
import { getDic } from '@/util/dict'
import IdentityCodeValid from '@/util/checkIdent'
export default {
computed: {
title: function() {
let str = '管理员信息'
if (this.type === 'add') {
str += '填写'
} else if (this.type === 'update') {
str += '修改'
} else if (this.type === 'detail') {
str += '详情'
}
return str
}
},
data() {
const checkContactPhone = (rule, value, callback) => {
let reg = /^[1][3,4,5,7,8,9][0-9]{9}$/;
if (!reg.test(value)) {
callback(new Error("请输入正确格式的联系方式"))
} else {
callback()
}
};
const checkEmail = (rule, value, callback) => {
let reg = /^\w+@[a-zA-Z0-9]{2,10}(?:\.[a-z]{2,4}){1,3}$/
if (value && !reg.test(value)) {
callback(new Error("请输入正确格式的邮箱"))
} else {
callback()
}
};
const checkIdNo = (rule, value, callback) => {
if (this.dataForm.idType === '01' && !IdentityCodeValid(value.toUpperCase())) {
callback(new Error("请输入正确格式的身份证号"))
} else {
callback()
}
};
return {
dialogVisible: false,
loading: false,
formDisabled: false,
type: 'add',
dataForm: {
userName: '',
rigisterName: '',
cellphone: '',
sex: '',
idType: '',
idNo: '',
jobNo: '',
email: ''
},
idTypeList: [],
hospitalList: [],
rules: {
userName: [
{ required: true, message: '请输入用户名' },
],
rigisterName: [
{ required: true, message: '请输入申请账号' },
],
cellphone: [
{ required: true, message: '请输入手机号' },
{ validator: checkContactPhone }
],
email: [
{ validator: checkEmail }
],
sex: [
{ required: true, message: '请选择性别' },
],
idType: [
{ required: true, message: '请选择证件类型' },
],
idNo: [
{ required: true, message: '请输入证件号码' },
{ validator: checkIdNo }
],
hospitalCode: [
{ required: true, message: '请选择机构名称' },
],
}
}
},
mounted() {
//获取可选择的医院
queryEmergencyHospitalList().then(res => {
this.hospitalList = res.respData
})
getDic(['ID_type']).then(res => {
this.idTypeList = res.ID_type
})
},
methods: {
init(type, id) {
this.dialogVisible = true
this.loading = true
this.type = type
this.formDisabled = type === 'detail'
if (type === 'update' || type === 'detail') {
if (!id) {
this.$message.error('用户id不能为空')
return
}
queryUserInfoById({ userId: id }).then(res => {
if (res.msg === 201) {
this.dataForm = res.respData || {}
this.$nextTick(() => {
this.loading = false
this.$refs.dataForm.clearValidate()
})
} else {
this.$message.error(res.content);
}
})
} else {
this.dataForm = {}
this.$nextTick(() => {
this.loading = false
this.$refs.dataForm.clearValidate()
})
}
},
submitForm() {
this.$refs.dataForm.validate((valid) => {
if (valid) {
const params = {
...this.dataForm
}
const hospital = this.hospitalList.find(i => i.hospitalCode === this.dataForm.hospitalCode)
if (!hospital) {
this.$message.error('无效数据');
return
}
const { hospitalName } = hospital
params.hospitalName = hospitalName
saveOrUpdateUserInfo(params).then(res => {
if (res.msg === 201) {
this.dialogVisible = false
this.$message.success(this.type === 'add' ? '新增成功!' : '修改成功')
this.$emit('subsucc')
} else {
this.$message.error(res.content)
}
})
}
})
},
closedHandler() {
this.$refs.dataForm.resetFields()
}
}
}
</script>
<style>
</style>
\ No newline at end of file
......@@ -47,12 +47,12 @@
</el-select>
</el-form-item>
<el-form-item
prop="loginName"
prop="userName"
label="用户名"
>
<el-input
placeholder="请输入用户名"
v-model="searchForm.loginName"
v-model="searchForm.userName"
/>
</el-form-item>
<div class="btns">
......@@ -75,6 +75,13 @@
</div>
<div class="main-page-body">
<div class="mainContent">
<div class="bt">
<el-button
type="primary"
size="small"
@click="showSaveDialog()"
>新增</el-button>
</div>
<table-mixin
:pageSize="pageSize"
:pageNum="pageNum"
......@@ -118,6 +125,18 @@
min-width="200px"
>
<template slot-scope="scope">
<el-link
type="primary"
@click="showSaveDialog('detail',scope.row.userId)"
>查看详情</el-link>
<el-link
type="primary"
@click="showSaveDialog('update', scope.row.userId)"
>修改</el-link>
<el-link
type="primary"
@click="delHandler(scope.row.userId)"
>删除</el-link>
<el-link
type="primary"
@click="showAuthDialog(scope.row.userId, scope.row.roleId)"
......@@ -132,24 +151,30 @@
ref="authDialog"
@subsucc="search"
/>
<UserDialog
ref="userDialog"
@subsucc="search"
/>
</div>
</template>
<script>
import { tableDataMixin } from '../../common/js/mixin'
import { queryEmergencyHospitalList } from '@/api/common'
import { queryTeamUserPageList } from '@/api/user'
import { queryTeamUserPageList, deleteUserInfo } from '@/api/user'
import AuthDialog from './components/authDialog.vue'
import UserDialog from './components/userDialog.vue'
export default {
name: 'expertPage',
mixins: [tableDataMixin],
components: {
AuthDialog
AuthDialog,
UserDialog
},
data() {
return {
searchForm: {
roleId: '',
loginName: '',
userName: '',
hospitalCode: ''
},
hospitalList: [],
......@@ -157,14 +182,21 @@ export default {
loading: false,
head: [
{
name: '用户名',
name: '登录账号',
key: 'loginName',
sortable: false,
width: '200',
fixed: false
},
{
name: '真实姓名',
name: '申请账号',
key: 'rigisterName',
sortable: false,
width: '200',
fixed: false
},
{
name: '用户名',
key: 'userName',
sortable: false,
width: '100',
......@@ -178,32 +210,18 @@ export default {
fixed: false
},
{
name: '单位名称',
key: 'hospitalName',
name: '性别',
key: 'sexStr',
sortable: false,
width: '150',
fixed: false
},
{
name: '辖区',
key: 'areaName',
name: '机构名称',
key: 'hospitalName',
sortable: false,
width: '300',
fixed: false
},
{
name: '状态',
key: '',
sortable: false,
width: '100',
fixed: false
},
{
name: '注册时间',
key: '',
sortable: false,
width: '100',
fixed: false
}
],
body: [],
......@@ -237,6 +255,25 @@ export default {
},
showAuthDialog(userId, roleId) {
this.$refs.authDialog.init(userId, roleId)
},
delHandler(id) {
this.$confirm('此操作将永久删除该数据, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
deleteUserInfo({ userId: id }).then(res => {
if (res.msg === 201) {
this.$message.success('删除成功!')
} else {
this.$message.error(res.content)
}
this.search()
})
})
},
showSaveDialog(type = 'add', id = '') {
this.$refs.userDialog.init(type, id)
}
}
}
......
const validateIdent = {
aIdentityCode_City: { // 城市代码列表
11: "北京",
12: "天津",
13: "河北",
14: "山西",
15: "内蒙古",
21: "辽宁",
22: "吉林",
23: "黑龙江 ",
31: "上海",
32: "江苏",
33: "浙江",
34: "安徽",
35: "福建",
36: "江西",
37: "山东",
41: "河南",
42: "湖北 ",
43: "湖南",
44: "广东",
45: "广西",
46: "海南",
50: "重庆",
51: "四川",
52: "贵州",
53: "云南",
54: "西藏 ",
61: "陕西",
62: "甘肃",
63: "青海",
64: "宁夏",
65: "新疆",
71: "台湾",
81: "香港",
82: "澳门",
91: "国外 "
},
IdentityCode_isCardNo(card) { //检查号码是否符合规范,包括长度,类型
var reg = /(^\d{15}$)|(^\d{17}(\d|X)$)/; //身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X
if (reg.test(card) === false) {
return false;
}
return true;
},
IdentityCode_checkProvince(card) { //取身份证前两位,校验省份
var province = card.substr(0, 2);
if (validateIdent.aIdentityCode_City[province] == undefined) {
return false;
}
return true;
},
IdentityCode_checkBirthday(card) { //检查生日是否正确,15位以'19'年份来进行补齐。
var len = card.length;
//身份证15位时,次序为省(3位)市(3位)年(2位)月(2位)日(2位)校验位(3位),皆为数字
if (len == '15') {
var re_fifteen = /^(\d{6})(\d{2})(\d{2})(\d{2})(\d{3})$/;
var arr_data = card.match(re_fifteen); // 正则取号码内所含出年月日数据
var year = arr_data[2];
var month = arr_data[3];
var day = arr_data[4];
var birthday = new Date('19' + year + '/' + month + '/' + day);
return validateIdent.IdentityCode_verifyBirthday('19' + year, month, day, birthday);
}
//身份证18位时,次序为省(3位)市(3位)年(4位)月(2位)日(2位)校验位(4位),校验位末尾可能为X
if (len == '18') {
var re_eighteen = /^(\d{6})(\d{4})(\d{2})(\d{2})(\d{3})([0-9]|X)$/;
var arr_data = card.match(re_eighteen); // 正则取号码内所含出年月日数据
var year = arr_data[2];
var month = arr_data[3];
var day = arr_data[4];
var birthday = new Date(year + '/' + month + '/' + day);
return validateIdent.IdentityCode_verifyBirthday(year, month, day, birthday);
}
return false;
},
IdentityCode_verifyBirthday(year, month, day, birthday) { //校验日期 ,15位以'19'年份来进行补齐。
var now = new Date();
var now_year = now.getFullYear();
//年月日是否合理
if (birthday.getFullYear() == year &&
(birthday.getMonth() + 1) == month &&
birthday.getDate() == day) {
//判断年份的范围(3岁到150岁之间)
var time = now_year - year;
if (time >= 3 && time <= 150) {
return true;
}
return false;
}
return false;
},
IdentityCode_checkParity(card) { //校验位的检测
card = validateIdent.IdentityCode_changeFivteenToEighteen(card); // 15位转18位
var len = card.length;
if (len == '18') {
var arrInt = new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2);
var arrCh = new Array('1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2');
var cardTemp = 0,
i, valnum;
for (i = 0; i < 17; i++) {
cardTemp += card.substr(i, 1) * arrInt[i];
}
valnum = arrCh[cardTemp % 11];
if (valnum == card.substr(17, 1)) {
return true;
}
return false;
}
return false;
},
IdentityCode_changeFivteenToEighteen(card) { //15位转18位身份证号
if (card.length == '15') {
var arrInt = new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2);
var arrCh = new Array('1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2');
var cardTemp = 0,
i;
card = card.substr(0, 6) + '19' + card.substr(6, card.length - 6);
for (i = 0; i < 17; i++) {
cardTemp += card.substr(i, 1) * arrInt[i];
}
card += arrCh[cardTemp % 11];
return card;
}
return card;
},
IdentityCodeValid(card) { // 身份证号码检验主入口
let pass = true;
let sex = ''
//是否为空
if (pass && card === '')
pass = false;
//校验长度,类型
if (pass && validateIdent.IdentityCode_isCardNo(card) === false)
pass = false;
//检查省份
if (pass && validateIdent.IdentityCode_checkProvince(card) === false)
pass = false;
//校验生日
if (pass && validateIdent.IdentityCode_checkBirthday(card) === false)
pass = false;
//检验位的检测
if (pass && validateIdent.IdentityCode_checkParity(card) === false)
pass = false;
if (pass) {
var iCard = validateIdent.IdentityCode_changeFivteenToEighteen(card);
if (parseInt(iCard.charAt(16)) % 2 == 0) {
sex = "0"; // 女生
} else {
sex = "1"; // 男生
}
return true
} else {
return false
}
}
}
export default validateIdent.IdentityCodeValid //导出
......@@ -2,28 +2,106 @@
* 缓存数据字典
* 把数据字典缓存到
* */
import { queryDictionaryList } from '@/api/common'
import {
queryDictionaryList
} from '@/api/common'
// 超时时间15分钟
const timeOut = 1000 * 60 * 15
// const timeOut = 1000
// 静态字典
const dist = {
hospital_grade: [
{ name: '一级', val: 1, id: 1 },
{ name: '二级', val: 2, id: 2 },
{ name: '三级', val: 3, id: 3 },
{ name: '未分级', val: 4, id: 4 },
hospital_grade: [{
name: '一级',
val: 1,
id: 1
},
{
name: '二级',
val: 2,
id: 2
},
{
name: '三级',
val: 3,
id: 3
},
{
name: '未分级',
val: 4,
id: 4
},
],
hospital_class: [
{ name: '甲等', val: 1, id: 1 },
{ name: '已等', val: 2, id: 2 },
{ name: '丙等', val: 3, id: 3 },
{ name: '未评定', val: 4, id: 4 }
hospital_class: [{
name: '甲等',
val: 1,
id: 1
},
{
name: '已等',
val: 2,
id: 2
},
{
name: '丙等',
val: 3,
id: 3
},
{
name: '未评定',
val: 4,
id: 4
}
],
ID_type: [{
name: '居民身份证',
val: '01',
id: 1
},
{
name: '居民户口簿',
val: '02',
id: 2
},
{
name: '护照',
val: '03',
id: 3
},
{
name: '军官证',
val: '04',
id: 4
},
{
name: '驾驶证',
val: '05',
id: 5
},
{
name: '港澳居民来往内地通行证',
val: '06',
id: 6
},
{
name: '台湾居民来往内地通行证',
val: '07',
id: 7
},
{
name: '出生医学证明',
val: '08',
id: 8
},
{
name: '其他法定有效证件',
val: '09',
id: 9
}
]
}
export async function getDic(list){
export async function getDic(list) {
let data = {}
if (!Array.isArray(list) && list.length === 0) {
return data
......@@ -32,14 +110,16 @@ export async function getDic(list){
list.forEach(item => {
if (dist[item]) { // 是否静态
data[item] = dist[item]
} else if(getSS(item)) { // 是否还在缓存中
} else if (getSS(item)) { // 是否还在缓存中
data[item] = getSS(item)
}else{ // 发请求获取
} else { // 发请求获取
paramsList.push(item)
}
})
if (paramsList.length > 0) {
const res = await queryDictionaryList({ nameList: paramsList })
const res = await queryDictionaryList({
nameList: paramsList
})
if (res && res.respData) {
// 缓存字典
setSS(res.respData)
......@@ -48,12 +128,13 @@ export async function getDic(list){
}
return data
}
function getSS(item) {
const data = sessionStorage.getItem(item)
if (data) {
// 判断是否超时
const time = sessionStorage.getItem(item + '_time') || 0
if (parseInt(time) > new Date().getTime() - timeOut){
if (parseInt(time) > new Date().getTime() - timeOut) {
return JSON.parse(data)
} else {
// 清除超时缓存
......@@ -65,6 +146,7 @@ function getSS(item) {
return false
}
}
function setSS(obj) {
for (const key in obj) {
if (Object.hasOwnProperty.call(obj, key)) {
......@@ -73,4 +155,4 @@ function setSS(obj) {
sessionStorage.setItem(key + '_time', new Date().getTime())
}
}
}
\ No newline at end of file
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment