This commit is contained in:
熊成强 2020-11-04 09:15:49 +08:00
commit cf1bd504f9
9 changed files with 531 additions and 211 deletions

View File

@ -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"

View File

@ -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)
} }
} }

View File

@ -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,19 +26,46 @@
<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>
</div> </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>
@ -112,7 +157,7 @@ export default {
return this.staffDtos.every(i => this.tags.some(j => i.departmentId === j.departmentId)) && this.showData.every(i => this.tags.some(j => i.departmentId === j.departmentId)) return this.staffDtos.every(i => this.tags.some(j => i.departmentId === j.departmentId)) && this.showData.every(i => this.tags.some(j => i.departmentId === j.departmentId))
} }
}, },
beforeMount () {}, beforeMount () { },
mounted () { mounted () {
this.data = this.deplist this.data = this.deplist
this.tags = this.showDataList.list.concat([]) || [] this.tags = this.showDataList.list.concat([]) || []
@ -265,56 +310,56 @@ export default {
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
.noChoose{ .noChoose {
width: 100%; width: 100%;
height: 200px; height: 200px;
.center(); .center();
} }
.popup{ .popup {
min-height: 100px; min-height: 100px;
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
&-item{ &-item {
width: 48%; width: 48%;
box-sizing: border-box; box-sizing: border-box;
overflow: auto; overflow: auto;
padding: 10px 0; padding: 10px 0;
&-right{ &-right {
padding: 10px !important; padding: 10px !important;
height: 500px; height: 500px;
box-sizing: border-box; box-sizing: border-box;
overflow: auto; overflow: auto;
.el-tag{ .el-tag {
margin: 5px 6px; margin: 5px 6px;
} }
} }
.isActiveTitle{ .isActiveTitle {
color: @fontBlue; color: @fontBlue;
} }
&-title{ &-title {
color:#9b9b9b; color: #9b9b9b;
padding-bottom: 4px; padding-bottom: 4px;
border-bottom: 1px solid @borderColor; border-bottom: 1px solid @borderColor;
padding: 10px; padding: 10px;
} }
&-content{ &-content {
height: 400px; height: 400px;
overflow: auto; overflow: auto;
.borderItem{ .borderItem {
border-top: 1px solid @borderColor; border-top: 1px solid @borderColor;
} }
&-item:nth-last-child(1){ &-item:nth-last-child(1) {
border-bottom: 1px solid @borderColor; border-bottom: 1px solid @borderColor;
} }
&-item{ &-item {
&-img{ &-img {
margin:0 10px; margin: 0 10px;
width: 26px; width: 26px;
height: 26px; height: 26px;
border-radius: 50%; border-radius: 50%;
overflow: hidden; overflow: hidden;
position: relative; position: relative;
i{ i {
position: absolute; position: absolute;
top: 0; top: 0;
bottom: 0; bottom: 0;
@ -325,7 +370,7 @@ export default {
font-size: 26px; font-size: 26px;
color: @fontBlue; color: @fontBlue;
} }
img{ img {
width: 100%; width: 100%;
height: 100%; height: 100%;
} }
@ -335,51 +380,50 @@ export default {
box-sizing: border-box; box-sizing: border-box;
display: flex; display: flex;
align-items: center; align-items: center;
.isHasActive{ .isHasActive {
color: rgba(196, 196, 196, 0.933) !important; color: rgba(196, 196, 196, 0.933) !important;
border-left: 1px solid rgba(196, 196, 196, 0.933) !important; border-left: 1px solid rgba(196, 196, 196, 0.933) !important;
} }
.content{ .content {
flex: 1; flex: 1;
padding:0 10px; padding: 0 10px;
height: 100%; height: 100%;
} }
.content:hover{ .content:hover {
background: rgb(238, 238, 238); background: rgb(238, 238, 238);
} }
&-next{ &-next {
padding:0 10px; padding: 0 10px;
border-left: 1px solid @fontBlue; border-left: 1px solid @fontBlue;
color: @fontBlue; color: @fontBlue;
height: 20px; height: 20px;
cursor: pointer; cursor: pointer;
} }
.el-checkbox{ .el-checkbox {
width: 100%; width: 100%;
height: 100%; height: 100%;
display: flex; display: flex;
align-items: center; align-items: center;
} }
} }
} }
} }
} }
</style> </style>
<style lang='less'> <style lang='less'>
.el-dialog{ .el-dialog {
border-radius: 6px; border-radius: 6px;
} }
.el-dialog__header{ .el-dialog__header {
border-bottom: 1px solid @borderColor; border-bottom: 1px solid @borderColor;
} }
.el-dialog__footer{ .el-dialog__footer {
border-top: 1px solid @borderColor; border-top: 1px solid @borderColor;
} }
.el-dialog__title{ .el-dialog__title {
font-size: 14px; font-size: 14px;
} }
.dialog-footer{ .dialog-footer {
display: flex; display: flex;
justify-content: flex-end; justify-content: flex-end;
} }

View File

@ -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' ? '' : ''
// } // }

View File

@ -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"
@ -17,17 +18,39 @@
size="small" size="small"
></el-input> ></el-input>
</div> </div>
<div> <div >
<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;

View File

@ -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;

View File

@ -176,6 +176,7 @@
<popupMange <popupMange
:showPopup.sync="showPopupMange" :showPopup.sync="showPopupMange"
popupRightTitle="管理绩效考核" popupRightTitle="管理绩效考核"
:startId='options.startId'
@cb="handlePopupMangeSubmit" @cb="handlePopupMangeSubmit"
/> />
<popupRemovePerson <popupRemovePerson

View File

@ -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,

View File

@ -15,7 +15,7 @@
</div> </div>
<div class="todo-content-right"> <div class="todo-content-right">
<div v-if="selectedTableList.length > 0"> <div v-if="selectedTableList.length > 0">
<tableItem :selectedTableList='selectedTableList'/> <tableItem :selectedTableList='selectedTableList' />
<el-pagination <el-pagination
:hide-on-single-page="true" :hide-on-single-page="true"
:current-page.sync="pageSelectedInfo.currPage" :current-page.sync="pageSelectedInfo.currPage"
@ -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