Merge branch 'v_porcess'
* v_porcess: 优化 console 添加注解
This commit is contained in:
commit
d7fffe1bfa
@ -6,7 +6,6 @@
|
|||||||
<keep-alive>
|
<keep-alive>
|
||||||
<router-view class="main"/>
|
<router-view class="main"/>
|
||||||
</keep-alive>
|
</keep-alive>
|
||||||
|
|
||||||
<div @dblclick="handleShowVcnsole" class="baaa" style="width:20px;height:20px;"></div>
|
<div @dblclick="handleShowVcnsole" class="baaa" style="width:20px;height:20px;"></div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@ -16,7 +15,6 @@ import { mapState, mapActions, mapMutations } from 'vuex'
|
|||||||
import * as dd from 'dingtalk-jsapi'
|
import * as dd from 'dingtalk-jsapi'
|
||||||
|
|
||||||
import VConsole from 'vconsole'
|
import VConsole from 'vconsole'
|
||||||
console.log('ddApp: ', dd)
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'App',
|
name: 'App',
|
||||||
@ -52,6 +50,7 @@ export default {
|
|||||||
this.dd = dd
|
this.dd = dd
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
// 在钉钉环境双击显示 vconsole
|
||||||
handleShowVcnsole () {
|
handleShowVcnsole () {
|
||||||
var vConsole = new VConsole({
|
var vConsole = new VConsole({
|
||||||
vConsole_switch_x: 0,
|
vConsole_switch_x: 0,
|
||||||
|
|||||||
@ -5,6 +5,7 @@ let mixin = {
|
|||||||
return {}
|
return {}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
|
// auth全局权限 在登录成功后获取
|
||||||
...mapGetters(['auth'])
|
...mapGetters(['auth'])
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
|||||||
@ -12,12 +12,10 @@ const user = {
|
|||||||
SET_USER_INFO: (state, info) => {
|
SET_USER_INFO: (state, info) => {
|
||||||
dd.other && localStorage.setItem('info', JSON.stringify(info))
|
dd.other && localStorage.setItem('info', JSON.stringify(info))
|
||||||
state.info = info
|
state.info = info
|
||||||
console.log('state.info: ', state.info)
|
|
||||||
},
|
},
|
||||||
SET_USER_AUTH: (state, auth) => {
|
SET_USER_AUTH: (state, auth) => {
|
||||||
dd.other && localStorage.setItem('auth', JSON.stringify(auth))
|
dd.other && localStorage.setItem('auth', JSON.stringify(auth))
|
||||||
state.auth = auth
|
state.auth = auth
|
||||||
console.log('state.auth: ', state.auth)
|
|
||||||
},
|
},
|
||||||
SET_DEPLIST: (state, list = []) => {
|
SET_DEPLIST: (state, list = []) => {
|
||||||
state.deplist = list
|
state.deplist = list
|
||||||
@ -27,7 +25,6 @@ const user = {
|
|||||||
actions: {
|
actions: {
|
||||||
GET_USERINFO: async ({ commit }) => {
|
GET_USERINFO: async ({ commit }) => {
|
||||||
let res = await apiUserInfo()
|
let res = await apiUserInfo()
|
||||||
console.log('GET_USERINFO: ', res)
|
|
||||||
if (res.code === 200) {
|
if (res.code === 200) {
|
||||||
commit('SET_USER_INFO', res.user)
|
commit('SET_USER_INFO', res.user)
|
||||||
commit('SET_USER_AUTH', res.data)
|
commit('SET_USER_AUTH', res.data)
|
||||||
|
|||||||
@ -114,16 +114,17 @@ const opt = {
|
|||||||
background: 'rgba(255, 255, 255, 0.8)',
|
background: 'rgba(255, 255, 255, 0.8)',
|
||||||
spinner: 'el-icon-loading',
|
spinner: 'el-icon-loading',
|
||||||
text: '数据加载中'}
|
text: '数据加载中'}
|
||||||
|
// loading开启
|
||||||
export function loading (options = opt) {
|
export function loading (options = opt) {
|
||||||
this.$loading.service(options)
|
this.$loading.service(options)
|
||||||
}
|
}
|
||||||
|
// loading 关闭
|
||||||
export function loadingClose () {
|
export function loadingClose () {
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
this.$loading.service(opt).close()
|
this.$loading.service(opt).close()
|
||||||
}, 100)
|
}, 100)
|
||||||
}
|
}
|
||||||
|
// 通过 url 获取参数
|
||||||
export function getUrlParams () {
|
export function getUrlParams () {
|
||||||
var query = decodeURI(window.location.search.substring(1))
|
var query = decodeURI(window.location.search.substring(1))
|
||||||
console.log('query: ', query)
|
console.log('query: ', query)
|
||||||
|
|||||||
@ -7,9 +7,7 @@ import VueCookie from 'vue-cookies'
|
|||||||
// 钉钉免登录
|
// 钉钉免登录
|
||||||
async function handleDingtalkLogin (val) {
|
async function handleDingtalkLogin (val) {
|
||||||
const res = await apiDingtalkLogin(val)
|
const res = await apiDingtalkLogin(val)
|
||||||
console.log('钉钉免登录res: ', res)
|
|
||||||
if (res && res.code === 200) {
|
if (res && res.code === 200) {
|
||||||
console.log('res.token: ', res.token)
|
|
||||||
VueCookie.set('token', res.token)
|
VueCookie.set('token', res.token)
|
||||||
return 1
|
return 1
|
||||||
// window.open(window.location.protocol + '//' + window.location.host + '/digitization/kpi/workbench/home?code=' + this.dingCode.code)
|
// window.open(window.location.protocol + '//' + window.location.host + '/digitization/kpi/workbench/home?code=' + this.dingCode.code)
|
||||||
@ -25,27 +23,20 @@ function handleGetDingtalkCode () {
|
|||||||
dd.runtime.permission.requestAuthCode({
|
dd.runtime.permission.requestAuthCode({
|
||||||
corpId: 'ding267474e759bbca1c35c2f4657eb6378f',
|
corpId: 'ding267474e759bbca1c35c2f4657eb6378f',
|
||||||
async onSuccess (res) {
|
async onSuccess (res) {
|
||||||
console.log('result===', res)
|
|
||||||
let result = await handleDingtalkLogin(res)
|
let result = await handleDingtalkLogin(res)
|
||||||
console.log('result: ', result)
|
|
||||||
resolve(result)
|
resolve(result)
|
||||||
},
|
},
|
||||||
onFail (err) {
|
onFail (err) {
|
||||||
console.log('err: ', err)
|
|
||||||
reject(err)
|
reject(err)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
router.beforeEach(async (to, from, next) => {
|
router.beforeEach(async (to, from, next) => {
|
||||||
console.log('dd---: ', dd)
|
|
||||||
if (!store.getters.userInfo.userNo && !dd.other) {
|
if (!store.getters.userInfo.userNo && !dd.other) {
|
||||||
let res = await handleGetDingtalkCode()
|
let res = await handleGetDingtalkCode()
|
||||||
console.log('res: ', res)
|
|
||||||
if (res === 1) {
|
if (res === 1) {
|
||||||
console.log('res: ', res)
|
|
||||||
let res1 = await store.dispatch('GET_USERINFO')
|
let res1 = await store.dispatch('GET_USERINFO')
|
||||||
console.log('res1: ', res1)
|
|
||||||
if (res1 === 1) next()
|
if (res1 === 1) next()
|
||||||
} else {
|
} else {
|
||||||
Message.error('网络错误')
|
Message.error('网络错误')
|
||||||
@ -57,7 +48,5 @@ router.beforeEach(async (to, from, next) => {
|
|||||||
})
|
})
|
||||||
|
|
||||||
router.afterEach(async () => {
|
router.afterEach(async () => {
|
||||||
console.log('afterEach: ')
|
|
||||||
|
|
||||||
await store.dispatch('GET_DEPLIST')
|
await store.dispatch('GET_DEPLIST')
|
||||||
})
|
})
|
||||||
|
|||||||
@ -56,7 +56,6 @@ service.interceptors.response.use(res => {
|
|||||||
}
|
}
|
||||||
if (res.data.code === 401) {
|
if (res.data.code === 401) {
|
||||||
const resaa = Object.assign({}, res.data, {msg: '登陆失效,请刷新重试'})
|
const resaa = Object.assign({}, res.data, {msg: '登陆失效,请刷新重试'})
|
||||||
console.log('resaa: ', resaa)
|
|
||||||
return resaa
|
return resaa
|
||||||
}
|
}
|
||||||
return res.data
|
return res.data
|
||||||
|
|||||||
@ -292,7 +292,6 @@ export default {
|
|||||||
computed: {},
|
computed: {},
|
||||||
beforeMount () { },
|
beforeMount () { },
|
||||||
mounted () {
|
mounted () {
|
||||||
console.log('auth', this.auth)
|
|
||||||
this.handleGetDimensions()
|
this.handleGetDimensions()
|
||||||
this.handleGetTbale()
|
this.handleGetTbale()
|
||||||
},
|
},
|
||||||
@ -344,7 +343,6 @@ export default {
|
|||||||
processRate: '0',
|
processRate: '0',
|
||||||
isNew: true
|
isNew: true
|
||||||
}
|
}
|
||||||
console.log(this.formTask)
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
@ -379,7 +377,6 @@ export default {
|
|||||||
// }
|
// }
|
||||||
this.formItem = j
|
this.formItem = j
|
||||||
this.showTask = true
|
this.showTask = true
|
||||||
console.log(this.formTask)
|
|
||||||
},
|
},
|
||||||
handleNumber (item) {
|
handleNumber (item) {
|
||||||
return item.detailDtos ? item.detailDtos.filter(i => !i.isDelete).length : 0
|
return item.detailDtos ? item.detailDtos.filter(i => !i.isDelete).length : 0
|
||||||
@ -535,7 +532,6 @@ export default {
|
|||||||
this.showIndicators = false
|
this.showIndicators = false
|
||||||
},
|
},
|
||||||
handleSubmitZhibiao () {
|
handleSubmitZhibiao () {
|
||||||
console.log(this.formIndicators)
|
|
||||||
const arr = this.obj.recortModelDtos[this.formIndicators.dazhibiaoIndex].detailDtos
|
const arr = this.obj.recortModelDtos[this.formIndicators.dazhibiaoIndex].detailDtos
|
||||||
this.$refs.formIndicators.validate((v) => {
|
this.$refs.formIndicators.validate((v) => {
|
||||||
if (v) {
|
if (v) {
|
||||||
@ -557,7 +553,6 @@ export default {
|
|||||||
this.showIndicators = false
|
this.showIndicators = false
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
console.log(' this.obj', this.obj)
|
|
||||||
},
|
},
|
||||||
// 编辑
|
// 编辑
|
||||||
hanidleEdit (item, index, type) {
|
hanidleEdit (item, index, type) {
|
||||||
|
|||||||
@ -152,6 +152,7 @@ export default {
|
|||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
authList: [
|
authList: [
|
||||||
|
// 下面这个是按钮组 目前支持两个按钮挨着一起
|
||||||
{
|
{
|
||||||
info: !this.info,
|
info: !this.info,
|
||||||
ground: true,
|
ground: true,
|
||||||
@ -272,8 +273,6 @@ export default {
|
|||||||
computed: {},
|
computed: {},
|
||||||
beforeMount () { },
|
beforeMount () { },
|
||||||
mounted () {
|
mounted () {
|
||||||
console.log(this.resultRecordId)
|
|
||||||
console.log('🚀 ~ file: index.vue ~ line 308 ~ handleGetNext ~ this.obj', this.obj)
|
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
async handleResetData (resultRecordId) {
|
async handleResetData (resultRecordId) {
|
||||||
@ -284,7 +283,6 @@ export default {
|
|||||||
},
|
},
|
||||||
// 重置确定
|
// 重置确定
|
||||||
handleAgreeChongZhi () {
|
handleAgreeChongZhi () {
|
||||||
console.log(this.form)
|
|
||||||
this.$refs.formChongZhi.validate(async v => {
|
this.$refs.formChongZhi.validate(async v => {
|
||||||
if (v) {
|
if (v) {
|
||||||
const params = Object.assign({}, this.form, { resultRecordId: this.resultRecordId || '' }, { status: 9, menuName: '重置了流程' })
|
const params = Object.assign({}, this.form, { resultRecordId: this.resultRecordId || '' }, { status: 9, menuName: '重置了流程' })
|
||||||
@ -304,7 +302,6 @@ export default {
|
|||||||
},
|
},
|
||||||
// 重置
|
// 重置
|
||||||
async handleChongZhi () {
|
async handleChongZhi () {
|
||||||
console.log(123)
|
|
||||||
this.form = {
|
this.form = {
|
||||||
resetFlag: 0,
|
resetFlag: 0,
|
||||||
clearFlag: 1
|
clearFlag: 1
|
||||||
|
|||||||
@ -358,7 +358,6 @@ export default {
|
|||||||
this.taskInfo = Object.assign({}, this.taskObj)
|
this.taskInfo = Object.assign({}, this.taskObj)
|
||||||
this.handleGetChangeTaskList()
|
this.handleGetChangeTaskList()
|
||||||
this.handleGetPingLunList()
|
this.handleGetPingLunList()
|
||||||
console.log(this.taskInfo)
|
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
handleAtSomeOne () {
|
handleAtSomeOne () {
|
||||||
@ -539,7 +538,6 @@ export default {
|
|||||||
this.form = {}
|
this.form = {}
|
||||||
}
|
}
|
||||||
i.updateProcess = type
|
i.updateProcess = type
|
||||||
console.log(this.form)
|
|
||||||
this.$forceUpdate()
|
this.$forceUpdate()
|
||||||
},
|
},
|
||||||
// 编辑/取消编辑进度
|
// 编辑/取消编辑进度
|
||||||
|
|||||||
@ -1,532 +0,0 @@
|
|||||||
<template>
|
|
||||||
<div class='table'>
|
|
||||||
<div v-if="obj.recortModelDtos.length !== 0"
|
|
||||||
class="table-list">
|
|
||||||
<div class="table-header">
|
|
||||||
<div class="table-left name">维度</div>
|
|
||||||
<div class="table-content-right-item"
|
|
||||||
style="flex:1;">
|
|
||||||
<div class="table-header-flex names ">名称</div>
|
|
||||||
<div class="table-header-flex pre kaohe">考核标准</div>
|
|
||||||
<div class="table-header-flex jieguo"
|
|
||||||
v-if="tableInfo.result || tableAuth.showResult">结果值</div>
|
|
||||||
<div class="table-header-flex quanzhomng"
|
|
||||||
style="flex:none;">权重({{Math.round((obj.weight * 100)*1000)/1000}}%)</div>
|
|
||||||
<div class="table-header-flex pingfen"
|
|
||||||
v-if="tableInfo.score || tableAuth.showScore">上级评分</div>
|
|
||||||
<div class="table-header-flex defen"
|
|
||||||
style="flex:none;"
|
|
||||||
v-if="tableInfo.score || tableAuth.showScore">得分</div>
|
|
||||||
<div class="table-header-flex pingfen"
|
|
||||||
v-if="tableInfo.score || tableAuth.showScore">评分说明</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div v-for="(item,index) in ((tableInfo.score || tableAuth.showScore)?obj.recortModelDtos:obj.recortModelDtos.slice(0,obj.recortModelDtos.length-1))"
|
|
||||||
:key="index"
|
|
||||||
class="table-content">
|
|
||||||
<div class="table-content-left table-left name">
|
|
||||||
<div v-for="(i,indexs) in item.name"
|
|
||||||
:key="indexs">
|
|
||||||
{{i}}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div class="table-content-right">
|
|
||||||
<div v-for="(child) in item.detailDtos"
|
|
||||||
:key="child.id"
|
|
||||||
class="table-content-right-item">
|
|
||||||
<div class="names">
|
|
||||||
<span> {{child.target || ''}}</span>
|
|
||||||
</div>
|
|
||||||
<div class="kaohe pre">
|
|
||||||
<pre>
|
|
||||||
{{child.keyResult || ''}}
|
|
||||||
</pre>
|
|
||||||
</div>
|
|
||||||
<div class='pre jieguo'
|
|
||||||
v-if="tableInfo.result || tableAuth.showResult">
|
|
||||||
<el-input v-if="tableInfo.result"
|
|
||||||
type="textarea"
|
|
||||||
:rows="12"
|
|
||||||
size="mini"
|
|
||||||
placeholder="请输入内容"
|
|
||||||
v-model="child.checkResult"
|
|
||||||
clearable></el-input>
|
|
||||||
<pre v-else>{{child.checkResult || '--'}}</pre>
|
|
||||||
</div>
|
|
||||||
<div class="quanzhomng"
|
|
||||||
style="flex:none;">
|
|
||||||
{{( Math.round((child.checkWeight * 100) * 1000) / 1000 )}}%
|
|
||||||
</div>
|
|
||||||
<div v-if="tableInfo.score || tableAuth.showScore"
|
|
||||||
class="pingfen">
|
|
||||||
<!-- gradeGroupId=== 1 下拉 -->
|
|
||||||
<el-select v-if="tableInfo.score && obj.gradeGroupId===1"
|
|
||||||
style="width:115px;"
|
|
||||||
size="mini"
|
|
||||||
v-model="child.scoreDtos[child.scoreDtos.length-1].acquireScore">
|
|
||||||
<el-option v-for="item in scoreList"
|
|
||||||
:key="item.id"
|
|
||||||
:label="item.name"
|
|
||||||
:value="item.score">
|
|
||||||
</el-option>
|
|
||||||
</el-select>
|
|
||||||
<el-input v-if="tableInfo.score && obj.gradeGroupId===2"
|
|
||||||
style="width:115px;"
|
|
||||||
size="mini"
|
|
||||||
placeholder="请输入评分值"
|
|
||||||
v-model="child.scoreDtos[child.scoreDtos.length-1].acquireScore"
|
|
||||||
clearable></el-input>
|
|
||||||
<span v-if="!tableInfo.score">{{handleScore(child.scoreDtos[child.scoreDtos.length-1].acquireScore)}}</span>
|
|
||||||
</div>
|
|
||||||
<div class="defen"
|
|
||||||
style="flex:none;"
|
|
||||||
v-if="tableInfo.score || tableAuth.showScore">
|
|
||||||
<span>{{child.scoreDtos[child.scoreDtos.length-1].acquireScore || '--'}}</span>
|
|
||||||
</div>
|
|
||||||
<div class='pre pingfen'
|
|
||||||
v-if="tableInfo.score || tableAuth.showScore">
|
|
||||||
<el-input v-if="tableInfo.score"
|
|
||||||
style="width:200px;"
|
|
||||||
:rows="12"
|
|
||||||
size="mini"
|
|
||||||
type="textarea"
|
|
||||||
placeholder="请输入内容"
|
|
||||||
v-model="child.scoreComment"
|
|
||||||
clearable></el-input>
|
|
||||||
<span v-else>{{child.scoreComment || '--'}}</span>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<div v-if="item.detailDtos.length ===0 && item.name !=='总分'"
|
|
||||||
class="table-content-right-item">
|
|
||||||
<div class="names">
|
|
||||||
</div>
|
|
||||||
<div class="kaohe pre">
|
|
||||||
</div>
|
|
||||||
<div class='jieguo'
|
|
||||||
v-if="tableInfo.result || tableAuth.showResult">
|
|
||||||
</div>
|
|
||||||
<div class="quanzhomng "
|
|
||||||
style="flex:none;">
|
|
||||||
</div>
|
|
||||||
<div class='pingfen'
|
|
||||||
v-if="tableInfo.score || tableAuth.showScore">
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<div class="defen"
|
|
||||||
style="flex:none;"
|
|
||||||
v-if="tableInfo.score || tableAuth.showScore">
|
|
||||||
|
|
||||||
</div>
|
|
||||||
<div class='pingfen'
|
|
||||||
v-if="tableInfo.score || tableAuth.showScore">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div v-if="item.name==='总分'"
|
|
||||||
class="table-content-right-item">
|
|
||||||
<div class="names">
|
|
||||||
</div>
|
|
||||||
<div class="kaohe pre">
|
|
||||||
</div>
|
|
||||||
<div class='jieguo'
|
|
||||||
v-if="tableInfo.result || tableAuth.showResult">
|
|
||||||
</div>
|
|
||||||
<div class="quanzhomng pingfen"
|
|
||||||
style="flex:none;">
|
|
||||||
</div>
|
|
||||||
<div class="pingfen"
|
|
||||||
v-if="tableInfo.score || tableAuth.showScore">
|
|
||||||
{{score.scoreLevel}}
|
|
||||||
</div>
|
|
||||||
<div class="defen"
|
|
||||||
style="flex:none;"
|
|
||||||
v-if="tableInfo.score || tableAuth.showScore">
|
|
||||||
{{score.lastScore}}
|
|
||||||
</div>
|
|
||||||
<div class="pingfen"
|
|
||||||
v-if="tableInfo.score || tableAuth.showScore">
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
<div v-else
|
|
||||||
class='nojixiao'>
|
|
||||||
<img src="./imgs/nojixiao.png"
|
|
||||||
alt="">
|
|
||||||
<div class="commonFont">
|
|
||||||
未制定绩效目标,暂无数据
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div v-if="tableInfo.result || tableInfo.score"
|
|
||||||
class="table-bottom">
|
|
||||||
<div class="table-bottom-content">
|
|
||||||
<el-button size='small'
|
|
||||||
@click="handleCancelResult"
|
|
||||||
plain>取消</el-button>
|
|
||||||
<el-button size='small'
|
|
||||||
:loading='loadingZan'
|
|
||||||
@click="handleSaveDetail()"
|
|
||||||
plain>暂存</el-button>
|
|
||||||
<el-button size='small'
|
|
||||||
:loading='loadingTi'
|
|
||||||
@click="handleGetNext"
|
|
||||||
type="primary">{{tableInfo.result?'提交结果值':'提交评分'}}</el-button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
<script>
|
|
||||||
import { apiSaveDetail, apiGet375, apiSaveapproval } from '@/api/assessment'
|
|
||||||
export default {
|
|
||||||
name: 'columnsTbale',
|
|
||||||
props: {
|
|
||||||
resultRecordId: {
|
|
||||||
type: String,
|
|
||||||
default: () => ''
|
|
||||||
},
|
|
||||||
obj: {
|
|
||||||
type: Object,
|
|
||||||
default: () => {
|
|
||||||
return {
|
|
||||||
recortModelDtos: []
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
tableInfo: {
|
|
||||||
type: Object,
|
|
||||||
default: () => {
|
|
||||||
return {
|
|
||||||
result: false,
|
|
||||||
score: false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
tableAuth: {
|
|
||||||
type: Object,
|
|
||||||
default: () => {
|
|
||||||
return {}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
data () {
|
|
||||||
return {
|
|
||||||
loadingTi: false,
|
|
||||||
loadingZan: false,
|
|
||||||
input: '',
|
|
||||||
scoreList: []
|
|
||||||
// score: {
|
|
||||||
// lastScore: '',
|
|
||||||
// scoreLevel: ''
|
|
||||||
// }
|
|
||||||
}
|
|
||||||
},
|
|
||||||
computed: {
|
|
||||||
score () {
|
|
||||||
const result = this.obj.recortModelDtos && this.obj.recortModelDtos.reduce((result, i) => {
|
|
||||||
i.detailDtos && i.detailDtos.map(j => {
|
|
||||||
j.scoreDtos && j.scoreDtos.map(k => {
|
|
||||||
const str = j.calculate.replace(/{\w+}/g, (i) => {
|
|
||||||
i = i.replace(/{|}/g, '')
|
|
||||||
return k[i]
|
|
||||||
})
|
|
||||||
// eslint-disable-next-line no-eval
|
|
||||||
let a = eval(str)
|
|
||||||
result += a
|
|
||||||
})
|
|
||||||
})
|
|
||||||
return result
|
|
||||||
}, 0)
|
|
||||||
const arr = this.scoreList.filter(i => i.minScore <= result && i.maxScore > result)
|
|
||||||
return {
|
|
||||||
lastScore: result.toFixed(3),
|
|
||||||
scoreLevel: arr.length > 0 ? arr[0].name : ''
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
mounted () {
|
|
||||||
this.handleGrt375()
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
handleScore (item) {
|
|
||||||
return this.scoreList.filter(i => i.score === item).length > 0 ? this.scoreList.filter(i => i.score === item)[0].name : 0
|
|
||||||
},
|
|
||||||
async handleGetNext () {
|
|
||||||
this.loadingTi = true
|
|
||||||
let paramsObj = this.obj
|
|
||||||
if ((this.tableInfo.score || this.tableAuth.showScore)) {
|
|
||||||
paramsObj = Object.assign({}, paramsObj, this.score)
|
|
||||||
}
|
|
||||||
let res1 = await apiSaveDetail(paramsObj)
|
|
||||||
if (res1.code !== 200) {
|
|
||||||
this.loadingTi = false
|
|
||||||
this.$message.error(res1.msg)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
const obj = { status: 1, menuName: this.tableInfo.result ? '提交了结果值' : '提交了评分' }
|
|
||||||
const params = Object.assign({}, { resultRecordId: this.$route.query.id || this.resultRecordId || '' }, obj)
|
|
||||||
let res = await apiSaveapproval(params)
|
|
||||||
this.loadingTi = false
|
|
||||||
if (res.code !== 200) {
|
|
||||||
this.$message.error(res.msg)
|
|
||||||
}
|
|
||||||
this.$message({
|
|
||||||
message: res.msg,
|
|
||||||
type: 'success'
|
|
||||||
})
|
|
||||||
history.go(0)
|
|
||||||
},
|
|
||||||
handleCancelResult () {
|
|
||||||
this.$emit('update:tableInfo', Object.assign({}, this.tableInfo, { result: false, score: false }))
|
|
||||||
},
|
|
||||||
async handleGrt375 () {
|
|
||||||
let res = await apiGet375()
|
|
||||||
if (res.code !== 200) return
|
|
||||||
this.scoreList = res.data
|
|
||||||
},
|
|
||||||
async handleSaveDetail (params = this.obj) {
|
|
||||||
this.loadingZan = true
|
|
||||||
let paramsObj = params
|
|
||||||
if ((this.tableInfo.score || this.tableAuth.showScore)) {
|
|
||||||
paramsObj = Object.assign({}, paramsObj, this.score)
|
|
||||||
}
|
|
||||||
let res = await apiSaveDetail(paramsObj)
|
|
||||||
this.loadingZan = false
|
|
||||||
if (res.code !== 200) {
|
|
||||||
this.$message.error(res.msg)
|
|
||||||
return
|
|
||||||
}
|
|
||||||
this.$message({
|
|
||||||
message: res.msg,
|
|
||||||
type: 'success'
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
<style lang='less' scoped>
|
|
||||||
.pingfen {
|
|
||||||
width: 120px;
|
|
||||||
.center();
|
|
||||||
}
|
|
||||||
.names {
|
|
||||||
line-height: 20px;
|
|
||||||
width: 200px !important;
|
|
||||||
flex: none !important;
|
|
||||||
.center();
|
|
||||||
}
|
|
||||||
.jieguo {
|
|
||||||
width: 260px !important;
|
|
||||||
flex: none !important;
|
|
||||||
.center();
|
|
||||||
}
|
|
||||||
.name {
|
|
||||||
.center();
|
|
||||||
flex: none !important;
|
|
||||||
width: 60px !important;
|
|
||||||
}
|
|
||||||
.kaohe {
|
|
||||||
width: 260px !important;
|
|
||||||
display: block;
|
|
||||||
flex: 1 1 auto;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
// flex: none;
|
|
||||||
}
|
|
||||||
.nojixiao {
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
.listNone {
|
|
||||||
height: 100px;
|
|
||||||
text-align: center;
|
|
||||||
line-height: 100px;
|
|
||||||
border-bottom: 1px solid @borderColor;
|
|
||||||
}
|
|
||||||
.table-list {
|
|
||||||
overflow: auto;
|
|
||||||
color: #52575b;
|
|
||||||
font-size: 12px;
|
|
||||||
border: 1px solid @borderColor;
|
|
||||||
border-bottom: none;
|
|
||||||
}
|
|
||||||
.table-header {
|
|
||||||
display: flex;
|
|
||||||
|
|
||||||
// justify-content: space-between;
|
|
||||||
|
|
||||||
// border: 1px solid @borderColor;
|
|
||||||
> div {
|
|
||||||
background: #f5f5f5;
|
|
||||||
// padding: 10px;
|
|
||||||
border-bottom: 1px solid @borderColor;
|
|
||||||
border-right: 1px solid @borderColor;
|
|
||||||
}
|
|
||||||
> div:last-child {
|
|
||||||
border-right: none;
|
|
||||||
}
|
|
||||||
&-flex {
|
|
||||||
// flex: 1;
|
|
||||||
.center();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.table-content {
|
|
||||||
display: flex;
|
|
||||||
justify-content: space-between;
|
|
||||||
> div {
|
|
||||||
padding: 10px;
|
|
||||||
border-right: 1px solid @borderColor;
|
|
||||||
}
|
|
||||||
> div:last-child {
|
|
||||||
border-right: none;
|
|
||||||
padding: 0px;
|
|
||||||
}
|
|
||||||
&-left {
|
|
||||||
border-bottom: 1px solid @borderColor;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
> div {
|
|
||||||
.center();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
&-right {
|
|
||||||
flex: 1;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: column;
|
|
||||||
// justify-content: space-between;
|
|
||||||
// align-items: center;
|
|
||||||
> div {
|
|
||||||
flex: 1 1 auto;
|
|
||||||
flex-shrink: 0;
|
|
||||||
// height: 100%;
|
|
||||||
border-bottom: 1px solid @borderColor;
|
|
||||||
}
|
|
||||||
> div:last-child {
|
|
||||||
// border-bottom: none;
|
|
||||||
}
|
|
||||||
&-item:hover {
|
|
||||||
background: #f5f5f5;
|
|
||||||
}
|
|
||||||
&-item {
|
|
||||||
> div {
|
|
||||||
border-right: 1px solid @borderColor;
|
|
||||||
padding: 10px;
|
|
||||||
}
|
|
||||||
> div:last-child {
|
|
||||||
border-right: none;
|
|
||||||
}
|
|
||||||
// flex: 1;
|
|
||||||
display: flex;
|
|
||||||
> div {
|
|
||||||
// flex: 1;
|
|
||||||
// .center();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.table-left {
|
|
||||||
width: 60px;
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
.defen {
|
|
||||||
width: 50px !important;
|
|
||||||
.center();
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
.quanzhomng {
|
|
||||||
width: 86px !important;
|
|
||||||
.center();
|
|
||||||
text-align: center;
|
|
||||||
}
|
|
||||||
.table {
|
|
||||||
position: relative;
|
|
||||||
&-bottoms {
|
|
||||||
width: 100%;
|
|
||||||
height: 60px;
|
|
||||||
z-index: 1000000;
|
|
||||||
bottom: 0;
|
|
||||||
left: 0;
|
|
||||||
background: transparent;
|
|
||||||
position: fixed;
|
|
||||||
display: flex;
|
|
||||||
// align-items: center;
|
|
||||||
justify-content: center;
|
|
||||||
&-contenct {
|
|
||||||
height: 40px;
|
|
||||||
display: flex;
|
|
||||||
background: #fff;
|
|
||||||
justify-content: space-between;
|
|
||||||
border-radius: 40px;
|
|
||||||
box-shadow: 0 1px 6px 0 rgba(0, 0, 0, 0.12),
|
|
||||||
0 1px 6px 0 rgba(0, 0, 0, 0.12);
|
|
||||||
&-left {
|
|
||||||
line-height: 40px;
|
|
||||||
font-size: 14px;
|
|
||||||
padding: 0 16px;
|
|
||||||
i {
|
|
||||||
margin: 0 6px;
|
|
||||||
font-weight: 800;
|
|
||||||
}
|
|
||||||
cursor: pointer;
|
|
||||||
color: @fontBlue;
|
|
||||||
}
|
|
||||||
&-center {
|
|
||||||
.center();
|
|
||||||
font-size: 14px;
|
|
||||||
padding: 0 10px;
|
|
||||||
}
|
|
||||||
&-right {
|
|
||||||
line-height: 40px;
|
|
||||||
font-size: 14px;
|
|
||||||
padding: 0 16px;
|
|
||||||
i {
|
|
||||||
margin: 0 6px;
|
|
||||||
font-weight: 800;
|
|
||||||
}
|
|
||||||
cursor: pointer;
|
|
||||||
color: @fontBlue;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
.table-bottom {
|
|
||||||
height: 60px;
|
|
||||||
position: fixed;
|
|
||||||
padding: 0 80px;
|
|
||||||
width: 100%;
|
|
||||||
background: #fff;
|
|
||||||
border-top: 1px solid @borderColor;
|
|
||||||
bottom: 0;
|
|
||||||
left: 0;
|
|
||||||
&-content {
|
|
||||||
width: 1360px;
|
|
||||||
margin: 0 auto;
|
|
||||||
height: 100%;
|
|
||||||
display: flex;
|
|
||||||
align-items: center;
|
|
||||||
justify-content: flex-end;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
table {
|
|
||||||
margin-top: 15px;
|
|
||||||
width: 100%;
|
|
||||||
border: 1px solid #e9eaec;
|
|
||||||
border-collapse: collapse;
|
|
||||||
}
|
|
||||||
th {
|
|
||||||
background-color: #f8f8f9;
|
|
||||||
}
|
|
||||||
th,
|
|
||||||
td {
|
|
||||||
padding: 5px;
|
|
||||||
border: 1px solid #e9eaec;
|
|
||||||
text-align: center;
|
|
||||||
vertical-align: top;
|
|
||||||
line-height: 30px;
|
|
||||||
}
|
|
||||||
td {
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
@ -344,7 +344,6 @@ export default {
|
|||||||
result += Number(item.Score)
|
result += Number(item.Score)
|
||||||
return result
|
return result
|
||||||
}, 0)
|
}, 0)
|
||||||
console.log('this.scoreList: ', this.scoreList)
|
|
||||||
return {
|
return {
|
||||||
score: result.toFixed(3),
|
score: result.toFixed(3),
|
||||||
a: this.handleGetDengJi(result)
|
a: this.handleGetDengJi(result)
|
||||||
|
|||||||
@ -282,7 +282,6 @@ export default {
|
|||||||
methods: {
|
methods: {
|
||||||
handleShow (item) {
|
handleShow (item) {
|
||||||
item.isShow = !item.isShow
|
item.isShow = !item.isShow
|
||||||
console.log(item)
|
|
||||||
this.$forceUpdate()
|
this.$forceUpdate()
|
||||||
},
|
},
|
||||||
async handleChange (item) {
|
async handleChange (item) {
|
||||||
|
|||||||
@ -297,7 +297,6 @@ export default {
|
|||||||
},
|
},
|
||||||
beforeMount () { },
|
beforeMount () { },
|
||||||
created () {
|
created () {
|
||||||
console.log(12345)
|
|
||||||
},
|
},
|
||||||
beforeRouteEnter (to, from, next) {
|
beforeRouteEnter (to, from, next) {
|
||||||
if (from.name === 'assessment-homeList') {
|
if (from.name === 'assessment-homeList') {
|
||||||
@ -353,7 +352,6 @@ export default {
|
|||||||
message: res.msg,
|
message: res.msg,
|
||||||
type: 'success'
|
type: 'success'
|
||||||
})
|
})
|
||||||
console.log('params: ', params)
|
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
this.$message({
|
this.$message({
|
||||||
type: 'info',
|
type: 'info',
|
||||||
@ -490,7 +488,6 @@ export default {
|
|||||||
}))
|
}))
|
||||||
if (res.code !== 200) return
|
if (res.code !== 200) return
|
||||||
this.titleList = res.data
|
this.titleList = res.data
|
||||||
console.log('String(this.$route.query.step): ', String(this.$route.query.step))
|
|
||||||
if (String(this.$route.query.step) && String(this.$route.query.step) !== 'undefined') {
|
if (String(this.$route.query.step) && String(this.$route.query.step) !== 'undefined') {
|
||||||
this.titleList = this.titleList.map(i => {
|
this.titleList = this.titleList.map(i => {
|
||||||
if (String(i.flowProcess) === String(this.$route.query.step)) {
|
if (String(i.flowProcess) === String(this.$route.query.step)) {
|
||||||
|
|||||||
@ -97,7 +97,6 @@ export default {
|
|||||||
this.showDialogDepart = false
|
this.showDialogDepart = false
|
||||||
},
|
},
|
||||||
handlePush (item) {
|
handlePush (item) {
|
||||||
console.log('item: ', item.recordId)
|
|
||||||
this.$router.push({
|
this.$router.push({
|
||||||
name: 'assessment-performance',
|
name: 'assessment-performance',
|
||||||
query: {
|
query: {
|
||||||
|
|||||||
@ -309,7 +309,6 @@ export default {
|
|||||||
// 头部数据
|
// 头部数据
|
||||||
this.statisticals = val.statisticals
|
this.statisticals = val.statisticals
|
||||||
if (!this.defaultId) this.defaultId = val.defaultId
|
if (!this.defaultId) this.defaultId = val.defaultId
|
||||||
console.log('this.defaultId : ', this.defaultId)
|
|
||||||
} else if (val.type === 1) {
|
} else if (val.type === 1) {
|
||||||
// 等级分布数据
|
// 等级分布数据
|
||||||
this.tableData = val.statisticals
|
this.tableData = val.statisticals
|
||||||
|
|||||||
@ -527,7 +527,6 @@ export default {
|
|||||||
let msg = '是否将智能绩效主管理员变更为' + val.title
|
let msg = '是否将智能绩效主管理员变更为' + val.title
|
||||||
this.$confirm(msg, '提示')
|
this.$confirm(msg, '提示')
|
||||||
.then(_ => {
|
.then(_ => {
|
||||||
console.log('this.mainData: ', this)
|
|
||||||
let dicPara = {
|
let dicPara = {
|
||||||
id: this.mainData.masterFirst.id || '',
|
id: this.mainData.masterFirst.id || '',
|
||||||
departmentLevel: 'MASTER_PM',
|
departmentLevel: 'MASTER_PM',
|
||||||
|
|||||||
@ -63,7 +63,6 @@ export default {
|
|||||||
j.checked = this.form.chartDetails.recordSimpleDtos[0].roleIds ? this.form.chartDetails.recordSimpleDtos[0].roleIds.includes(String(j.roleId)) : false
|
j.checked = this.form.chartDetails.recordSimpleDtos[0].roleIds ? this.form.chartDetails.recordSimpleDtos[0].roleIds.includes(String(j.roleId)) : false
|
||||||
return j
|
return j
|
||||||
})))
|
})))
|
||||||
console.log(this.form.roleDtos)
|
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
handleIsEmit (n) {
|
handleIsEmit (n) {
|
||||||
|
|||||||
@ -178,7 +178,6 @@ export default {
|
|||||||
title: '',
|
title: '',
|
||||||
managerIds: ''
|
managerIds: ''
|
||||||
}
|
}
|
||||||
console.log('this.GroundList1: ', this.GroundList1)
|
|
||||||
params.list = this.GroundList1.filter(i => i.isSelect === 1)
|
params.list = this.GroundList1.filter(i => i.isSelect === 1)
|
||||||
params.list.map((i, index) => {
|
params.list.map((i, index) => {
|
||||||
params.managerIds += i.staffId + ','
|
params.managerIds += i.staffId + ','
|
||||||
|
|||||||
@ -208,7 +208,6 @@ import PopupRight from '@/components/PopupRight'
|
|||||||
import draggable from 'vuedraggable'
|
import draggable from 'vuedraggable'
|
||||||
import {getDimensions} from '@/api/data'
|
import {getDimensions} from '@/api/data'
|
||||||
import { getByGroupId } from '@/api/workbench'
|
import { getByGroupId } from '@/api/workbench'
|
||||||
// console.log('Sortable: ', Sortable)
|
|
||||||
// const info =
|
// const info =
|
||||||
export default {
|
export default {
|
||||||
props: ['templateForm'],
|
props: ['templateForm'],
|
||||||
@ -330,7 +329,6 @@ export default {
|
|||||||
async handleGetDimensions () {
|
async handleGetDimensions () {
|
||||||
try {
|
try {
|
||||||
let res = await getDimensions()
|
let res = await getDimensions()
|
||||||
console.log('res: ', res)
|
|
||||||
if (res.code !== 200) {
|
if (res.code !== 200) {
|
||||||
this.dimensionsList = []
|
this.dimensionsList = []
|
||||||
return
|
return
|
||||||
@ -400,9 +398,7 @@ export default {
|
|||||||
if (type === -1) {
|
if (type === -1) {
|
||||||
this.weiduTitle = '编辑维度'
|
this.weiduTitle = '编辑维度'
|
||||||
this.form = Object.assign({}, item, {index, index2: type, isEdit: true})
|
this.form = Object.assign({}, item, {index, index2: type, isEdit: true})
|
||||||
console.log(' this.form: ', this.form)
|
|
||||||
this.form.weight = this.form.weight * 100
|
this.form.weight = this.form.weight * 100
|
||||||
console.log('this.form: ', this.form)
|
|
||||||
this.show = true
|
this.show = true
|
||||||
} else {
|
} else {
|
||||||
this.zhibiaoTitle = '编辑指标'
|
this.zhibiaoTitle = '编辑指标'
|
||||||
@ -439,7 +435,6 @@ export default {
|
|||||||
},
|
},
|
||||||
handleSubmitZhibiao () {
|
handleSubmitZhibiao () {
|
||||||
this.$refs.formIndicators.validate((v) => {
|
this.$refs.formIndicators.validate((v) => {
|
||||||
console.log('v: ', v)
|
|
||||||
if (v) {
|
if (v) {
|
||||||
this.formIndicators.weight = this.formIndicators.weight / 100 > 1 ? 1 : this.formIndicators.weight / 100
|
this.formIndicators.weight = this.formIndicators.weight / 100 > 1 ? 1 : this.formIndicators.weight / 100
|
||||||
if (this.formIndicators.isEdit) {
|
if (this.formIndicators.isEdit) {
|
||||||
|
|||||||
@ -50,7 +50,6 @@ export default {
|
|||||||
this.token = res.token
|
this.token = res.token
|
||||||
this.$cookies.set('token', res.token, res.expire)
|
this.$cookies.set('token', res.token, res.expire)
|
||||||
let xcq = await this.$store.dispatch('GET_USERINFO')
|
let xcq = await this.$store.dispatch('GET_USERINFO')
|
||||||
console.log('xcq: ', xcq)
|
|
||||||
// let ress = await apiUserInfo()
|
// let ress = await apiUserInfo()
|
||||||
// if (ress.code === 200) {
|
// if (ress.code === 200) {
|
||||||
// this.SET_USER_INFO(ress.user)
|
// this.SET_USER_INFO(ress.user)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user