update 国内\海外标准非管理员用户新增\编辑跳转入库变更流程

This commit is contained in:
赵霄
2023-12-22 11:23:08 +08:00
parent 308f894a5b
commit 525a36341d
3 changed files with 135 additions and 18 deletions
@@ -79,7 +79,7 @@
<a-form-model-item class="item-model" prop="source">
<j-dict-select-tag class="box-input"
v-model="formInline.source"
:disabled="disabled || disabledFieldList.includes('source')"
:disabled="disabled || disabledFieldList.includes('source') || isFromList"
:placeholder="$t('pleaseSelect')+$t('standardSelect.source')"
:type="'select'"
:triggerChange="false"
@@ -96,7 +96,7 @@
<a-form-model-item class="item-model" prop="operateType">
<j-dict-select-tag class="box-input"
v-model="formInline.operateType"
:disabled="disabled || disabledFieldList.includes('operateType')"
:disabled="disabled || disabledFieldList.includes('operateType') || isFromList"
:placeholder="$t('pleaseSelect')+$t('log.operationType')"
:type="'select'"
:triggerChange="false"
@@ -105,6 +105,7 @@
</a-form-model-item>
</div>
</template>
<!--循环生成表单部分-->
<template v-for="(item, index) in val">
<div :key="index"
class="box-title-text form-flex-item"
@@ -442,15 +443,6 @@ export default {
const subTitle = this.$route.query.taskName || FGEntryChangeProcessNode.initiate.text
return `${this.$t('flowCenter')}${this.$route.meta.title}(${subTitle})`
},
// 不可编辑的字段
disabledFieldList () {
// 标准法规变更
if (this.formInline.operateType === OperationType.CHANGE.value) {
// 标准编号,被代替标准号,被引用标准号,标准类别,年代号
return ['standard_name', 'replaced_by_standard_number', 'referenced_standard', 'standard_class', 'year_number']
}
return ['replaced_by_standard_number', 'referenced_standard']
},
// 不能包含当前标准的字段
excludeStandardFields () {
if (this.formInline.operateType === OperationType.CHANGE.value) {
@@ -461,6 +453,24 @@ export default {
// 流程key
processKey () {
return ProcessKey.FB_ENTRY_CHANGE.value
},
// 是否从列表页来,如果是,来源和操作类型不可修改
isFromList () {
return this.$route.query.source && this.$route.query.operateType
},
// 不可编辑的字段
disabledFieldList () {
// 变更且从标准编辑处跳转
if (this.isFromList && this.$route.query.operateType === OperationType.CHANGE.value) {
// 标准名称,被代替标准号,被引用标准号,标准类别,年代号
return ['standard_number_temp', 'standard_name', 'replaced_by_standard_number', 'referenced_standard', 'standard_class', 'year_number']
}
// 标准法规变更
if (this.formInline.operateType === OperationType.CHANGE.value) {
// 标准名称,被代替标准号,被引用标准号,标准类别,年代号
return ['standard_name', 'replaced_by_standard_number', 'referenced_standard', 'standard_class', 'year_number']
}
return ['replaced_by_standard_number', 'referenced_standard']
}
},
watch: {
@@ -479,8 +489,34 @@ export default {
this.initProcessData()
} else {
this.currentNode = FGEntryChangeProcessNode.initiate.value
// 默认选中国内
this.initDomesticStandardForm()
// 处理非管理员从国内/海外标准模块进入发起页面,不可修改来源和操作类型
if (this.$route.query.source && this.$route.query.operateType) {
this.formInline = {
source: this.$route.query.source,
operateType: this.$route.query.operateType
}
switch (this.$route.query.source) {
// 国内标准
case StandardSource.DOMESTIC.value:
this.initDomesticStandardForm()
if (this.$route.query.standardId) {
this.initDomesticFormData(this.$route.query.standardId)
}
break
// 海外标准
case StandardSource.OVERSEAS.value:
this.initOverseasStandardForm()
if (this.$route.query.standardId) {
this.initOverseasFormData(this.$route.query.standardId)
}
break
default:
break
}
} else {
// 默认选中国内
this.initDomesticStandardForm()
}
}
// 获取按钮清单
const btnList = FGEntryChangeProcessNode.propertyOfValue('btn', this.currentNode)
@@ -573,7 +609,6 @@ export default {
module: StandardSource.DOMESTIC.value,
type: 2 // 2是新增;1是详情
}
this.formInline = {}
this.loading = true
getDomesticStandardFormModal(params).then(res => {
if (res.success) {
@@ -605,7 +640,6 @@ export default {
module: StandardSource.OVERSEAS.value,
type: 2 // 2是新增;1是详情
}
this.formInline = {}
getOverseasStandardForm(params).then(res => {
if (res.success) {
this.formList = res.result || {}
@@ -726,6 +760,7 @@ export default {
*/
handleSourceChange () {
return new Promise(async resolve => {
this.formInline = {}
switch (this.formInline.source) {
case StandardSource.DOMESTIC.value:
await this.initDomesticStandardForm()
@@ -987,7 +1022,6 @@ export default {
getDomesticStandardDocumentInfo({ id, type: 2 }).then(res => {
if (res.success) {
// 处理树结构多选回显
console.log(this.da)
const formList = Object.values(this.formList).reduce((acc, cur) => acc.concat(cur), [])
const treeMultipleField = formList.filter(tt => tt.fieldShowType === FieldType.TREE.value)
const data = res.result || {}