Merge branch 'master' into V_1.1.2

This commit is contained in:
yoe 2021-01-14 17:06:51 +08:00
commit 1e1c896f9f
8 changed files with 110 additions and 80 deletions

View File

@ -620,29 +620,34 @@ export default {
if (v) {
const params = Object.assign({}, this.form, { resultRecordId: this.resultRecordId || '' }, obj)
let res = await apiSaveapproval(params)
console.log('res===', res)
if (res.code !== 200) {
this.$message.error(res.msg)
history.go(0)
resolve(1)
}
this.form = {}
this.$message({
message: res.msg,
type: 'success',
duration: 1000,
onClose: () => {
if (obj.status !== 2) {
this.nextProcess(res)
} else {
location.reload(false)
}
}
})
if (res.resultRecordId) {
resolve(0)
//
setTimeout(() => {
history.go(0)
resolve(1)
}, 1500)
} else {
history.go(0)
resolve(0)
this.form = {}
this.$message({
message: res.msg,
type: 'success',
duration: 1000,
onClose: () => {
if (obj.status !== 2) {
this.nextProcess(res)
} else {
location.reload(false)
}
}
})
if (res.resultRecordId) {
resolve(0)
} else {
history.go(0)
resolve(0)
}
}
}
})

View File

@ -459,7 +459,7 @@ export default {
isScore = false
}
// 3.53.75
if (this.handleCheckMustInput(obj)) {
if (this.handleCheckMustInput(obj) && !obj.scoreComment) {
isScoreComment = false
}
})

View File

