Explorar el Código

distWork工作指派bug修改

master
kim131 hace 4 años
padre
commit
5c0ebb209c
Se han modificado 1 ficheros con 51 adiciones y 35 borrados
  1. +51
    -35
      src/views/components_web/distWork/distWork.vue

+ 51
- 35
src/views/components_web/distWork/distWork.vue Ver fichero

@@ -394,13 +394,13 @@
<span>工作负责人</span>
<div class="yiyun_line"></div>
<!-- 项目负责人选择前 isSlectPal -->
<div class="main_workerBox" v-if="selectedManageUser.length == 0">
<div class="main_workerBox" v-if="listManagerComputed(selectedUser).length == 0">
<i class="icon font_family icon-icon_huangguan-weijihuo largehuangguan"></i>
<div class="rentou_alrge"></div>
</div>
<!-- 项目负责人选择后 -->
<div v-if="selectedManageUser.length != 0">
<div class="user_info_item mainpeople_H" v-for="(user, index) in (selectedManageUser)" :key="index">
<div v-if="listManagerComputed(selectedUser).length != 0">
<div class="user_info_item mainpeople_H" v-for="(user, index) in listManagerComputed(selectedUser)" :key="index">
<i class="icon font_family icon-icon_huangguan-jihuo middlehuangguan fl" title="负责人"></i>
<img :src="user.headImgUrl | resolveAvator" alt="" class="user_info_faceImg" />
<span class="user_info_name">{{ user.cnName }}</span>
@@ -495,10 +495,10 @@
handleCheckItemAll(group_index, $event)
">全选</el-checkbox>
</template>
<!-- <div class="user_info_item" v-for="(user, index) in listUserStaff(
<div class="user_info_item" v-for="(user, index) in listUserStaff(
dept.listUser
)" :label="user" :key="index"> -->
<div class="user_info_item" v-for="(user, index) in dept.listUser" :label="user" :key="index">
)" :label="user" :key="index">
<!-- <div class="user_info_item" v-for="(user, index) in dept.listUser" :label="user" :key="index"> -->
<el-checkbox class="checkBoxCol" v-model="user.selected" @change="
handleCheckedOne(group_index, user, $event)
" :disabled="disabled">
@@ -705,6 +705,7 @@ export default {
currListDeptUserData:[],
userList: [], // 员工列表
finishBtnClickCount: 0,
};
},
created:function(){
@@ -919,7 +920,10 @@ export default {
*分配完成并关闭窗体
*/
submitAndClose: function () {
this.createFolders();
this.finishBtnClickCount ++;
if(this.finishBtnClickCount == 1) {
this.createFolders();
}
},
/*
*编辑自定义工作
@@ -967,17 +971,22 @@ export default {
setManagerUser: function (nowUser) {
if (this.InitData.manageUser.length != 0) {
this.InitData.manageUser[0].selected = false;
this.listDept.forEach(dept => {
dept.listUser.forEach(user => {
if(user.id === this.InitData.manageUser[0].id) {
user.selected = false;
}
})
})
// this.InitData.manageUser[0].roleName = "普通职员";
for (var i = 0; i < this.selectedUser.length; i++) {
if (
// this.selectedUser[i].userID == this.InitData.manageUser[0].userID
this.selectedUser[i].id == this.InitData.manageUser[0].id
) {
if (this.selectedUser[i].id == this.InitData.manageUser[0].id) {
this.InitData.manageUser[0].folderPerm = 0;
this.selectedUser.splice(i, 1);
}
}
}
var listManageUser = [];
nowUser.folderPerm = 2;
listManageUser.push(nowUser);
@@ -1004,23 +1013,23 @@ export default {
}
}
this.InitData = data;
this.setFolderPerm(data);
this.selectedUser = data.listUser;
this.selectedManageUser = data.manageUser;
if(data.manageUser.length > 0 ) {
data.manageUser.forEach(manager => {
if(!manager.folderPerm) {
manager.folderPerm = 2;
}
})
let res = this.selectedUser.find(user => user.id === data.manageUser[0].id);
if(!res) {
this.selectedUser.push(data.manageUser[0]);
}
}
this.setFolderPerm(data);
this.isShowSecondPage = true;
this.isShowStaffList = false;
this.isShowFirstPage = false;
// 这里应该将负责人的selected信息改变
this.listDept.some(dept=> {
if(data.manageUser[0].deptId === dept.id) {
dept.listUser.find(user => {
if(user.id === data.manageUser[0].id) {
//在部门的人员列表里面找到了已经选择的负责人 修改selected状态
user.selected = true;
}
})
}
})
this.listDept = [...this.listDept];
},
/**
* 进入时,重置权限
@@ -1039,6 +1048,7 @@ export default {
data.listUser[i].folderPerm;
this.listDept[j].listUser[k].selected = true;
}
if(!this.isShowManager)
{
// if(this.currUser.accountId == sessionStorage.userId && sessionStorage.accountId == this.listDept[j].listUser[k].userID )
@@ -1048,6 +1058,16 @@ export default {
}
}
}
// for(var m = 0; m < data.manageUser.length; m++) {
// if (
// // this.listDept[j].listUser[k].userID == data.listUser[i].userID
// this.listDept[j].listUser[k].id == data.manageUser[m].id
// ) {
// this.listDept[j].listUser[k].folderPerm =
// data.manageUser[m].folderPerm;
// this.listDept[j].listUser[k].selected = true;
// }
// }
this.getIsCheckSecondLevel(j);
}
}
@@ -1057,7 +1077,6 @@ export default {
*添加职员按钮直接进入 指派职员页面
*/
aloneAddUserOnlyStaff: function (data) {
debugger;
this.isShowManager=true;
this.currWorkName = data.folderName;
if (data.listUser == null) {
@@ -1173,8 +1192,6 @@ export default {
// 跳过负责人
if(user.folderPerm == 2)
{
this.checkDeptUserName(e, user);
this.getIsCheckSecondLevel(topIndex);
return;
}
//三级change事件
@@ -1273,12 +1290,13 @@ export default {
removeManageUser: function (user) {
user.folderPerm = 0;
// user.roleName = "查看编辑";
for (var k = 0; k < this.selectedManageUser.length; k++) {
if (this.selectedManageUser[k].id == user.id) {
this.selectedManageUser[k].folderPerm = 0;
this.selectedManageUser.splice(k, 1);
for (var k = 0; k < this.selectedUser.length; k++) {
if (this.selectedUser[k].id == user.id) {
this.selectedUser[k].folderPerm = 0;
this.selectedUser.splice(k, 1);
}
}
this.selectedManageUser.splice(0,1);
this.cancelCheck(user.id);
this.toSecondPage();
},
@@ -1303,9 +1321,7 @@ export default {
checkDeptUserName: function (checked, item) {
item.selected = checked;
if (checked) {
if(item.folderPerm !== 2) {
item.folderPerm = 1; // 默认角色为:查看和编辑
}
item.folderPerm = 1; // 默认角色为:查看和编辑
var valueUser = JSON.parse(JSON.stringify(item));
this.selectedUser.push(valueUser);
} else {
@@ -1665,7 +1681,7 @@ function mergeFolderList(plainFolderList, userHash) {
const folder = firstCharToLowerCase(upperFolder);
hash[folder.id] = folder;
folder.listChildren = [];
folder.listUser = folder.oldGeneralId.split(',').filter(a => a).map(id => userHash[id]);
folder.listUser = folder.oldGeneralId.split(',').filter(a => a).map(id => { return {...userHash[id]}});
folder.manageUser = (folder.oldManager === '0' ? '' : folder.oldManager).split(',').filter(a => a).map(id => userHash[id]);
const parentFolderId = folder.superId;
// headList.push(folder);


Cargando…
Cancelar
Guardar