From c4e67a8942e514b65ab41bb19781d50576c15725 Mon Sep 17 00:00:00 2001
From: liuyg <376836862@qq.com>
Date: Fri, 24 Sep 2021 19:56:52 +0800
Subject: [PATCH] 用户
---
src/views/dispatch/dispatchChildoperable.vue | 221 +++++++++++++++++++++++++++++++++++++------------------
1 files changed, 149 insertions(+), 72 deletions(-)
diff --git a/src/views/dispatch/dispatchChildoperable.vue b/src/views/dispatch/dispatchChildoperable.vue
index d3d497f..ab2717c 100644
--- a/src/views/dispatch/dispatchChildoperable.vue
+++ b/src/views/dispatch/dispatchChildoperable.vue
@@ -6,7 +6,9 @@
:data="data1"
:page.sync="page1"
ref="crudrec1"
+ v-model="form"
:table-loading="loading1"
+ :before-open="beforeOpen"
@row-save="rowSave1"
@search-change="searchChange1"
@search-reset="searchReset1"
@@ -21,12 +23,19 @@
</template>
<script>
-import { getdata1, adddata1, update1, remove1 } from "@/api/dispatch/dispatch";
-import { getDept } from "@/api/system/dept";
+import {
+ getdata1,
+ adddata1,
+ update1,
+ remove1,
+ getDispatcherUnitByDeptId,
+ overDispatcher,
+} from "@/api/dispatch/dispatch";
+import { update, getListByDeptId } from "@/api/system/user";
+import { mapState } from "vuex";
export default {
data() {
- let baseUrl = "https://cli.avuejs.com/api/area";
return {
deptCategory: "",
deptId: "",
@@ -38,6 +47,7 @@
currentPage: 1,
total: 0,
},
+ form: {},
query1: {},
data1: [],
option1: {
@@ -65,16 +75,38 @@
// search: true,
// labelWidth: 120,
// searchSpan: 4,
- width: 180,
+ minWidth: 210,
addDisplay: false,
editDisplay: false,
+ },
+ {
+ label: "保安公司",
+ prop: "deptId",
+ search: true,
+ labelWidth: 120,
+ type: "tree",
+ searchSpan: 4,
+ cascaderItem: ["userIds"],
+ props: {
+ label: "title",
+ value: "id",
+ },
+ width: 180,
+ dicUrl: `/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697`,
+ rules: [
+ {
+ required: true,
+ message: "请输入保安公司",
+ trigger: "blur",
+ },
+ ],
},
{
label: "派遣单位",
prop: "dispatcherUnitId",
labelWidth: 120,
searchLabelWidth: 80,
- dicUrl: "/api/dispatcherUnit/page-tree",
+ // dicUrl: "/api/dispatcherUnit/page-tree?deptId={{key}}",
props: {
label: "name",
value: "id",
@@ -92,44 +124,45 @@
},
],
},
- // {
{
- label: "保安公司",
- prop: "deptId",
- search: true,
+ label: "保安员",
+ prop: "userIds",
+ type: "tree",
+ width: 70,
labelWidth: 120,
- type: "select",
- searchSpan: 4,
- cascaderItem: ["name"],
+ searchSpan: 3,
+ search: true,
+ hide: true,
props: {
- label: "title",
+ label: "realName",
value: "id",
},
- width: 180,
- dicUrl: `/api/blade-system/dept/security_lazy-tree?parentId=1413470343230877697`,
+ // dicUrl: `/api/blade-user/page-security-units?dispatch=1&deptId={{key}}`,
+ dicUrl: `/api/blade-user/page-security-units?status=1&deptId={{key}}`,
+ dicData: [],
rules: [
{
required: true,
- message: "请输入保安公司",
+ message: "请选择保安",
trigger: "blur",
},
],
},
{
label: "保安员",
- prop: "name",
- type: "select",
+ prop: "securityName",
+ type: "tree",
width: 70,
labelWidth: 120,
- searchSpan: 3,
- search: true,
- // cell: true,
+ addDisplay: false,
+ editDisplay: false,
// hide: true,
- props: {
- label: "realName",
- value: "id",
- },
- dicUrl: `/api/blade-user/page-security-units?deptId={{key}}`,
+ // props: {
+ // label: "realName",
+ // value: "id",
+ // },
+ // dicUrl: `/api/blade-user/page-security-units?dispatch=1&deptId={{key}}`,
+ dicData: [],
rules: [
{
required: true,
@@ -141,9 +174,11 @@
{
label: "身份证",
- prop: "cardid",
+ prop: "idCardNo",
labelWidth: 120,
overHidden: true,
+ addDisplay: false,
+ editDisplay: false,
rules: [
{
required: true,
@@ -164,7 +199,7 @@
// },
{
- label: "派遣时间",
+ label: "开始时间",
prop: "dispatchertime",
type: "date",
format: "yyyy-MM-dd",
@@ -204,12 +239,12 @@
{
label: "派遣时间",
prop: "releaseTimeRange",
- type: "datetime",
+ type: "date",
format: "yyyy-MM-dd",
valueFormat: "yyyy-MM-dd",
searchValue: [this.getStartTime(), this.getEndTime()],
searchRange: true,
- searchSpan: 4,
+ searchSpan: 5,
hide: true,
addDisplay: false,
editDisplay: false,
@@ -242,6 +277,19 @@
},
};
},
+ created() {
+ if (this.userInfo.role_name == "保安公司管理员") {
+ console.log("保安公司管理员登入");
+ const deptColumn = this.findObject(this.option1.column, "deptId");
+ deptColumn.search = false;
+ } else {
+ const deptColumn = this.findObject(
+ this.option1.column,
+ "dispatcherUnitId"
+ );
+ deptColumn.search = false;
+ }
+ },
computed: {
// },
ids1() {
@@ -251,7 +299,14 @@
});
return ids1.join(",");
},
+ ...mapState({
+ userInfo: (state) => state.user.userInfo,
+ }),
+ deps() {
+ return this.form.deptId;
+ },
},
+
methods: {
handleChangeTABS(column) {
this.typeTABS = column;
@@ -272,15 +327,18 @@
this.page1.pageSize = val;
// this.getData();
this.onLoad1(this.page1, this.query1);
- // this.$message.success("行数" + val);
},
currentChange1(val) {
this.page1.currentPage = val;
// this.getData();
this.onLoad1(this.page1, this.query1);
- // this.$message.success("页码" + val);
},
rowSave1(form, done, loading) {
+ // if(this.userInfo.role_name=="保安公司管理员"){
+ // const userColumn = this.findObject(this.option1.column, "userIds");
+ // userColumn.dicUrl = "/api/blade-user/page-security-units?deptId="+this.userInfo.dept_id;
+ // }
+
adddata1(form).then(
(res) => {
this.onLoad1(this.page1);
@@ -308,6 +366,10 @@
this.onLoad1(this.page1);
},
rowUpdate1(row, index, done, loading) {
+ // if(this.userInfo.role_name=="保安公司管理员"){
+ // const userColumn = this.findObject(this.option1.column, "userIds");
+ // userColumn.dicUrl = "/api/blade-user/page-security-units?deptId="+this.userInfo.dept_id;
+ // }
update1(row).then(
() => {
this.onLoad1(this.page1);
@@ -324,13 +386,13 @@
);
},
rowDel1(row) {
- this.$confirm("确定将选择数据删除?", {
+ this.$confirm("确定结束当前派遣?", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(() => {
- return remove1(row.id);
+ return overDispatcher(row);
})
.then(() => {
this.onLoad1(this.page1);
@@ -372,6 +434,11 @@
this.onLoad1(this.page1, this.query1);
},
+ beforeOpen(done, type) {
+ this.initFlag = true;
+ done();
+ },
+
getStartTime() {
if (
this.$route.query.startTime != undefined &&
@@ -396,6 +463,8 @@
onLoad1(page, params = {}) {
this.loading1 = true;
var values;
+ //默认查询已派遣的,派遣结束,未派遣的不显示
+ params["dispatch"] = 0;
const { releaseTimeRange } = this.query1;
if (releaseTimeRange) {
values = {
@@ -412,59 +481,67 @@
};
}
- console.log(values);
+ if (this.userInfo.role_name == "保安公司管理员") {
+ const deptColumn = this.findObject(this.option1.column, "deptId");
+ deptColumn.disabled = true;
+ // deptColumn.search = false; //会报错
+ deptColumn.value = this.userInfo.dept_id;
+ this.initData(2);
+ } else {
+ this.initData(1);
+ }
+
getdata1(
page.currentPage,
page.pageSize,
// Object.assign(params, this.query)
values
).then((res) => {
- // console.log(res);
const data = res.data.data;
this.page1.total = data.total;
this.data1 = data.records;
- console.log(this.data1, 1111111111111111111111111);
this.loading1 = false;
- this.$nextTick(() => this.$refs.crudrec1.dicInit("cascader"));
+ // this.$nextTick(() => this.$refs.crudrec1.dicInit("cascader"));
+ console.log(this.form, 111111);
});
},
- //派遣记录
+ initData(type) {
+ var that = this;
+ if (type == 1) {
+ getDispatcherUnitByDeptId(null).then((res) => {
+ const dispatcherUnitIdColumn = that.findObject(
+ this.option1.column,
+ "dispatcherUnitId"
+ );
+ // console.log(res.data.data, 111);
+ dispatcherUnitIdColumn.dicData = res.data.data;
+ });
+ }
+ if (type == 2) {
+ getDispatcherUnitByDeptId(that.userInfo.dept_id).then((res) => {
+ const dispatcherUnitIdColumn = that.findObject(
+ this.option1.column,
+ "dispatcherUnitId"
+ );
+ dispatcherUnitIdColumn.dicData = res.data.data;
+ });
+ getListByDeptId(that.userInfo.dept_id, 1).then((res) => {
+ const userIdsColumn = that.findObject(this.option1.column, "userIds");
+ userIdsColumn.dicData = res.data.data;
+ });
+ }
+ },
},
+ // watch: {
+ // // "form.deptId"() {
+ // // this.initData();
+ // // }
+ // deps(){
+ // console.log(this.deps,5646646)
+ // }
+ // },
mounted() {
this.onLoad1(this.page1, this.query1);
- //去掉缓存
- // this.typeTABS = this.optionTABS.column[0];
- // var row = {};
- // if (this.readLock("paqiandata") != null) {
- // row = JSON.parse(this.readLock("paqiandata"));
- // this.obj0.name = row.name;
- // for (var k in row) {
- // this.obj0[k] = row[k];
- // }
- // console.log(this.obj0, 11111111);
- // this.id = row.id;
- // if (this.readLock("paqiandataS") != null) {
- // var b = JSON.parse(this.readLock("paqiandataS"));
- // var i = 0;
- // for (var k in b) {
- // if (b[k].name == row.name) {
- // i = 1;
- // }
- // }
- // if (i == 1) {
- // // console.log("存在");
- // } else {
- // // console.log("已删除");
- // this.obj0 = {};
- // this.obj0.name = row.name + " 该派遣单位已删除";
- // window.localStorage.removeItem("paqiandata");
- // this.id = 1244241;
- // }
- // }
- // } else {
- // // console.log("no");
- // this.obj0.name = " 未选择派遣单位";
- // }
},
};
</script>
--
Gitblit v1.9.3