@ -9,12 +9,10 @@
>我的绩效</div>
<div class="performance-content boderAndRadius">
<div
v-if="isNoRouter"
class="isNoRouter commonFont"
>
<el-cascader
style="width:210px;"
v-if="isNoRouter"
:key="key"
v-model="startId"
size="mini"
@ -273,9 +271,9 @@ export default {
beforeMount () { },
async mounted () {
await this.handleGetTbale({ id: this.$route.query.id || '' })
if (this.isNoRouter) {
await this.handleStartsReq()
}
// if (this.isNoRouter) { 20210113
await this.handleStartsReq()
// }
await this.handleList()
},
@ -324,9 +322,9 @@ export default {
this.isNoList = res.code !== 200
if (res.code !== 200) {
this.resultRecordId = ''
if (!this.isNoRouter) {
this.$message.error(res.msg)
}
// if (!this.isNoRouter) {
this.$message.error(res.msg)
// }
return
}
this.startIds = res.data.startId

View File

@ -462,6 +462,9 @@ export default {
}
}
},
mounted () {
console.log(this.menuMngCheckAll)
},
methods: {
handleGetChildeModel (type) {
let modelStr = ''

View File

@ -1,41 +0,0 @@
<!-- 撤回 -->
<template>
<div class="ReCall">
<div class="ReCall-title commonFont">由谁撤回</div>
<div class="commonFont">执行人<el-radio v-model="form.optType" :label="-1">被考核人</el-radio></div>
</div>
</template>
<script>
export default {
props: ['info'],
data () {
return {
form: {
optType: -1
}
}
},
computed: {},
beforeMount () {},
mounted () {
const params = JSON.parse(JSON.stringify(this.info))
params.chartDetails.status = 1
params.chartDetails.recordSimpleDtos = params.chartDetails.recordSimpleDtos.length ? params.chartDetails.recordSimpleDtos : [this.form]
this.$emit('update:info', params)
},
methods: {},
watch: {
}
}
</script>
<style lang='less' scoped>
.ReCall{
&-title{
margin: 20px 0;
}
}
</style>

View File

@ -60,7 +60,16 @@
</div>
</div>
<div style="padding:20px 0 0 0 " v-for="i in itemInfo.roleDtos" :key="i.id">
<el-checkbox v-if="i.type !== 1" @change="handleChang(i)" v-model="i.checked">{{i.roleName}}</el-checkbox>
<el-checkbox v-if="i.roleGroupId === 0" @change="handleChang(i)" v-model="i.checked">{{i.roleName}}</el-checkbox>
<div v-else>
<el-checkbox @change="handleChang(i)" v-model="i.checked">{{i.roleName}}</el-checkbox>
<el-checkbox-group
class="popup-menu-mange-group"
v-model="i.checkMenu"
v-if="i.checked">
<el-checkbox v-for="b in i.roleDtos" :key="b.id" :label="b.roleId" @change="handleGroupItemChang(i, b)" v-model="b.checked">{{b.roleName}}</el-checkbox>
</el-checkbox-group>
</div>
</div>
</div>
</div>
@ -142,7 +151,19 @@ export default {
i = Object.assign({}, this.handleOptType(i), i)
i.isActive = i.optType === 0 ? 0 : 1
i.roleDtos = JSON.parse(JSON.stringify(this.roleDtos)).map(j => {
j.checked = i.roleIds ? i.roleIds.includes(String(j.roleId)) : false
j.checkMenu = []
if (j.roleGroupId === 0) {
j.checked = i.roleIds ? i.roleIds.includes(String(j.roleId)) : false
} else {
j.roleDtos.map(d => {
d.checkMenu = []
d.checked = i.roleIds ? i.roleIds.includes(String(d.roleId)) : false
if (d.checked) {
j.checked = true
j.checkMenu.push(d.roleId)
}
})
}
return j
})
return i
@ -178,7 +199,31 @@ export default {
return item.list.length > 0 ? (item.title + '等' + item.list.length + '人') : '指定成员'
// itemInfo.list.list.length===0?(itemInfo.list.title + '' + itemInfo.list.list.length + '' ):""
},
handleGroupItemChang (group, item) {
if (group.checkMenu.length == 0) {
group.checked = false
}
},
handleChang (item) {
if (item.roleGroupId !== 0 && item.roleId === 0) {
if (item.checked) {
if (item.checkMenu.length === 0) {
//
item.roleDtos.map(d => {
d.checked = true
item.checkMenu.push(d.roleId)
return d
})
}
} else {
//
item.checkMenu = []
item.roleDtos.map(d => {
d.checked = false
return d
})
}
}
},
handleChoose (item) {
this.itemInfo.isShow = true
@ -216,7 +261,15 @@ export default {
label: '权重评分:0%',
weight1: a.length < 2 ? 100 : 0,
roleDtos: JSON.parse(JSON.stringify(this.roleDtos.map(i => {
if (i.type !== 1) i.checked = true
i.checked = true
if (i.roleGroupId !== 0 && i.roleId === 0) {
//
i.checkMenu = []
i.roleDtos.map(d => {
d.checked = true
i.checkMenu.push(d.roleId)
})
}
return i
})))
}
@ -259,7 +312,15 @@ export default {
n.map(i => {
i.roleIds = ''
i.roleDtos.map(j => {
if (j.type !== 1 && j.checked) i.roleIds += j.roleId + ','
if (j.roleGroupId === 0) {
if (j.checked) {
i.roleIds += j.roleId + ','
}
} else {
if (j.checkMenu.length > 0) {
i.roleIds += j.checkMenu.toString() + ','
}
}
})
i.roleIds = i.roleIds.substring(0, i.roleIds.length - 1)
i.label = '权重评分:' + i.weight1 + '%'
@ -392,5 +453,10 @@ export default {
&-center{
padding: 10px 0;
}
.popup-menu-mange-group {
width: 600px;
padding: 5px 15px;
background-color: #f9f9f9;
}
}
</style>

View File

@ -17,7 +17,6 @@
</div>
<div v-if="noInfo" class="process-content">
<!-- {{isActive}} -->
<ReCall v-show="isActive==='撤回'" :info.sync='info.ReCallInfo'/>
<ToDevelop v-show="isActive==='目标制定'" :info.sync='info.ToDevelopInfo'/>
<Confirm v-show="isActive==='目标确认'" :info.sync='info.ConfirmInfo'/>
<Perform v-show="isActive==='执行中'" :info.sync='info.PerformInfo'/>
@ -31,7 +30,6 @@
<script>
import PopupRight from '@/components/PopupRight'
import ReCall from './ReCall'
import ToDevelop from './ToDevelop'
import Confirm from './Confirm'
import Perform from './Perform'
@ -64,9 +62,6 @@ export default {
},
processLsit: [],
processLsitCopy: [{
name: '撤回',
componment: 'ReCall'
}, {
name: '目标制定',
componment: 'ToDevelop'
}, {
@ -89,7 +84,7 @@ export default {
}
},
components: {
PopupRight, ReCall, ToDevelop, Confirm, Perform, Entry, Score, Approval
PopupRight, ToDevelop, Confirm, Perform, Entry, Score, Approval
},
computed: {
// componentId () {

View File

@ -118,6 +118,9 @@ export default {
this.templateForm.evaluationGroupId = this.basisForm.id
for (let i in this.processInfo) {
try {
if (!this.processInfo[i].chartDetails) {
continue
}
if (this.processInfo[i].chartDetails.recordSimpleDtos.some(i => i.optType === 0 && !i.optIds)) {
this.loadings = false
this.$loadingEnd()
@ -137,6 +140,7 @@ export default {
return
}
} catch (error) {
console.log('异常')
this.loadings = false
this.$loadingEnd()
return this.$message.error(error.msg)