Merge branch 'v_1.0.0' of http://gitlab.ldxinyong.com/enterpriseManagement/digitization-ui into v_1.0.0
This commit is contained in:
commit
cf1bd504f9
@ -21,7 +21,9 @@
|
|||||||
"less": "^3.8.1",
|
"less": "^3.8.1",
|
||||||
"less-loader": "^4.1.0",
|
"less-loader": "^4.1.0",
|
||||||
"svg-sprite-loader": "^5.0.0",
|
"svg-sprite-loader": "^5.0.0",
|
||||||
|
"vconsole": "^3.3.4",
|
||||||
"vue": "^2.5.2",
|
"vue": "^2.5.2",
|
||||||
|
"vue-cookie": "^1.1.4",
|
||||||
"vue-router": "^3.0.1",
|
"vue-router": "^3.0.1",
|
||||||
"vuedraggable": "^2.24.2",
|
"vuedraggable": "^2.24.2",
|
||||||
"vuex": "^3.5.1"
|
"vuex": "^3.5.1"
|
||||||
|
|||||||
@ -57,7 +57,7 @@
|
|||||||
class="team-filter-content-right"
|
class="team-filter-content-right"
|
||||||
>
|
>
|
||||||
<div class="team-filter-content-right-header">
|
<div class="team-filter-content-right-header">
|
||||||
<div>已选择:{{seleactedList.length}}个</div>
|
<div>已选择:{{selectedList.length}}个</div>
|
||||||
<el-button
|
<el-button
|
||||||
type="text"
|
type="text"
|
||||||
@click="handleClear"
|
@click="handleClear"
|
||||||
@ -65,10 +65,10 @@
|
|||||||
>清空选择</el-button>
|
>清空选择</el-button>
|
||||||
</div>
|
</div>
|
||||||
<el-table
|
<el-table
|
||||||
:data="seleactedList"
|
:data="selectedList"
|
||||||
:show-header="false"
|
:show-header="false"
|
||||||
max-height="394"
|
max-height="394"
|
||||||
v-if="seleactedList.length>0"
|
v-if="selectedList.length>0"
|
||||||
>
|
>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
type="selection"
|
type="selection"
|
||||||
@ -129,7 +129,7 @@ export default {
|
|||||||
return {
|
return {
|
||||||
searchName: '',
|
searchName: '',
|
||||||
tableList: [],
|
tableList: [],
|
||||||
seleactedList: [],
|
selectedList: [],
|
||||||
pageInfo: {
|
pageInfo: {
|
||||||
currPage: 1,
|
currPage: 1,
|
||||||
pageSize: 500,
|
pageSize: 500,
|
||||||
@ -161,6 +161,9 @@ export default {
|
|||||||
methods: {
|
methods: {
|
||||||
handleDataList () {
|
handleDataList () {
|
||||||
apiGetEvaluationTeamList(Object.assign({}, this.pageInfo, this.filtersDic)).then(res => {
|
apiGetEvaluationTeamList(Object.assign({}, this.pageInfo, this.filtersDic)).then(res => {
|
||||||
|
if (res.code !== 200) {
|
||||||
|
return
|
||||||
|
}
|
||||||
this.pageInfo.currPage = res.data.currPage
|
this.pageInfo.currPage = res.data.currPage
|
||||||
this.pageInfo.totalCount = res.data.totalCount
|
this.pageInfo.totalCount = res.data.totalCount
|
||||||
this.pageInfo.totalPage = res.data.totalPage
|
this.pageInfo.totalPage = res.data.totalPage
|
||||||
@ -173,7 +176,6 @@ export default {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
// this.$ref.refChooseTable.toggleRowSelection()
|
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
handleSearchChange () {
|
handleSearchChange () {
|
||||||
@ -187,7 +189,7 @@ export default {
|
|||||||
handleCancel () {
|
handleCancel () {
|
||||||
this.handleClear()
|
this.handleClear()
|
||||||
this.tableList = []
|
this.tableList = []
|
||||||
this.seleactedList = []
|
this.selectedList = []
|
||||||
this.pageInfo = {
|
this.pageInfo = {
|
||||||
currPage: 1,
|
currPage: 1,
|
||||||
pageSize: 1,
|
pageSize: 1,
|
||||||
@ -198,31 +200,37 @@ export default {
|
|||||||
},
|
},
|
||||||
handleSubmit () {
|
handleSubmit () {
|
||||||
const obj = {
|
const obj = {
|
||||||
value: '',
|
value: '', // 考评组 ids 逗号隔开
|
||||||
title: ''
|
title: '', // 名称拼接
|
||||||
|
sumCounts: 0, // 选中考评组总人数
|
||||||
|
selectedList: []// 考评组名称
|
||||||
}
|
}
|
||||||
this.seleactedList.sort((a, b) => a.id - b.id).map(i => {
|
this.selectedList.sort((a, b) => a.id - b.id).map(i => {
|
||||||
obj.value += i.id + ','
|
obj.value += i.id + ','
|
||||||
})
|
})
|
||||||
obj.value = obj.value.substring(obj.value.length - 1, 0)
|
obj.value = obj.value.substring(obj.value.length - 1, 0)
|
||||||
obj.title = this.seleactedList.length > 0 ? (this.seleactedList[0].name + '等' + this.seleactedList.length + '个考评组') : ''
|
obj.title = this.selectedList.length > 0 ? (this.selectedList[0].name + '等' + this.selectedList.length + '个考评组') : ''
|
||||||
|
this.selectedList.forEach(element => {
|
||||||
|
obj.sumCounts += element.counts
|
||||||
|
})
|
||||||
|
obj.selectedList = this.selectedList
|
||||||
this.$emit('submitClick', obj)
|
this.$emit('submitClick', obj)
|
||||||
},
|
},
|
||||||
handleSelectionChange (val) {
|
handleSelectionChange (val) {
|
||||||
this.seleactedList = val
|
this.selectedList = val
|
||||||
},
|
},
|
||||||
handleCurrentChange (val) {
|
handleCurrentChange (val) {
|
||||||
this.pageInfo.currPage = val
|
this.pageInfo.currPage = val
|
||||||
this.handleDataList()
|
this.handleDataList()
|
||||||
},
|
},
|
||||||
handleClear () {
|
handleClear () {
|
||||||
if (this.seleactedList.length) {
|
if (this.selectedList.length) {
|
||||||
this.$refs.refChooseTable.clearSelection()
|
this.$refs.refChooseTable.clearSelection()
|
||||||
this.seleactedList = []
|
this.selectedList = []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
handleDelete (item, index) {
|
handleDelete (item, index) {
|
||||||
this.seleactedList.splice(index, 1)
|
this.selectedList.splice(index, 1)
|
||||||
this.$refs.refChooseTable.toggleRowSelection(item, false)
|
this.$refs.refChooseTable.toggleRowSelection(item, false)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -7,7 +7,8 @@
|
|||||||
:visible.sync="show"
|
:visible.sync="show"
|
||||||
@close='close'
|
@close='close'
|
||||||
width="800px"
|
width="800px"
|
||||||
center>
|
center
|
||||||
|
>
|
||||||
<div class="popup">
|
<div class="popup">
|
||||||
<div class="popup-item boderAndRadius">
|
<div class="popup-item boderAndRadius">
|
||||||
<div class="popup-item-title">
|
<div class="popup-item-title">
|
||||||
@ -25,17 +26,44 @@
|
|||||||
<div class="popup-item-content">
|
<div class="popup-item-content">
|
||||||
<div class="popup-item-content-item">
|
<div class="popup-item-content-item">
|
||||||
<div class="content">
|
<div class="content">
|
||||||
<el-checkbox :value ='isAll' @change="handleChangChoose($event)">全选</el-checkbox>
|
<el-checkbox
|
||||||
|
:value='isAll'
|
||||||
|
@change="handleChangChoose($event)"
|
||||||
|
>全选</el-checkbox>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div v-for="(i) in showData" :key="i.departmentId" class="popup-item-content-item borderItem">
|
<div
|
||||||
<div class="content"><el-checkbox :value ='handleCheck(i)' @change='handleChangChoose($event,i)' >{{i.departmentName}}</el-checkbox></div>
|
v-for="(i) in showData"
|
||||||
<div class="popup-item-content-item-next" :class="{isHasActive:handleCheck(i)|| (!i.list && !i.staffDtos)}" @click='handleNext(i)'>下级</div>
|
:key="i.departmentId"
|
||||||
|
class="popup-item-content-item borderItem"
|
||||||
|
>
|
||||||
|
<div class="content">
|
||||||
|
<el-checkbox
|
||||||
|
:value='handleCheck(i)'
|
||||||
|
@change='handleChangChoose($event,i)'
|
||||||
|
>{{i.departmentName}}</el-checkbox>
|
||||||
</div>
|
</div>
|
||||||
<div class="popup-item-content-item borderItem" v-for="i in staffDtos" :key="i.staffId" @click='handleChangChooseRenyuan(i)'>
|
<div
|
||||||
|
class="popup-item-content-item-next"
|
||||||
|
:class="{isHasActive:handleCheck(i)|| (!i.list && !i.staffDtos)}"
|
||||||
|
@click='handleNext(i)'
|
||||||
|
>下级</div>
|
||||||
|
</div>
|
||||||
|
<div
|
||||||
|
class="popup-item-content-item borderItem"
|
||||||
|
v-for="i in staffDtos"
|
||||||
|
:key="i.staffId"
|
||||||
|
@click='handleChangChooseRenyuan(i)'
|
||||||
|
>
|
||||||
<div class="popup-item-content-item-img">
|
<div class="popup-item-content-item-img">
|
||||||
<img src="@/assets/workbench/touxinag.jpg" alt="">
|
<img
|
||||||
<i v-if="handleCheck(i)" class="el-icon-check"></i>
|
src="@/assets/workbench/touxinag.jpg"
|
||||||
|
alt=""
|
||||||
|
>
|
||||||
|
<i
|
||||||
|
v-if="handleCheck(i)"
|
||||||
|
class="el-icon-check"
|
||||||
|
></i>
|
||||||
</div>
|
</div>
|
||||||
<div> {{i.name}}</div>
|
<div> {{i.name}}</div>
|
||||||
</div>
|
</div>
|
||||||
@ -47,19 +75,36 @@
|
|||||||
v-for="tag in tags"
|
v-for="tag in tags"
|
||||||
:key="tag.departmentName"
|
:key="tag.departmentName"
|
||||||
@close="handleClose(tag)"
|
@close="handleClose(tag)"
|
||||||
closable>
|
closable
|
||||||
|
>
|
||||||
{{tag.departmentName || tag.name}}
|
{{tag.departmentName || tag.name}}
|
||||||
</el-tag>
|
</el-tag>
|
||||||
<div class="commonFont noChoose" v-if="tags.length===0">
|
<div
|
||||||
|
class="commonFont noChoose"
|
||||||
|
v-if="tags.length===0"
|
||||||
|
>
|
||||||
暂无选择
|
暂无选择
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<span slot="footer" class="dialog-footer">
|
<span
|
||||||
<el-button size="mini" @click="handleCancel">取 消</el-button>
|
slot="footer"
|
||||||
<el-button size="mini" @click="tags=[]">清空全部</el-button>
|
class="dialog-footer"
|
||||||
<el-button size="mini" type="primary" @click="centerDialogVisible">确 定</el-button>
|
>
|
||||||
|
<el-button
|
||||||
|
size="mini"
|
||||||
|
@click="handleCancel"
|
||||||
|
>取 消</el-button>
|
||||||
|
<el-button
|
||||||
|
size="mini"
|
||||||
|
@click="tags=[]"
|
||||||
|
>清空全部</el-button>
|
||||||
|
<el-button
|
||||||
|
size="mini"
|
||||||
|
type="primary"
|
||||||
|
@click="centerDialogVisible"
|
||||||
|
>确 定</el-button>
|
||||||
</span>
|
</span>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
</div>
|
</div>
|
||||||
@ -360,7 +405,6 @@ export default {
|
|||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -85,7 +85,11 @@
|
|||||||
</div> -->
|
</div> -->
|
||||||
</div>
|
</div>
|
||||||
</popup-right>
|
</popup-right>
|
||||||
<popupRemovePerson :showPopup.sync='showPerson' />
|
<popupRemovePerson
|
||||||
|
:showPopup.sync='showPerson'
|
||||||
|
:startId='startId'
|
||||||
|
@cb="handlePopupRemoveList"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</template>
|
</template>
|
||||||
@ -105,7 +109,8 @@ export default {
|
|||||||
popupRightTitle: {
|
popupRightTitle: {
|
||||||
type: String,
|
type: String,
|
||||||
default: '选择'
|
default: '选择'
|
||||||
}
|
},
|
||||||
|
startId: null
|
||||||
},
|
},
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
@ -119,7 +124,8 @@ export default {
|
|||||||
popupRemovePerson
|
popupRemovePerson
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
|
'showPopup': function (newVal) {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
hundlePopupHide () {
|
hundlePopupHide () {
|
||||||
@ -131,7 +137,12 @@ export default {
|
|||||||
handleAdd () { },
|
handleAdd () { },
|
||||||
handleDelete () {
|
handleDelete () {
|
||||||
this.showPerson = true
|
this.showPerson = true
|
||||||
|
},
|
||||||
|
handlePopupRemoveList () {
|
||||||
|
console.log('要删除的人员')
|
||||||
|
this.$emit('update:showPopup', false)
|
||||||
}
|
}
|
||||||
|
|
||||||
// handlePermissionsRadio () {
|
// handlePermissionsRadio () {
|
||||||
// this.permissionsPrompt = this.permissionsRadio === '0' ? '被考核人的目标完成确认后,管理员和部门主管都可以调整目标' : '被考核人的目标完成确认后,只有管理员可以调整目标'
|
// this.permissionsPrompt = this.permissionsRadio === '0' ? '被考核人的目标完成确认后,管理员和部门主管都可以调整目标' : '被考核人的目标完成确认后,只有管理员可以调整目标'
|
||||||
// }
|
// }
|
||||||
|
|||||||
@ -1,4 +1,5 @@
|
|||||||
<template>
|
<template>
|
||||||
|
<div>
|
||||||
<popup-right
|
<popup-right
|
||||||
v-if="showPopup"
|
v-if="showPopup"
|
||||||
@cancel="hundlePopupHide"
|
@cancel="hundlePopupHide"
|
||||||
@ -7,7 +8,7 @@
|
|||||||
class="popup"
|
class="popup"
|
||||||
>
|
>
|
||||||
<div slot="content">
|
<div slot="content">
|
||||||
<div class="line-space ">
|
<div class="line-space commonFont">
|
||||||
<div class="line-space ">
|
<div class="line-space ">
|
||||||
<el-input
|
<el-input
|
||||||
v-model="rqAssessmentParameter.searchName"
|
v-model="rqAssessmentParameter.searchName"
|
||||||
@ -21,13 +22,35 @@
|
|||||||
<el-button
|
<el-button
|
||||||
@click="handleChooseDepartment"
|
@click="handleChooseDepartment"
|
||||||
size="small"
|
size="small"
|
||||||
>选择部门<i class="el-icon-arrow-down"></i></el-button>
|
><div class="popup-btn"><span class="popup-btn-left-title">{{deptFilterData.deptNames}}</span><i class="el-icon-arrow-down"></i></div></el-button>
|
||||||
<el-button
|
<el-button
|
||||||
@click="handleChooseGroup"
|
@click="handleChooseGroup"
|
||||||
size="small"
|
size="small"
|
||||||
>选择考评组<i class="el-icon-arrow-down"></i></el-button>
|
><div class="popup-btn"><span class="popup-btn-left-title">{{groupFilterData.groupNames}}</span><i class="el-icon-arrow-down"></i></div></el-button>
|
||||||
|
</div>
|
||||||
|
<div
|
||||||
|
v-if="groupFilterData.selectedList.length>0|| deptFilterData.showDataList.list.length>0"
|
||||||
|
class="popup-tags "
|
||||||
|
>
|
||||||
|
<span>筛选条件:</span>
|
||||||
|
<el-tag
|
||||||
|
v-for="(item, index) in deptFilterData.showDataList.list"
|
||||||
|
:key="index+'dept'"
|
||||||
|
@close="handleTagDeptClose(item,index)"
|
||||||
|
closable
|
||||||
|
>{{ item.departmentName }}
|
||||||
|
</el-tag>
|
||||||
|
<el-tag
|
||||||
|
v-for="(item, index) in groupFilterData.selectedList"
|
||||||
|
:key="index+'group'"
|
||||||
|
effect="plain"
|
||||||
|
type="warning"
|
||||||
|
@close="handleTagGroupClose(item,index)"
|
||||||
|
closable
|
||||||
|
>{{ item.name }}
|
||||||
|
</el-tag>
|
||||||
|
<span>共筛选出<span class="comonBlue">{{deptFilterData.sumPerson + groupFilterData.sumPerson}}</span>人</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<div class="popup-table">
|
<div class="popup-table">
|
||||||
<el-table
|
<el-table
|
||||||
@ -40,16 +63,23 @@
|
|||||||
>
|
>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
type="selection"
|
type="selection"
|
||||||
width="40"
|
width="40px"
|
||||||
:reserve-selection="true"
|
:reserve-selection="true"
|
||||||
></el-table-column>
|
></el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
label="姓名"
|
label="姓名"
|
||||||
width="250"
|
width="55px"
|
||||||
><template slot-scope="scope"><img
|
><template slot-scope="scope">
|
||||||
src="xx"
|
<img
|
||||||
|
:src="scope.row.avatar"
|
||||||
class="popup-table-img"
|
class="popup-table-img"
|
||||||
/>{{scope.row.name}}</template></el-table-column>
|
/>
|
||||||
|
</template></el-table-column>
|
||||||
|
<el-table-column>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
{{scope.row.staffName}}
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
<div
|
<div
|
||||||
v-else
|
v-else
|
||||||
@ -77,10 +107,42 @@
|
|||||||
class="popup-footer-left"
|
class="popup-footer-left"
|
||||||
>已选择:{{popupData.selectedList.length}}个</div>
|
>已选择:{{popupData.selectedList.length}}个</div>
|
||||||
</popup-right>
|
</popup-right>
|
||||||
|
|
||||||
|
<EvaluationTeamFilter
|
||||||
|
v-if="visibleGroupFilter"
|
||||||
|
:value='groupFilterData.evaluationIds'
|
||||||
|
:filtersDic="{startId: this.startId }"
|
||||||
|
:dialogVisible.sync='visibleGroupFilter'
|
||||||
|
@submitClick='handleTeamSubmit'
|
||||||
|
@close='visibleGroupFilter = false'
|
||||||
|
/>
|
||||||
|
|
||||||
|
<dialog-depart
|
||||||
|
v-if="visibleDeptFilter"
|
||||||
|
:isShow.sync='visibleDeptFilter'
|
||||||
|
:showDataList.sync='deptFilterData.showDataList'
|
||||||
|
@cb="handleDeptSubmit"
|
||||||
|
/>
|
||||||
|
<el-dialog title="删除确认" :visible.sync="visibleRemovePerson" width="440px">
|
||||||
|
<div class="commonFont line-space">确认将选中的{{popupData.selectedList.length}}人,从考核中删除,删除后,绩效考核数据将被清空,数据无法恢复,请确认是否删除</div>
|
||||||
|
<div class="commonFont line-space">请在下方输入框中输入<span style="color: red;">“删除”</span>二字,确认您已知晓删除将导致数据无法恢复</div>
|
||||||
|
<div><el-input v-model="removeConfirmInput" placeholder="请输入“删除二字”" size="small"></el-input></div>
|
||||||
|
<div slot="footer">
|
||||||
|
<el-button @click="visibleRemovePerson = false" size="small">取 消</el-button>
|
||||||
|
<el-button @click="handleConfirmRemovePerson" type="primary" size="small" :disabled="removeConfirmInput!=='删除'">确 定</el-button>
|
||||||
|
</div>
|
||||||
|
</el-dialog>
|
||||||
|
</div>
|
||||||
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import PopupRight from '@/components/PopupRight'
|
import PopupRight from '@/components/PopupRight'
|
||||||
|
import EvaluationTeamFilter from '@/components/EvaluationTeamFilter'
|
||||||
|
import dialogDepart from '@/components/getDepart'
|
||||||
|
|
||||||
|
import { apiManagerDetail } from '@/api/assessment'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
props: {
|
props: {
|
||||||
title: {
|
title: {
|
||||||
@ -90,10 +152,32 @@ export default {
|
|||||||
showPopup: {
|
showPopup: {
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
default: false
|
default: false
|
||||||
}
|
},
|
||||||
|
startId: null
|
||||||
|
|
||||||
},
|
},
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
|
visibleRemovePerson: false, // 显示删除人员提示
|
||||||
|
removeConfirmInput: '', // 删除确认文案
|
||||||
|
visibleGroupFilter: false, // 考评组筛选
|
||||||
|
groupFilterData: {
|
||||||
|
groupNames: '选择考评组',
|
||||||
|
evaluationIds: '', // 选中值group
|
||||||
|
selectedList: [], // 选中考评组
|
||||||
|
sumPerson: 0 // 考评组 总人数
|
||||||
|
},
|
||||||
|
visibleDeptFilter: false, // 部门组筛选
|
||||||
|
deptFilterData: {
|
||||||
|
staffIds: '', // 人员id
|
||||||
|
deptNames: '选择部门',
|
||||||
|
showDataList: {
|
||||||
|
list: [],
|
||||||
|
title: '',
|
||||||
|
value: '' // 选中值部门ids
|
||||||
|
}, // 选中考评组
|
||||||
|
sumPerson: 0 // 考评部门 总人数
|
||||||
|
},
|
||||||
popupData: {
|
popupData: {
|
||||||
tableList: [],
|
tableList: [],
|
||||||
selectedList: []
|
selectedList: []
|
||||||
@ -103,62 +187,223 @@ export default {
|
|||||||
pageSize: 100,
|
pageSize: 100,
|
||||||
searchName: '',
|
searchName: '',
|
||||||
totalCount: 1,
|
totalCount: 1,
|
||||||
totalPage: 1
|
totalPage: 1,
|
||||||
|
evaluationIds: '', // 考勤组ids
|
||||||
|
staffIds: '', // 部门 id串
|
||||||
|
startId: ''// 考核id
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
components: {
|
components: {
|
||||||
PopupRight
|
PopupRight,
|
||||||
|
dialogDepart,
|
||||||
|
EvaluationTeamFilter
|
||||||
},
|
},
|
||||||
computed: {},
|
computed: {},
|
||||||
beforeMount () { },
|
beforeMount () { },
|
||||||
mounted () { },
|
mounted () { },
|
||||||
methods: {
|
methods: {
|
||||||
|
handleGetRowKeys (row) {
|
||||||
|
return row.id
|
||||||
|
},
|
||||||
handlePopupSearchChange (val) {
|
handlePopupSearchChange (val) {
|
||||||
// 去搜搜
|
// 去搜搜
|
||||||
this.handleGainAssessmentGroupList()
|
this.handleGainAssessmentGroupList()
|
||||||
},
|
},
|
||||||
handleChooseDepartment () {
|
handleChooseDepartment () {
|
||||||
|
this.visibleDeptFilter = true
|
||||||
},
|
},
|
||||||
handleChooseGroup () {
|
handleChooseGroup () {
|
||||||
|
this.visibleGroupFilter = true
|
||||||
},
|
},
|
||||||
handleSelectionChange (val) {
|
handleSelectionChange (val) {
|
||||||
// 选择发生变化
|
// 选择发生变化
|
||||||
this.popupData.selectedList = val
|
this.popupData.selectedList = val
|
||||||
},
|
},
|
||||||
handleEmpty () {
|
|
||||||
this.showChooseList = false
|
|
||||||
// 新建考评组
|
|
||||||
// this.$router.push({ name: 'workbench-edit-group' })
|
|
||||||
},
|
|
||||||
handleSubmitPopup () {
|
handleSubmitPopup () {
|
||||||
const list = this.popupData.selectedList
|
// 确定选择
|
||||||
|
this.visibleRemovePerson = true
|
||||||
|
// const list = this.popupData.selectedList
|
||||||
|
// this.$emit('update:showPopup', false)
|
||||||
|
},
|
||||||
|
handleConfirmRemovePerson () {
|
||||||
|
// 确认删除 选中用户 删除成功页面刷新
|
||||||
|
console.log('删除')
|
||||||
|
this.visibleRemovePerson = false
|
||||||
|
this.$emit('update:showPopup', false)
|
||||||
|
this.$emit('cb')
|
||||||
},
|
},
|
||||||
hundlePopupHide () {
|
hundlePopupHide () {
|
||||||
this.$emit('update:showPopup', false)
|
this.$emit('update:showPopup', false)
|
||||||
},
|
},
|
||||||
handleCurrentChange (val) {
|
handleCurrentChange () {
|
||||||
this.handleGainAssessmentGroupList(val)
|
this.handleGainAssessmentGroupList()
|
||||||
},
|
},
|
||||||
// 获取数据
|
// 获取数据
|
||||||
handleGainAssessmentGroupList (currPage) {
|
handleGainAssessmentGroupList () {
|
||||||
|
this.rqAssessmentParameter.startId = this.startId
|
||||||
|
apiManagerDetail(this.rqAssessmentParameter).then(res => {
|
||||||
|
if (res.code !== 200) {
|
||||||
|
return
|
||||||
}
|
}
|
||||||
|
this.rqAssessmentParameter.totalPage = res.data.totalPage
|
||||||
|
this.rqAssessmentParameter.totalCount = res.data.totalCount
|
||||||
|
this.rqAssessmentParameter.currPage = res.data.currPage
|
||||||
|
this.popupData.tableList = res.data.list
|
||||||
|
console.log('获取数据成功')
|
||||||
|
})
|
||||||
},
|
},
|
||||||
watch: {}
|
// 部门筛选
|
||||||
|
handleDeptSubmit (val) {
|
||||||
|
this.deptFilterData.showDataList = val
|
||||||
|
console.log('部门筛选--====-==-== ', val)
|
||||||
|
let deptNames = []
|
||||||
|
this.deptFilterData.showDataList.list.forEach(item => {
|
||||||
|
deptNames.push(item.departmentName)
|
||||||
|
})
|
||||||
|
this.deptFilterData.deptNames = deptNames.join()
|
||||||
|
// 递归方法 生成 json tree 数据
|
||||||
|
this.handleGainDeptData()
|
||||||
|
this.visibleDeptFilter = false
|
||||||
|
},
|
||||||
|
handleGainDeptData () {
|
||||||
|
// 获取真实数据 重新选择 删除标签
|
||||||
|
let dicIds = {}
|
||||||
|
this.handleGainDeptPerson(dicIds, this.deptFilterData.showDataList.list)
|
||||||
|
let arrPersonId = Object.keys(dicIds)
|
||||||
|
this.deptFilterData.sumPerson = arrPersonId.length
|
||||||
|
this.deptFilterData.staffIds = arrPersonId.join()
|
||||||
|
// 重新获取数据
|
||||||
|
this.rqAssessmentParameter.staffIds = this.deptFilterData.staffIds
|
||||||
|
this.handleGainAssessmentGroupList()
|
||||||
|
console.log('部门筛选--====-==-== ', this.deptFilterData)
|
||||||
|
},
|
||||||
|
handleGainDeptPerson (dicArr, list) {
|
||||||
|
for (let index = 0; index < list.length; index++) {
|
||||||
|
const dept = list[index]
|
||||||
|
for (let index = 0; index < dept.staffDtos.length; index++) {
|
||||||
|
const person = dept.staffDtos[index]
|
||||||
|
dicArr[person.staffId.toString()] = 1
|
||||||
|
}
|
||||||
|
if (dept.list instanceof Array) {
|
||||||
|
if (dept.list.length > 0) {
|
||||||
|
this.handleGainDeptPerson(dicArr, dept.list)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
handleTagDeptClose (item, index) {
|
||||||
|
this.deptFilterData.showDataList.list.splice(index, 1)
|
||||||
|
this.handleGainDeptData()
|
||||||
|
let newTitle = '选择部门'
|
||||||
|
let newVal = ''
|
||||||
|
if (this.deptFilterData.showDataList.list.length > 0) {
|
||||||
|
let titles = this.deptFilterData.deptNames.split(',')
|
||||||
|
let vals = this.deptFilterData.showDataList.value.split(',')
|
||||||
|
titles.splice(titles.indexOf(item.departmentName), 1)
|
||||||
|
vals.splice(vals.indexOf(item.departmentId), 1)
|
||||||
|
newTitle = titles.join()
|
||||||
|
newVal = vals.join()
|
||||||
|
}
|
||||||
|
this.deptFilterData.deptNames = newTitle
|
||||||
|
this.deptFilterData.showDataList.value = newVal
|
||||||
|
},
|
||||||
|
// 考评组筛选
|
||||||
|
handleTeamSubmit (val) {
|
||||||
|
let groupNames = []
|
||||||
|
val.selectedList.forEach((item) => {
|
||||||
|
groupNames.push(item.name)
|
||||||
|
})
|
||||||
|
this.groupFilterData.groupNames = groupNames.join()
|
||||||
|
this.visibleGroupFilter = false
|
||||||
|
this.groupFilterData.selectedList = val.selectedList
|
||||||
|
this.groupFilterData.sumPerson = val.sumCounts
|
||||||
|
this.groupFilterData.evaluationIds = val.value
|
||||||
|
this.rqAssessmentParameter.evaluationIds = val.value
|
||||||
|
// 重新获取
|
||||||
|
this.handleGainAssessmentGroupList()
|
||||||
|
},
|
||||||
|
handleTagGroupClose (item, index) {
|
||||||
|
this.groupFilterData.sumPerson -= item.counts
|
||||||
|
this.groupFilterData.selectedList.splice(index, 1)
|
||||||
|
let groupIds = ''
|
||||||
|
let groupNameStr = '选择考评组'
|
||||||
|
if (this.groupFilterData.selectedList.length > 0) {
|
||||||
|
let arrS = []
|
||||||
|
let groupNames = []
|
||||||
|
this.groupFilterData.selectedList.forEach((item) => {
|
||||||
|
arrS.push(item.id)
|
||||||
|
groupNames.push(item.name)
|
||||||
|
})
|
||||||
|
groupIds = arrS.join()
|
||||||
|
groupNameStr = groupNames.join()
|
||||||
|
}
|
||||||
|
this.groupFilterData.evaluationIds = groupIds
|
||||||
|
this.groupFilterData.groupNames = groupNameStr
|
||||||
|
|
||||||
|
// 重新获取
|
||||||
|
this.rqAssessmentParameter.evaluationIds = groupIds
|
||||||
|
this.handleGainAssessmentGroupList()
|
||||||
|
}
|
||||||
|
},
|
||||||
|
watch: {
|
||||||
|
'showPopup': function (newVal, oldVal) {
|
||||||
|
if (newVal) {
|
||||||
|
this.handleGainAssessmentGroupList()
|
||||||
|
console.log('显示人员选择---------')
|
||||||
|
} else {
|
||||||
|
this.rqAssessmentParameter.startId = null
|
||||||
|
this.rqAssessmentParameter.staffIds = ''
|
||||||
|
this.rqAssessmentParameter.evaluationIds = ''
|
||||||
|
this.rqAssessmentParameter.searchName = ''
|
||||||
|
this.rqAssessmentParameter.currPage = 1
|
||||||
|
this.rqAssessmentParameter.totalCount = 1
|
||||||
|
this.rqAssessmentParameter.totalPage = 1
|
||||||
|
this.staffIds = ''
|
||||||
|
this.popupData.tableList = []
|
||||||
|
this.popupData.selectedList = []
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang='less' scoped>
|
<style lang='less' scoped>
|
||||||
.popup {
|
|
||||||
.line-space {
|
.line-space {
|
||||||
margin-bottom: 20px;
|
margin-bottom: 20px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.popup {
|
||||||
|
max-width: 440px;
|
||||||
|
.el-button {
|
||||||
|
max-width: 104px;
|
||||||
|
width: 104px;
|
||||||
|
}
|
||||||
|
&-btn{
|
||||||
|
display: flex;
|
||||||
|
&-left-title {
|
||||||
|
width: 74px;
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.el-tag{
|
||||||
|
margin-right: 10px;
|
||||||
|
margin-top: 10px;
|
||||||
|
}
|
||||||
|
&-tags {
|
||||||
|
width: 440px;
|
||||||
|
word-break: break-all;
|
||||||
|
}
|
||||||
&-table {
|
&-table {
|
||||||
|
width: 440px;
|
||||||
|
.el-table {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
&-img {
|
&-img {
|
||||||
width: 34px;
|
width: 34px;
|
||||||
height: 34px;
|
height: 34px;
|
||||||
|
|||||||
@ -28,6 +28,10 @@
|
|||||||
color: #9b9b9b;
|
color: #9b9b9b;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.comonBlue {
|
||||||
|
color: @fontBlue;
|
||||||
|
}
|
||||||
|
|
||||||
.common-main {
|
.common-main {
|
||||||
background-color: white;
|
background-color: white;
|
||||||
padding: 40px 20px;
|
padding: 40px 20px;
|
||||||
|
|||||||
@ -176,6 +176,7 @@
|
|||||||
<popupMange
|
<popupMange
|
||||||
:showPopup.sync="showPopupMange"
|
:showPopup.sync="showPopupMange"
|
||||||
popupRightTitle="管理绩效考核"
|
popupRightTitle="管理绩效考核"
|
||||||
|
:startId='options.startId'
|
||||||
@cb="handlePopupMangeSubmit"
|
@cb="handlePopupMangeSubmit"
|
||||||
/>
|
/>
|
||||||
<popupRemovePerson
|
<popupRemovePerson
|
||||||
|
|||||||
@ -207,7 +207,9 @@ export default {
|
|||||||
}
|
}
|
||||||
apiInitiateAssessmentInfo(para).then(res => {
|
apiInitiateAssessmentInfo(para).then(res => {
|
||||||
this.dialogSendVisible = false
|
this.dialogSendVisible = false
|
||||||
console.log('发起考核成功', res)
|
if (res.code !== 200) {
|
||||||
|
return
|
||||||
|
}
|
||||||
this.$router.push({ name: 'assessment-stepList', query: { id: res.data.id, name: 'assessment-homeList' } })
|
this.$router.push({ name: 'assessment-stepList', query: { id: res.data.id, name: 'assessment-homeList' } })
|
||||||
this.$message({
|
this.$message({
|
||||||
message: res.msg,
|
message: res.msg,
|
||||||
|
|||||||
@ -83,6 +83,9 @@ export default {
|
|||||||
methods: {
|
methods: {
|
||||||
handleGetList () {
|
handleGetList () {
|
||||||
apiGetWaitList(this.pageSelectedInfo).then(res => {
|
apiGetWaitList(this.pageSelectedInfo).then(res => {
|
||||||
|
if (res.code !== 200) {
|
||||||
|
return
|
||||||
|
}
|
||||||
this.pageSelectedInfo.currPage = res.data.currPage
|
this.pageSelectedInfo.currPage = res.data.currPage
|
||||||
this.pageSelectedInfo.totalCount = res.data.totalCount
|
this.pageSelectedInfo.totalCount = res.data.totalCount
|
||||||
this.pageSelectedInfo.totalPage = res.data.totalPage
|
this.pageSelectedInfo.totalPage = res.data.totalPage
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user