Преглед изворни кода

工作指派组件整合 弹窗显示关闭按钮

master
kim131 пре 4 година
родитељ
комит
5984251cfb
6 измењених фајлова са 1712 додато и 457 уклоњено
  1. +5
    -3
      public/static/css/main.css
  2. +97
    -449
      src/views/components_web/distWork/distWork.vue
  3. +1605
    -0
      src/views/components_web/distWork/distWorkCopy.vue
  4. +2
    -2
      src/views/components_web/distWork/folder-list.vue
  5. +1
    -1
      src/views/components_web/newProj/newProj.vue
  6. +2
    -2
      vue.config.js

+ 5
- 3
public/static/css/main.css Прегледај датотеку

@@ -7132,10 +7132,12 @@ border-radius:2em;
top: -26px;
}
.middlehuangguan{
font-size: 49px;
/* font-size: 49px; */
font-size: 30px;
line-height:30px;
color: #FFD232;
position: relative;
top: -10px;
/* position: relative; */
/* top: -10px; */
margin-right: 10px;
}
.mainpeople_H{


+ 97
- 449
src/views/components_web/distWork/distWork.vue Прегледај датотеку

@@ -46,7 +46,7 @@
</div>
<div class="yiyun_dialog_center">
<!-- 头部信息 -->
<span class="backshangyicheng prev_to_2" @click="toSecondPage" v-show="isShowThreePage == true && isShowManager"><i class="yiyun_icon icon_topnav_backicon"></i></span>
<span class="backshangyicheng prev_to_2" @click="backFirstPage" v-show="isShowThreePage == true && isShowManager"><i class="yiyun_icon icon_topnav_backicon"></i></span>
<span class="backshangyicheng prev_to_2" @click="toFirstPage" v-show="isShowSecondPage == true"><i class="yiyun_icon icon_topnav_backicon"></i></span>
<span class="backshangyicheng prev_to_2" @click="backFirstPage" v-show="isShowPrjDesc == true"><i class="yiyun_icon icon_topnav_backicon"></i></span>
<div class="bottomdialogbox_list_head newProject_next_taggle1">
@@ -55,13 +55,13 @@
{{ curProjCreatePeop }}
</h3>
<h3 v-show="isShowPrjDesc == true">项目概况</h3>
<h3 v-show="isShowThreePage == true">指派职员</h3>
<h3 v-show="isShowSecondPage == true">指派工作负责人</h3>
<!-- <h3 v-show="isShowThreePage == true">指派职员</h3> -->
<h3 v-show="isShowSecondPage == true || isShowThreePage == true">指派职员</h3>
</div>
<div class="EC_col_8">
<div class="fr mt-26">
<el-button type="primary" round class="fr width_120" @click="toThreePage" v-show="isShowSecondPage == true">分配职员</el-button>
<el-button type="primary" round class="fr width_120" @click="backFirstPage" v-show="isShowThreePage == true">完成或跳过</el-button>
<el-button type="primary" round class="fr width_120" @click="backFirstPage" v-show="isShowSecondPage == true">确定</el-button>
<el-button type="primary" round class="fr width_120" @click="backFirstPage" v-show="isShowThreePage == true">确定</el-button>
<el-button type="primary" round class="fr width_120" @click="submitAndClose" v-show="isShowFirstPage == true">完成</el-button>
</div>
</div>
@@ -134,167 +134,6 @@
:aloneAddUserOnlyStaff="aloneAddUserOnlyStaff"
:allChildrenLists="allChildrenLists"
/>
<!-- <div>
<div class="tianjiaxiezuorenBox" v-for="(folder, folderIndex) in listNewFolder" :key="folderIndex">
<div v-if="tempIndex!=folderIndex||folderIndex==0" class="self_newitem">
<h5 class="fl label_text">
<i class="el-icon-caret-right hand" v-show="opentree" @click="openECtree"></i>
<i class="el-icon-caret-bottom hand" v-show="!opentree" @click="closeECtree"></i>
{{ folderIndex + 1 }} <span>.</span>
{{ folder.folderName }}
</h5>
<div class="selfoptiongroup">
<el-button v-if="folder.default == false" v-on:click="eidtTitle(folderIndex)">编辑</el-button>
</div>
</div>
<div v-if="showTitle == 2&&tempIndex==folderIndex" class="self_newitem">
<input v-model="folder.folderName" :class="
folder.default == false
? 'bianji_input self_Inputwork'
: 'fl label_text_moren'
" :disabled="folder.default" />
<div class="selfoptiongroup">
<el-button type="primary" v-if="folder.default == false" v-on:click="saveTitle">保存</el-button>
<el-button v-if="folder.default == false" v-on:click="deleTitle(folderIndex)">删除</el-button>
</div>
</div>
<div>
<div class="fl firstPeople">
<div v-if="folder.manageUser == ''">
<div class="avtarface" @click="aloneAddUserForFolder(folder)">
<i class="large_huangguan el-icon-plus"></i>
</div>
<span class="Text_tiny tinyText_wirte">工作负责人</span>
</div>
<li v-for="(user, index) in folder.manageUser" :key="index">
<div>
<div class="avtarface" title="编辑">
<img :src="user.headImgUrl | resolveAvator" @click="aloneAddUserForFolder(folder)" />
</div>
<span class="Text_tiny tinyText_wirte">{{
user.cnName
}}</span>
</div>
</li>
</div>
<div class="fl vhLine mlr-20"></div>
<div class="fl addBtn_new" title="添加职员" @click="aloneAddUserOnlyStaff(folder)" v-if="folder.manageUser != ''">
<i class="el-icon-plus middleaddEC"></i>
</div>
<div class="fl chengyuanbox">
<ul class="ECworkerList">
<li v-for="(user, index) in listUserComputed(
folder.listUser
)" :key="index">
<div v-if="index < 14 || showAll">
<div class="avtarface" title="编辑">
<img :src="user.headImgUrl | resolveAvator" />
</div>
<span class="Text_tiny tinyText_wirte">{{
user.cnName
}}</span>
</div>
<div class v-if="index == 14 && !showAll" @click="showAllClick">
<span class="zhangkai_down"></span>
<span class="Text_tiny tinyText_wirte">展开全部</span>
</div>
<div v-if="
showAll &&
index == folder.listUser.length - 1 &&
index > 14
" @click="showAll = false" class="newweizhi">
<span class="zhangkai_up"></span>
<span class="Text_tiny tinyText_wirte">收起职员</span>
</div>
</li>
</ul>
</div>
<div class="clear"></div>
</div>
<div class="tianjiaxiezuorenBox" v-for="(folderChild, childIndex) in folder.listChildren" :key="childIndex" v-show="nodeLeaves">
<div v-if="tempIndex!=childIndex||childIndex==0" class="self_newitem">
<h5 class="fl label_text">
{{ childIndex + 1 }}.{{ folderChild.folderName }}
</h5>
<div class="selfoptiongroup">
<el-button v-if="folderChild.default == false" v-on:click="eidtTitle(childIndex)">编辑</el-button>
</div>
</div>
<div v-if="showTitle == 2&&tempIndex==folderIndex" class="self_newitem">
<input v-model="folderChild.folderName" :class="
folderChild.default == false
? 'bianji_input self_Inputwork'
: 'fl label_text_moren'
" :disabled="folderChild.default" />
<div class="selfoptiongroup">
<el-button type="primary" v-if="folderChild.default == false" v-on:click="saveTitle">保存</el-button>
<el-button v-if="folderChild.default == false" v-on:click="deleTitle(folderIndex)">删除</el-button>
</div>
</div>
<div>
<div class="fl firstPeople">
<div v-if="folderChild.manageUser == ''">
<div class="avtarface" @click="aloneAddUserForFolder(folderChild)">
<i class="large_huangguan el-icon-plus"></i>
</div>
<span class="Text_tiny tinyText_wirte">工作负责人</span>
</div>
<li v-for="(user, index) in folderChild.manageUser" :key="index">
<div>
<div class="avtarface" title="编辑">
<img :src="user.headImgUrl | resolveAvator" @click="aloneAddUserForFolder(folderChild)" />
</div>
<span class="Text_tiny tinyText_wirte">{{
user.cnName
}}</span>
</div>
</li>
</div>
<div class="fl vhLine mlr-20"></div>
<div class="fl addBtn_new" title="添加职员" @click="aloneAddUserOnlyStaff(folderChild)">
<i class="el-icon-plus middleaddEC"></i>
</div>
<div class="fl chengyuanbox">
<ul class="ECworkerList">
<li v-for="(user, index) in listUserComputed(
folderChild.listUser
)" :key="index">
<div v-if="index < 14 || showAll">
<div class="avtarface" title="编辑">
<img :src=" user.headImgUrl | resolveAvator" />
</div>
<span class="Text_tiny tinyText_wirte">{{
user.cnName
}}</span>
</div>
<div class v-if="index == 14 && !showAll" @click="showAllClick">
<span class="zhangkai_down"></span>
<span class="Text_tiny tinyText_wirte">展开全部</span>
</div>
<div v-if="
showAll &&
index ==
folderChild.listUser.length - 1 &&
index > 14
" @click="showAll = false" class="newweizhi">
<span class="zhangkai_up"></span>
<span class="Text_tiny tinyText_wirte">收起职员</span>
</div>
</li>
</ul>
</div>
<div class="clear"></div>
</div>
</div>
</div>
</div> -->
<!-- <div v-show="listNewFolder.length > 0 && false">
<span class="fl label_text">自定义工作</span>
<span class="fr mt-10" @click="addProjFolderWork()"><i class="yiyunPlusmini"></i></span>
</div> -->
</div>
</div>
</div>
@@ -326,7 +165,7 @@
</el-form>
</div>
<!-- 选择负责人 -->
<div v-show="isShowSecondPage" class="PaincenterBox">
<div v-show="isShowSecondPage || isShowThreePage" class="PaincenterBox">
<div class="xiezuobox">
<!-- 左侧折叠面板 -->
<div class="yiyun_col-6 bg_text_wirte mt-8">
@@ -349,36 +188,17 @@
)" :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(
handleCheckedOne(
group_index,
user,
$event
)
" :disabled="disabled">
<div class="checkboxlabelitem">
<!-- <img v-lazy="headSrc + user.headImgUrl" alt="" class="user_info_faceImg" /> -->
<img :src="user.headImgUrl | resolveAvator" alt="" class="user_info_faceImg" />
<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.companyName
}}</a>
</li>
<li>
<a href="javascript:;">{{
user.phone
}}</a>
</li>
<li>
<a href="javascript:;">所在项目{{ user.projCount }}个</a>
</li>
</ul>
<span class="user_info_job" slot="reference">{{user.position }}</span>
</el-popover>
<span class="user_info_role">{{
user.roleName
}}</span>
@@ -395,244 +215,24 @@
<!-- 右侧折叠面板 -->
<div class="yiyun_col-6">
<h4 class="rightXiezuoren">已选职员</h4>
<div class="row_painfr">
<div class="yiyun_line"></div>
<span>工作负责人</span>
<div class="yiyun_line"></div>
<!-- 项目负责人选择前 isSlectPal -->
<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="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>
<el-popover placement="bottom-start" width="180" trigger="hover">
<ul class="popover_ul popover_ul">
<li>
<a href="javascript:;">{{ user.roleName }}</a>
</li>
<li>
<a href="javascript:;">{{ user.phone }}</a>
</li>
<li>
<a href="javascript:;">所在项目{{ user.projCount }}个</a>
</li>
</ul>
<span class="user_info_job" slot="reference">{{
user.position
}}</span>
</el-popover>
<span class="user_info_role">
<i class="el-icon-close largeclose" @click="removeManageUser(user)" title="移除负责人"></i>
</span>
</div>
</div>
<p class="diaTip">
工作负责人有且仅有一人,其将对:{{
currWorkName
}},进行职员指派。
</p>
</div>
<div v-if="isShowStaffList">
<div class="row_painfr" v-for="dept in listDeptComputed" :key="dept.id" >
<div class="yiyun_line"></div>
<div v-for="deptID in listDeptUserNoZero(selectedUser)" :key="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.id">
<img v-lazy="user.headImgUrl | resolveAvator" alt="" class="user_info_faceImg">
<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>
<li><a href="javascript:;">{{user.phone}}</a></li>
<li><a href="javascript:;">所在项目{{user.projCount}}个</a></li>
</ul>
<span class="user_info_job" slot="reference">{{user.position}}</span>
</el-popover>
<span class="user_info_role">
<!-- <template>
<el-select v-model="user.folderPerm" placeholder="设置角色" class="setroleselect">
<el-option v-for="item in roles" allow-create :key="item.value" :label="item.label"
:value="item.value">
<span style="float: left;margin-right:30px;">{{ item.label }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.description }}</span>
</el-option>
</el-select>
</template> -->
<i class="el-icon-close" @click="removeSelectUser(user)" title="移除协作人"></i>
</span>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- 选择员工 -->
<div v-show="isShowThreePage" class="PaincenterBox">
<div class="xiezuobox">
<!-- 左侧折叠面板 -->
<div class="yiyun_col-6 bg_text_wirte mt-8">
<div class="row_painfl">
<!-- 折叠面板 -->
<el-collapse accordion v-model="activeName">
<!-- 添加协作群与工作 -->
<el-collapse-item name="1" class="nomidline">
<template slot="title">
<el-checkbox class=" checkxiezuoren" style="color:white" v-model="ischeckAll" @change="handleCheckTopAll">全选</el-checkbox>
<span class="checkBoxCol">从部门中选择职员</span>
</template>
<el-collapse accordion v-for="(dept, group_index) in listDept" v-show="dept.listUser.length>0" :key="group_index">
<!-- 二级折叠面板 -->
<el-collapse-item>
<template slot="title">
<span class=" checkBoxCol">{{ dept.deptName }}
</span>
<el-checkbox class="checkxiezuoren" style="color:white" v-model="dept.selected" :key="group_index" @change="
handleCheckItemAll(group_index, $event)
">全选</el-checkbox>
</template>
<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"> -->
<el-checkbox class="checkBoxCol" v-model="user.selected" @change="
handleCheckedOne(group_index, user, $event)
" :disabled="disabled">
<div class="checkboxlabelitem">
<img :src="user.headImgUrl | resolveAvator" alt="" class="user_info_faceImg" />
<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.companyName
}}</a>
</li>
<li>
<a href="javascript:;">{{
user.phone
}}</a>
</li>
<li>
<a href="javascript:;">所在项目{{ user.projCount }}个</a>
</li>
</ul>
<span class="user_info_job" slot="reference">{{ user.position}}</span>
</el-popover>
<span class="user_info_role">{{
user.roleName
}}</span>
</div>
</el-checkbox>
</div>
</el-collapse-item>
</el-collapse>
</el-collapse-item>
</el-collapse>
</div>
</div>
<div class="shuxian"></div>
<!-- 右侧折叠面板 -->
<div class="yiyun_col-6">
<h4 class="rightXiezuoren" v-if="isShowManager">已选职员</h4>
<h4 class="rightXiezuoren" v-if="!isShowManager">已选项目负责人</h4>
<div class="row_painfr" v-if="isShowManager">
<div class="yiyun_line"></div>
<span>工作负责人</span>
<div class="yiyun_line"></div>
<!-- 项目负责人选择前 -->
<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="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>
<el-popover placement="bottom-start" width="180" trigger="hover">
<ul class="popover_ul popover_ul">
<li>
<a href="javascript:;">{{ user.roleName }}</a>
</li>
<li>
<a href="javascript:;">{{ user.phone }}</a>
</li>
<li>
<a href="javascript:;">所在项目{{ user.projCount }}个</a>
</li>
</ul>
<span class="user_info_job" slot="reference">{{user.position}}</span>
</el-popover>
<!-- <span class="user_info_role" @click="removeManageUser(user)">修改</span> -->
</div>
</div>
<p class="diaTip">
工作负责人有且仅有一人,其将对:{{
currWorkName
}},进行职员指派。
</p>
</div>
<!-- 选择职员 -->
<div v-if="isShowStaffList">
<div class="row_painfr" v-for="dept in listDept" v-show="dept.listUser.length > 0" :key="dept.id">
<div class="yiyun_line set-yiyun-line"></div>
<div>
<div class="row_painfr" v-for="dept in listDeptComputed" :key="dept.id" >
<div v-for="deptID in listDeptUserNoZero(selectedUser)" :key="deptID">
<div v-if="deptID == dept.id">
<div class="yiyun_line"></div>
<span>{{ dept.deptName }}</span>
</div>
<div v-if="deptID == dept.id">
<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.id">
<!-- <img v-lazy="headSrc + user.headImgUrl" alt="" class="user_info_faceImg" /> -->
<img :src="user.headImgUrl | resolveAvator" alt="" class="user_info_faceImg" />
<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>
<li>
<a href="javascript:;">{{ user.phone }}</a>
</li>
<li>
<a href="javascript:;">所在项目{{ user.projCount }}个</a>
</li>
</ul>
<span class="user_info_job" slot="reference">{{
user.position
}}</span>
</el-popover>
<span class="user_info_role" v-if="isShowManager">
<!-- <template>
<el-select v-model="user.folderPerm" placeholder="设置角色" class="setroleselect">
<el-option v-for="item in roles" allow-create :key="item.value" :label="item.label" :value="item.value">
<span style="float: left;margin-right:30px;">{{ item.label }}</span>
<span style="float: right; color: #8492a6; font-size: 13px">{{ item.description }}</span>
</el-option>
</el-select>
</template> -->
<i class="el-icon-close" @click="removeSelectUser(user)" title="移除协作人"></i>
</span>
<span class="user_info_role" v-if="!isShowManager">
<!-- <template>
<span style="float: left;margin-right:30px;">查看与编辑</span>
</template> -->
<i class="el-icon-close" @click="removeSelectUser(user)" title="移除项目负责人"></i>
</span>
<div class="renyuanbox" v-for="(user,index) in selectedUser" :key="index">
<div class="user_info_item" v-if="user.deptId == dept.id"
@click.stop="changeManagerClick(user)">
<i v-if="user.folderPerm == 2" title="负责人"
class="icon font_family icon-icon_huangguan-jihuo middlehuangguan fl set-crown-position"></i>
<img :src="user.headImgUrl | resolveAvator" alt="" class="user_info_faceImg">
<span class="user_info_name">{{user.cnName}}</span>
<span class="user_info_role">
<i class="el-icon-close" @click.stop="removeSelectUser(user)" title="移除协作人"></i>
</span>
</div>
</div>
</div>
@@ -640,6 +240,8 @@
</div>
</div>
</div>
<!-- 选择员工 -->
</div>
</div>
</div>
@@ -810,7 +412,24 @@ export default {
}
},
methods: {
/**
* 点击切换项目负责人 同一个用户点击两次可以切换状态
*/
changeManagerClick(clickUser) {
if(!this.isShowManager) {
// 如果是选择项目负责人 则不需要进行状态切换
return;
}
this.selectedUser.forEach(user => {
user.folderPerm = (user.id === clickUser.id) ? 2 : 1;
if(user.folderPerm === 2) {
this.InitData.manageUser.splice(0, 1, user);
} else {
this.InitData.manageUser.splice(0, 1);//取消选中的负责人状态
}
})
},
/**
* 判断用户是否是项目负责人
*/
@@ -1059,10 +678,10 @@ export default {
this.listDept[j].listUser[k].selected = true;
}
if(!this.isShowManager)
if(!this.isShowManager)//选择添加项目负责人职员
{
// if(this.currUser.accountId == sessionStorage.userId && sessionStorage.accountId == this.listDept[j].listUser[k].userID )
if(this.currUser.accountId == sessionStorage.userId && sessionStorage.accountId == this.listDept[j].listUser[k].id)
if(this.currUser.id == sessionStorage.userId && sessionStorage.userId == this.listDept[j].listUser[k].id)
{
this.listDept[j].listUser[k].selected = true;
}
@@ -1124,7 +743,12 @@ export default {
data.listUser=this.listManagerUser;
this.setFolderPerm(data);
this.selectedUser =data.listUser;
this.selectedUser = data.listUser;
let find = data.listUser.find(user => user.id === this.currUser.id);
if(!find) {
this.currUser.folderPerm = 2;//给项目的创建者设置权限 让它带上皇冠
data.listUser.push(this.currUser);
}
this.selectedManageUser = [];
this.isShowThreePage = true;
this.isShowFirstPage = false;
@@ -1210,24 +834,24 @@ export default {
/**
* 选择负责人
*/
handleCheckedOnlyOne(topIndex, user, e) {
//三级change事件
if (e) {
//将选中的人员返回给添加合作人页面
this.checkDeptUserName(e, user);
this.setManagerUser(user);
this.isSlectPal = false;
} else {
//将选中的人员返回给添加合作人页面
this.checkDeptUserName(e, user);
this.InitData.manageUser =[];
this.isSlectPal = true;
//debugger;
}
// handleCheckedOnlyOne(topIndex, user, e) {
// //三级change事件
// if (e) {
// //将选中的人员返回给添加合作人页面
// this.checkDeptUserName(e, user);
// this.setManagerUser(user);
// this.isSlectPal = false;
// } else {
// //将选中的人员返回给添加合作人页面
// this.checkDeptUserName(e, user);
// this.InitData.manageUser =[];
// this.isSlectPal = true;
// //debugger;
// }
this.getIsCheckSecondLevel(topIndex);
this.getIsCheckAll();
},
// this.getIsCheckSecondLevel(topIndex);
// this.getIsCheckAll();
// },
/**
* 当前二级选中状态修正
*/
@@ -1281,14 +905,31 @@ export default {
{
this.$notify.info({
title: "温馨提示",
message: "不能移除自己",
message: "不能移除自己",
offset: 100,
duration: 5000
});
return;
}
this.checkDeptUserName(false, item);
this.cancelCheck(item.id);
// 如果当前登录者是项目负责人分配的某个节点的负责人(不是项目负责人) 那么不能删除自己
// 自己指派自己是可以移除的
if(this.InitData.manageUser != ''&& this.InitData.manageUser[0].id == sessionStorage.userId && !this.allChildrenLists.includes(this.InitData))
{
this.$notify.info({
title: "温馨提示",
message: "没有权限移除自己。",
offset: 100,
duration: 5000
});
return;
}
if(item.folderPerm == 2) {
this.removeManageUser(item);
} else {
this.checkDeptUserName(false, item);
this.cancelCheck(item.id);
}
},
/**
* 移除负责人
@@ -1549,7 +1190,7 @@ export default {
const folderList = mergeFolderList(folder, userHash);
this.getfolderPerm(folderList)
this.listNewFolder = folderList;
console.log('得到的listNewFolder', this.listNewFolder);
// console.log('得到的listNewFolder', this.listNewFolder);
this.getAllChildrenLists(this.listNewFolder,this.userId,this.allChildrenLists);
},
async getUserList(){
@@ -1605,7 +1246,9 @@ export default {
Work: [],
};
params.ProjectManagerId = this.listManagerUser.length > 0 ? this.listManagerUser.map(projManager => {
return projManager.id;
if(projManager.id !== sessionStorage.createUserID) {
return projManager.id;
}
}).join(',') : '';
circleGetWorkData(this.listNewFolder);
@@ -1761,6 +1404,11 @@ function mergeFolderList(plainFolderList, userHash) {
.notclick .avtarface {
cursor:not-allowed;
}
.set-crown-position {
margin: 4px 10px 0 0;
}
.set-yiyun-line {
margin: 0 0 0 15px;
}
</style>

+ 1605
- 0
src/views/components_web/distWork/distWorkCopy.vue
Разлика између датотеке није приказан због своје велике величине
Прегледај датотеку


+ 2
- 2
src/views/components_web/distWork/folder-list.vue Прегледај датотеку

@@ -150,8 +150,8 @@ export default {
isAllowedAssignedFolder(user) {
return this.allManager.id == this.id //总负责人
|| (this.allManagerChild.length > 0 && this.allManagerChild.find(item=>item.id ==this.id))//是不是总负责人
||(this.allChildrenLists.length > 0 &&this.allChildrenLists.includes(user))//它的所有子节点
||user.manageUser != ''&&user.manageUser[0].id==this.id
||(this.allChildrenLists.length > 0 && this.allChildrenLists.includes(user))//它的所有子节点
//||user.manageUser != ''&&user.manageUser[0].id==this.id
},
isAllowedAssignedStaffFolder(folder){
return folder.manageUser != ''&&folder.manageUser[0].id==this.id||this.isAllowedAssignedFolder(folder)


+ 1
- 1
src/views/components_web/newProj/newProj.vue Прегледај датотеку

@@ -800,7 +800,7 @@
this.$confirm("放弃当前的新建项目,内容即将被清空。是否放弃?", "", {
confirmButtonText: "放弃",
cancelButtonText: "取消",
showClose:false,
// showClose:false,
type: "warning",
beforeClose: function(action, instance, done) {
if (action == 'confirm') {


+ 2
- 2
vue.config.js Прегледај датотеку

@@ -31,8 +31,8 @@ module.exports = {
devServer: {
proxy: {
'/api/pms': {
// target: 'http://47.104.91.134:8089',
target:'http://10.240.32.217:8089',
target: 'http://47.104.91.134:8089',
// target:'http://10.240.32.217:8089',

changeOrigin: true,
secure: false,


Loading…
Откажи
Сачувај