Quellcode durchsuchen

单位月季年考评详情以及任务中心月季年考评详情,新增 指标的时候 organizationId是从登录人信息里面获取的;改成从接口里面取;部门业绩指标计划根据后台需求修改功能;单位考评目标启动以及任务中心的目标启动详情重构及服务联调;

SunZehao vor 1 Jahr
Ursprung
Commit
6df17c4c3b

+ 13 - 0
src/api/api.js

@@ -700,6 +700,14 @@ export function apiGetgetResponsibilityInfoList(params) {
         params: params
     })
 }
+//单位目标修订详情-----根据属性和阶段获取--获取表格数据
+export function apiGetgetevaluationrevisiondetails(params) {
+    return httpRequest({
+        url: 'evaluation-revision/details',
+        method: 'get',
+        params: params
+    })
+}
 
 
 
@@ -730,6 +738,11 @@ export function apiPostupdateResponsibilityInfo(params) {
     return httpRequest.post('responsibility-indicator-info/updateResponsibilityInfo', params)
 }
 
+//单位目标修订详情-----修改
+export function apiPostupdateevaluationrevisionInfo(params) {
+    return httpRequest.post('evaluation-revision/save', params)
+}
+
 //单位月季年详情-----新增
 export function apiPostorganizationUpdateAddEvaluationInfo(params) {
     return httpRequest.post('organization-evaluation-info/addEvaluationInfo', params)

+ 39 - 95
src/components/assessment/evaluationAmendmentNewFrom.vue

@@ -1,6 +1,6 @@
 <template>
-    <div class="amendmentFrom">
-        <el-dialog title="考评详情" v-model="dialogVisible" :fullscreen="true" :close-on-click-modal="false">
+    <div class="evaluationAmendmentFrom">
+        <el-dialog title="考评目标详情" v-model="dialogVisible" :fullscreen="true" :close-on-click-modal="false">
             <div class="startDetail">
                 <p class="starttitleSty">单据信息:</p>
                 <el-row class="danjuMsg">
@@ -49,28 +49,22 @@
                     <el-tabs v-model="activeName" class="tableMain" @tab-click="handleClick">
                         <el-tab-pane v-for="it in stageData" :key="it.id" :label="it.stageName" :name="it.stageCode">
                             <div class="detailsHeader">
-                                <div class="headerLeft">
-                                    <el-tag v-for="tag in indicatorList" :key="tag.id" size="large" class="tagArr"
-                                        effect="dark" :type="tag.id === isClickTagId ? '': 'info'" @click="handleShowPage(tag)">
-                                        <span>{{ tag.indicator_name }}</span>
-                                    </el-tag>
-                                </div>
                                 <div class="headerRight">
                                     <div class="seachFor">
                                         <el-input v-model="compNameSa" placeholder="请输入单位名称"></el-input>
                                         <el-icon :size="20" color="#3B7AD1" @click="getTableData(isClickTagId)"><Search /></el-icon>
                                     </div>
-                                    <div class="tableBtn add" @click="addTableDetail"
-                                     v-if="(activeName === 'ZDZX' || activeName === 'GLSX') && indicatorList.length > 0">
+                                    <!-- <div class="tableBtn add" @click="addTableDetail"
+                                     v-if="activeName === 'ZDZX' || activeName === 'GLSX'">
                                         <img :src="addIcon" alt="">
                                         <span>新增</span>
                                     </div>
                                     <div class="tableBtn save" @click="saveAddDetail"
-                                    v-if="(activeName === 'ZDZX' || activeName === 'GLSX') && indicatorList.length > 0">
+                                    v-if="activeName === 'ZDZX' || activeName === 'GLSX'">
                                         <img :src="saveIcon" alt="">
                                         <span>保存</span>
-                                    </div>
-                                    <div class="tableBtn save" @click="saveDetail" v-else>
+                                    </div> -->
+                                    <div class="tableBtn save" @click="saveDetail">
                                         <img :src="saveIcon" alt="">
                                         <span>保存</span>
                                     </div>
@@ -129,8 +123,8 @@
 
 <script>
 import importDailog from '../importPage/importDailog.vue'
-import {apiGetEvaluationIndicatorList,apiGetgetEvaluationInfoDataList,apiGetbinsectionList, apiGetbinstageList,apiGetExportMsg,
-apiPostorganizationUpdateEvaluationInfo, apiPostorganizationUpdateAddEvaluationInfo} from '../../api/api'
+import {apiGetgetevaluationrevisiondetails,apiGetbinsectionList, apiGetbinstageList,apiGetExportMsg,
+apiPostupdateevaluationrevisionInfo, apiPostorganizationUpdateAddEvaluationInfo} from '../../api/api'
 import * as XLSX from 'xlsx'
 import { saveAs } from 'file-saver'
 import  * as XLSXD from 'xlsx-js-style'
@@ -154,7 +148,6 @@ export default {
             activeName: '',
             monthQuarterYearData: [],
             monthQuarterYearHeader: [],
-            indicatorList: [],
             isClickTagId: '',
             compNameSa: '',
             receiptMsg: {
@@ -198,7 +191,7 @@ export default {
         ]
     },
     methods: {
-        init(row, type) {
+        init(row) {
             this.dialogVisible = true
             this.receiptMsg = {
                 code: row.organizationEvaluationCode,
@@ -212,15 +205,15 @@ export default {
             }
             
             this.userMes = JSON.parse(window.sessionStorage.getItem('user'))
-            this.getModelData(type)
+            this.getModelData()
             this.rowMsg = row
         },
         // 获取业务属性
-        getModelData(type) {
+        getModelData() {
             let that = this
             that.titleMsgArr = []
             let params = {
-                type: type === '年度' ? '3' : '2'
+                type: '3'
             }
             apiGetbinsectionList(params).then(datas =>{
                 if (datas && datas.data) {
@@ -251,49 +244,32 @@ export default {
                 if (datas && datas.data) {
                     that.stageData = datas.data
                     that.activeName = datas.data[0].stageCode
-                    that.getTableHeaderData(datas.data[0].id)
-                }
-            })
-        },
-        //获取指标数据
-        getTableHeaderData(id) {
-            let that = this
-            that.monthQuarterYearHeader = []
-            that.monthQuarterYearData = []
-            that.isClickTagId = ''
-            let params = {
-                organizationEvaluationId: that.rowMsg.id,
-                binSection: that.binSectionStr,
-                binStage: id
-            }
-            apiGetEvaluationIndicatorList(params).then(datas =>{
-                if (datas && datas.data) {
-                    that.indicatorList = datas.data
-                    if (datas.data.length>0) {
-                        that.isClickTagId = datas.data[0].id
-                        that.getTableData(that.isClickTagId)
-                    }
+                    that.addstageId = datas.data[0].id
+                    that.getTableData(datas.data[0].id)
                 }
             })
         },
         handleClick(val) {
             let stageId = ''
+            this.activeName = val.props.name
+            console.log('activeName', this.activeName)
             this.stageData.forEach(it =>{
                 if (it.stageCode === val.props.name) {
                     stageId = it.id
+                    this.addstageId = it.id
                 }
             })
-            this.getTableHeaderData(stageId)
+            this.getTableData(stageId)
         },
         //获取表格数据
         getTableData(id) {
             let that = this
             let params = {
-                organizationEvaluationId: that.rowMsg.id,
-                indicatorId: id,
-                organizationShortName: that.compNameSa
+                responsibilityId: that.rowMsg.id,
+                binSection: that.binSectionStr,
+                binStage: id
             }
-            apiGetgetEvaluationInfoDataList(params).then(datas =>{
+            apiGetgetevaluationrevisiondetails(params).then(datas =>{
                 if (datas && datas.data) {
                     if (datas.data.title) {
                         let header = []
@@ -310,12 +286,6 @@ export default {
                 }
             })
         },
-        handleShowPage(tag) {
-            this.isClickTagId = tag.id
-            this.monthQuarterYearHeader = []
-            this.monthQuarterYearData = []
-            this.getTableData(tag.id)
-        },
         changType(data) {
             this.titleMsgArr.forEach(it =>{
                 it.showClick = false
@@ -330,7 +300,7 @@ export default {
                     stageId = it.id
                 }
             })
-            this.getTableHeaderData(stageId)
+            this.getTableData(stageId)
         },
         addTableDetail() {
             console.log('表头数据11====>>>>>>>', this.monthQuarterYearHeader)
@@ -389,7 +359,7 @@ export default {
                 })
             }
             if (saveParams.length > 0) {
-                apiPostorganizationUpdateEvaluationInfo(saveParams).then(datas =>{
+                apiPostupdateevaluationrevisionInfo(saveParams).then(datas =>{
                     if (datas) {
                         that.responseData(datas)
                     }
@@ -400,7 +370,7 @@ export default {
         responseData(datas) {
             if (datas.message === '成功') {
                 this.$message({
-                    message: '考评详情信息保存成功',
+                    message: '考评目标详情信息保存成功',
                     type: 'success'
                 });
             } else {
@@ -413,11 +383,11 @@ export default {
         },
         saveDetail() {
             let that = this
-            apiPostorganizationUpdateEvaluationInfo(that.monthQuarterYearData).then(datas =>{
+            apiPostupdateevaluationrevisionInfo(that.monthQuarterYearData).then(datas =>{
                 if (datas) {
                     if (datas.message === '成功') {
                         that.$message({
-                            message: '考评详情信息保存成功',
+                            message: '考评目标详情信息保存成功',
                             type: 'success'
                         });
                     } else {
@@ -426,28 +396,29 @@ export default {
                             type: 'error'
                         });
                     }
-                    that.getTableData(that.isClickTagId)
+                    that.getTableData(that.addstageId)
                 }
             })
         },
         handleImport() {
-            this.$refs.importPage.upload.title = "考评详情信息导入"
+            this.$refs.importPage.upload.title = "考评目标详情信息导入"
             this.$refs.importPage.upload.open = true
-            this.$refs.importPage.upload.url = '/organization-evaluation-info/import-excel'
+            this.$refs.importPage.upload.url = '/responsibility-indicator-info/import-excel'
         },
         successImport(val) {
             that.getTableData(that.isClickTagId)
         },
         handleExport() {
             let that = this
-            let url = 'organization-evaluation-info/download-excel'
+            let url = 'responsibility-indicator-info/download-excel'
             let params = {
-                organizationEvaluationId: that.rowMsg.id,
-                indicatorId: that.isClickTagId
+                responsibilityId: that.rowMsg.id,
+                binSection: that.binSectionStr,
+                binStage: that.addstageId
             }
             apiGetExportMsg(url,params).then(datas =>{
                 let blob = new Blob([datas])
-                saveAs(blob, '考评详情数据导出.xlsx')
+                saveAs(blob, '考评目标详情数据导出.xlsx')
             }).catch((r) => {
                 console.error(r)
             })
@@ -457,7 +428,7 @@ export default {
 </script>
 
 <style lang="less">
-.amendmentFrom{
+.evaluationAmendmentFrom{
     .el-overlay{
         .el-dialog{
             // margin-top: 7vh;
@@ -535,37 +506,10 @@ export default {
                             .detailsHeader{
                                 width: 100%;
                                 display: flex;
-                                justify-content: space-between;
-                                .headerLeft{
-                                    display: flex;
-                                    width: 70%;
-                                    overflow-x: auto;
-                                    .tagArr {
-                                        height: 33px;
-                                        margin-right: 10px;
-                                        cursor: pointer;
-                                        margin-bottom: 10px;
-                                    }
-
-                                    .el-tag--dark {
-                                        background-color: #184FB4;
-                                        border: 1px solid #184FB4;
-                                    }
-
-                                    .el-tag--info {
-                                        background-color: #E6EBF5;
-                                        border: 1px solid #E6EBF5;
-                                        color: #9DA5BE;
-
-                                        .el-tag__close {
-                                            color: #9DA5BE;
-                                        }
-                                    }
-                                }
                                 .headerRight{
                                     display: flex;
                                     justify-content: end;
-                                    width: 30%;
+                                    width: 100%;
                                     margin-bottom: 5px;
                                     .seachFor{
                                         display: flex;
@@ -588,7 +532,7 @@ export default {
                                     .tableBtn {
                                         display: flex;
                                         height: 20px;
-                                        margin: 0 10px;
+                                        margin: 5px 10px 0 10px;
                                         img{
                                             margin-right: 5px;
                                             margin-top: 1px;

+ 12 - 5
src/components/assessment/evaluationDeptStartFrom.vue

@@ -77,7 +77,8 @@
                                         v-for="item in departData"
                                         :key="item.id"
                                         :label="item.name"
-                                        :value="item.id">
+                                        :value="item.id"
+                                        :disabled="scope.row.dataPermission === '-1' && scope.row.deptName !== ''">
                                         </el-option>
                                     </el-select>
                                     <span v-else>{{scope.row.deptName}}</span>
@@ -86,29 +87,35 @@
                             <el-table-column label="排序" width="100" >
                                 <template #default="scope">
                                     <el-input v-model="scope.row.serialNumber"
+                                     :disabled="scope.row.dataPermission === '-1' && scope.row.serialNumber !== ''"
                                      placeholder="请输入排序"></el-input>
                                 </template>
                             </el-table-column>
                             <el-table-column label="指标名称" >
                                 <template #default="scope">
                                     <el-input v-model="scope.row.targetName"
+                                    :disabled="scope.row.dataPermission === '-1' && scope.row.targetName !== ''"
                                      placeholder="请输入指标名称"></el-input>
                                 </template>
                             </el-table-column>
                             <el-table-column label="目标值" width="500">
                                 <template #default="scope">
                                     <el-input v-model="scope.row.targetValue"
+                                    :disabled="scope.row.dataPermission === '-1' && scope.row.targetValue !== ''"
                                      type="textarea" :rows="2" placeholder="请输入目标值"></el-input>
                                 </template>
                             </el-table-column>
                             <el-table-column label="基础分" width="150">
                                 <template #default="scope">
-                                    <el-input-number v-model="scope.row.baseScore" :precision="2" :step="0.1" :min="0" />
+                                    <el-input-number v-model="scope.row.baseScore"
+                                    :disabled="scope.row.dataPermission === '-1' && scope.row.baseScore !== ''"
+                                     :precision="2" :step="0.1" :min="0" />
                                 </template>
                             </el-table-column>
                             <el-table-column label="评价标准" >
                                 <template #default="scope">
                                     <el-input v-model="scope.row.evaluationCriteria"
+                                    :disabled="scope.row.dataPermission === '-1' && scope.row.evaluationCriteria !== ''"
                                      placeholder="请输入评价标准"></el-input>
                                 </template>
                             </el-table-column>
@@ -119,7 +126,8 @@
                                         v-for="item in statusData"
                                         :key="item.id"
                                         :label="item.name"
-                                        :value="item.id">
+                                        :value="item.id"
+                                        :disabled="scope.row.dataPermission === '-1' && scope.row.auditStatus !== ''">
                                         </el-option>
                                     </el-select>
                                 </template>
@@ -337,8 +345,7 @@ export default {
                     evaluationCriteria: item.evaluationCriteria,
                     auditStatus: item.auditStatus,
                     serialNumber: item.serialNumber,
-                    createDept: that.userMes.deptId,
-                    currentUserDept: that.userMes.deptId
+                    createDept: that.userMes.deptId
                 }
                 if (item.showInput) {
                     obj.deptId = item.deptName

+ 16 - 15
src/components/assessment/evaluationStartNewFrom.vue

@@ -1,6 +1,6 @@
 <template>
-    <div class="monthQuarterYearFrom">
-        <el-dialog title="考评详情" v-model="dialogVisible" :fullscreen="true" :close-on-click-modal="false">
+    <div class="evaluationStartNFrom">
+        <el-dialog title="考评目标详情" v-model="dialogVisible" :fullscreen="true" :close-on-click-modal="false">
             <div class="startDetail">
                 <p class="starttitleSty">单据信息:</p>
                 <el-row class="danjuMsg">
@@ -54,7 +54,7 @@
                                         <el-input v-model="compNameSa" placeholder="请输入单位名称"></el-input>
                                         <el-icon :size="20" color="#3B7AD1" @click="getTableData(isClickTagId)"><Search /></el-icon>
                                     </div>
-                                    <div class="tableBtn add" @click="addTableDetail"
+                                    <!-- <div class="tableBtn add" @click="addTableDetail"
                                      v-if="activeName === 'ZDZX' || activeName === 'GLSX'">
                                         <img :src="addIcon" alt="">
                                         <span>新增</span>
@@ -63,8 +63,8 @@
                                     v-if="activeName === 'ZDZX' || activeName === 'GLSX'">
                                         <img :src="saveIcon" alt="">
                                         <span>保存</span>
-                                    </div>
-                                    <div class="tableBtn save" @click="saveDetail" v-else>
+                                    </div> -->
+                                    <div class="tableBtn save" @click="saveDetail">
                                         <img :src="saveIcon" alt="">
                                         <span>保存</span>
                                     </div>
@@ -300,7 +300,7 @@ export default {
                     stageId = it.id
                 }
             })
-            this.getTableHeaderData(stageId)
+            this.getTableData(stageId)
         },
         addTableDetail() {
             console.log('表头数据11====>>>>>>>', this.monthQuarterYearHeader)
@@ -370,7 +370,7 @@ export default {
         responseData(datas) {
             if (datas.message === '成功') {
                 this.$message({
-                    message: '考评详情信息保存成功',
+                    message: '考评目标详情信息保存成功',
                     type: 'success'
                 });
             } else {
@@ -387,7 +387,7 @@ export default {
                 if (datas) {
                     if (datas.message === '成功') {
                         that.$message({
-                            message: '考评详情信息保存成功',
+                            message: '考评目标详情信息保存成功',
                             type: 'success'
                         });
                     } else {
@@ -401,23 +401,24 @@ export default {
             })
         },
         handleImport() {
-            this.$refs.importPage.upload.title = "考评详情信息导入"
+            this.$refs.importPage.upload.title = "考评目标详情信息导入"
             this.$refs.importPage.upload.open = true
-            this.$refs.importPage.upload.url = '/organization-evaluation-info/import-excel'
+            this.$refs.importPage.upload.url = '/responsibility-indicator-info/import-excel'
         },
         successImport(val) {
             that.getTableData(that.isClickTagId)
         },
         handleExport() {
             let that = this
-            let url = 'organization-evaluation-info/download-excel'
+            let url = 'responsibility-indicator-info/download-excel'
             let params = {
-                organizationEvaluationId: that.rowMsg.id,
-                indicatorId: that.isClickTagId
+                responsibilityId: that.rowMsg.id,
+                binSection: that.binSectionStr,
+                binStage: that.addstageId
             }
             apiGetExportMsg(url,params).then(datas =>{
                 let blob = new Blob([datas])
-                saveAs(blob, '考评详情数据导出.xlsx')
+                saveAs(blob, '考评目标详情数据导出.xlsx')
             }).catch((r) => {
                 console.error(r)
             })
@@ -427,7 +428,7 @@ export default {
 </script>
 
 <style lang="less">
-.monthQuarterYearFrom{
+.evaluationStartNFrom{
     .el-overlay{
         .el-dialog{
             // margin-top: 7vh;

+ 2 - 2
src/components/assessment/evaluationStartPage.vue

@@ -78,7 +78,7 @@
                         <template #default="scope">
                             <p class="indicitem" v-if="scope.row.stage === '流程未启动'" @click="agetdeptresponsibility(scope.row)">启动</p>
                             <!-- <p class="indicitem" v-else @click="getDetail(scope.row)">详情</p> -->
-                            <p style="font-size: 12px;margin-right: 20px;"  @click="evaluationRevision(scope.row)"
+                            <p class="indicitem"  @click="evaluationRevision(scope.row)"
                              v-else-if="scope.row.stage === '流程已结束'" >修订</p>
                             <p style="font-size: 12px;margin-right: 20px;" v-else >已启动</p>
                         </template>
@@ -174,7 +174,7 @@
 import startFromList from './evaluationStartNewFrom.vue'
 import btns from '../elbuttonS.vue'
 import seachs from '../seachGroup.vue'
-import {apiGetdeptresponsibilityList, apiGetdeptresponsibilitySave,apiGetdoAction,apiGetworkflowgetOpinion,
+import {apiGetdeptresponsibilityList, apiGetdeptresponsibilitySave,apiGetdoAction,apiGetworkflowgetOpinion,apiGetevaluationrevisionRevise,
 apiGetdeptresponsibilitygenerate, apiGetdatadictionaryList, apiPostresponsiDelete} from '../../api/api'
 export default {
     components: {

+ 34 - 4
src/components/assessment/monthQuarterYearFrom.vue

@@ -86,7 +86,18 @@
                             </div>
                             <el-table :data="monthQuarterYearData" style="width: 100%" ref="monthQuarterYearTT" :border="true" >
                                 <el-table-column type="index" label="排名" align="center"></el-table-column>
-                                <el-table-column label="考评单位" prop="organizationShortName" width="300" />
+                                <el-table-column label="考评单位" prop="organizationShortName" width="300">
+                                    <template #default="scope">
+                                        <el-select v-model="scope.row.organizationShortName" placeholder="请选择审核状态">
+                                            <el-option
+                                            v-for="item in organizationData"
+                                            :key="item.organizationId"
+                                            :label="item.organizationShortName"
+                                            :value="item.organizationId">
+                                            </el-option>
+                                        </el-select>
+                                    </template>
+                                </el-table-column>
                                 <el-table-column  v-for="(it, index) in monthQuarterYearHeader" :key="index" :label="it.name" align="center">
                                     <el-table-column v-for="(iv, index) in it.children" :key="index" :label="iv.key"
                                      align="center" :width="iv.code === 'state'?'150':''">
@@ -130,7 +141,7 @@
 <script>
 import importDailog from '../importPage/importDailog.vue'
 import {apiGetEvaluationIndicatorList,apiGetgetEvaluationInfoDataList,apiGetbinsectionList, apiGetbinstageList,apiGetExportMsg,
-apiPostorganizationUpdateEvaluationInfo, apiPostorganizationUpdateAddEvaluationInfo} from '../../api/api'
+apiPostorganizationUpdateEvaluationInfo, apiPostorganizationUpdateAddEvaluationInfo, apiGetOrganizationListAll} from '../../api/api'
 import * as XLSX from 'xlsx'
 import { saveAs } from 'file-saver'
 import  * as XLSXD from 'xlsx-js-style'
@@ -171,6 +182,7 @@ export default {
             moduleData: [],
             stageData: [],
             titleMsgArr: [],
+            organizationData: [],
             statusData: [],
             binSectionStr: '',
             addIcon: addIcon,
@@ -178,6 +190,7 @@ export default {
             exportIcon: exportIcon,
             importIcon: importIcon,
             addstageId: '',
+            cycleType: '',
             userMes: {}
         }
     },
@@ -210,11 +223,25 @@ export default {
                 year: row.year,
                 recStage: '有效'
             }
-            
             this.userMes = JSON.parse(window.sessionStorage.getItem('user'))
+            this.cycleType = type
             this.getModelData(type)
             this.rowMsg = row
         },
+        //获取单位数据
+        getorganizationData(type) {
+            let that = this
+            let params = {
+                evaluationCycle: type ==='年度' ? 'NDKP': type ==='季度' ? 'JDKP' : 'YDKP',
+                organizationType: 'DWKP',
+                binSection: that.binSectionStr
+            }
+            apiGetOrganizationListAll(params).then(datas => {
+                if (datas && datas.data) {
+                    that.organizationData = datas.data
+                }
+            })
+        },
         // 获取业务属性
         getModelData(type) {
             let that = this
@@ -241,6 +268,7 @@ export default {
                     that.titleMsgArr[0].showClick = true
                     that.binSectionStr = that.titleMsgArr[0].id
                     that.getStageData()
+                    that.getorganizationData(type)
                 }
             })
         },
@@ -331,6 +359,7 @@ export default {
                 }
             })
             this.getTableHeaderData(stageId)
+            this.getorganizationData(this.cycleType)
         },
         addTableDetail() {
             console.log('表头数据11====>>>>>>>', this.monthQuarterYearHeader)
@@ -365,7 +394,7 @@ export default {
             let addParams = []
             let saveParams = []
             let addObj = {
-                organizationId: that.userMes.unitId,
+                // organizationId: that.userMes.unitId,
                 // organizationId: "23079300",
                 organizationEvaluationId: that.rowMsg.id,
                 indicatorId: that.isClickTagId,
@@ -375,6 +404,7 @@ export default {
             }
             that.monthQuarterYearData.forEach(it =>{
                 if (it.isAdd) {
+                    addObj.organizationId = it.organizationShortName
                     addObj.optionMap = it
                     addParams.push(addObj)
                 } else {

+ 1 - 1
src/components/evaluationSystem/evaluationIndexPage.vue

@@ -562,7 +562,7 @@ export default {
             that.indicatoroptions.forEach(item =>{
                 if (item.list.length>0) {
                     item.list.forEach(itv =>{
-                        itv.formula = encodeURI(itv.formula)
+                        itv.formula = itv.formula ? encodeURI(itv.formula) : ''
                     })
                 }
             })

+ 12 - 5
src/components/taskCenter/taskCenterDeptStartFrom.vue

@@ -77,7 +77,8 @@
                                         v-for="item in departData"
                                         :key="item.id"
                                         :label="item.keyName"
-                                        :value="item.id">
+                                        :value="item.id"
+                                        :disabled="scope.row.dataPermission === '-1' && scope.row.deptName !== ''">
                                         </el-option>
                                     </el-select>
                                     <span v-else>{{scope.row.deptName}}</span>
@@ -86,29 +87,35 @@
                             <el-table-column label="排序" width="100" >
                                 <template #default="scope">
                                     <el-input v-model="scope.row.serialNumber"
+                                    :disabled="scope.row.dataPermission === '-1' && scope.row.serialNumber !== ''"
                                      placeholder="请输入排序"></el-input>
                                 </template>
                             </el-table-column>
                             <el-table-column label="指标名称" >
                                 <template #default="scope">
                                     <el-input v-model="scope.row.targetName"
+                                    :disabled="scope.row.dataPermission === '-1' && scope.row.targetName !== ''"
                                      placeholder="请输入指标名称"></el-input>
                                 </template>
                             </el-table-column>
                             <el-table-column label="目标值" width="500">
                                 <template #default="scope">
                                     <el-input v-model="scope.row.targetValue"
+                                    :disabled="scope.row.dataPermission === '-1' && scope.row.targetValue !== ''"
                                      type="textarea" :rows="2" placeholder="请输入目标值"></el-input>
                                 </template>
                             </el-table-column>
                             <el-table-column label="基础分" width="150">
                                 <template #default="scope">
-                                    <el-input-number v-model="scope.row.baseScore" :precision="2" :step="0.1" :min="0" />
+                                    <el-input-number v-model="scope.row.baseScore"
+                                    :disabled="scope.row.dataPermission === '-1' && scope.row.baseScore !== ''"
+                                     :precision="2" :step="0.1" :min="0" />
                                 </template>
                             </el-table-column>
                             <el-table-column label="评价标准" >
                                 <template #default="scope">
                                     <el-input v-model="scope.row.evaluationCriteria"
+                                    :disabled="scope.row.dataPermission === '-1' && scope.row.evaluationCriteria !== ''"
                                      placeholder="请输入评价标准"></el-input>
                                 </template>
                             </el-table-column>
@@ -119,7 +126,8 @@
                                         v-for="item in statusData"
                                         :key="item.id"
                                         :label="item.name"
-                                        :value="item.id">
+                                        :value="item.id"
+                                        :disabled="scope.row.dataPermission === '-1' && scope.row.auditStatus !== ''">
                                         </el-option>
                                     </el-select>
                                 </template>
@@ -329,8 +337,7 @@ export default {
                     evaluationCriteria: item.evaluationCriteria,
                     auditStatus: item.auditStatus,
                     serialNumber: item.serialNumber,
-                    createDept: userMes.deptId,
-                    currentUserDept: userMes.deptId
+                    createDept: userMes.deptId
                 }
                 if (item.showInput) {
                     obj.deptId = item.deptName

+ 42 - 36
src/components/taskCenter/taskCenterEvlNewFrom.vue

@@ -86,7 +86,18 @@
                             </div>
                             <el-table :data="monthQuarterYearData" style="width: 100%" ref="monthQuarterYearTT" :border="true" >
                                 <el-table-column type="index" label="排名" align="center"></el-table-column>
-                                <el-table-column label="考评单位" prop="organizationShortName" width="300" />
+                                <el-table-column label="考评单位" prop="organizationShortName" width="300">
+                                    <template #default="scope">
+                                        <el-select v-model="scope.row.organizationShortName" placeholder="请选择审核状态">
+                                            <el-option
+                                            v-for="item in organizationData"
+                                            :key="item.organizationId"
+                                            :label="item.organizationShortName"
+                                            :value="item.organizationId">
+                                            </el-option>
+                                        </el-select>
+                                    </template>
+                                </el-table-column>
                                 <el-table-column  v-for="(it, index) in monthQuarterYearHeader" :key="index" :label="it.name" align="center">
                                     <el-table-column v-for="(iv, index) in it.children" :key="index" :label="iv.key"
                                      align="center" :width="iv.code === 'state'?'150':''">
@@ -141,7 +152,7 @@
 import importDailog from '../importPage/importDailog.vue'
 import {apiGetEvaluationIndicatorList,apiGetgetEvaluationInfoDataList,apiGetbinsectionList, apiGetbinstageList,apiGetExportMsg,
 apiPostorganizationUpdateEvaluationInfo, apiPostorganizationUpdateAddEvaluationInfo,apiGetHeaderOrganizationEvaluation,
-apiGetHeaderDeptResponsibility, apiPostgetInstanceAndChildren, apiPostIsdoAction} from '../../api/api'
+apiPostIsdoAction} from '../../api/api'
 import * as XLSX from 'xlsx'
 import { saveAs } from 'file-saver'
 import  * as XLSXD from 'xlsx-js-style'
@@ -189,10 +200,11 @@ export default {
             importIcon: importIcon,
             addstageId: '',
             tastbizKey: '',
-            userMes: {},
+            taskDefKey: '',
             instanceChild: {},
             descMsg: '',
             statusData: [],
+            organizationData: [],
         }
     },
     created() {
@@ -212,46 +224,24 @@ export default {
         ]
     },
     methods: {
-        init(row) {
+        init(row, allData) {
             this.dialogVisible = true
-            this.userMes = JSON.parse(window.sessionStorage.getItem('user'))
-            this.getTaskId(row)
+            this.instanceChild = allData
+            this.tastbizKey = allData.bizKey
+            this.taskDefKey = allData.defKey
+            this.getevalHeaderDetails(this.tastbizKey, this.taskDefKey)
+            this.getModelData(this.taskDefKey)
             this.rowMsg = row
         },
-        // 根据流程ID获取业务ID
-        getTaskId(row) {
-            let that = this
-            let params = {
-                id: row.instId,
-                iamCode: window.localStorage.getItem('code')
-            }
-            apiPostgetInstanceAndChildren(params).then(datas =>{
-                if (datas && datas.data) {
-                    that.instanceChild = datas.data.data.bpmInstance
-                    let bizKey = datas.data.data.bpmInstance.bizKey
-                    let defKey = datas.data.data.bpmInstance.defKey
-                    that.tastbizKey = datas.data.data.bpmInstance.bizKey
-                    // that.taskDefKey = datas.data.data.bpmInstance.defKey
-                    that.getevalHeaderDetails(bizKey, defKey)
-                    that.getModelData(defKey)
-                }
-            })
-        },
         //获取头部详情
         getevalHeaderDetails(id, defKey) {
             let that = this
             let params = {
                 id: id
             }
-            if (defKey === 'yddwkplc' || defKey === 'jddwkplc' || defKey === 'nddwkplc') {
-                apiGetHeaderOrganizationEvaluation(params).then(datas =>{
-                    that.getDataMsg(defKey, datas)
-                })
-            } else if(defKey === 'dwkpmbqd') {
-                apiGetHeaderDeptResponsibility(params).then(datas =>{
-                    that.getDataMsg('dwkpmbqd', datas)
-                })
-            }
+            apiGetHeaderOrganizationEvaluation(params).then(datas =>{
+                that.getDataMsg(defKey, datas)
+            })
         },
         getDataMsg(types, datas) {
             if (datas && datas.data) {
@@ -294,6 +284,21 @@ export default {
                     that.titleMsgArr[0].showClick = true
                     that.binSectionStr = that.titleMsgArr[0].id
                     that.getStageData()
+                    that.getorganizationData(type)
+                }
+            })
+        },
+        //获取单位数据
+        getorganizationData(type) {
+            let that = this
+            let params = {
+                evaluationCycle: type ==='nddwkplc' ? 'NDKP': type ==='jddwkplc' ? 'JDKP' : 'YDKP',
+                organizationType: 'DWKP',
+                binSection: that.binSectionStr
+            }
+            apiGetOrganizationListAll(params).then(datas => {
+                if (datas && datas.data) {
+                    that.organizationData = datas.data
                 }
             })
         },
@@ -384,6 +389,7 @@ export default {
                 }
             })
             this.getTableHeaderData(stageId)
+            this.getorganizationData(this.taskDefKey)
         },
         addTableDetail() {
             console.log('表头数据11====>>>>>>>', this.monthQuarterYearHeader)
@@ -418,7 +424,6 @@ export default {
             let addParams = []
             let saveParams = []
             let addObj = {
-                organizationId: that.userMes.unitId,
                 organizationEvaluationId: that.tastbizKey,
                 indicatorId: that.isClickTagId,
                 binSection: that.binSectionStr,
@@ -427,6 +432,7 @@ export default {
             }
             that.monthQuarterYearData.forEach(it =>{
                 if (it.isAdd) {
+                    addObj.organizationId = it.organizationShortName
                     addObj.optionMap = it
                     addParams.push(addObj)
                 } else {
@@ -494,7 +500,7 @@ export default {
             let that = this
             let url = 'organization-evaluation-info/download-excel'
             let params = {
-                organizationEvaluationId: that.rowMsg.id,
+                organizationEvaluationId: that.tastbizKey,
                 indicatorId: that.isClickTagId
             }
             apiGetExportMsg(url,params).then(datas =>{

+ 7 - 2
src/components/taskCenter/taskCenterPage.vue

@@ -55,7 +55,8 @@
                     </iframe>
                 </div>
             </el-dialog>
-        </div>        
+        </div>
+        <task-evaluation-start ref="taskEvaluationStart"></task-evaluation-start>
         <task-center-evl ref="taskCenterEvl" @approveMsg="approveMsg"></task-center-evl>
         <task-center-dept-evl ref="taskCenterdeptEvl" @approveMsg="approveMsg"></task-center-dept-evl>
         <task-center-dept-business-evl ref="taskCenterdeptbusinessEvl" @approveMsg="approveMsg"></task-center-dept-business-evl>
@@ -65,12 +66,14 @@
 
 <script>
 import {apiPostTodoTaskList, apiPostgetInstanceAndChildren} from '../../api/api'
+import taskEvaluationStart from './taskEvaluationStart.vue'
 import taskCenterEvl from './taskCenterEvlNewFrom.vue'
 import taskCenterDeptEvl from './taskCenterDeptStartFrom.vue'
 import taskCenterDeptBusinessEvl from './taskCenterDeptBusinessFrom.vue'
 import taskApplicationFrom from './taskApplicationFrom.vue'
 export default {
     components: {
+        taskEvaluationStart,
         taskCenterEvl,
         taskCenterDeptEvl,
         taskCenterDeptBusinessEvl,
@@ -131,7 +134,9 @@ export default {
                     } else if(taskDefKey === 'jxjgkhsb'){
                         that.$refs.taskApplicationFrom.init(row, keyId)
                     } else if(taskDefKey === 'yddwkplc' || taskDefKey === 'jddwkplc' || taskDefKey === 'nddwkplc') {
-                        that.$refs.taskCenterEvl.init(row)
+                        that.$refs.taskCenterEvl.init(row, allData)
+                    } else if (taskDefKey === 'dwkpmbqd') {
+                        that.$refs.taskEvaluationStart.init(row)
                     }
                 }
             })

+ 679 - 0
src/components/taskCenter/taskEvaluationStart.vue

@@ -0,0 +1,679 @@
+<template>
+    <div class="evaluationStartNFrom">
+        <el-dialog title="考评目标详情" v-model="dialogVisible" :fullscreen="true" :close-on-click-modal="false">
+            <div class="startDetail">
+                <p class="starttitleSty">单据信息:</p>
+                <el-row class="danjuMsg">
+                    <el-col :span="6">
+                        <div class="danjuMsg_data">
+                            <span class="data_tit">业务编号:</span>
+                            <span>{{receiptMsg.code}}</span>
+                        </div>
+                        <div class="danjuMsg_data">
+                            <span class="data_tit">创建日期:</span>
+                            <span>{{receiptMsg.createDate}}</span>
+                        </div>
+                    </el-col>
+                    <el-col :span="6">
+                        <div class="danjuMsg_data">
+                            <span class="data_tit">业务简述:</span>
+                            <span>{{receiptMsg.des}}</span>
+                        </div>
+                        <div class="danjuMsg_data">
+                            <span class="data_tit">业务类别:</span>
+                            <span>{{receiptMsg.type}}</span>
+                        </div>
+                    </el-col>
+                    <el-col :span="6">
+                        <div class="danjuMsg_data">
+                            <span class="data_tit">流程状态:</span>
+                            <span>{{receiptMsg.stage}}</span>
+                        </div>
+                        <div class="danjuMsg_data">
+                            <span class="data_tit">年度:</span>
+                            <span>{{receiptMsg.year}}</span>
+                        </div>
+                    </el-col>
+                    <el-col :span="6">
+                        <div class="danjuMsg_data">
+                            <span class="data_tit">创建人:</span>
+                            <span>{{receiptMsg.createName}}</span>
+                        </div>
+                        <div class="danjuMsg_data">
+                            <span class="data_tit">单据状态:</span>
+                            <span>{{receiptMsg.recStage}}</span>
+                        </div>
+                    </el-col>
+                </el-row>
+                <div class="monthQuarterYear">
+                    <el-tabs v-model="activeName" class="tableMain" @tab-click="handleClick">
+                        <el-tab-pane v-for="it in stageData" :key="it.id" :label="it.stageName" :name="it.stageCode">
+                            <div class="detailsHeader">
+                                <div class="headerRight">
+                                    <div class="seachFor">
+                                        <el-input v-model="compNameSa" placeholder="请输入单位名称"></el-input>
+                                        <el-icon :size="20" color="#3B7AD1" @click="getTableData(isClickTagId)"><Search /></el-icon>
+                                    </div>
+                                    <!-- <div class="tableBtn add" @click="addTableDetail"
+                                     v-if="activeName === 'ZDZX' || activeName === 'GLSX'">
+                                        <img :src="addIcon" alt="">
+                                        <span>新增</span>
+                                    </div>
+                                    <div class="tableBtn save" @click="saveAddDetail"
+                                    v-if="activeName === 'ZDZX' || activeName === 'GLSX'">
+                                        <img :src="saveIcon" alt="">
+                                        <span>保存</span>
+                                    </div> -->
+                                    <div class="tableBtn save" @click="saveDetail">
+                                        <img :src="saveIcon" alt="">
+                                        <span>保存</span>
+                                    </div>
+                                    <div class="tableBtn import" @click="handleImport">
+                                        <img :src="importIcon" alt="">
+                                        <span>导入</span>
+                                    </div>
+                                    <div class="tableBtn export" @click="handleExport">
+                                        <img :src="exportIcon" alt="">
+                                        <span>导出</span>
+                                    </div>
+                                </div>
+                            </div>
+                            <el-table :data="monthQuarterYearData" style="width: 100%" ref="monthQuarterYearTT" :border="true" >
+                                <el-table-column type="index" label="排名" align="center"></el-table-column>
+                                <el-table-column label="考评单位" prop="organizationShortName" width="300" />
+                                <el-table-column  v-for="(it, index) in monthQuarterYearHeader" :key="index" :label="it.name" align="center">
+                                    <el-table-column v-for="(iv, index) in it.children" :key="index" :label="iv.key"
+                                     align="center" :width="iv.code === 'state'?'150':''">
+                                        <template #default="scope">
+                                            <el-select v-model="scope.row[iv.code]" placeholder="请选择审核状态" v-if="scope.row['IS_LH_'+iv.code] === '3'">
+                                                <el-option
+                                                v-for="item in statusData"
+                                                :key="item.id"
+                                                :label="item.name"
+                                                :value="item.id">
+                                                </el-option>
+                                            </el-select>
+                                            <el-input v-model="scope.row[iv.code]" v-else-if="scope.row['IS_LH_'+iv.code] === '2'"></el-input>
+                                            <el-input-number v-model="scope.row[iv.code]" :precision="2" :step="0.1" v-else />
+                                        </template>
+                                    </el-table-column>
+                                </el-table-column>
+                            </el-table>
+                        </el-tab-pane>
+                    </el-tabs>
+                    <div class="tableSeach">
+                        <div class="seachType" v-for="item in titleMsgArr" :key="item.isName"
+                        :class="item.showClick? 'seachTypeCha':''" @click="changType(item)">
+                            <img :src="item.img" alt="" v-if="!item.showClick">
+                            <img :src="item.clickImg" alt="" v-else>
+                            <p :style="item.showClick? 'color: #3B7AD1' : ''">{{item.isName}}</p>
+                        </div>
+                    </div>
+                </div>
+                <div>
+                    <p class="starttitleSty">审批意见:</p>
+                    <el-input v-model="descMsg" :rows="3" type="textarea" placeholder="请输入审批意见"></el-input>
+                </div>
+            </div>
+            <!-- <template #footer>
+                <span class="dialog-footer">
+                    <el-button type="primary" @click="dialogVisible = false">取 消</el-button>
+                </span>
+            </template> -->
+            <template #footer>
+                <span class="dialog-footer">
+                    <el-button type="primary" @click="examineAndApprove('agree')">同 意</el-button>
+                    <el-button @click="examineAndApprove('reject')">拒 绝</el-button>
+                </span>
+            </template>
+        </el-dialog>
+        <import-dailog ref="importPage" @successImport="successImport"></import-dailog>
+    </div>
+</template>
+
+<script>
+import importDailog from '../importPage/importDailog.vue'
+import {apiGetgetResponsibilityInfoList,apiGetbinsectionList, apiGetbinstageList,apiGetExportMsg,apiPostIsdoAction,
+apiPostupdateResponsibilityInfo, apiGetHeaderDeptResponsibility} from '../../api/api'
+import * as XLSX from 'xlsx'
+import { saveAs } from 'file-saver'
+import  * as XLSXD from 'xlsx-js-style'
+
+import sectionDef from '../../assets/benchmarkImg/sectionDef.png'
+
+import sectionCha from '../../assets/benchmarkImg/sectionCha.png'
+
+import addIcon from '../../assets/btnIcon/add.png'
+import saveIcon from '../../assets/btnIcon/save.png'
+import exportIcon from '../../assets/btnIcon/export.png'
+import importIcon from '../../assets/btnIcon/import.png'
+
+export default {
+    components: {
+        importDailog
+    },
+    data() {
+        return {
+            dialogVisible: false,
+            activeName: '',
+            monthQuarterYearData: [],
+            monthQuarterYearHeader: [],
+            isClickTagId: '',
+            compNameSa: '',
+            receiptMsg: {
+                code: '',
+                des: '',
+                stage: '',
+                createName: '',
+                createDate: '',
+                type: '',
+                year: '',
+                recStage: ''
+            },
+            rowMsg: {},
+            moduleData: [],
+            stageData: [],
+            titleMsgArr: [],
+            statusData: [],
+            binSectionStr: '',
+            addIcon: addIcon,
+            saveIcon: saveIcon,
+            exportIcon: exportIcon,
+            importIcon: importIcon,
+            addstageId: '',
+            instanceChild: {},
+            tastbizKey: '',
+            taskDefKey: '',
+            descMsg: ''
+        }
+    },
+    created() {
+        this.statusData = [
+            {
+                name: '已确认',
+                id: '1'
+            },
+            {
+                name: '待确认',
+                id: '0'
+            },
+            {
+                name: '不合格',
+                id: '-1'
+            }
+        ]
+    },
+    methods: {
+        init(row, allData) {
+            this.dialogVisible = true
+            this.instanceChild = allData
+            this.tastbizKey = allData.bizKey
+            this.taskDefKey = allData.defKey
+            this.getevalHeaderDetails(this.tastbizKey, this.taskDefKey)
+            this.getModelData(this.taskDefKey)
+            this.rowMsg = row
+        },
+        
+        //获取头部详情
+        getevalHeaderDetails(id) {
+            let that = this
+            let params = {
+                id: id
+            }
+            apiGetHeaderDeptResponsibility(params).then(datas =>{
+                that.getDataMsg('dwkpmbqd', datas)
+            })
+        },
+        getDataMsg(types, datas) {
+            if (datas && datas.data) {
+                let item = datas.data
+                this.receiptMsg = {
+                    code: types === 'dwkpmbqd'?item.responsibilityCode:item.organizationEvaluationCode,
+                    des: item.des,
+                    stage: item.stage,
+                    createName: item.createName,
+                    createDate: item.createTime,
+                    type: item.checkCycle === 'YDKP'?'月度考评':item.checkCycle === 'JDKP'?'季度考评':'年度考评',
+                    year: item.year,
+                    recStage: '有效'
+                }
+            }
+        },
+        // 获取业务属性
+        getModelData() {
+            let that = this
+            that.titleMsgArr = []
+            let params = {
+                type: '3'
+            }
+            apiGetbinsectionList(params).then(datas =>{
+                if (datas && datas.data) {
+                    that.moduleData = datas.data
+                    that.moduleData.forEach(item =>{
+                        let obj = {
+                            id: item.id,
+                            isName: item.sectionName === '新能源(光电)' ? '新能源光电' : item.sectionName === '新能源(风电)' ? '新能源风电' : item.sectionName,
+                            isNameEn: item.sectionCode,
+                            showClick: false,
+                            isClass: 'sectionDef',
+                            img: sectionDef,
+                            isClassC: 'sectionCha',
+                            clickImg: sectionCha
+                        }
+                        that.titleMsgArr.push(obj)
+                    })
+                    that.titleMsgArr[0].showClick = true
+                    that.binSectionStr = that.titleMsgArr[0].id
+                    that.getStageData()
+                }
+            })
+        },
+        //根据业务属性获取业务阶段
+        getStageData() {
+            let that = this
+            apiGetbinstageList().then(datas =>{
+                if (datas && datas.data) {
+                    that.stageData = datas.data
+                    that.activeName = datas.data[0].stageCode
+                    that.addstageId = datas.data[0].id
+                    that.getTableData(datas.data[0].id)
+                }
+            })
+        },
+        handleClick(val) {
+            let stageId = ''
+            this.activeName = val.props.name
+            console.log('activeName', this.activeName)
+            this.stageData.forEach(it =>{
+                if (it.stageCode === val.props.name) {
+                    stageId = it.id
+                    this.addstageId = it.id
+                }
+            })
+            this.getTableData(stageId)
+        },
+        //获取表格数据
+        getTableData(id) {
+            let that = this
+            let params = {
+                responsibilityId: that.tastbizKey,
+                binSection: that.binSectionStr,
+                binStage: id
+            }
+            apiGetgetResponsibilityInfoList(params).then(datas =>{
+                if (datas && datas.data) {
+                    if (datas.data.title) {
+                        let header = []
+                        for(let i in datas.data.title) {
+                            let obj = {
+                                name: i,
+                                children: datas.data.title[i]
+                            }
+                            header.push(obj)
+                        }
+                        that.monthQuarterYearHeader = header
+                    }
+                    that.monthQuarterYearData = datas.data.value
+                }
+            })
+        },
+        changType(data) {
+            this.titleMsgArr.forEach(it =>{
+                it.showClick = false
+                if (it.isName === data.isName) {
+                    it.showClick = true
+                    this.binSectionStr = it.id
+                }
+            })
+            let stageId = ''
+            this.stageData.forEach(it =>{
+                if (it.stageCode === this.activeName) {
+                    stageId = it.id
+                }
+            })
+            this.getTableData(stageId)
+        },
+        saveDetail() {
+            let that = this
+            apiPostupdateResponsibilityInfo(that.monthQuarterYearData).then(datas =>{
+                if (datas) {
+                    if (datas.message === '成功') {
+                        that.$message({
+                            message: '考评目标详情信息保存成功',
+                            type: 'success'
+                        });
+                    } else {
+                        that.$message({
+                            message: datas.message,
+                            type: 'error'
+                        });
+                    }
+                    that.getTableData(that.addstageId)
+                }
+            })
+        },
+        handleImport() {
+            this.$refs.importPage.upload.title = "考评目标详情信息导入"
+            this.$refs.importPage.upload.open = true
+            this.$refs.importPage.upload.url = '/responsibility-indicator-info/import-excel'
+        },
+        successImport(val) {
+            that.getTableData(that.isClickTagId)
+        },
+        handleExport() {
+            let that = this
+            let url = 'responsibility-indicator-info/download-excel'
+            let params = {
+                responsibilityId: that.tastbizKey,
+                binSection: that.binSectionStr,
+                binStage: that.addstageId
+            }
+            apiGetExportMsg(url,params).then(datas =>{
+                let blob = new Blob([datas])
+                saveAs(blob, '考评目标详情数据导出.xlsx')
+            }).catch((r) => {
+                console.error(r)
+            })
+        },
+        examineAndApprove(type) {
+            let that = this
+            let actionCS = ''
+            if (type === 'agree') {
+                if (that.rowMsg.taskType === 'SIGN') {
+                    actionCS = 'signAgree'
+                } else if (that.rowMsg.taskType === 'NORMAL') {
+                    actionCS = 'agree'
+                }
+            } else {
+                // if (that.rowMsg.taskType === 'SIGN') {
+                //     actionCS = 'signReject'
+                // } else if (that.rowMsg.taskType === 'NORMAL') {
+                //     }
+                actionCS = 'reject'
+            }
+            let params = {
+                taskId: that.rowMsg.id, //任务ID
+                nodeId: that.rowMsg.nodeId, //节点ID
+                action: actionCS, //固定值
+                instanceId: that.rowMsg.instId, //流程实例ID
+                opinion: that.descMsg, //审批意见
+                iamCode: window.localStorage.getItem('code'), //认证后code值
+                taskName: that.rowMsg.name,
+                defKey: that.instanceChild.defKey,
+                bizKey: that.instanceChild.bizKey
+            }
+            apiPostIsdoAction(params).then(datas =>{
+                if (datas && datas.data) {
+                    if (datas.data.isOk) {
+                        that.$message({
+                            message: datas.data.data,
+                            type: 'success'
+                        })
+                        that.dialogVisible = false
+                        that.$emit('approveMsg', datas.data.isOk)
+                    } else {
+                        that.$message({
+                            message: datas.data.msg,
+                            type: 'error'
+                        })
+                    }
+                }
+            })
+        },
+    }
+}
+</script>
+
+<style lang="less">
+.evaluationStartNFrom{
+    .el-overlay{
+        .el-dialog{
+            // margin-top: 7vh;
+            .el-dialog__body{
+                padding: 0 20px !important;
+                .startDetail{
+                    .starttitleSty{
+                        font-size: 18px;
+                        font-family: Microsoft YaHei;
+                        font-weight: bold;
+                        color: #3B7AD1;
+                        // line-height: 12px;
+                        margin: 20px 0 20px 10px;
+                    }
+                    .danjuMsg{
+                        border: 1px solid #D6DBEA;
+                        padding: 10px 20px;
+                        border-radius: 10px;
+                        // margin-bottom: 20px;
+                        .danjuMsg_data{
+                            padding: 5px 0 10px 0;
+                            .data_tit{
+                                margin-right: 10px;
+                                font-weight: bold;
+                                font-size: 14px;
+                                font-family: Microsoft YaHei;
+                                color: #8991B0;
+                            }
+                            .data_tit_wd{
+                                display: inline-block;
+                                width: 90px;
+                            }
+                            .el-form-item--small{
+                                .el-input{
+                                    height: 25px;
+                                    width: 160px;
+                                }
+                                margin-bottom: 0;
+                                .el-input-number{
+                                    height: 25px;
+                                    .el-input-number__decrease, .el-input-number__increase{
+                                        right: -39px;
+                                    }
+                                }
+                            }
+                        }
+                    }
+                    .el-select, .el-input{
+                        width: 100%;
+                    }
+                    .monthQuarterYear{
+                        display: flex;
+                        width: 100%;
+                        margin-top: 20px;
+                        .tableMain{
+                            width: calc(100% - 100px);
+                            .el-tabs__header{
+                                .el-tabs__nav{
+                                    .el-tabs__item{
+                                        font-size: 18px;
+                                        font-family: Microsoft YaHei;
+                                        font-weight: bold;
+                                        margin: 0 10px;                                    
+                                        color: #8991B0;
+                                    }
+                                    .is-active{
+                                        font-size: 18px;
+                                        font-family: Microsoft YaHei;
+                                        font-weight: bold;
+                                        color: #3B7AD1;
+                                        margin: 0 10px;
+                                    }
+                                }
+                            }
+                            .detailsHeader{
+                                width: 100%;
+                                display: flex;
+                                .headerRight{
+                                    display: flex;
+                                    justify-content: end;
+                                    width: 100%;
+                                    margin-bottom: 5px;
+                                    .seachFor{
+                                        display: flex;
+                                        .el-input{
+                                            height: 30px;
+                                            .el-input__inner{
+                                                height:30px;
+                                            }
+                                            .el-input__suffix{
+                                                .el-select__caret{
+                                                    line-height:30px;
+                                                }
+                                            }
+                                        }
+                                        .el-icon{
+                                            margin: 5px 10px 0 10px;
+                                            cursor: pointer;
+                                        }
+                                    }
+                                    .tableBtn {
+                                        display: flex;
+                                        height: 20px;
+                                        margin: 5px 10px 0 10px;
+                                        img{
+                                            margin-right: 5px;
+                                            margin-top: 1px;
+                                        }
+                                        span{
+                                            font-size: 14px;
+                                            font-family: Microsoft YaHei;
+                                            font-weight: 400;
+                                        }
+                                    }
+                                    .add{
+                                        cursor: pointer;
+                                        span{
+                                            color: #3B7AD1;
+                                        }
+                                    }
+                                    .save{
+                                        cursor: pointer;
+                                        span{
+                                            color: #50C14E;
+                                        }
+                                    }
+                                    .import{
+                                        cursor: pointer;
+                                        span{
+                                            color: #ce1e78;
+                                        }
+                                    }
+                                    .export{
+                                        cursor: pointer;
+                                        span{
+                                            color: #2baa8a;
+                                        }
+                                    }
+                                }
+                            }
+                            .el-table {
+                                .el-table__header-wrapper{
+                                    .el-table__header{
+                                        .el-table__cell {
+                                            border-bottom: none !important;
+                                        }
+                                        thead{
+                                            tr{
+                                                th{
+                                                    .cell{
+                                                        line-height: 16px;
+                                                    }
+                                                }
+                                            }
+                                        }
+                                    }
+                                }
+                                .el-table__body-wrapper {
+                                    height: 35vh !important;
+                                    .el-scrollbar{
+                                        .is-horizontal{
+                                            .el-scrollbar__thumb{
+                                                width: 100% !important;
+                                            }
+                                        }
+                                        .el-table__body{
+                                            tr{
+                                                td{
+                                                    padding: 0;
+                                                    .cell{
+                                                        background: #F6F7FA;
+                                                        line-height: 47px;
+                                                        height: 47px;
+                                                    }
+                                                }
+                                                td:hover {
+                                                    line-height: 45px;
+                                                    height: 45px;
+                                                }
+                                            }
+                                        }
+                                    }
+                                }
+                                .el-table--border .el-table__cell{
+                                    border: none;
+                                }
+                                .el-table thead.is-group th.el-table__cell{
+                                    background: transparent;
+                                }
+                
+                                .tooltipCC {
+                                    width: 180px;
+                                    display: inline-block;
+                                    overflow: hidden;
+                                    text-overflow: ellipsis;
+                                    white-space: nowrap;
+                                }
+                            }
+                            .el-pagination {
+                                margin-top: 20px;
+                                text-align: end;
+                                position: relative;
+                            }
+                        }
+                        .tableSeach{
+                            width: 88px;
+                            height: 63vh;
+                            margin-left: 10px;
+                            margin-top: 37px;
+                            border: 1px solid #D6DBEA;
+                            padding: 5px 0;
+                            border-radius: 5px;
+                            overflow-y: auto;
+                            .seachType{
+                                width: 78px;
+                                height: 78px;
+                                cursor: pointer;
+                                border-left: 3px solid transparent;
+                                img{
+                                    margin-top: 17px;
+                                    margin-left: 27px;
+                                }
+                                p{
+                                    text-align: center;
+                                    font-size: 14px;
+                                }
+                            }
+                            .seachTypeCha{
+                                background: #E6EBF5;
+                                cursor: pointer;
+                                border-left: 3px solid #3B7AD1;
+                            }
+                        }
+                    }
+                }
+            }
+            .el-dialog__footer{
+                .dialog-footer{
+                    display: flex;
+                    justify-content: center;
+                    .el-button{
+                        width: 180px !important;
+                        height: 40px !important;
+                    }
+                }
+            }
+        }
+    }
+    
+}
+</style>

+ 2 - 1
src/views/Login.vue

@@ -327,10 +327,11 @@ export default {
 .loginMobeil{
     position: relative;
     width: 100%;
-    height:1080px;
+    height:100%;
     background-image: url('../assets/loginImage/logindefBak.png');
     background-position: 0 0;
     background-repeat: no-repeat;
+    overflow: hidden;
     .login_mobeilMain{
         width: 470px;
         height:680px;