From d8cb402b82f93279531be6babbb89400a50a178d Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Fri, 05 Nov 2021 10:40:08 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.105:10010/r/zhba_enterprises
---
src/views/securityGuard/securityGuard.vue | 166 ++++++++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 144 insertions(+), 22 deletions(-)
diff --git a/src/views/securityGuard/securityGuard.vue b/src/views/securityGuard/securityGuard.vue
index 43a6590..b00c5e1 100644
--- a/src/views/securityGuard/securityGuard.vue
+++ b/src/views/securityGuard/securityGuard.vue
@@ -58,6 +58,16 @@
>个人照片批量上传
</el-button>
<el-button
+ type="primary"
+ size="small"
+ plain
+ v-if="permission.securityGuard_security_apply"
+ icon="el-icon-s-promotion"
+ @click="handleSecurityApply"
+ >制证申请
+ </el-button>
+
+ <el-button
type="danger"
style="display: none"
size="small"
@@ -284,7 +294,7 @@
</el-col>
</el-row>
</template>
-
+
<script>
import {
getUser,
@@ -299,6 +309,7 @@
getUserPractitionersInfo,
saveOrUpdateUserPractitionersInfo,
} from "@/api/system/user";
+import {securityApply} from '@/api/accreditationRecords/accreditationRecords'
import { getList } from "@/api/securityGuard/securityGuard";
import { getDeptLazyTree } from "@/api/system/dept";
import { getRoleTree, getRoleDetail } from "@/api/system/role";
@@ -337,26 +348,54 @@
// };
var date = new Date();
let year = date.getFullYear(),
- oldyear;
+ mouth = date.getMonth() + 1,
+ day = date.getDate(),
+ oldy,
+ oldm,
+ oldd,
+ ok = false;
const validatePassCardid = (rule, value, callback) => {
+ // console.log(oldy, oldm, oldd, year - oldy, mouth, day);
var test =
/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$|^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/;
if (!test.test(value)) {
callback(new Error("请输入正确身份证号码"));
} else {
//加入校验18岁到60岁的
- oldyear = +value.slice(6, 10);
- if (year - oldyear < 18 || year - oldyear > 60) {
+ oldy = +value.slice(6, 10);
+ oldm = +value.slice(10, 12);
+ oldd = +value.slice(12, 14);
+ ok =
+ year - oldy < 18 || year - oldy > 60
+ ? false
+ : year - oldy == 18
+ ? mouth < oldm
+ ? false
+ : mouth > oldm
+ ? true
+ : day < oldd
+ ? false
+ : true
+ : year - oldy == 60
+ ? mouth < oldm
+ ? true
+ : mouth > oldm
+ ? false
+ : day <= oldd
+ ? false
+ : true
+ : true;
+ if (ok) {
+ callback();
+ } else {
// callback(new Error("根据国家要求,需在18岁至60岁"));
callback(new Error("年龄不符"));
- } else {
- callback();
}
}
};
const validatePassPhone = (rule, value, callback) => {
- var test = /^(13[0-9]|14[0-9]|15[0-9]|17[0-9]|18[0-9])\d{8}$/g;
+ var test = /^(13[0-9]|14[0-9]|15[0-9]|17[0-9]|18[0-9]|19[0-9])\d{8}$/g;
if (!test.test(value)) {
callback(new Error("请输入正确手机号码"));
} else {
@@ -477,12 +516,20 @@
children: "children",
},
},
+ choiceList: [],
option: {
height: "auto",
calcHeight: 80,
- tip: false,
+ tip: true,
searchShow: true,
-
+ reserveSelection:true,
+ selectable: (row) => {
+ if (row.hold!=="1") {
+ return false;
+ } else {
+ return true;
+ }
+ },
indexWidth: 55,
searchMenuSpan: 6,
stripe: true,
@@ -695,6 +742,14 @@
prop: "securitynumber",
hide: true,
},
+ // {
+ // label: "发证日期",
+ // prop: "paperTime",
+ // hide: true,
+ // type: "date",
+ // format: "yyyy-MM-dd",
+ // valueFormat: "yyyy-MM-dd",
+ // },
{
label: "电子邮箱",
prop: "email",
@@ -734,11 +789,18 @@
},
{
label: "联系地址",
- prop: "address",
+ prop: "address"
},
{
- label: "户口所在地",
+ label: "住址",
prop: "registered",
+ rules: [
+ {
+ required: true,
+ message: "请输入住址",
+ trigger: "click",
+ },
+ ],
},
{
label: "所属辖区",
@@ -1065,6 +1127,42 @@
this.onLoad(this.page);
});
},
+ //制证申请
+ handleSecurityApply(){
+ if (this.choiceList.length === 0) {
+ this.$message.warning("请勾选至少一位持证保安员");
+ return;
+ }
+ this.$confirm("共选择制证申请人数"+this.choiceList.length+"人,确定申请制证?", {
+ confirmButtonText: "确定",
+ cancelButtonText: "取消",
+ type: "warning",
+ })
+ .then(() => {
+ let cho = this.choiceList;
+ console.log(this.choiceList,14521);
+ let str = "";
+ for (let k in cho) {
+ str += cho[k].id;
+ if (k != cho.length - 1) {
+ str += ",";
+ }
+ }
+ console.log(str,1132);
+ const data = {
+ ids:str,
+ createUser:this.userInfo.user_id
+ }
+ return securityApply(data);
+ })
+ .then(() => {
+ // this.$refs.crud.toggleSelection();
+ this.$message({
+ type: "success",
+ message: "操作成功!",
+ });
+ });
+ },
rowSave(row, done, loading) {
if (row.deptId) {
row.deptId = row.deptId;
@@ -1106,15 +1204,21 @@
sex: row.sex,
},
};
+
securitySave(userMap).then(
() => {
this.initFlag = false;
- this.onLoad(this.page);
- this.$message({
- type: "success",
- message: "操作成功!",
+ this.$alert("账号为身份证号码,密码为身份证后六位", "温馨提示", {
+ confirmButtonText: "确定",
+ callback: (action) => {
+ this.$message({
+ type: "success",
+ message: `操作成功`,
+ });
+ this.onLoad(this.page);
+ done();
+ },
});
- done();
},
(error) => {
window.console.log(error);
@@ -1224,11 +1328,17 @@
done();
},
selectionChange(list) {
- this.selectionList = list;
+ // this.selectionList = list;
+ this.choiceList = [];
+ for (let k in list) {
+ this.choiceList.push({
+ id: list[k].id,
+ });
+ }
},
selectionClear() {
- this.selectionList = [];
- this.$refs.crud.toggleSelection();
+ // this.selectionList = [];
+ // this.$refs.crud.toggleSelection();
},
handleDelete() {
if (this.selectionList.length === 0) {
@@ -1409,7 +1519,19 @@
ColumnDeptUpdate.dicUrl =
"/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697&jurisdiction=" +
that.userInfo.jurisdiction;
- } else {
+ } else if (roleAlias == "培训公司管理员") {
+ //如果是保安公司管理员
+ params["trainingUnitId"] = that.userInfo.dept_id;
+ var columnDept2 = that.findObject(that.option.column, "deptId");
+ columnDept2.dicUrl =
+ "/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697";
+ var ColumnDeptUpdate2 = that.findObject(
+ that.option.group,
+ "deptId"
+ );
+ ColumnDeptUpdate2.dicUrl =
+ "/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697";
+ }else {
var columnDept1 = that.findObject(that.option.column, "deptId");
columnDept1.dicUrl =
"/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697";
@@ -1517,7 +1639,7 @@
},
};
</script>
-
+
<style lang="scss" scoped>
.box {
height: 800px;
@@ -1535,4 +1657,4 @@
cursor: pointer;
}
}
-</style>
\ No newline at end of file
+</style>
--
Gitblit v1.9.3