From 15315b1772036eb5168792aac0121f6e9005b11e Mon Sep 17 00:00:00 2001
From: 马宇豪 <978517621@qq.com>
Date: Mon, 08 Jan 2024 10:16:26 +0800
Subject: [PATCH] Default Changelist
---
src/views/system/personShiftManage/scheduleManage/schedule/index.vue | 65 ++++++++++++++++++--------------
1 files changed, 37 insertions(+), 28 deletions(-)
diff --git a/src/views/system/personShiftManage/scheduleManage/schedule/index.vue b/src/views/system/personShiftManage/scheduleManage/schedule/index.vue
index affe01d..1c49a53 100644
--- a/src/views/system/personShiftManage/scheduleManage/schedule/index.vue
+++ b/src/views/system/personShiftManage/scheduleManage/schedule/index.vue
@@ -60,11 +60,11 @@
<el-form-item label="班组名称" prop="groupName">
<el-input v-model="addRecord.groupName"> </el-input>
</el-form-item>
- <el-form-item label="选择部门" prop="department">
- <el-cascader v-model="addRecord.department" :options="departmentList" :props="casProps" :show-all-levels="false" @change="handleChange" />
+ <el-form-item label="选择部门" prop="depId">
+ <el-cascader v-model="addRecord.depId" :options="departmentList" :props="casProps" :show-all-levels="false" @change="handleChange" />
</el-form-item>
- <el-form-item label="选择人员" prop="groupMembers" v-if="addRecord.department !== ''">
- <el-select v-model="addRecord.groupMembers" multiple>
+ <el-form-item label="选择人员" prop="groupMemberIds" v-if="addRecord.depId">
+ <el-select v-model="addRecord.groupMemberIds" multiple>
<el-option v-for="(item, index) in workerList" :label="item.username" :key="index" :value="item.uid">{{ item.username }}</el-option>
</el-select>
</el-form-item>
@@ -129,9 +129,9 @@
totalSize: number;
addRecord: {
groupName: string;
- department: number | null;
depId: number | null;
- groupMembers: Array<any>;
+ groupId: number | null;
+ groupMemberIds: Array<any>;
groupInfo: string;
};
details: {
@@ -139,6 +139,7 @@
department: number | null;
groupMembers: Array<any>;
groupInfo: string;
+ depId: number | null;
};
}
@@ -157,7 +158,6 @@
searchWord: '',
tableData: [],
departmentList: [],
- department: '',
workerList: [],
casProps: {
expandTrigger: 'hover',
@@ -171,11 +171,11 @@
deleteDialog: false,
deleteSetDialog: false,
addRecord: {
- groupName: '',
- department: null,
- groupMembers: [],
depId: null,
- groupInfo: ''
+ groupId: null,
+ groupInfo: '',
+ groupName: '',
+ groupMemberIds: [],
},
details: {
groupName: '',
@@ -267,7 +267,6 @@
const handleChange = async (value) => {
state.addRecord.depId = value;
- console.log(state.addRecord.department, 'de');
let res = await teamManageApi().getAllMember(value);
if (res.data.code === '200') {
state.workerList = res.data.data;
@@ -315,13 +314,23 @@
// 修改工作时段方法
const editRecordBtn = async (index, row) => {
- state.addRecord = JSON.parse(JSON.stringify(row));
- state.addRecord.department = '';
- state.addRecord.groupMembers = [];
- state.dialogAddRecord = true;
- state.chosenIndex = index;
- };
-
+ const obj = JSON.parse(JSON.stringify(row));
+ for(let i in state.addRecord){
+ if(isKey(i,obj)){
+ state.addRecord[i] = obj[i]
+ }
+ }
+ handleChange(obj.depId).then((res)=>{
+ state.addRecord.groupMemberIds = obj.groupMembers.map((item)=> {
+ return state.workerList.find(i => i.username == item)?.uid
+ })
+ state.dialogAddRecord = true;
+ state.chosenIndex = index;
+ })
+ }
+ const isKey = (key,obj)=>{
+ return key in obj
+ }
const editRecord = async (data: any) => {
let res = await teamManageApi().updateRecord(data);
if (res.data.code === '200') {
@@ -343,17 +352,11 @@
if (!formEl) return;
await formEl.validate(async (valid, fields) => {
if (valid) {
- const data = {
- groupName: state.addRecord.groupName,
- groupInfo: state.addRecord.groupInfo,
- depId: state.addRecord.depId,
- groupMemberIds: state.addRecord.groupMembers
- };
if (state.chosenIndex == null) {
+ const {groupId,...data} = state.addRecord
await addRecord(data);
} else {
- data.groupId = JSON.stringify(state.addRecord.groupId);
- await editRecord(data);
+ await editRecord(state.addRecord);
}
state.dialogAddRecord = false;
} else {
@@ -445,7 +448,13 @@
};
const closeAdd = () => {
- state.addRecord = {};
+ state.addRecord = {
+ depId: null,
+ groupId: null,
+ groupInfo: '',
+ groupName: '',
+ groupMemberIds: [],
+ };
state.chosenIndex = null;
};
const openAdd = () => {
--
Gitblit v1.9.2