| | |
| | | <template> |
| | | <el-row class="securityGuard"> |
| | | <el-row :class="{securityGuard : isSecurity}"> |
| | | <el-col :span="0" style="display: none"> |
| | | <div class="box"> |
| | | <el-scrollbar> |
| | |
| | | @row-del="rowDel" |
| | | :row-style="rowStyle" |
| | | @row-save="rowSave" |
| | | @row-update="rowUpdate" |
| | | :before-open="beforeOpen" |
| | | :page.sync="page" |
| | | @search-change="searchChange" |
| | |
| | | return { |
| | | securityid: "", |
| | | excelBox1: false, |
| | | isSecurity: false, |
| | | isSecurity: true, |
| | | excelForm1: {}, |
| | | excelOption1: { |
| | | submitBtn: false, |
| | |
| | | ], |
| | | }, |
| | | |
| | | form: {}, |
| | | form: { |
| | | }, |
| | | search: {}, |
| | | roleBox: false, |
| | | excelBox: false, |
| | |
| | | { |
| | | label: "登录账号", |
| | | prop: "account", |
| | | editDisabled:true, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | |
| | | { |
| | | label: "密码", |
| | | prop: "password", |
| | | type:'password', |
| | | hide: true, |
| | | editDisplay: false, |
| | | viewDisplay: false, |
| | |
| | | { |
| | | label: "确认密码", |
| | | prop: "password2", |
| | | type:'password', |
| | | hide: true, |
| | | editDisplay: false, |
| | | viewDisplay: false, |
| | |
| | | { required: true, validator: validatePass2, trigger: "blur" }, |
| | | ], |
| | | }, |
| | | |
| | | ], |
| | | }, |
| | | { |
| | | label: "详细信息", |
| | | prop: "detailInfo", |
| | | labelWidth: "110", |
| | | icon: "el-icon-s-order", |
| | | column: [ |
| | | { |
| | | label: "姓名", |
| | | prop: "realName", |
| | |
| | | row: true, |
| | | prop: "myPicture", |
| | | }, |
| | | |
| | | // { |
| | | // label: "编号", |
| | | // prop: "code", |
| | | // }, |
| | | |
| | | { |
| | | label: "所属辖区", |
| | | prop: "jurisdiction", |
| | | // multiple: true, |
| | | type: "tree", |
| | | dicUrl: "/api/jurisdiction/lazy-tree?parentId=0", |
| | | props: { |
| | | label: "title", |
| | | value: "id", |
| | | }, |
| | | checkStrictly: true, |
| | | slot: true, |
| | | rules: [ |
| | | { |
| | | required: false, |
| | | message: "请选择所属辖区", |
| | | trigger: "click", |
| | | }, |
| | | ], |
| | | }, |
| | | // { |
| | | // label: "所属角色", |
| | | // prop: "roleId", |
| | | // multiple: true, |
| | | // type: "tree", |
| | | // dicData: [], |
| | | // props: { |
| | | // label: "title", |
| | | // }, |
| | | // checkStrictly: true, |
| | | // slot: true, |
| | | // rules: [ |
| | | // { |
| | | // required: true, |
| | | // message: "请选择所属角色", |
| | | // trigger: "click", |
| | | // }, |
| | | // ], |
| | | // }, |
| | | // { |
| | | // label: "所属岗位", |
| | | // prop: "postId", |
| | | // type: "tree", |
| | | // multiple: true, |
| | | // dicData: [], |
| | | // props: { |
| | | // label: "postName", |
| | | // value: "id", |
| | | // }, |
| | | // rules: [ |
| | | // { |
| | | // required: false, |
| | | // message: "请选择所属岗位", |
| | | // trigger: "click", |
| | | // }, |
| | | // ], |
| | | // }, |
| | | { |
| | | label: "是否持证", |
| | | prop: "hold", |
| | |
| | | hide: true, |
| | | }, |
| | | { |
| | | label: "身份证号", |
| | | prop: "cardid", |
| | | hide: true, |
| | | overHidden: true, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请输入身份证号", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | }, |
| | | { |
| | | label: "手机号码", |
| | | prop: "phone", |
| | | overHidden: true, |
| | |
| | | { |
| | | label: "电子邮箱", |
| | | prop: "email", |
| | | }, |
| | | { |
| | | label: "身份证号", |
| | | prop: "cardid", |
| | | hide: true, |
| | | overHidden: true, |
| | | rules: [ |
| | | { |
| | | required: true, |
| | | message: "请输入身份证号", |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | }, |
| | | { |
| | | label: "籍贯", |
| | |
| | | prop: "registered", |
| | | }, |
| | | { |
| | | label: "所属辖区", |
| | | prop: "jurisdiction", |
| | | // multiple: true, |
| | | type: "tree", |
| | | dicUrl: "/api/jurisdiction/lazy-tree?parentId=0", |
| | | props: { |
| | | label: "title", |
| | | value: "id", |
| | | }, |
| | | checkStrictly: true, |
| | | slot: true, |
| | | rules: [ |
| | | { |
| | | required: false, |
| | | message: "请选择所属辖区", |
| | | trigger: "click", |
| | | }, |
| | | ], |
| | | }, |
| | | { |
| | | label: "入职时间", |
| | | prop: "rtime", |
| | | type: "date", |
| | |
| | | // }, |
| | | ], |
| | | }, |
| | | { |
| | | label: "生日", |
| | | type: "date", |
| | | prop: "birthday", |
| | | format: "yyyy-MM-dd", |
| | | valueFormat: "yyyy-MM-dd", |
| | | }, |
| | | ], |
| | | }, |
| | | { |
| | | label: "从业信息", |
| | | prop: "detailInfo", |
| | | icon: "el-icon-s-order", |
| | | column: [ |
| | | { |
| | | prop: "UserPractitionersInfo", |
| | | type: "dynamic", |
| | | border: false, |
| | | span: 24, |
| | | children: { |
| | | align: "left", |
| | | headerAlign: "center", |
| | | type: "form", |
| | | rowAdd: (done) => { |
| | | console.log(done, 111); |
| | | done({ |
| | | input: "默认值", |
| | | }); |
| | | }, |
| | | rowDel: (row, done) => { |
| | | console.log(row, 222); |
| | | done(); |
| | | }, |
| | | column: [ |
| | | { |
| | | width: 200, |
| | | label: "单位名称", |
| | | prop: "companyname", |
| | | formslot: true, |
| | | }, |
| | | { |
| | | width: 200, |
| | | label: "部门", |
| | | prop: "department", |
| | | formslot: true, |
| | | }, |
| | | { |
| | | width: 200, |
| | | label: "岗位", |
| | | prop: "post", |
| | | formslot: true, |
| | | }, |
| | | { |
| | | width: 200, |
| | | label: "岗位职责", |
| | | prop: "responsibilities", |
| | | formslot: true, |
| | | }, |
| | | { |
| | | width: 200, |
| | | label: "入职时间", |
| | | type: "date", |
| | | format: "yyyy-MM-dd", |
| | | valueFormat: "yyyy-MM-dd", |
| | | prop: "entryTime", |
| | | formslot: true, |
| | | }, |
| | | { |
| | | width: 200, |
| | | label: "离职时间", |
| | | type: "date", |
| | | format: "yyyy-MM-dd", |
| | | valueFormat: "yyyy-MM-dd", |
| | | prop: "departureTime", |
| | | formslot: true, |
| | | }, |
| | | { |
| | | width: 200, |
| | | label: "离职原因", |
| | | prop: "leaving", |
| | | formslot: true, |
| | | }, |
| | | ], |
| | | }, |
| | | }, |
| | | // { |
| | | // label: "生日", |
| | | // type: "date", |
| | | // prop: "birthday", |
| | | // format: "yyyy-MM-dd", |
| | | // valueFormat: "yyyy-MM-dd", |
| | | // }, |
| | | ], |
| | | }, |
| | | ], |
| | |
| | | if (!website.tenantMode) { |
| | | this.initData(website.tenantId); |
| | | } |
| | | console.log(this.search,111); |
| | | this.search['status'] = 1; |
| | | }, |
| | | methods: { |
| | | handleImport1() { |
| | |
| | | if (row.postId) { |
| | | row.postId = row.postId.join(","); |
| | | } |
| | | const userPractitionersList = []; |
| | | var userPractitionersInfo = row.UserPractitionersInfo; |
| | | if (userPractitionersInfo.length > 0) { |
| | | userPractitionersInfo.forEach((item) => { |
| | | const info = { |
| | | companyname: item.companyname, |
| | | department: item.department, |
| | | departureTime: item.departureTime, |
| | | entryTime: item.entryTime, |
| | | name: row.realName, |
| | | leaving: item.leaving, |
| | | securityid: row.id, |
| | | post: item.post, |
| | | responsibilities: item.responsibilities, |
| | | }; |
| | | userPractitionersList.push(info); |
| | | }); |
| | | } |
| | | |
| | | const user = { |
| | | account: row.account, |
| | | address: row.address, |
| | |
| | | sex: row.sex, |
| | | }; |
| | | const userMap = { |
| | | user: user, |
| | | userPractitionersInfo: userPractitionersList, |
| | | user: user |
| | | }; |
| | | securitySave(userMap).then( |
| | | () => { |
| | | this.initFlag = false; |
| | | this.onLoad(this.page); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | this.initFlag = false; |
| | | this.onLoad(this.page); |
| | | done(); |
| | | }, |
| | | (error) => { |
| | |
| | | row.deptId = row.deptId; |
| | | row.roleId = row.roleId.join(","); |
| | | row.postId = row.postId.join(","); |
| | | const userPractitionersList = []; |
| | | var userPractitionersInfo = row.UserPractitionersInfo; |
| | | if (userPractitionersInfo.length > 0) { |
| | | userPractitionersInfo.forEach((item) => { |
| | | const info = { |
| | | companyname: item.companyname, |
| | | department: item.department, |
| | | departureTime: item.departureTime, |
| | | entryTime: item.entryTime, |
| | | name: row.realName, |
| | | leaving: item.leaving, |
| | | securityid: row.id, |
| | | post: item.post, |
| | | responsibilities: item.responsibilities, |
| | | }; |
| | | userPractitionersList.push(info); |
| | | }); |
| | | } |
| | | var IdCardNo = row.id; |
| | | //值替换,education 放在页面会卡死 |
| | | row.education = row.education1; |
| | | update(row).then( |
| | | () => { |
| | | const experience = { |
| | | securityid: IdCardNo, |
| | | userPractitionersInfo: userPractitionersList, |
| | | }; |
| | | //更新从业信息 |
| | | saveOrUpdateUserPractitionersInfo(experience).then(() => { |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | }); |
| | | update(row).then(() => { |
| | | this.initFlag = false; |
| | | this.onLoad(this.page); |
| | | this.$message({ |
| | | type: "success", |
| | | message: "操作成功!", |
| | | }); |
| | | done(); |
| | | }, |
| | | (error) => { |
| | |
| | | type: "warning", |
| | | }) |
| | | .then(() => { |
| | | row.status = "0"; |
| | | row.status = "2"; |
| | | return update(row); |
| | | }) |
| | | .then(() => { |
| | |
| | | this.onLoad(this.page, this.query); |
| | | }, |
| | | onLoad(page, params = {}) { |
| | | params = this.search; |
| | | var that = this; |
| | | //获取当前登录人员的角色信息 |
| | | var roleIds = this.userInfo.role_id.split(","); |
| | |
| | | //禁止编辑 |
| | | deptColumn.disabled = true; |
| | | deptColumn.value = that.userInfo.dept_id; |
| | | that.isSecurity = true; |
| | | that.isSecurity = false; |
| | | //如果是保安公司管理员 |
| | | params["deptId"] = that.userInfo.dept_id; |
| | | } else if (roleAlias == "公安管理员") { |