From 2d50c51214f0ced8c992a415c72ea33b519fff59 Mon Sep 17 00:00:00 2001
From: shuishen <1109946754@qq.com>
Date: Fri, 03 Sep 2021 15:53:05 +0800
Subject: [PATCH] Merge branch 'master' of http://s16s652780.51mypc.cn:49896/r/zhba_regulatory
---
src/views/securityGuardManagement/register.vue | 788 ++++++++++++++++++++++++++++++--------------------------
1 files changed, 424 insertions(+), 364 deletions(-)
diff --git a/src/views/securityGuardManagement/register.vue b/src/views/securityGuardManagement/register.vue
index f721e45..39c6757 100644
--- a/src/views/securityGuardManagement/register.vue
+++ b/src/views/securityGuardManagement/register.vue
@@ -1,8 +1,8 @@
/*
* @Author: Morpheus
* @Date: 2021-07-05 16:31:54
- * @Last Modified by: Morpheus
- * @Last Modified time: 2021-07-10 15:41:13
+ * @Last Modified by: liu
+ * @Last Modified time: 2021-08-31 11:26:49
* menu-name 保安员注册查询
*/
<template>
@@ -40,9 +40,9 @@
@current-change="currentChange"
@size-change="sizeChange"
@refresh-change="refreshChange"
- @row-click="handleRowClick"
@on-load="onLoad"
>
+ <!-- @row-click="handleRowClick" -->
<!-- <template slot-scope="{row}"
slot="tenantName">
<el-tag>{{row.tenantName}}</el-tag>
@@ -59,7 +59,22 @@
slot="userTypeName">
<el-tag>{{row.userTypeName}}</el-tag>
</template> -->
+ <template slot-scope="{ row }" slot="deptId">
+ <el-tag
+ class="rowClickSelf"
+ title="点击查看所属公司情况"
+ @click="rowClickSelf(row.deptId)"
+ >{{ row.$deptId }}</el-tag
+ >
+ </template>
<template slot-scope="{ type, size, row }" slot="menu">
+ <el-button
+ :size="size"
+ :type="type"
+ class="zhengJian-icon"
+ @click.stop="handleRowClick(row)"
+ >详情</el-button
+ >
<el-button
:size="size"
:type="type"
@@ -140,10 +155,62 @@
</el-dialog>
<div class="baoanzheng" v-if="dialogVisiblecertificates">
+ <!-- 保安员证 -->
+ <!-- <div class="baoanzheng" id="baoanzheng"> -->
<div class="baz-main">
<div class="baz-m-body" ref="baoanzheng">
<div class="bmb-heard">保安员证</div>
+ <div class="img">
+ <div v-if="!objVisiblecertificates.myPicture">暂无照片</div>
+ <img :src="objVisiblecertificates.myPicture" alt="" v-else />
+ </div>
+ <div class="imgs">
+ <div v-if="erweima == ''">暂无二维码</div>
+ <img :src="erweima" alt="" v-else />
+ <!-- <img src="/img/register/ewm.png" alt="" /> -->
+ <!-- logoSrc="/img/register/ewm.png" -->
+ <!-- <vue-qr :text="goToUrl" :size="200"></vue-qr> -->
+ </div>
+
<!-- <img src="/img/mock/card/card-1.jpg" alt="" /> -->
+ <div class="bmb-b">
+ 姓名:<span class="bmb-b-s">{{
+ objVisiblecertificates.realName
+ }}</span>
+ </div>
+ <div class="bmb-b">
+ 性别:<span class="bmb-b-s">{{ objVisiblecertificates.$sex }}</span>
+ </div>
+ <div class="bmb-b">
+ 编号:<span class="bmb-b-s">{{
+ objVisiblecertificates.securitynumber
+ }}</span>
+ </div>
+ <div class="bmb-b">
+ 发证机关:<span class="bmb-b-s">南昌市公安局</span>
+ </div>
+ <div class="bmb-b">
+ 发证日期:<span class="bmb-b-s">{{
+ objVisiblecertificates.paperTime.slice(0, 10)
+ }}</span>
+ </div>
+ <!-- <div class="bmb-b">
+ 发证机关:<span class="bmb-b-s" style="margin-right: 15px"
+ >南昌市公安局</span
+ >发证日期:<span class="bmb-b-s">{{
+ obj0.createTime.slice(0, 10)
+ }}</span>
+ </div> -->
+ </div>
+ <span slot="footer" class="dialog-footer no-print PrintBut">
+ <el-button type="primary" @click="Print">打 印</el-button>
+ <el-button type="primary" @click="closePrint"> 取 消 </el-button>
+ </span>
+ </div>
+ <!-- </div> -->
+ <!-- <div class="baz-main">
+ <div class="baz-m-body" ref="baoanzheng">
+ <div class="bmb-heard">保安员证</div>
<div class="bmb-b">
姓名:<span class="bmb-b-s">{{
objVisiblecertificates.realName
@@ -171,7 +238,7 @@
<el-button type="primary" @click="Print">打 印</el-button>
<el-button type="primary" @click="closePrint"> 取 消 </el-button>
</span>
- </div>
+ </div> -->
</div>
</div>
</template>
@@ -187,7 +254,7 @@
import { mapGetters } from "vuex";
import website from "@/config/website";
import { getToken } from "@/util/auth";
-import { addhonor } from "@/api/register/honor";
+import { addhonor, getER } from "@/api/register/honor";
export default {
data() {
@@ -210,6 +277,7 @@
return {
dialogVisiblecertificates: false,
objVisiblecertificates: {},
+ erweima: "", //二维码
objf: {},
optionf: {
@@ -321,388 +389,247 @@
tip: false,
searchShowBtn: false,
searchShow: true,
+ border: true,
searchMenuSpan: 4,
index: true,
viewBtn: false,
//dialogType: 'drawer',
dialogClickModal: false,
// 操作栏宽度
- menuWidth: 280,
+ menuWidth: 310,
column: [
{
- label: "保安姓名",
+ label: "姓名",
prop: "realName",
search: true,
- searchSpan: 4,
+ searchSpan: 3,
+ width: 60,
+ searchLabelWidth: 50,
display: false,
- width: 78,
+ },
+ {
+ label: "所属保安公司",
+ searchLabelWidth: "110",
+ // prop: "deptName",
+ prop: "deptId",
+ type: "tree",
+ dicUrl:
+ "/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697",
+ props: {
+ label: "title",
+ value: "id",
+ },
+ slot: true,
+ searchSpan: 5,
+ display: false,
+ overHidden: true,
+ search: true,
+ width: 198,
},
{
label: "性别",
prop: "sex",
+ width: 55,
type: "select",
- // search: true,
- searchSpan: 4,
- searchLabelWidth: 50,
dicData: [
+ {
+ label: "男",
+ value: 1,
+ },
{
label: "女",
value: 2,
},
{
- label: "男",
- value: 1,
+ label: "未知",
+ value: 3,
},
],
- slot: true,
display: false,
- width: 48,
},
{
- label: "保安公司",
- prop: "deptName",
- // width: 120,
+ label: "身份证号码",
+ prop: "cardid",
search: true,
+ searchLabelWidth: 90,
searchSpan: 4,
- overHidden: true,
- slot: true,
+ minWidth: 140,
+
+ display: false,
+ },
+
+ {
+ label: "籍贯",
+ prop: "nativeplace",
+ hide: true,
+ display: false,
+ },
+ {
+ label: "民族",
+ prop: "nation",
+ hide: true,
+ width: 55,
+ display: false,
+ },
+
+ {
+ label: "出生日期",
+ prop: "birthday",
+ type: "date",
+ format: "yyyy-MM-dd",
+ valueFormat: "yyyy-MM-dd",
+ display: false,
+ hide: true,
+ },
+ {
+ label: "年龄",
+ prop: "age",
+ width: 55,
+ display: false,
+ },
+ {
+ label: "学历",
+ prop: "education",
+ display: false,
+ hide: true,
+ width: 90,
+ dicUrl: "/api/blade-system/dict-biz/dictionary?code=educationType",
+ props: {
+ label: "dictValue",
+ value: "dictKey",
+ },
+ type: "select",
+ // hide: true,
+ rules: [
+ {
+ required: true,
+ message: "请选择学历",
+ trigger: "blur",
+ },
+ ],
+ },
+ {
+ label: "联系电话",
+ prop: "phone",
+ minWidth: 95,
+ display: false,
+ },
+ {
+ label: "健康状态",
+ prop: "healstats",
+ hide: true,
display: false,
},
{
label: "保安证编号",
prop: "securitynumber",
- display: false,
- searchSpan: 5,
- searchLabelWidth: 110,
- // search: true,
- },
- {
- label: "身份证号",
- prop: "cardid",
- slot: true,
- display: false,
- width: 145,
- },
- {
- label: "联系方式",
- prop: "phone",
- slot: true,
- display: false,
- width: 100,
- },
- {
- label: "联系地址",
- prop: "address",
- slot: true,
- display: false,
- hide: true,
+ search: true,
+ searchLabelWidth: 90,
+ minWidth: 105,
+ searchSpan: 4,
+ addDisplay: false,
+ editDisplay: false,
+ // hide: true,
},
{
label: "入职时间",
prop: "rtime",
- slot: true,
- display: false,
- width: 82,
- },
- {
- label: "所属角色",
- prop: "roleName",
- slot: true,
- display: false,
- width: 78,
hide: true,
+ display: false,
},
-
// {
- // label: "所属辖区",
- // prop: "jurisdiction",
- // // multiple: true,
- // minWidth: 60,
- // type: "tree",
- // dicUrl: "/api/jurisdiction/lazy-tree?parentId=0",
- // props: {
- // label: "title",
- // value: "id",
- // },
- // checkStrictly: true,
- // slot: true,
- // rules: [
- // {
- // required: true,
- // message: "请选择所属辖区",
- // trigger: "click",
- // },
- // ],
+ // label: "是否派遣",
+ // prop: "dispatch",
+ // // hide: true,
+ // type: 'select',
+ // // display: false,
+ // dicData: [
+ // {
+ // label: '未派遣',
+ // value: 1
+ // }, {
+ // label: '已派遣',
+ // value: 0
+ // }
+ // ]
// },
{
- label: "是否在职",
- prop: "status",
+ label: "是否派遣",
+ prop: "dispatch",
type: "select",
- search: true,
- searchSpan: 4,
dicData: [
{
- label: "否",
- value: 0,
+ label: "未派遣",
+ value: "1",
},
{
- label: "是",
- value: 1,
+ label: "已派遣",
+ value: "0",
},
],
- slot: true,
- display: false,
- width: 70,
},
{
label: "是否持证",
prop: "hold",
- type: "select",
- search: true,
- searchSpan: 4,
- dicData: [
- {
- label: "是",
- value: "0",
- },
- {
- label: "否",
- value: "1",
- },
- {
- label: "已吊销",
- value: "2",
- },
- ],
slot: true,
+ search: true,
+ searchSpan: 3,
+ width: 72,
display: false,
- width: 70,
- },
- ],
- group: [
- {
- label: "基础信息",
- prop: "baseInfo",
- icon: "el-icon-user-solid",
- column: [
+ dicUrl: "/api/blade-system/dict-biz/dictionary?code=equipage",
+ props: {
+ label: "dictValue",
+ value: "dictKey",
+ },
+ type: "select",
+ rules: [
{
- label: "所属机构",
- prop: "tenantId",
- type: "tree",
- dicUrl: "/api/blade-system/tenant/select",
- props: {
- label: "tenantName",
- value: "tenantId",
- },
- hide: !website.tenantMode,
- addDisplay: website.tenantMode,
- editDisplay: website.tenantMode,
- viewDisplay: website.tenantMode,
- rules: [
- {
- required: true,
- message: "请输入所属机构",
- trigger: "click",
- },
- ],
- span: 24,
- },
- {
- label: "登录账号",
- prop: "account",
- rules: [
- {
- required: true,
- message: "请输入登录账号",
- trigger: "blur",
- },
- ],
- },
- {
- label: "用户平台",
- type: "select",
- dicUrl: "/api/blade-system/dict/dictionary?code=user_type",
- props: {
- label: "dictValue",
- value: "dictKey",
- },
- dataType: "number",
- slot: true,
- prop: "userType",
- rules: [
- {
- required: true,
- message: "请选择用户平台",
- trigger: "blur",
- },
- ],
- },
- {
- label: "密码",
- prop: "password",
- hide: true,
- editDisplay: false,
- viewDisplay: false,
- rules: [
- { required: true, validator: validatePass, trigger: "blur" },
- ],
- },
- {
- label: "确认密码",
- prop: "password2",
- hide: true,
- editDisplay: false,
- viewDisplay: false,
- rules: [
- { required: true, validator: validatePass2, trigger: "blur" },
- ],
+ required: true,
+ message: "请选择",
+ trigger: "blur",
},
],
},
+
+ // {
+ // label: "入职时间",
+ // prop: "rtime",
+ // type: "datetime",
+ // format: "yyyy-MM-dd",
+ // valueFormat: "yyyy-MM-dd",
+ // searchRange: true,
+ // searchSpan: 6,
+ // hide: true,
+ // addDisplay: false,
+ // editDisplay: false,
+ // viewDisplay: false,
+ // search: true,
+ // rules: [{
+ // required: true,
+ // message: "请输入时间",
+ // trigger: "blur"
+ // }]
+ // },
{
- label: "详细信息",
- prop: "detailInfo",
- icon: "el-icon-s-order",
- column: [
+ label: "在职状态",
+ prop: "status",
+ type: "select",
+ dicUrl: "/api/blade-system/dict-biz/dictionary?code=workerState",
+ props: {
+ label: "dictValue",
+ value: "dictKey",
+ },
+ dataType: "number",
+ display: false,
+ hide: true,
+ searchSpan: 3,
+ width: 80,
+ search: false,
+ rules: [
{
- label: "用户昵称",
- prop: "name",
- hide: true,
- rules: [
- {
- required: true,
- message: "请输入用户昵称",
- trigger: "blur",
- },
- ],
- },
- {
- label: "用户姓名",
- prop: "realName",
- rules: [
- {
- required: true,
- message: "请输入用户姓名",
- trigger: "blur",
- },
- {
- min: 2,
- max: 5,
- message: "姓名长度在2到5个字符",
- },
- ],
- },
- {
- label: "手机号码",
- prop: "phone",
- overHidden: true,
- },
- {
- label: "电子邮箱",
- prop: "email",
- hide: true,
- overHidden: true,
- },
- {
- label: "用户性别",
- prop: "sex",
- type: "select",
- dicData: [
- {
- label: "男",
- value: 1,
- },
- {
- label: "女",
- value: 2,
- },
- {
- label: "未知",
- value: 3,
- },
- ],
- hide: true,
- },
- {
- label: "用户生日",
- type: "date",
- prop: "birthday",
- format: "yyyy-MM-dd hh:mm:ss",
- valueFormat: "yyyy-MM-dd hh:mm:ss",
- hide: true,
- },
- {
- label: "账号状态",
- prop: "statusName",
- hide: true,
- display: false,
- },
- ],
- },
- {
- label: "职责信息",
- prop: "dutyInfo",
- icon: "el-icon-s-custom",
- column: [
- {
- label: "用户编号",
- prop: "code",
- },
- {
- label: "所属角色",
- prop: "roleId",
- multiple: true,
- type: "tree",
- dicData: [],
- props: {
- label: "title",
- },
- checkStrictly: true,
- slot: true,
- rules: [
- {
- required: true,
- message: "请选择所属角色",
- trigger: "click",
- },
- ],
- },
- {
- label: "所属单位",
- prop: "deptId",
- type: "tree",
- multiple: true,
- 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: true,
- message: "请选择所属岗位",
- trigger: "click",
- },
- ],
+ required: true,
+ message: "请选择在职状态",
+ trigger: "blur",
},
],
},
@@ -805,6 +732,13 @@
}
},
methods: {
+ rowClickSelf(row) {
+ console.log(row, "baoan");
+ this.$router.push({
+ path: "/securityCompany/index",
+ query: { fromSecunityGuardId: row },
+ });
+ },
Print() {
this.$Print(this.$refs.baoanzheng);
},
@@ -836,18 +770,24 @@
honor(row) {
this.objf = {};
//打开荣誉录入
- console.log(this.objf);
this.objf = {
cardid: row.cardid,
- name: row.name,
+ name: row.realName,
honor: "",
honortime: "",
};
+ console.log(this.objf);
+ console.log(row);
this.dialogVisible = true;
},
nodeClick(data) {
// this.treeDeptId = data.id;
- this.jurisdiction = data.id;
+ // console.log(data, 55555);
+ if (data.title != "南昌市公安局") {
+ this.jurisdiction = data.id;
+ } else {
+ this.jurisdiction = "";
+ }
this.page.currentPage = 1;
this.onLoad(this.page);
},
@@ -894,7 +834,11 @@
searchChange(params, done) {
this.query = params;
this.page.currentPage = 1;
- this.onLoad(this.page, params);
+ var deptId;
+ if (params.deptId) {
+ deptId = params.deptId;
+ }
+ this.onLoad(this.page, params, deptId);
done();
},
selectionChange(list) {
@@ -945,16 +889,25 @@
refreshChange() {
this.onLoad(this.page, this.query);
},
- onLoad(page, params = {}) {
+ onLoad(page, params = {}, deptId) {
this.loading = true;
params["jurisdiction"] = this.jurisdiction;
getListSecurity(
page.currentPage,
page.pageSize,
- Object.assign(params, this.query)
+ Object.assign(params, this.query),
+ deptId
).then((res) => {
const data = res.data.data;
this.page.total = data.total;
+ var d = data.records;
+ var date = new Date();
+ var datayear = date.getFullYear();
+ for (const key in d) {
+ var year = d[key].cardid.slice(6, 10);
+ d[key]["age"] = +datayear - +year;
+ // d[key].securitynumber = "赣洪202100009";
+ }
this.data = data.records;
console.log(this.data);
this.loading = false;
@@ -977,22 +930,22 @@
query: obj,
});
- var flag = false,
- i = 0,
- ind = null;
+ // var flag = false,
+ // i = 0,
+ // ind = null;
- this.$store.state.tags.tagList.forEach((item, index) => {
- if (item.label == "保安详细信息") {
- if (flag == false) {
- ind = index;
- flag = true;
- }
- i++;
- }
- });
- if (i > 1) {
- this.$store.state.tags.tagList.splice(ind, 1);
- }
+ // this.$store.state.tags.tagList.forEach((item, index) => {
+ // if (item.label == "保安详细信息") {
+ // if (flag == false) {
+ // ind = index;
+ // flag = true;
+ // }
+ // i++;
+ // }
+ // });
+ // if (i > 1) {
+ // this.$store.state.tags.tagList.splice(ind, 1);
+ // }
},
//证件查看
handleViewCredentials(row) {
@@ -1008,6 +961,10 @@
// this.$Print("#certificatess");
this.objVisiblecertificates = obj;
console.log(this.objVisiblecertificates);
+ getER(this.obj.securitynumber).then((res) => {
+ this.erweima = res.data;
+ // console.log(res.data);
+ });
},
// 证件吊销事件
handleCredentials(row) {
@@ -1086,13 +1043,91 @@
align-items: center;
justify-content: center;
}
+// .baz-main {
+// position: relative;
+// top: 15px;
+// // width: 441px;
+// // height: 358px;
+// width: 491px;
+// height: 468px;
+// // background-color: #004ca7;
+// background-color: #fff;
+// display: flex;
+// align-items: center;
+// justify-content: center;
+// flex-direction: column;
+// }
+// .baz-m-body {
+// width: 461px;
+// height: 308px;
+// background-image: url("/img/register/bazbj.png");
+// background-size: 100% 100%;
+// .bmb-heard {
+// font-size: 2rem;
+// width: 100%;
+// text-align: center;
+// letter-spacing: 1rem;
+// margin-bottom: 40px;
+// position: relative;
+// top: 20px;
+// }
+// img {
+// width: 130px;
+// height: 130px;
+// border-radius: 130px;
+// position: absolute;
+// top: 110px;
+// right: 60px;
+// }
+// .bmb-b {
+// padding-left: 20px;
+// box-sizing: border-box;
+// height: 50px;
+// margin-left: 10px;
+// width: 100%;
+// font-size: 1rem;
+// font-weight: 400;
+// .bmb-b-s {
+// display: inline-block;
+// width: 110px;
+// font-size: 1.1rem;
+// font-weight: 600;
+// }
+// }
+// }
+// .PrintBut {
+// margin-top: 15px;
+// }
+// .rowClickSelf {
+// &:hover {
+// cursor: pointer;
+// }
+// }
+
+// .baoanzheng {
+// // position: fixed;
+// position: relative;
+// // top: 0;
+// top: 0;
+// // left: -10%;
+// left: 0;
+// // height: 0;
+// width: 100%;
+// height: calc(100% - 100px);
+// // background-color: rgba(0, 0, 0, 0.5);
+// background-color: #fff;
+// z-index: 9000;
+// display: flex;
+// align-items: center;
+// justify-content: center;
+// }
.baz-main {
position: relative;
top: 15px;
// width: 441px;
// height: 358px;
- width: 491px;
- height: 468px;
+ width: 750px;
+ height: 550px;
// background-color: #004ca7;
background-color: #fff;
display: flex;
@@ -1101,40 +1136,65 @@
flex-direction: column;
}
.baz-m-body {
- width: 461px;
- height: 308px;
+ width: 750px;
+ height: 550px;
background-image: url("/img/register/bazbj.png");
background-size: 100% 100%;
.bmb-heard {
- font-size: 2rem;
+ font-size: 4rem;
width: 100%;
text-align: center;
- letter-spacing: 1rem;
+ letter-spacing: 1.4rem;
margin-bottom: 40px;
+ padding-left: 10px;
position: relative;
top: 20px;
}
- img {
- width: 130px;
- height: 130px;
- border-radius: 130px;
+ .img {
+ width: 152px;
+ height: 205px;
+ border-radius: 10px;
position: absolute;
+ // border: 1px solid rgba($color: #888888, $alpha: 0.5);
top: 110px;
- right: 60px;
+ right: 80px;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ img {
+ width: 100%;
+ height: 100%;
+ }
+ }
+ .imgs {
+ width: 110px;
+ height: 110px;
+ border-radius: 10px;
+ position: absolute;
+ // border: 1px solid rgba($color: #888888, $alpha: 0.5);
+ top: 330px;
+ right: 103px;
+ display: flex;
+ align-items: center;
+ justify-content: center;
+ img {
+ width: 100%;
+ height: 100%;
+ }
}
.bmb-b {
padding-left: 20px;
box-sizing: border-box;
- height: 50px;
- margin-left: 10px;
+ height: 3.9rem;
+ margin-left: 3rem;
width: 100%;
- font-size: 1rem;
- font-weight: 400;
+ font-size: 2rem;
+ font-weight: 300;
.bmb-b-s {
display: inline-block;
- width: 110px;
- font-size: 1.1rem;
- font-weight: 600;
+ width: 20rem;
+ font-size: 2rem;
+ font-weight: 300;
}
}
}
--
Gitblit v1.9.3