|
|
@@ -162,7 +162,7 @@ |
|
|
|
<!-- 默认添加 -->
|
|
|
|
<div >
|
|
|
|
<div class="avtarface" :title="currUser.userName">
|
|
|
|
<img src="" v-lazy="headSrc+currUser.headImgUrl"/>
|
|
|
|
<img src="" v-lazy="headSrc+currUser.HeadImgUrl"/>
|
|
|
|
</div>
|
|
|
|
<span class="Text_tiny tinyText_wirte">{{currUser.userName}}</span>
|
|
|
|
</div>
|
|
|
@@ -181,7 +181,7 @@ |
|
|
|
<div class="avtarface" :title="user.userName">
|
|
|
|
<img src="" v-lazy="headSrc+user.headImgUrl" />
|
|
|
|
</div>
|
|
|
|
<span class="Text_tiny tinyText_wirte">{{user.userName}}</span>
|
|
|
|
<span class="Text_tiny tinyText_wirte">{{user.cnName}}</span>
|
|
|
|
</div>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
|
@@ -327,7 +327,9 @@ |
|
|
|
</span> -->
|
|
|
|
<span class="btnlabelTitle">{{dept.deptName}} </span>
|
|
|
|
</template>
|
|
|
|
<div class="user_info_item" v-for="(user,index) in listUserManager(dept.listUser)" :label="user"
|
|
|
|
<!-- <div class="user_info_item" v-for="(user,index) in listManagerComputed(dept.listUser)" :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="handleCheckedOnlyOne(group_index,user,$event)"
|
|
|
|
:disabled="disabled">
|
|
|
@@ -361,13 +363,17 @@ |
|
|
|
<span>工作负责人</span>
|
|
|
|
<div class="yiyun_line"></div>
|
|
|
|
<!-- 项目负责人选择前 isSlectPal -->
|
|
|
|
<div class="main_workerBox" v-if="listManagerComputed(selectedUser).length == 0">
|
|
|
|
<!-- <div class="main_workerBox" v-if="listManagerComputed(selectedUser).length == 0"> -->
|
|
|
|
<div class="main_workerBox" v-if="(selectedUser).length == 0">
|
|
|
|
<i class="icon font_family icon-icon_huangguan-weijihuo largehuangguan"></i>
|
|
|
|
<div class="rentou_alrge"></div>
|
|
|
|
</div>
|
|
|
|
<!-- 项目负责人选择后 -->
|
|
|
|
<div v-if="listManagerComputed(selectedUser).length != 0">
|
|
|
|
<div class="user_info_item mainpeople_H" v-for="(user,index) in listManagerComputed(selectedUser)"
|
|
|
|
<!-- <div v-if="listManagerComputed(selectedUser).length != 0"> -->
|
|
|
|
<div v-if="(selectedUser).length != 0">
|
|
|
|
<!-- <div class="user_info_item mainpeople_H" v-for="(user,index) in listManagerComputed(selectedUser)"
|
|
|
|
:key="index"> -->
|
|
|
|
<div class="user_info_item mainpeople_H" v-for="(user,index) in (selectedUser)"
|
|
|
|
:key="index">
|
|
|
|
<i class="icon font_family icon-icon_huangguan-jihuo middlehuangguan fl" title="负责人"></i>
|
|
|
|
<img v-lazy="headSrc+user.headImgUrl" alt="" class="user_info_faceImg">
|
|
|
@@ -455,7 +461,9 @@ |
|
|
|
</span>
|
|
|
|
<span class="btnlabelTitle">{{dept.deptName}} </span>
|
|
|
|
</template>
|
|
|
|
<div class="user_info_item" v-for="(user,index) in listUserComputed(dept.listUser)" :label="user"
|
|
|
|
<!-- <div class="user_info_item" v-for="(user,index) in listUserComputed(dept.listUser)" :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.disabled" @change="handleCheckedOne(group_index,user,$event)"
|
|
|
|
:disabled="disabled">
|
|
|
@@ -489,17 +497,20 @@ |
|
|
|
<span>工作负责人</span>
|
|
|
|
<div class="yiyun_line"></div>
|
|
|
|
<!-- 项目负责人选择前 -->
|
|
|
|
<div class="main_workerBox" v-if="listManagerComputed(selectedUser).length == 0">
|
|
|
|
<!-- <div class="main_workerBox" v-if="listManagerComputed(selectedUser).length == 0"> -->
|
|
|
|
<div class="main_workerBox" v-if="(selectedUser).length == 0">
|
|
|
|
<i class="icon font_family icon-icon_huangguan-weijihuo largehuangguan"></i>
|
|
|
|
<div class="rentou_alrge"></div>
|
|
|
|
</div>
|
|
|
|
<!-- 项目负责人选择后 -->
|
|
|
|
<div v-if="listManagerComputed(selectedUser).length != 0">
|
|
|
|
<div class="user_info_item mainpeople_H" v-for="(user,index) in listManagerComputed(selectedUser)"
|
|
|
|
<!-- <div class="user_info_item mainpeople_H" v-for="(user,index) in listManagerComputed(selectedUser)"
|
|
|
|
:key="index"> -->
|
|
|
|
<div class="user_info_item mainpeople_H" v-for="(user,index) in (selectedUser)"
|
|
|
|
:key="index">
|
|
|
|
<i class="icon font_family icon-icon_huangguan-jihuo middlehuangguan fl" title="负责人"></i>
|
|
|
|
<img v-lazy="headSrc+user.headImgUrl" alt="" class="user_info_faceImg">
|
|
|
|
<span class="user_info_name">{{user.userName}}</span>
|
|
|
|
<span class="user_info_name">{{user.cnName}}</span>
|
|
|
|
<el-popover placement="bottom-start" width="180" trigger="hover">
|
|
|
|
<ul class="popover_ul popover_ul">
|
|
|
|
<li><a href="javascript:;">{{user.roleName}}</a></li>
|
|
|
@@ -516,15 +527,15 @@ |
|
|
|
</p>
|
|
|
|
</div>
|
|
|
|
<div v-if="isShowFirstPeople">
|
|
|
|
<div class="row_painfr" v-for="dept in listDept" :key="dept.deptID" v-show="dept.listUser.length>0">
|
|
|
|
<div class="row_painfr" v-for="dept in listDept" :key="dept.id" v-show="dept.listUser.length>0">
|
|
|
|
<div v-for="deptID in listDeptUserNoZero(selectedUser)" :key="deptID">
|
|
|
|
<div v-if="deptID ==dept.deptID">
|
|
|
|
<div v-if="deptID ==dept.id">
|
|
|
|
<div class="yiyun_line"></div>
|
|
|
|
<span>{{dept.deptName}}</span>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="renyuanbox" v-for="(user,index) in listUserComputed(selectedUser)" :key="index">
|
|
|
|
<div class="user_info_item" v-if="user.deptID ==dept.deptID">
|
|
|
|
<div class="renyuanbox" v-for="(user,index) in selectedUser" :key="index">
|
|
|
|
<div class="user_info_item" v-if="user.deptId == dept.id">
|
|
|
|
<!-- <i class="huangguan" @click="setManageUser(user)" title="设置负责人"></i> -->
|
|
|
|
<img v-lazy="headSrc+user.headImgUrl" alt="" class="user_info_faceImg">
|
|
|
|
<span class="user_info_name">{{user.userName}}</span>
|
|
|
@@ -766,7 +777,7 @@ |
|
|
|
let temp = [];
|
|
|
|
for (let i = 0; i < user.length; i++) {
|
|
|
|
if (user[i].folderPerm != 2) {
|
|
|
|
temp.push(user[i].deptID);
|
|
|
|
temp.push(user[i].deptId);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
var x = new Set(temp);
|
|
|
@@ -1010,12 +1021,8 @@ |
|
|
|
// this.setFolderPerm(this.newProjData.listFolder[parseInt(index)]);
|
|
|
|
fetchPlainDeptUserList(this.$store.state.currentCompanyId).then(list => {
|
|
|
|
this.listDept = list;
|
|
|
|
// this.$nextTick(() => {
|
|
|
|
// this.listDept = res[0].children//是一个包含公司部门的对象数组 每一个对象里面有具体的数据
|
|
|
|
// this.listDept = [...this.listDept];
|
|
|
|
// console.log('111111111111111111111',this.listDept);
|
|
|
|
// this.$forceUpdate();
|
|
|
|
// })
|
|
|
|
this.listDept = [...this.listDept];
|
|
|
|
console.log('1111111111111111111111111',this.listDept);
|
|
|
|
}).catch(err => {
|
|
|
|
console.log(err);
|
|
|
|
})
|
|
|
@@ -1099,19 +1106,19 @@ |
|
|
|
* e:点击触发的事件
|
|
|
|
*/
|
|
|
|
handleCheckItemAll(index, e) {
|
|
|
|
for (var i = 0; i < this.listDept[index].children.length; i++) {
|
|
|
|
for (var i = 0; i < this.listDept[index].listUser[i].length; i++) {
|
|
|
|
if(!this.isShowManager)
|
|
|
|
{
|
|
|
|
if(this.currUser.userID == this.listDept[index].children[i].userID)
|
|
|
|
if(this.currUser.userID == this.listDept[index].listUser[i].id)
|
|
|
|
{
|
|
|
|
continue;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if (e) {
|
|
|
|
this.handleCheckedOne(index, this.listDept[index].children[i], false);
|
|
|
|
this.handleCheckedOne(index, this.listDept[index].children[i], e);
|
|
|
|
this.handleCheckedOne(index, this.listDept[index].listUser[i], false);
|
|
|
|
this.handleCheckedOne(index, this.listDept[index].listUser[i], e);
|
|
|
|
} else {
|
|
|
|
this.handleCheckedOne(index, this.listDept[index].children[i], e);
|
|
|
|
this.handleCheckedOne(index, this.listDept[index].listUser[i], e);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
|
@@ -1140,10 +1147,10 @@ |
|
|
|
/*
|
|
|
|
*选择负责人
|
|
|
|
*/
|
|
|
|
// (group_index,user,$event)
|
|
|
|
handleCheckedOnlyOne(topIndex, user, e) { //三级change事件
|
|
|
|
if (e) {
|
|
|
|
//将选中的人员返回给添加合作人页面
|
|
|
|
|
|
|
|
this.checkDeptUserName(e, user);
|
|
|
|
this.setManagerUser(user);
|
|
|
|
this.isSlectPal = false;
|
|
|
@@ -1161,16 +1168,16 @@ |
|
|
|
getIsCheckSecondLevel(topIndex) {
|
|
|
|
var checkCount = 0;
|
|
|
|
for (var i = 0; i < this.listDept[topIndex].listUser.length; i++) {
|
|
|
|
if (this.listDept[topIndex].listUser[i].selected == true) {
|
|
|
|
if (this.listDept[topIndex].listUser[i]['selected'] == true) {
|
|
|
|
checkCount++;
|
|
|
|
} else {
|
|
|
|
checkCount--;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
if (checkCount == this.listDept[topIndex].listUser.length) { //三级级全勾选
|
|
|
|
this.listDept[topIndex].selected = true
|
|
|
|
this.listDept[topIndex]['selected'] = true
|
|
|
|
} else { //三级级全不勾选
|
|
|
|
this.listDept[topIndex].selected = false
|
|
|
|
this.listDept[topIndex]['selected'] = false
|
|
|
|
}
|
|
|
|
},
|
|
|
|
/*
|
|
|
@@ -1182,7 +1189,7 @@ |
|
|
|
for (var j = 0; j < this.listDept.length; j++) { //全选checkbox状态
|
|
|
|
if (this.listDept[j].listUser.length > 0) {
|
|
|
|
haveDataCount++;
|
|
|
|
if (this.listDept[j].selected == true) {
|
|
|
|
if (this.listDept[j]['selected'] == true) {
|
|
|
|
checkCount++;
|
|
|
|
}
|
|
|
|
}
|
|
|
@@ -1224,12 +1231,12 @@ |
|
|
|
setFolderPerm: function(data) {
|
|
|
|
for (var j = 0; j < this.listDept.length; j++) {
|
|
|
|
for (var k = 0; k < this.listDept[j].listUser.length; k++) {
|
|
|
|
this.listDept[j].listUser[k].selected = false;
|
|
|
|
this.listDept[j].listUser[k]['selected'] = false;
|
|
|
|
this.listDept[j].listUser[k].folderPerm = 0;
|
|
|
|
for (var i = 0; i < data.listUser.length; i++) {
|
|
|
|
if (this.listDept[j].listUser[k].userID == data.listUser[i].userID) {
|
|
|
|
this.listDept[j].listUser[k].folderPerm = data.listUser[i].folderPerm;
|
|
|
|
this.listDept[j].listUser[k].selected = true;
|
|
|
|
this.listDept[j].listUser[k]['selected'] = true;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
this.getIsCheckSecondLevel(j);
|
|
|
@@ -1246,11 +1253,11 @@ |
|
|
|
if (this.selectedUser.length > 0) {
|
|
|
|
for (var k = 0; k < this.selectedUser.length; k++) {
|
|
|
|
if (this.listDept[i].listUser[j].userID === this.selectedUser[k].userID) {
|
|
|
|
this.listDept[i].listUser[j].selected = true;
|
|
|
|
this.listDept[i].listUser[j]['selected'] = true;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
} else {
|
|
|
|
this.listDept[i].listUser[j].selected = false;
|
|
|
|
this.listDept[i].listUser[j]['selected'] = false;
|
|
|
|
}
|
|
|
|
this.getIsCheckSecondLevel(i);
|
|
|
|
}
|
|
|
@@ -1261,7 +1268,8 @@ |
|
|
|
* 对已选协作人添加和删除
|
|
|
|
*/
|
|
|
|
checkDeptUserName: function(checked, item) {
|
|
|
|
item.selected = checked;
|
|
|
|
item['selected'] = checked;
|
|
|
|
debugger;
|
|
|
|
if (checked) {
|
|
|
|
item.folderPerm = 1; // 默认角色为:查看和编辑
|
|
|
|
var valueUser = JSON.parse(JSON.stringify(item));
|
|
|
@@ -1426,7 +1434,7 @@ |
|
|
|
for (var i = 0; i < this.listDept.length; i++) {
|
|
|
|
for (var j = 0; j < this.listDept[i].listUser.length; j++) {
|
|
|
|
if (this.listDept[i].listUser[j].userID === userID) {
|
|
|
|
this.listDept[i].listUser[j].selected = false;
|
|
|
|
this.listDept[i].listUser[j]['selected'] = false;
|
|
|
|
this.listDept[i].listUser[j].folderPerm = 0;
|
|
|
|
this.getIsCheckSecondLevel(i);
|
|
|
|
}
|
|
|
|