Selaa lähdekoodia

重构部门考评配置;配合后端修改问题,新增字段;

SunZehao 2 vuotta sitten
vanhempi
commit
1a5b5cf594

+ 20 - 2
src/api/api.js

@@ -453,17 +453,35 @@ export function apiGetEvaluationDeptList(params) {
         params: params
     })
 }
-//----"单位/部门考评配置-保存/修改"
+//----"单位考评配置-保存/修改"
 export function apiGetorganizationSaveList(params) {
     return httpRequest.post('organization-evaluation-rule/save', params)
 }
-//----"单位/部门考评配置-删除"
+//----"部门考评配置-保存/修改"
+export function apiGetevaluationdeptSave(params) {
+    return httpRequest.post('evaluation-dept/save', params)
+}
+//----"单位考评配置-删除"
 export function apiGetorganizationdeleteList(params) {
     return httpRequest({
         url: `organization-evaluation-rule/remove/${params}`,
         method: 'post'
     })
 }
+//----"部门考评配置-删除"
+export function apiGetevaluationdeptremoveAll(params) {
+    return httpRequest({
+        url: `evaluation-dept/removeAll/${params}`,
+        method: 'post'
+    })
+}
+//----"部门考评配置--指标项-删除"
+export function apiGetevaluationdeptremoveItem(params) {
+    return httpRequest({
+        url: `evaluation-dept/remove/${params}`,
+        method: 'post'
+    })
+}
 //----单位/部门考评配置  --查询规则
 export function apiGetevaluateListAll(params) {
     return httpRequest({

+ 2 - 0
src/components/assessment/evaluationMonthPage.vue

@@ -274,6 +274,8 @@ export default {
                 year: that.ruleForm.year,
                 month: that.ruleForm.month,
                 des: that.ruleForm.desc,
+                createOrgId: userMes.unitId,
+                createOrgName: userMes.unitName,
                 createBy: userMes.id,
                 createName: userMes.name
             }

+ 3 - 1
src/components/assessment/evaluationQuarterPage.vue

@@ -39,7 +39,7 @@
                                 class="tooltipName"
                                 effect="customized"
                                 :content="scope.row.organizationName"
-                                placement="top"
+                                placement="right"
                             >
                                 <span class="tooltipCC">{{scope.row.organizationName}}</span>
                             </el-tooltip>
@@ -276,6 +276,8 @@ export default {
                 year: that.ruleForm.year,
                 month: that.ruleForm.month,
                 des: that.ruleForm.desc,
+                createOrgId: userMes.unitId,
+                createOrgName: userMes.unitName,
                 createBy: userMes.id,
                 createName: userMes.name
             }

+ 2 - 0
src/components/assessment/evaluationStartFrom.vue

@@ -377,6 +377,8 @@ export default {
         //获取详情
         getDetails(id) {
             let that = this
+            that.quantifiedList = []
+            that.nonQuantifiedList = []
             let params = {
                 deptResponsibilityIds: id
             }

+ 2 - 5
src/components/assessment/monthQuarterFrom.vue

@@ -311,17 +311,14 @@ export default {
         //获取详情
         getDetails(id) {
             let that = this
+            that.quantifiedList = []
+            that.nonQuantifiedList = []
             let params = {
                 organizationEvaluationId: id
             }
             apiGetOrgEvalInfoList(params).then(datas =>{
                 if (datas && datas.data) {
                     that.quantifiedList = datas.data.quantifiedList
-                    // if (datas.data.nonQuantifiedList.length>0) {
-                    //     datas.data.nonQuantifiedList.forEach(it =>{
-                    //         it.childName = it.indicatorId //指标id
-                    //     })
-                    // }
                     that.nonQuantifiedList = datas.data.nonQuantifiedList.length>0?datas.data.nonQuantifiedList:[]
                 }
             })

+ 3 - 0
src/components/evaluationSystem/evaluationCompanyPage.vue

@@ -449,10 +449,12 @@
                 let that = this
                 let orgName = ''
                 let referred = ''
+                let busType = ''
                 that.companyDatas.forEach(item => {
                     if (item.id === that.ruleForm.organizationName) {
                         orgName = item.name
                         referred = item.shortName
+                        busType = item.businessType
                     }
                 })
                 let params = {
@@ -468,6 +470,7 @@
                     scjyWeight: that.ruleForm.scjyWeight,
                     qqWeight: that.ruleForm.qqWeight,
                     jjWeight: that.ruleForm.jjWeight,
+                    businessType: busType
                     // year: that.ruleForm.year,
                     // month: that.ruleForm.month
                 }

+ 167 - 178
src/components/evaluationSystem/evaluationDepartmentPage.vue

@@ -34,20 +34,15 @@
                 <el-table :data="evaluationDepartmentData" style="width: 100%" @select="rowClick" @select-all="rowClick">
                     <el-table-column type="selection" label="操作" align="center"></el-table-column>
                     <el-table-column label="部门编码" prop="deptId" />
-                    <el-table-column label="部门名称" prop="deptName" />
-                    <el-table-column label="部门简称" prop="shortDeptName" />
+                    <el-table-column label="部门名称" prop="deptName"  width="300" />
+                    <!-- <el-table-column label="部门简称" prop="shortDeptName" /> -->
                     <el-table-column label="考评类型" >
                         <template #default="scope">
                                 <span>{{scope.row.evaluationCategory === 'BMKP'?'部门考评':''}}</span>
                             </template>
                         </el-table-column>
-                    <el-table-column label="指标名称" prop="indicatorNames" width="400">
-                        <template #default="scope">
-                            <span>{{scope.row.indicatorNames.join(',')}}</span>
-                        </template>
-                    </el-table-column>
+                    <el-table-column label="指标名称" prop="indicatorDatasAll" width="400" />
                     <el-table-column label="年" prop="annual" />
-                    <el-table-column label="月" prop="monthly" />
                     <el-table-column label="描述" prop="des" />
                     <el-table-column label="创建时间" prop="createTime" />
                 </el-table>
@@ -65,26 +60,7 @@
                     <el-row class="periodFrom">
                         <el-col :span="8">
                             <el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px" class="DruleForm" :validate-on-rule-change="false">
-                                <el-form-item label="指标名称" prop="indicatorName">
-                                    <el-input v-model="ruleForm.indicatorName" placeholder="请输入指标名称" @blur="blurInput"></el-input>
-                                </el-form-item>
-                                <el-form-item label="指标编码" prop="indicatorCode">
-                                    <el-input v-model="ruleForm.indicatorCode" placeholder="请输入指标编码" :disabled="isSave" @blur="blurInput"></el-input>
-                                </el-form-item>
-                                <el-form-item label="指标类别" prop="indicatorType">
-                                    <el-select v-model="ruleForm.indicatorType" placeholder="请选择指标类别">
-                                        <el-option
-                                        v-for="item in indicatorTypeData"
-                                        :key="item.id"
-                                        :label="item.typeName"
-                                        :value="item.id">
-                                        </el-option>
-                                    </el-select>
-                                </el-form-item>
-                                <el-form-item label="指标单位" prop="indicatorUnit">
-                                    <el-input v-model="ruleForm.indicatorUnit" placeholder="请输入指标单位"></el-input>
-                                </el-form-item>
-                                <el-form-item label="所属部门" prop="department">
+                                <el-form-item label="考评部门" prop="department">
                                     <el-select v-model="ruleForm.department" placeholder="请选择所属部门">
                                         <el-option
                                         v-for="item in departData"
@@ -94,41 +70,27 @@
                                         </el-option>
                                     </el-select>
                                 </el-form-item>
-                                <el-form-item label="业务阶段" prop="binStage">
-                                    <el-select v-model="ruleForm.binStage" placeholder="请选择业务阶段">
+                                <el-form-item label="考评类别" prop="indicatorType">
+                                    <el-select v-model="ruleForm.indicatorType" placeholder="请选择指标类别" disabled>
                                         <el-option
-                                        v-for="item in stageData"
-                                        :key="item.id"
-                                        :label="item.stageName"
-                                        :value="item.id">
-                                        </el-option>
-                                    </el-select>
-                                </el-form-item>
-                                <el-form-item label="业务属性" prop="binSection">
-                                    <el-select v-model="ruleForm.binSection" placeholder="请选择业务属性">
-                                        <el-option
-                                        v-for="item in moduleData"
-                                        :key="item.id"
-                                        :label="item.sectionName"
-                                        :value="item.id">
+                                        v-for="item in indicatorTypeData"
+                                        :key="item.value"
+                                        :label="item.label"
+                                        :value="item.value">
                                         </el-option>
                                     </el-select>
                                 </el-form-item>
-                                <el-form-item label="是否量化">
-                                    <el-radio-group v-model="ruleForm.isQuantified">
-                                        <el-radio border label="是" />
-                                        <el-radio border label="否" />
-                                    </el-radio-group>
+                                <el-form-item label="年份" prop="year">
+                                    <el-date-picker
+                                        v-model="ruleForm.year"
+                                        type="year"
+                                        value-format="YYYY"
+                                        placeholder="请选择年份"
+                                        />
                                 </el-form-item>
-                                <el-form-item label="是否专项">
-                                    <el-radio-group v-model="ruleForm.isAdditional">
-                                        <el-radio border label="是" />
-                                        <el-radio border label="否" />
-                                    </el-radio-group>
-                                </el-form-item>
-                                <el-form-item label="指标顺序" prop="orderNum">
+                                <!-- <el-form-item label="指标顺序" prop="orderNum">
                                     <el-input-number v-model="ruleForm.orderNum" :min="1" />
-                                </el-form-item>
+                                </el-form-item> -->
                                 <el-form-item label="描述" prop="desc">
                                     <el-input v-model="ruleForm.desc" :rows="5" type="textarea" placeholder="请输入描述"></el-input>
                                 </el-form-item>
@@ -154,11 +116,11 @@
                                                 <div style="display:flex;height:30px">
                                                     <div style="display:flex;height:30px">
                                                         <span class="nameTit">指标名称:</span>
-                                                        <el-input v-model="item.childName" placeholder="请输入子指标项名称"></el-input>
+                                                        <el-input v-model="item.indicatorName" placeholder="请输入子指标项名称"></el-input>
                                                     </div>
                                                     <div style="display:flex">
                                                         <span class="nameTit">指标编码:</span>
-                                                        <el-input v-model="item.childCode" placeholder="请输入子指标项编码"></el-input>
+                                                        <el-input v-model="item.indicatorCode" placeholder="请输入子指标项编码"></el-input>
                                                     </div>
                                                 </div>
                                             </template>
@@ -167,23 +129,37 @@
                                                     <img :src="addIcon" alt="">
                                                     <span>新增</span>
                                                 </div>
-                                                <el-table :data="item.list">
+                                                <el-table :data="item.evaluationDeptIndicatorItemList">
                                                     <el-table-column label="序号" type="index"  align="center" />
-                                                    <el-table-column label="指标项名称" prop="optionName">
+                                                    <el-table-column label="指标项名称" prop="indicatorItemName">
                                                         <template #default="scope">
-                                                            <el-select v-model="scope.row.optionName" filterable placeholder="请选择指标项名称" @change="(val)=>changeOptionName(val,scope.row)">
+                                                            <!-- <el-select v-model="scope.row.indicatorItemName" filterable placeholder="请选择指标项名称" @change="(val)=>changeOptionName(val,scope.row)">
                                                                 <el-option
                                                                     v-for="item in indicItemoptions"
                                                                     :key="item.keyValue"
                                                                     :label="item.keyName"
                                                                     :value="item.keyName">
                                                                 </el-option>
-                                                            </el-select>
+                                                            </el-select> -->
+                                                            <el-input v-model="scope.row.indicatorItemName" placeholder="请输入指标项名称"></el-input>
+                                                        </template>
+                                                    </el-table-column>
+                                                    <el-table-column label="指标项编码" prop="indicatorItemCode">
+                                                        <template #default="scope">
+                                                            <!-- <span>{{scope.row.indicatorItemCode}}</span> -->
+                                                            <el-input v-model="scope.row.indicatorItemCode" placeholder="请输入指标项编码"></el-input>
                                                         </template>
                                                     </el-table-column>
-                                                    <el-table-column label="指标项编码" prop="optionCode">
+                                                    <el-table-column label="指标项类别" prop="indicatorCategory">
                                                         <template #default="scope">
-                                                            <span>{{scope.row.optionCode}}</span>
+                                                            <el-select v-model="scope.row.indicatorCategory" placeholder="请选择指标项类别">
+                                                                <el-option
+                                                                    v-for="item in indicatorCategorys"
+                                                                    :key="item.value"
+                                                                    :label="item.label"
+                                                                    :value="item.value">
+                                                                </el-option>
+                                                            </el-select>
                                                         </template>
                                                     </el-table-column>
                                                     <el-table-column label="描述">
@@ -225,8 +201,8 @@ import importDailog from '../importPage/importDailog.vue'
 import btns from '../elbuttonS.vue'
 import addW from '../../assets/btnIcon/addW.png'
 import addIcon from '../../assets/btnIcon/add.png'
-import {apiGetEvaluationDeptList, apiGetorganizationSaveList, apiGetorganizationdeleteList, 
-apiGetdatadictionaryList,apiGetbinstageList,apiGetbinsectionList, apiGetevaluateListAll, apiGetorganizationstructureFromTree} from '../../api/api'
+import {apiGetEvaluationDeptList, apiGetevaluationdeptSave, apiGetevaluationdeptremoveAll, apiGetdataZBXList,
+apiGetdatadictionaryList, apiGetevaluationdeptremoveItem} from '../../api/api'
 export default {
   components: { importDailog, btns },
     data() {
@@ -238,39 +214,29 @@ export default {
             indicatoroptions: [],
             departmentS: '',
             evaluationDepartmentData:[],
-            moduleData: [],
-            stageData: [],
-            ruleDataAll: [],
-            periodData: [],
+            departData: [],
             addW: addW,
             addIcon: addIcon,
-            departmentDataAll: [],
+            indicItemoptions: [],
+            indicatorTypeData: [],
             ruleForm: {
-                organizationName: '',
-                evaluateRule: '',
-                binSection: '',
-                binStage: '',
-                evaluationCycle: '',
-                orderNum: 1
+                department: '',
+                indicatorType: 'BMKP',
+                year: '',
+                desc: ''
             },
             rules: {
-                organizationName: [
+                department: [
                     { required: true, message: '请选择部门名称', trigger: 'change' }
                 ],
-                evaluationCycle: [
-                    { required: true, message: '请选择考评周期', trigger: 'change' }
+                indicatorType: [
+                    { required: true, message: '请选择考评类别', trigger: 'change' }
                 ],
-                evaluateRule: [
-                    { required: true, message: '请选择考评规则', trigger: 'change' }
+                year: [
+                    { required: true, message: '请选择年份', trigger: 'change' }
                 ],
-                binSection: [
-                    { required: true, message: '请选择业务属性', trigger: 'change' }
-                ],
-                binStage: [
-                    { required: true, message: '请输入业务阶段', trigger: 'change' }
-                ],
-                orderNum: [
-                    { required: true, message: '请输入指标顺序', trigger: 'blur' }
+                desc: [
+                    { required: true, message: '请输入描述', trigger: 'blur' }
                 ]
             },
             page:{
@@ -284,10 +250,24 @@ export default {
     },
     created() {
         this.getEvalCompanyData()
-        this.getRuleallData()
-        this.getDataDictionary() //模块//阶段
-        this.getPeriodData()
+        this.getindicItemData()
         this.getDepartmentFromTreeData()
+        this.indicatorCategorys = [
+            {
+                label: '指标计划',
+                value: '指标计划'
+            },
+            {
+                label: '指标结果',
+                value: '指标结果'
+            }
+        ]
+        this.indicatorTypeData = [
+            {
+                label: '部门考评',
+                value: 'BMKP'
+            }
+        ]
     },
     methods:{
         // 查询部门列表数据
@@ -300,63 +280,43 @@ export default {
             }
             apiGetEvaluationDeptList(params).then(datas =>{
                 if (datas && datas.data) {
+                    for(let i =0; i<datas.data.records.length; i++) {
+                        let item = datas.data.records[i]
+                        let indicatorDatasAll = ''
+                        if (item.evaluationDeptIndicatorList.length>0) {
+                            for(let j =0; j<item.evaluationDeptIndicatorList.length; j++) {
+                                let iten = item.evaluationDeptIndicatorList[j]
+                                indicatorDatasAll += iten.indicatorName + '; '
+                            }
+                        }
+                        item.indicatorDatasAll = indicatorDatasAll
+                    }
                     that.evaluationDepartmentData = datas.data.records
                     that.page.total = datas.data.total
                 }
             })
         },
-        //根据组织树查询部门
+        // 查询部门
         getDepartmentFromTreeData() {
             let that = this
             let params = {
-                id: '23031001',
-                num: 1
+                superKey: 'BM0001'
             }
-            apiGetorganizationstructureFromTree(params).then(datas =>{
-                if (datas && datas.data) {
-                    that.departmentDataAll = datas.data[0].children
-                }
-            })
-        },
-        // 查询规则模块和阶段数据
-        getDataDictionary() {
-            let that = this
-            apiGetbinsectionList().then(datas =>{
-                if (datas && datas.data) {
-                    that.moduleData = datas.data
-                }
-            })
-            apiGetbinstageList().then(datas =>{
-                if (datas && datas.data) {
-                    that.stageData = datas.data
-                }
-            })
-        },
-        getRuleallData() {
-            let that = this
-            apiGetevaluateListAll().then(datas =>{
+            apiGetdatadictionaryList(params).then(datas =>{
                 if (datas && datas.data) {
-                    that.ruleDataAll = datas.data
+                    that.departData = datas.data
                 }
             })
         },
-        //考评周期
-        getPeriodData() {
+        // 查询指标项条目
+        getindicItemData() {
             let that = this
             let params = {
-                superKey: 'KPZQ0001'
+                superKey: 'ZBX0001'
             }
-            apiGetdatadictionaryList(params).then(datas =>{
+            apiGetdataZBXList(params).then(datas =>{
                 if (datas && datas.data) {
-                    that.periodData = datas.data
-                }
-            })
-        },
-        changeRule(val) {
-            this.ruleDataAll.forEach(item =>{
-                if (item.id === val) {
-                    this.ruleForm.binSection = item.binSection
-                    this.ruleForm.binStage = item.binStage
+                    that.indicItemoptions = datas.data
                 }
             })
         },
@@ -367,33 +327,39 @@ export default {
             this.$nextTick(() =>{
                 // this.$refs['ruleForm'].resetFields()
                 this.ruleForm = {
-                    organizationName: '',
-                    evaluateRule: '',
-                    binSection: '',
-                    binStage: '',
-                    evaluationCycle: '',
-                    orderNum: 1
+                    department: '',
+                    indicatorType: 'BMKP',
+                    year: '',
+                    desc: ''
                 }
+                this.indicatoroptions = []
             })
         },
         //新增子指标
         handleAddChild() {
             this.$nextTick(() =>{
                 let itemForm = {
-                    childName: '输入子指标名称',
-                    childCode: '输入子指标编码',
-                    list: [],
+                    indicatorName: '输入子指标名称',
+                    indicatorCode: '输入子指标编码',
+                    evaluationDeptIndicatorItemList: []
                 }
                 this.indicatoroptions.push(itemForm)
             })
         },
+        changeOptionName(val, row) {
+            this.indicItemoptions.forEach(item =>{
+                if (item.keyName === val) {
+                    row.indicatorItemCode = item.keyValue
+                }
+            })
+        },
         //新增子指标
         handleAddTableChild(row) {
             let childitemForm = {
-                optionName: '',
-                optionCode: ''
+                indicatorItemName: '',
+                indicatorItemCode: ''
             }
-            row.list.push(childitemForm)
+            row.evaluationDeptIndicatorItemList.push(childitemForm)
         },
         handleEdit() {
             this.dialogVisible = true
@@ -401,13 +367,12 @@ export default {
             this.title = '修改考评部门'
             this.evalradio = this.changeDateSelect[0]
             this.ruleForm = {
-                organizationName: this.evalradio.organizationId,
-                evaluationCycle: this.evalradio.evaluationCycle,
-                evaluateRule: this.evalradio.evaluateRuleId,
-                binSection: this.evalradio.binSection,
-                binStage: this.evalradio.binStage,
-                orderNum: this.evalradio.orderNum
+                department: this.evalradio.deptId,
+                indicatorType: this.evalradio.evaluationCategory,
+                year: this.evalradio.annual,
+                desc: this.evalradio.des
             }
+            this.indicatoroptions = this.evalradio.evaluationDeptIndicatorList
         },
         saveevaluationDepartmentMsg(formName) {
             let that = this
@@ -421,27 +386,24 @@ export default {
         saveAndEditIndicatorData() {
             let that = this
             let orgName = ''
-            that.departmentDataAll.forEach(item =>{
-                if (item.id === that.ruleForm.organizationName) {
-                    orgName = item.name
+            that.departData.forEach(item =>{
+                if (item.dataKey === that.ruleForm.department) {
+                    orgName = item.keyName
                 }
             })
             let params = {
-                organizationName: orgName,
-                evaluationCycle: that.ruleForm.evaluationCycle,
-                organizationType: 'BMKP',
-                evaluateRuleId: that.ruleForm.evaluateRule,
-                binSection: that.ruleForm.binSection,
-                binStage: that.ruleForm.binStage,
-                orderNum: that.ruleForm.orderNum
+                deptName: orgName,
+                deptId: that.ruleForm.department,
+                evaluationCategory: 'BMKP',
+                annual: that.ruleForm.year,
+                monthly: that.ruleForm.month,
+                des: that.ruleForm.desc,
+                evaluationDeptIndicatorList: that.indicatoroptions
             }
             if (that.isSave) {
                 params.id = that.evalradio.id
-                params.organizationId = that.evalradio.organizationName
-            } else {
-                params.organizationId = that.ruleForm.organizationName
             }
-            apiGetorganizationSaveList(params).then(datas =>{
+            apiGetevaluationdeptSave(params).then(datas =>{
                 if (!datas.success) {
                     that.$message({
                         message: datas.message,
@@ -465,7 +427,7 @@ export default {
                 }
             })
         },
-        //删除指标数据
+        //删除部门数据
         handleDelete() {
             this.$confirm('此操作将永久删除该数据, 是否继续?', '提示', {
                 confirmButtonText: '确定',
@@ -477,7 +439,7 @@ export default {
                 that.changeDateSelect.forEach(it =>{
                     paramsArr.push(it.id)
                 })
-                apiGetorganizationdeleteList(paramsArr.join(',')).then(datas =>{
+                apiGetevaluationdeptremoveAll(paramsArr.join(',')).then(datas =>{
                     if (datas) {
                         that.$message({
                             type: 'success',
@@ -488,7 +450,30 @@ export default {
                     }
                 })
             })
-        },        
+        },
+        //删除指标项数据
+        handleDeleteTableChild(data, row) {
+            this.$confirm('此操作将永久删除该数据, 是否继续?', '提示', {
+                confirmButtonText: '确定',
+                cancelButtonText: '取消',
+                type: 'warning'
+            }).then(() => {
+                let that = this
+                if (data.evaluationDeptIndicatorItemList && data.evaluationDeptIndicatorItemList.length>0) {
+                    data.evaluationDeptIndicatorItemList.forEach((it,index) =>{
+                        if (it.indicatorItemCode === row.indicatorItemCode) {
+                            data.evaluationDeptIndicatorItemList.splice(index, 1)
+                            apiGetevaluationdeptremoveItem(row.id).then(datas =>{
+                                that.$message({
+                                    type: 'success',
+                                    message: '删除成功!'
+                                });
+                            })
+                        }
+                    })
+                }
+            })
+        }, 
         rowClick(selection, row) {
             this.changeDateSelect = selection
         },
@@ -593,16 +578,20 @@ export default {
                         border-top: 1px solid #D6DBEA;
                         border-bottom: 1px solid #D6DBEA;
                         .periodFrom{
-                            .el-select, .el-input{
-                                width: 100%;
-                            }
-                            .el-select{
-                                .el-input__inner, .is-disabled{
-                                    height:30px !important;
-                                }
-                            }
+                            
                             .DruleForm{
                                 padding: 20px 60px 20px 20px;
+                                .el-select, .el-input,{
+                                    width: 100%;
+                                }
+                                .el-date-editor{
+                                    height:30px !important;
+                                }
+                                .el-select{
+                                    .el-input__inner, .is-disabled{
+                                        height:30px !important;
+                                    }
+                                }
                             }
                             .indicatorItemBtn{
                                 padding: 10px 20px 0 20px;
@@ -635,7 +624,7 @@ export default {
                                     }
                                 }
                                 .indicatorItemTableData{
-                                    max-height: 55vh !important;
+                                    height: 55vh !important;
                                     overflow-y: auto;
                                     .datasMsg{
                                         .tableBtn {

+ 26 - 30
src/components/evaluationSystem/evaluationIndexPage.vue

@@ -61,11 +61,11 @@
                             <span>{{scope.row.des}}</span>
                         </template>
                     </el-table-column>
-                    <el-table-column label="操作">
+                    <!-- <el-table-column label="操作">
                         <template #default="scope">
                             <p class="indicitem" @click="editEvaluaIndex(scope.row)">详情</p>
                         </template>
-                    </el-table-column>
+                    </el-table-column> -->
                 </el-table>
                 <el-pagination
                     @size-change="handleSizeChange"
@@ -82,13 +82,13 @@
                         <el-col :span="8">
                             <el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="100px" class="DruleForm" :validate-on-rule-change="false">
                                 <el-form-item label="指标名称" prop="indicatorName">
-                                    <el-input v-model="ruleForm.indicatorName" placeholder="请输入指标名称" :readonly="isDetail" @blur="blurInput"></el-input>
+                                    <el-input v-model="ruleForm.indicatorName" placeholder="请输入指标名称" @blur="blurInput"></el-input>
                                 </el-form-item>
                                 <el-form-item label="指标编码" prop="indicatorCode">
-                                    <el-input v-model="ruleForm.indicatorCode" placeholder="请输入指标编码" :disabled="isSave" :readonly="isDetail" @blur="blurInput"></el-input>
+                                    <el-input v-model="ruleForm.indicatorCode" placeholder="请输入指标编码" :disabled="isSave" @blur="blurInput"></el-input>
                                 </el-form-item>
                                 <el-form-item label="指标类别" prop="indicatorType">
-                                    <el-select v-model="ruleForm.indicatorType" placeholder="请选择指标类别" :disabled="isDetail">
+                                    <el-select v-model="ruleForm.indicatorType" placeholder="请选择指标类别">
                                         <el-option
                                         v-for="item in indicatorTypeData"
                                         :key="item.id"
@@ -98,10 +98,10 @@
                                     </el-select>
                                 </el-form-item>
                                 <el-form-item label="指标单位" prop="indicatorUnit">
-                                    <el-input v-model="ruleForm.indicatorUnit" placeholder="请输入指标单位" :readonly="isDetail"></el-input>
+                                    <el-input v-model="ruleForm.indicatorUnit" placeholder="请输入指标单位"></el-input>
                                 </el-form-item>
                                 <el-form-item label="所属部门" prop="department">
-                                    <el-select v-model="ruleForm.department" placeholder="请选择所属部门" :disabled="isDetail">
+                                    <el-select v-model="ruleForm.department" placeholder="请选择所属部门">
                                         <el-option
                                         v-for="item in departData"
                                         :key="item.dataKey"
@@ -111,7 +111,7 @@
                                     </el-select>
                                 </el-form-item>
                                 <el-form-item label="业务阶段" prop="binStage">
-                                    <el-select v-model="ruleForm.binStage" placeholder="请选择业务阶段" :disabled="isDetail">
+                                    <el-select v-model="ruleForm.binStage" placeholder="请选择业务阶段">
                                         <el-option
                                         v-for="item in stageData"
                                         :key="item.id"
@@ -121,7 +121,7 @@
                                     </el-select>
                                 </el-form-item>
                                 <el-form-item label="业务属性" prop="binSection">
-                                    <el-select v-model="ruleForm.binSection" placeholder="请选择业务属性" :disabled="isDetail">
+                                    <el-select v-model="ruleForm.binSection" placeholder="请选择业务属性">
                                         <el-option
                                         v-for="item in moduleData"
                                         :key="item.id"
@@ -131,28 +131,28 @@
                                     </el-select>
                                 </el-form-item>
                                 <el-form-item label="是否量化">
-                                    <el-radio-group v-model="ruleForm.isQuantified" :disabled="isDetail">
+                                    <el-radio-group v-model="ruleForm.isQuantified">
                                         <el-radio border label="是" />
                                         <el-radio border label="否" />
                                     </el-radio-group>
                                 </el-form-item>
                                 <el-form-item label="是否专项">
-                                    <el-radio-group v-model="ruleForm.isAdditional" :disabled="isDetail">
+                                    <el-radio-group v-model="ruleForm.isAdditional">
                                         <el-radio border label="是" />
                                         <el-radio border label="否" />
                                     </el-radio-group>
                                 </el-form-item>
                                 <el-form-item label="是否子指标">
-                                    <el-radio-group v-model="ruleForm.isChild" @change="changeRadio" :disabled="isDetail || isSave">
+                                    <el-radio-group v-model="ruleForm.isChild" @change="changeRadio" :disabled="isSave">
                                         <el-radio border label="是" />
                                         <el-radio border label="否" />
                                     </el-radio-group>
                                 </el-form-item>
                                 <el-form-item label="指标顺序" prop="orderNum">
-                                    <el-input-number v-model="ruleForm.orderNum" :min="1" :disabled="isDetail" />
+                                    <el-input-number v-model="ruleForm.orderNum" :min="1" />
                                 </el-form-item>
                                 <el-form-item label="描述" prop="desc">
-                                    <el-input v-model="ruleForm.desc" :rows="5" type="textarea" placeholder="请输入描述" :readonly="isDetail"></el-input>
+                                    <el-input v-model="ruleForm.desc" :rows="5" type="textarea" placeholder="请输入描述"></el-input>
                                 </el-form-item>
                             </el-form>
                         </el-col>
@@ -162,7 +162,7 @@
                                 <el-button
                                 type="primary"
                                 size="mini"
-                                :disabled="ruleForm.isChild === '否' || isDetail"
+                                :disabled="ruleForm.isChild === '否'"
                                 @click="handleAddChild"
                                 >
                                 <img :src="addW" style="margin-right: 10px">
@@ -177,16 +177,16 @@
                                                 <div style="display:flex;height:30px">
                                                     <div style="display:flex;height:30px">
                                                         <span class="nameTit">子指标名称:</span>
-                                                        <el-input v-model="item.childName" placeholder="请输入子指标项名称" :readonly="isDetail"></el-input>
+                                                        <el-input v-model="item.childName" placeholder="请输入子指标项名称"></el-input>
                                                     </div>
                                                     <div style="display:flex">
                                                         <span class="nameTit">子指标编码:</span>
-                                                        <el-input v-model="item.childCode" placeholder="请输入子指标项编码" :readonly="isDetail"></el-input>
+                                                        <el-input v-model="item.childCode" placeholder="请输入子指标项编码"></el-input>
                                                     </div>
                                                 </div>
                                             </template>
                                             <div style="padding:10px 20px;max-height: 50vh;overflow-y: auto;">
-                                                <div class="tableBtn add" @click="handleAddTableChild(item)" v-if="!isDetail">
+                                                <div class="tableBtn add" @click="handleAddTableChild(item)">
                                                     <img :src="addIcon" alt="">
                                                     <span>新增</span>
                                                 </div>
@@ -194,7 +194,7 @@
                                                     <el-table-column label="序号" type="index"  align="center" />
                                                     <el-table-column label="指标项名称" prop="optionName">
                                                         <template #default="scope">
-                                                            <el-select v-model="scope.row.optionName" filterable :disabled="isDetail" placeholder="请选择指标项名称" @change="(val)=>changeOptionName(val,scope.row)">
+                                                            <el-select v-model="scope.row.optionName" filterable placeholder="请选择指标项名称" @change="(val)=>changeOptionName(val,scope.row)">
                                                                 <el-option
                                                                     v-for="item in indicItemoptions"
                                                                     :key="item.keyValue"
@@ -211,7 +211,7 @@
                                                     </el-table-column>
                                                     <el-table-column label="描述">
                                                         <template #default="scope">
-                                                            <el-input v-model="scope.row.des" :rows="1" type="textarea" placeholder="请输入描述" :readonly="isDetail"></el-input>
+                                                            <el-input v-model="scope.row.des" :rows="1" type="textarea" placeholder="请输入描述"></el-input>
                                                         </template>
                                                     </el-table-column>
                                                     <el-table-column label="排序">
@@ -219,7 +219,7 @@
                                                             <el-input-number v-model="scope.row.optionOrder" :min="1" />
                                                         </template>
                                                     </el-table-column>
-                                                    <el-table-column label="操作" width="100" v-if="!isDetail">
+                                                    <el-table-column label="操作" width="100">
                                                         <template #default="scope">
                                                             <p class="indicitem" @click="handleDeleteTableChild(item, scope.row)">删除</p>
                                                         </template>
@@ -328,8 +328,7 @@ export default {
             saveW: saveW,
             addIcon: addIcon,
             indicatoroptions: [],
-            indicItemoptions: [],
-            isDetail: false
+            indicItemoptions: []
         }
     },
     created() {
@@ -427,7 +426,6 @@ export default {
             }
         },
         blurInput(val) {
-            if (this.isDetail) return
             if (this.ruleForm.isChild === '否') {
                 if (this.indicatoroptions.length === 0) {
                     if (this.ruleForm.indicatorName !== '' && this.ruleForm.indicatorCode !== '') {
@@ -452,7 +450,6 @@ export default {
         handleAdd() {
             this.dialogVisible = true
             this.isSave = false
-            this.isDetail = false
             this.title = '新增考评指标'
             this.$nextTick(() =>{
                 this.$refs['ruleForm'].resetFields()
@@ -476,7 +473,6 @@ export default {
         handleEdit() {
             this.dialogVisible = true
             this.isSave = true
-            this.isDetail = false
             this.title = '修改考评指标'
             this.evalradio = this.changeDateSelect[0]
             this.ruleForm = {
@@ -552,7 +548,7 @@ export default {
                 dtoList: that.indicatoroptions
             }
             if (that.isSave) {
-                params.id = this.evalradio.id
+                params.id = that.evalradio.id
             }
             apiPostindicatorsaveGroup(params).then(datas =>{
                 if (!datas.success) {
@@ -663,10 +659,10 @@ export default {
 
         //指标项配置
         editEvaluaIndex(row) {
-            // this.$refs.indicatorItem.init(row)
-            this.title = '考评指标详情'
-            this.isDetail = true
             this.dialogVisible = true
+            this.title = '修改考评指标'
+            this.isSave = true
+            this.evalradio = row
             this.ruleForm = {
                 indicatorName: row.indicatorName,
                 indicatorCode: row.indicatorCode,