From 0c35e05ca9c90883e5073ea35232ea100f866a8f Mon Sep 17 00:00:00 2001
From: liuyg <376836862@qq.com>
Date: Thu, 19 Aug 2021 15:08:50 +0800
Subject: [PATCH] 保安公司管理
---
src/views/securityGuard/securityGuard.vue | 269 ++++++++++++++++++++++++++++++++++++++---------------
1 files changed, 192 insertions(+), 77 deletions(-)
diff --git a/src/views/securityGuard/securityGuard.vue b/src/views/securityGuard/securityGuard.vue
index 5a1b00b..3881882 100644
--- a/src/views/securityGuard/securityGuard.vue
+++ b/src/views/securityGuard/securityGuard.vue
@@ -39,6 +39,14 @@
>
<template slot="menuLeft">
<el-button
+ type="success"
+ size="small"
+ plain
+ icon="el-icon-upload2"
+ @click="handleImport1"
+ >批量导入
+ </el-button>
+ <el-button
type="danger"
style="display: none"
size="small"
@@ -208,6 +216,24 @@
</template>
</avue-crud>
</el-dialog>
+ <el-dialog
+ title="保安员导入"
+ append-to-body
+ :visible.sync="excelBox1"
+ width="555px"
+ >
+ <avue-form
+ :option="excelOption1"
+ v-model="excelForm1"
+ :upload-after="uploadAfter1"
+ >
+ <template slot="excelTemplate">
+ <el-button type="primary" @click="handleTemplate1">
+ 点击下载<i class="el-icon-download el-icon--right"></i>
+ </el-button>
+ </template>
+ </avue-form>
+ </el-dialog>
</basic-container>
</el-col>
</el-row>
@@ -221,6 +247,7 @@
update,
updatePlatform,
add,
+ securitySave,
grant,
resetPassword,
getUserPractitionersInfo,
@@ -228,12 +255,13 @@
} from "@/api/system/user";
import { getList } from "@/api/securityGuard/securityGuard";
import { getDeptLazyTree } from "@/api/system/dept";
-import { getRoleTree } from "@/api/system/role";
+import { getRoleTree, getRoleDetail } from "@/api/system/role";
import { getPostList } from "@/api/system/post";
import { mapGetters } from "vuex";
import website from "@/config/website";
import { getToken } from "@/util/auth";
import { securityFormPageColumn } from "./data";
+import { mapState } from "vuex";
export default {
data() {
@@ -254,6 +282,35 @@
}
};
return {
+ securityid: "",
+ excelBox1: false,
+ excelForm1: {},
+ excelOption1: {
+ submitBtn: false,
+ emptyBtn: false,
+ column: [
+ {
+ label: "文件上传",
+ prop: "excelFile",
+ type: "upload",
+ drag: true,
+ loadText: "文件上传中,请稍等",
+ span: 24,
+ propsHttp: {
+ res: "data",
+ },
+ tip: "请上传 .xls,.xlsx 标准格式文件",
+ action: "/api/blade-user/import-user",
+ },
+ {
+ label: "模板下载",
+ prop: "excelTemplate",
+ formslot: true,
+ span: 24,
+ },
+ ],
+ },
+
form: {},
search: {},
roleBox: false,
@@ -320,7 +377,7 @@
tip: false,
searchShow: true,
searchMenuSpan: 6,
- border: false,
+ border: true, //liu
stripe: true,
align: "center",
index: true,
@@ -350,7 +407,6 @@
value: "id",
},
// disabled: true,
- span: 24,
rules: [
{
required: true,
@@ -408,6 +464,10 @@
],
},
{
+ label: "昵称",
+ prop: "name",
+ },
+ {
label: "个人照片",
type: "upload",
listType: "picture-img",
@@ -425,14 +485,12 @@
row: true,
prop: "myPicture",
},
- {
- label: "编号",
- prop: "code",
- },
- {
- label: "昵称",
- prop: "name",
- },
+
+ // {
+ // label: "编号",
+ // prop: "code",
+ // },
+
{
label: "所属辖区",
prop: "jurisdiction",
@@ -447,49 +505,49 @@
slot: true,
rules: [
{
- required: true,
+ 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: "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",
@@ -622,7 +680,7 @@
{
prop: "UserPractitionersInfo",
type: "dynamic",
- border: false,
+ border: true, //liu
span: 24,
children: {
align: "left",
@@ -863,14 +921,47 @@
});
return ids.join(",");
},
+ ...mapState({
+ userInfo: (state) => state.user.userInfo,
+ }),
},
mounted() {
+ // this.option.column[0].hide = true
// 非保安单位模式默认加载管理组数据
if (!website.tenantMode) {
this.initData(website.tenantId);
}
+
+ //获取当前登录人员的角色信息
+ var roleIds = this.userInfo.role_id.split(",");
+ roleIds.forEach((roleId) => {
+ getRoleDetail(roleId).then((res) => {
+ var roleAlias = res.data.data.roleAlias;
+ if (
+ roleAlias == "保安公司管理员" ||
+ roleAlias == "保安" ||
+ roleAlias == "未持证保安"
+ ) {
+ const column = this.findObject(this.option.column, "deptId");
+ column.search = false;
+ }
+ });
+ });
},
methods: {
+ handleImport1() {
+ this.excelBox1 = true;
+ },
+ uploadAfter1(res, done, loading, column) {
+ window.console.log(column);
+ this.excelBox1 = false;
+ // this.refreshChange();
+ done();
+ },
+ handleTemplate1() {
+ window.open(`/api/examSubjectChoices/export-template`);
+ },
+
//行点击事件
rowClick(row) {
this.$router.push({
@@ -929,33 +1020,50 @@
entryTime: item.entryTime,
name: row.realName,
leaving: item.leaving,
- cardid: row.cardid,
+ securityid: row.id,
post: item.post,
responsibilities: item.responsibilities,
};
userPractitionersList.push(info);
});
}
- var IdCardNo = row.cardid;
- add(row).then(
+ const user = {
+ account: row.account,
+ address: row.address,
+ birthday: row.birthday,
+ cardid: row.cardid,
+ deptId: row.deptId,
+ education: row.education,
+ email: row.email,
+ height: row.height,
+ hold: row.hold,
+ jurisdiction: row.jurisdiction,
+ myPicture: row.myPicture,
+ name: row.name,
+ nation: row.nation,
+ nativeplace: row.nativeplace,
+ password: row.password,
+ password2: row.password2,
+ phone: row.phone,
+ politicaloutlook: row.politicaloutlook,
+ realName: row.realName,
+ registered: row.registered,
+ rtime: row.rtime,
+ securitynumber: row.securitynumber,
+ sex: row.sex,
+ };
+ const userMap = {
+ user: user,
+ userPractitionersInfo: userPractitionersList,
+ };
+ securitySave(userMap).then(
() => {
- const experience = {
- cardid: IdCardNo,
- userPractitionersInfo: userPractitionersList,
- };
- //新增从业信息
- saveOrUpdateUserPractitionersInfo(experience).then(() => {
- this.$message({
- type: "success",
- message: "操作成功!",
- });
+ this.$message({
+ type: "success",
+ message: "操作成功!",
});
this.initFlag = false;
this.onLoad(this.page);
- // this.$message({
- // type: "success",
- // message: "操作成功!",
- // });
done();
},
(error) => {
@@ -979,20 +1087,20 @@
entryTime: item.entryTime,
name: row.realName,
leaving: item.leaving,
- cardid: row.cardid,
+ securityid: row.id,
post: item.post,
responsibilities: item.responsibilities,
};
userPractitionersList.push(info);
});
}
- var IdCardNo = row.cardid;
+ var IdCardNo = row.id;
//值替换,education 放在页面会卡死
row.education = row.education1;
update(row).then(
() => {
const experience = {
- cardid: IdCardNo,
+ securityid: IdCardNo,
userPractitionersInfo: userPractitionersList,
};
//更新从业信息
@@ -1004,10 +1112,6 @@
});
this.initFlag = false;
this.onLoad(this.page);
- // this.$message({
- // type: "success",
- // message: "操作成功!",
- // });
done();
},
(error) => {
@@ -1167,7 +1271,7 @@
}
var userInfo = res.data.data;
//获取用户从业信息
- getUserPractitionersInfo(userInfo.cardid).then((res1) => {
+ getUserPractitionersInfo(userInfo.id).then((res1) => {
that.form.UserPractitionersInfo = res1.data.data;
});
});
@@ -1190,10 +1294,21 @@
};
values = {
...params,
- deptId: this.deptId,
- roleId: this.roleId,
+ roleAlias: "111",
...this.query,
};
+
+ //获取当前登录人员的角色信息
+ var roleIds = this.userInfo.role_id.split(",");
+ roleIds.forEach((roleId) => {
+ getRoleDetail(roleId).then((res) => {
+ var roleAlias = res.data.data.roleAlias;
+ if (roleAlias == "保安公司管理员") {
+ values["deptId"] = this.userInfo.dept_id;
+ }
+ });
+ });
+
if (this.userInfo.role_id == "1414840172333842433") {
console.log("是公安add jurisdiction");
values["jurisdiction"] = this.userInfo.jurisdiction;
--
Gitblit v1.9.3