This commit is contained in:
熊成强 2020-10-27 17:22:33 +08:00
parent b67b061274
commit e335a714a0
4 changed files with 100 additions and 39 deletions

View File

@ -17,3 +17,21 @@ export function apiDeleteAssessList (query) {
params: query params: query
}) })
} }
// 获取考核详情列表人数统计
export function apiChartList (query) {
return request({
url: '/lz_management/performance/assess/manager/chart',
method: 'post',
data: query
})
}
// 获取考核详情列表
export function apiManagerDetail (query) {
return request({
url: '/lz_management/performance/assess/manager/detail',
method: 'post',
data: query
})
}

View File

@ -47,3 +47,6 @@ a:hover img{ border:none;}
* html .clearfix { height: 1%;} * html .clearfix { height: 1%;}
.clearfix {display: block;} .clearfix {display: block;}
/* End hide from IE-mac */ /* End hide from IE-mac */
div{
box-sizing: border-box;
}

View File

@ -164,7 +164,7 @@ export default {
this.handleGetData(Object.assign({}, this.form, this.params)) this.handleGetData(Object.assign({}, this.form, this.params))
}, },
handlePush (id) { handlePush (id) {
this.$router.push({name: 'assessment-stepList', query: {id: 10, name: 'workbench-home'}}) this.$router.push({name: 'assessment-stepList', query: {id: 10}})
}, },
async handleGetData (parmas = this.params) { async handleGetData (parmas = this.params) {
try { try {

View File

@ -9,18 +9,19 @@
<div class="step-content boderAndRadius"> <div class="step-content boderAndRadius">
<div class="step-content-top"> <div class="step-content-top">
<div class="step-content-top-left"> <div class="step-content-top-left">
<el-button size="small" plain>选择部门<i style="margin-left:10px;" class="el-icon-arrow-down"></i></el-button> <el-button size="small" @click="handleChoose" plain>{{formTitle}}<i style="margin-left:10px;" class="el-icon-arrow-down"></i></el-button>
<el-button size="small" plain>选择考评组<i style="margin-left:10px;" class="el-icon-arrow-down"></i></el-button> <el-button size="small" @click="kaopingFrom.showRight = true" plain>选择考评组<i style="margin-left:10px;" class="el-icon-arrow-down"></i></el-button>
<el-input size="small" style="margin-left:10px;" v-model="formInline.user" prefix-icon="el-icon-search" placeholder="请输入姓名搜索"></el-input> <el-input size="small" style="margin-left:10px;" v-model="formInline.user" prefix-icon="el-icon-search" placeholder="请输入姓名搜索"></el-input>
</div> </div>
<div class="step-content-top-right"> <div class="step-content-top-right">
<el-button size="small" type="primary">开始评分</el-button> <el-button size="small" type="primary">开始评分</el-button>
<el-button size="small" plain>更多</el-button> <!-- handleGetList handleChoose -->
<el-button size="small" @click="handleGetList" plain>更多</el-button>
</div> </div>
</div> </div>
<div class="step-content-center boderAndRadius"> <div class="step-content-center boderAndRadius">
<div class="step-content-center-item commonFont" v-for="(i,index) in titleList" :key="i.id"> <div class="step-content-center-item commonFont" v-for="(i,index) in titleList" :key="i.id">
<span class="hover" style="cursor: pointer;">{{i.name}}({{i.number}})</span> <span class="hover" :class="{active:i.active}" @click="handleActive(i)" style="cursor: pointer;">{{i.desc}}( {{i.num}} )</span>
<div v-if="index<titleList.length-1" class="step-content-center-item-img"> <div v-if="index<titleList.length-1" class="step-content-center-item-img">
<div v-if="titleList.length>2 && index===0" class='shuxian'></div> <div v-if="titleList.length>2 && index===0" class='shuxian'></div>
<i v-else class="el-icon-arrow-right"></i> <i v-else class="el-icon-arrow-right"></i>
@ -57,15 +58,45 @@
</el-table> </el-table>
</div> </div>
</div> </div>
<popup-right v-if="kaopingFrom.showRight" @cancel='handleCancel' @submit="handleSubmit" title="考评组筛选">
<div slot="content" class="chooseManage">
66
<!-- <div v-for="i in GroundList" :key="i.staffId" class="chooseManage-item" >
<el-checkbox :true-label='1' :false-label='0' :disabled='i.isDisable===1' :checked='i.isDisable===1' v-model='i.isSelect'></el-checkbox><span class='commonFont' style="margin:0 0 0 10px;">{{i.staffName}} </span>
</div> -->
</div>
</popup-right>
<getPersonnel v-if="form.isShowPersonnel" :value.sync='params.staffIds' :isShow.sync='form.isShowPersonnel' :showDataList.sync='form.personnelList'/>
</div> </div>
</template> </template>
<script> <script>
import SmallNav from '@/components/kpi-layout/SmallNav' import SmallNav from '@/components/kpi-layout/SmallNav'
import getPersonnel from '@/components/getPersonnel'
import PopupRight from '@/components/PopupRight'
import { apiManagerDetail, apiChartList } from '@/api/assessment'
let id = 0 let id = 0
export default { export default {
data () { data () {
return { return {
kaopingFrom: {
showRight: false
},
form: {
isShowPersonnel: false,
personnelList: {
list: []
}
},
params: {
'currPage': 1,
// 'evaluationIds': '',
'flowProcess': 0,
'pageSize': 10,
// 'staffIds': '',
// 'staffName': '',
'startId': 10
},
tableData: [{ tableData: [{
date: '2016-05-02', date: '2016-05-02',
name: '王小虎', name: '王小虎',
@ -84,35 +115,7 @@ export default {
address: '上海市普陀区金沙江路 1516 弄' address: '上海市普陀区金沙江路 1516 弄'
}], }],
formInline: {}, formInline: {},
titleList: [{ titleList: [],
id: 10,
name: '全部',
number: 5
}, {
id: 11,
name: '全部',
number: 5
}, {
id: 12,
name: '全部',
number: 5
}, {
id: 13,
name: '全部',
number: 5
}, {
id: 14,
name: '全部',
number: 5
}, {
id: 15,
name: '全部',
number: 5
}, {
id: 10,
name: '全部',
number: 5
}],
props: { props: {
lazy: true, lazy: true,
lazyLoad: (node, resolve) => { lazyLoad: (node, resolve) => {
@ -134,12 +137,49 @@ export default {
} }
}, },
components: { components: {
SmallNav SmallNav,
getPersonnel,
PopupRight
},
computed: {
formTitle () {
return this.form.personnelList.list.length > 0 ? this.form.personnelList.title + '等' + this.form.personnelList.list.length + '人' : '选择部门'
}
}, },
computed: {},
beforeMount () {}, beforeMount () {},
mounted () {}, mounted () {
methods: {}, this.handleGetChartList()
},
methods: {
handleSubmit () {
this.kaopingFrom.showRight = false
},
handleCancel () {
this.kaopingFrom.showRight = false
},
//
handleChoose () {
this.form.isShowPersonnel = true
},
handleGetList () {
console.log('1', this.form.personnelList)
},
handleActive (i) {
this.titleList = this.titleList.map(j => {
j.active = false
return j
})
i.active = true
},
// tabbar
async handleGetChartList (params = this.params) {
let res = await apiChartList(params)
if (res.code !== 200) return
this.titleList = res.data
this.titleList[0].active = true
console.log('res: ', res)
}
},
watch: {} watch: {}
} }
@ -187,7 +227,7 @@ export default {
&-img{ &-img{
.center(); .center();
height: 20px; height: 20px;
margin: 0 56px; margin: 0 40px;
img{ img{
width: 100%; width: 100%;
height: 100%; height: 100%;