[update] 修改年度制修订流程

This commit is contained in:
lideqin
2023-12-11 13:46:22 +08:00
parent b033e81d8b
commit e8f935d04a
5 changed files with 110 additions and 102 deletions
@@ -73,7 +73,7 @@
<!-- 节点4收集联络人主管级领导审批 只有表格,不能操作 -->
<only-table-form v-else-if="currentNode === 4" disabled ref="baseInfoFormRef"></only-table-form>
<!-- 节点5各部所联络人汇总 只有表格可操作 -->
<only-table-form v-else-if="currentNode === 5" ref="baseInfoFormRef"></only-table-form>
<only-table-form v-else-if="currentNode === 5" ref="baseInfoFormRef" :currentNode="5"></only-table-form>
<!-- 节点6联络人主管级上一级领导审批 表格不可操作可以查看详情 -->
<only-table-form v-else-if="currentNode === 6" onlyCanLook ref="baseInfoFormRef"></only-table-form>
<!-- 节点7标准化工程师归档 表格不可新增可以编辑和查看详情 -->
@@ -51,23 +51,23 @@
</div>
<!-- 标准立项-制定 -->
<template v-if="formInline.projectType && formInline.projectType === ProjectType.ENACT.value">
<!-- 企标编号-新企标编号 -->
<div class="box-title-text form-flex-item-half">
<div class="title-text">
<!--<span class="required">*</span>-->
<span class="title-text-text" :title="$t('workCenter.enterpriseInitChangePlan.enterpriseStandardNum')">
{{ $t('workCenter.enterpriseInitChangePlan.enterpriseStandardNum') }}
</span>
</div>
<a-form-model-item class="item-model" prop="newEnStandardNo">
<a-input class="box-input"
v-model="formInline.newEnStandardNo"
:maxLength="50"
disabled
@change="event => event.target.value = event.target.value.trim()"
:placeholder="$t('pleaseEnter')+$t('workCenter.enterpriseInitChangePlan.enterpriseStandardNum')" />
</a-form-model-item>
</div>
<!-- 企标编号-新企标编号 流程结束才生成企标编号 -->
<!--<div class="box-title-text form-flex-item-half">-->
<!-- <div class="title-text">-->
<!-- &lt;!&ndash;<span class="required">*</span>&ndash;&gt;-->
<!-- <span class="title-text-text" :title="$t('workCenter.enterpriseInitChangePlan.enterpriseStandardNum')">-->
<!-- {{ $t('workCenter.enterpriseInitChangePlan.enterpriseStandardNum') }}-->
<!-- </span>-->
<!-- </div>-->
<!-- <a-form-model-item class="item-model" prop="newEnStandardNo">-->
<!-- <a-input class="box-input"-->
<!-- v-model="formInline.newEnStandardNo"-->
<!-- :maxLength="50"-->
<!-- disabled-->
<!-- @change="event => event.target.value = event.target.value.trim()"-->
<!-- :placeholder="$t('pleaseEnter')+$t('workCenter.enterpriseInitChangePlan.enterpriseStandardNum')" />-->
<!-- </a-form-model-item>-->
<!--</div>-->
<!-- 企标名称-新企标名称 -->
<div class="box-title-text form-flex-item-half">
<div class="title-text">
@@ -105,6 +105,11 @@ export default {
type: Boolean,
required: false,
default: false
},
currentNode: {
type: Number,
required: false,
default: 0
}
},
computed: {
@@ -124,6 +129,17 @@ export default {
if (this.disabled) {
this.columns.pop()
}
// 当前节点是各部所联络人汇总节点,需要增加创建人列
if (this.currentNode && this.currentNode === 5) {
this.columns.splice(17, 0, {
// 创建人
title: this.$t('creator'),
align: 'center',
width: 180,
dataIndex: 'createBy_dictText',
scopedSlots: { customRender: 'text' }
})
}
},
data () {
return {
@@ -52,22 +52,22 @@
<!-- 标准立项-制定 -->
<template v-if="formInline.projectType && formInline.projectType === ProjectType.ENACT.value">
<!-- 企标编号 -->
<div class="box-title-text form-flex-item-half">
<div class="title-text">
<span v-if="rules.newEnStandardNo[0].required" class="required">*</span>
<span class="title-text-text" :title="$t('workCenter.enterpriseInitChangePlan.enterpriseStandardNum')">
{{ $t('workCenter.enterpriseInitChangePlan.enterpriseStandardNum') }}
</span>
</div>
<a-form-model-item class="item-model" prop="newEnStandardNo">
<a-input class="box-input"
v-model="formInline.newEnStandardNo"
:maxLength="50"
disabled
@change="event => event.target.value = event.target.value.trim()"
:placeholder="$t('pleaseEnter')+$t('workCenter.enterpriseInitChangePlan.enterpriseStandardNum')" />
</a-form-model-item>
</div>
<!--<div class="box-title-text form-flex-item-half">-->
<!-- <div class="title-text">-->
<!-- <span v-if="rules.newEnStandardNo[0].required" class="required">*</span>-->
<!-- <span class="title-text-text" :title="$t('workCenter.enterpriseInitChangePlan.enterpriseStandardNum')">-->
<!-- {{ $t('workCenter.enterpriseInitChangePlan.enterpriseStandardNum') }}-->
<!-- </span>-->
<!-- </div>-->
<!-- <a-form-model-item class="item-model" prop="newEnStandardNo">-->
<!-- <a-input class="box-input"-->
<!-- v-model="formInline.newEnStandardNo"-->
<!-- :maxLength="50"-->
<!-- disabled-->
<!-- @change="event => event.target.value = event.target.value.trim()"-->
<!-- :placeholder="$t('pleaseEnter')+$t('workCenter.enterpriseInitChangePlan.enterpriseStandardNum')" />-->
<!-- </a-form-model-item>-->
<!--</div>-->
<!-- 企标名称 -->
<div class="box-title-text form-flex-item-half">
<div class="title-text">
@@ -154,7 +154,6 @@
:default-value="yearNumberDefaultValue"
date-format="YYYY"
:disabled="disabled"
@change="decadeCodeChange"
:placeholder="$t('pleaseSelect')+$t('workCenter.enterpriseInitChangePlan.yearNumber')" />
</a-form-model-item>
</div>
@@ -385,13 +384,14 @@
</span>
</div>
<a-form-model-item class="item-model" prop="componentName">
<a-tree-select v-model="formInline.componentName"
:getPopupContainer="triggerNode=> triggerNode.parentNode"
style="width: 100%"
:tree-data="partNameOptions"
:label-in-value="false"
:disabled="disabled"
:placeholder="$t('pleaseSelect')+$t('workCenter.enterpriseInitChangePlan.partName')" />
<tree-selection :placeholder="$t('pleaseSelect')+$t('workCenter.enterpriseInitChangePlan.partName')"
v-model="formInline.componentName"
@nameChange="treeSelectNameChange"
filedName="componentName"
type="checkbox"
:nameStr="formInline.componentName_dictText"
dict-id="1696007957666533377"
:disabled="disabled" />
</a-form-model-item>
</div>
<!-- 授权部门 -->
@@ -509,7 +509,6 @@
<script>
import { StandardSource, ProjectType, ApplicationCategory } from '@/enums/commonEnums'
import { getFormDictTreeList } from '@/api/api'
import UserSelection from '@/components/selection/UserSelection'
import StandardSelection from '@/components/selection/StandardSelection'
import UploadFile from '@/components/UploadFile'
@@ -517,10 +516,11 @@ import { getTreeList } from '@/api/enterpriseStandardLibraryApi'
import Vue from 'vue'
import { USER_INFO } from '@/store/mutation-types'
import { getEnStandardNo } from '@/api/workCenter'
import TreeSelection from '@/components/selection/TreeSelection'
export default {
name: 'BaseInfoTableModal',
components: { UserSelection, StandardSelection, UploadFile },
components: { UserSelection, StandardSelection, UploadFile, TreeSelection },
props: {
/**
* 编辑角色,是主起草人的话三个日期标准化填了的,主起草人不能修改;是联络人的话标准化未填写,联络人必填
@@ -546,7 +546,6 @@ export default {
StandardSource,
ProjectType,
ApplicationCategory,
partNameOptions: [], // 零部件名称下拉框数据
standardSystemOptions: [], // 企标体系下拉框数据
visible: false,
confirmLoading: false,
@@ -734,21 +733,20 @@ export default {
}
},
watch: {
// 企业标准代号
'formInline.enStandardCode' (value) {
this.getEnStandardNo()
},
// 企业名称代号
'formInline.enNameCode' (value) {
this.getEnStandardNo()
},
// 标准类别代号
'formInline.standardCategoryCode' (value) {
this.getEnStandardNo()
}
// // 企业标准代号
// 'formInline.enStandardCode' (value) {
// this.getEnStandardNo()
// },
// // 企业名称代号
// 'formInline.enNameCode' (value) {
// this.getEnStandardNo()
// },
// // 标准类别代号
// 'formInline.standardCategoryCode' (value) {
// this.getEnStandardNo()
// }
},
mounted () {
this.initPartNameOptions()
this.initStandardSystemOptions()
if (this.source === 'tableBaseInfo') {
for (const item of Object.values(this.rules)) {
@@ -832,48 +830,6 @@ export default {
this.formInline = Object.assign({}, record)
this.disabled = true
},
// watch监视年代号会滞后
decadeCodeChange (value) {
this.getEnStandardNo()
},
// 根据三个代号和一个年代号获取企标编号
getEnStandardNo () {
// 如果是制定根据填的三个代号和一个年代号获取
if (this.formInline.projectType === ProjectType.ENACT.value) {
if (!this.formInline.enStandardCode || !this.formInline.enNameCode ||
!this.formInline.standardCategoryCode || !this.formInline.decadeCode) {
return
}
const param = {}
param.enStandardCode = this.formInline.enStandardCode
param.enNameCode = this.formInline.enNameCode
param.standardCategoryCode = this.formInline.standardCategoryCode
param.decadeCode = this.formInline.decadeCode
getEnStandardNo(param).then(res => {
if (res.success) {
this.$set(this.formInline, 'newEnStandardNo', res.message)
this.$forceUpdate()
}
})
} else {
// 是修订,通过选中的企标编号和年代号拼接新企标编号
if (this.formInline.originEnStandardNo && this.formInline.decadeCode) {
const standardNo = this.formInline.originEnStandardNo.split('-')[0] + '-' + this.formInline.decadeCode
this.$set(this.formInline, 'newEnStandardNo', standardNo)
this.$forceUpdate()
// 返回流程名称
this.returnProcessName()
}
}
},
// 获取零部件名称下拉框数据
initPartNameOptions () {
getFormDictTreeList({ dictId: '1696821512600637441' }).then(res => {
if (res.success) {
this.partNameOptions = res.result
}
})
},
// 获取标准体系下拉框数据
initStandardSystemOptions () {
getTreeList({ option: 1 }).then(res => {
@@ -882,6 +838,42 @@ export default {
}
})
},
// watch监视年代号会滞后
// decadeCodeChange (value) {
// this.getEnStandardNo()
// },
// 根据三个代号和一个年代号获取企标编号
// getEnStandardNo () {
// // 如果是制定根据填的三个代号和一个年代号获取
// if (this.formInline.projectType === ProjectType.ENACT.value) {
// if (!this.formInline.enStandardCode || !this.formInline.enNameCode ||
// !this.formInline.standardCategoryCode || !this.formInline.decadeCode) {
// return
// }
// const param = {}
// param.enStandardCode = this.formInline.enStandardCode
// param.enNameCode = this.formInline.enNameCode
// param.standardCategoryCode = this.formInline.standardCategoryCode
// param.decadeCode = this.formInline.decadeCode
// getEnStandardNo(param).then(res => {
// if (res.success) {
// this.$set(this.formInline, 'newEnStandardNo', res.message)
// this.$forceUpdate()
// }
// })
// } else {
// // 是修订,通过选中的企标编号和年代号拼接新企标编号
// if (this.formInline.originEnStandardNo && this.formInline.decadeCode) {
// const standardNo = this.formInline.originEnStandardNo.split('-')[0] + '-' + this.formInline.decadeCode
// this.$set(this.formInline, 'newEnStandardNo', standardNo)
// this.$forceUpdate()
// }
// }
// },
// 零部件名称选择完成的回调
treeSelectNameChange (value, fieldName) {
this.formInline[fieldName + '_dictText'] = value
},
// 标准选择组件返回标准名称的回调
nameChange (value) {
this.formInline.originEnStandardName = value
@@ -19,7 +19,7 @@
{{ $t('batchDelete') }}
</a-button>
<!-- 批量设置联络人 -->
<a-button icon="setting" type="primary" ghost @click="batchSetContact">
<a-button v-if="!isRejectedTodo" icon="setting" type="primary" ghost @click="batchSetContact">
{{ $t('workCenter.revisionPlanActivelyReport.batchSetContact') }}
</a-button>
</div>
@@ -278,7 +278,7 @@ export default {
* 需要能判断是否是被驳回,产生的待办点击进入的,是的话需要显示带出被驳回的法规的联络人,
* 并且去掉批量设置联络人按钮,如需修改联络人,删除该标准重新走标准化发起流程 ??
*/
if (this.$route.query.taskId) {
if (this.$route.query.processInstanceId) {
this.isRejectedTodo = true
} else {
this.isRejectedTodo = false