法规清单、认证清单、市场法规清单、市场认证清单增加责任部门

This commit is contained in:
范强强
2023-07-14 17:41:09 +08:00
parent 2b8aa17f0c
commit ea93c96135
8 changed files with 402 additions and 69 deletions
@@ -44,6 +44,66 @@
</div>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('statisticalNodes')">{{$t('statisticalNodes')}}</span>
</div>
<a-form-model-item class="itemModel-multi">
<a-select :placeholder="$t('PleaseSelect')+$t('statisticalNodes')"
class="box-input"
optionFilterProp="label"
@change="DutyDepartChange"
mode="multiple"
:getPopupContainer="triggerNode=> triggerNode.parentNode"
v-model="formInline.dutyDepart">
<a-select-option v-for="(item, key) in firstLevelDutyTerritoryList"
:key="key"
:label="item.key"
:value="item.key">
<span style="display: inline-block;width: 100%" :title=" item.key ">
{{ item.key }}
</span>
</a-select-option>
</a-select>
</a-form-model-item>
</div>
</a-col>
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('areaOfResponsibility')">{{$t('areaOfResponsibility')}}</span>
</div>
<a-form-model-item class="itemModel-multi">
<a-select :placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
class="box-input"
allowClear
optionFilterProp="label"
:getPopupContainer="triggerNode=> triggerNode.parentNode"
v-model="formInline.dutyTerritory">
<a-select-option v-for="(item, key) in dutyTerritoryList"
:key="key"
:label="item.itemText"
:value="item.itemValue">
<span style="display: inline-block;width: 100%" :title=" item.itemText ">
{{ item.itemText }}
</span>
</a-select-option>
</a-select>
<!-- <j-multi-select-tag class="box-input" v-model="formInline.dutyTerritory"-->
<!-- :placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"-->
<!-- :type="'select'"-->
<!-- :triggerChange="false" :dictCode="'duty_territory'"/>-->
<!-- <j-dict-select-tag class="box-input" v-model="formInline.dutyTerritory"-->
<!-- @input="handleInput('dutyTerritory')"-->
<!-- :placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"-->
<!-- :type="'select'"-->
<!-- :triggerChange="false" dictCode="duty_territory"/>-->
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="12">
<div class="box-title-text">
@@ -63,26 +123,6 @@
</a-form-model-item>
</div>
</a-col>
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('areaOfResponsibility')">{{$t('areaOfResponsibility')}}</span>
</div>
<a-form-model-item class="itemModel-multi">
<j-multi-select-tag class="box-input" v-model="formInline.dutyTerritory"
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
:type="'select'"
:triggerChange="false" :dictCode="'duty_territory'"/>
<!-- <j-dict-select-tag class="box-input" v-model="formInline.dutyTerritory"-->
<!-- @input="handleInput('dutyTerritory')"-->
<!-- :placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"-->
<!-- :type="'select'"-->
<!-- :triggerChange="false" dictCode="duty_territory"/>-->
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
@@ -97,6 +137,8 @@
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
@@ -112,8 +154,6 @@
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
@@ -135,6 +175,9 @@
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
@@ -152,8 +195,6 @@
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
@@ -191,13 +232,41 @@
formInline: {},
rules: {},
ids: [],
CategoryTreeList: []
CategoryTreeList: [],
firstLevelDutyTerritoryList: [],
dutyTerritoryList: []
}
},
mounted() {
this.getSysCategoryTree()
},
methods: {
getFirstLevelDutyTerritory() {
getAction('/sys/dictItem/getFirstLevelDutyTerritory', {}).then((res) => {
if (res.success) {
this.firstLevelDutyTerritoryList = res.result
} else {
this.firstLevelDutyTerritoryList = []
}
})
},
DutyDepartChange(event) {
this.formInline.dutyTerritory = []
this.formInline = { ...this.formInline }
this.getDutyTerritory(event.join(','))
},
getDutyTerritory(row) {
let query = {
dutyDepart: row
}
getAction('/sys/dict/getDutyTeryByDD', query).then((res) => {
if (res.success) {
this.dutyTerritoryList = res.result || []
} else {
this.dutyTerritoryList = []
}
})
},
getSysCategoryTree() {
getAction(this.url.getSysCategoryTree, {}).then((res) => {
if (res.success) {
@@ -210,6 +279,7 @@
edit(data) {
this.visible = true
this.getSysCategoryTree()
this.getFirstLevelDutyTerritory()
this.$nextTick(() => {
this.ids = data || []
this.formInline = {}
@@ -556,6 +556,13 @@
sorter: true,
ellipsis: true
},
{
title: this.$t('statisticalNodes'),
align: 'left',
ellipsis: true,
dataIndex: 'dutyDepart',
width: 110
},
{
title: this.$t('areaOfResponsibility'),
align: 'left',
@@ -822,15 +829,25 @@
key: 14,
moduleFlag: this.$route.query.title == '市场清单详情' ? '虚拟清单详情' : '维护清单'
},
{
sort: '',
name: this.$t('statisticalNodes'),
headFieldCn: '责任部门',
headFieldEn: 'Duty Department',
field: 'dutyDepart',
key: 15,
moduleFlag: this.$route.query.title == '市场清单详情' ? '虚拟清单详情' : '维护清单'
},
{
sort: '',
name: this.$t('areaOfResponsibility'),
headFieldCn: '责任领域',
headFieldEn: 'Responsible Field',
field: 'dutyTerritory_dictText',
key: 15,
key: 16,
moduleFlag: this.$route.query.title == '市场清单详情' ? '虚拟清单详情' : '维护清单'
},
// {
// sort: '',
// name: this.$t('regulatoryEngineer'),
@@ -51,17 +51,60 @@
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('areaOfResponsibility')">{{$t('areaOfResponsibility')}}</span>
<span class="title-text-text" :title="$t('statisticalNodes')">{{$t('statisticalNodes')}}</span>
</div>
<a-form-model-item class="itemModel-multi">
<j-multi-select-tag class="box-input" v-model="formInline.dutyTerritory"
@change="dutyTerritoryChange"
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
:type="'select'"
:triggerChange="false" :dictCode="'duty_territory'"/>
<a-select :placeholder="$t('PleaseSelect')+$t('statisticalNodes')"
class="box-input"
optionFilterProp="label"
@change="DutyDepartChange"
mode="multiple"
:getPopupContainer="triggerNode=> triggerNode.parentNode"
v-model="formInline.dutyDepart">
<a-select-option v-for="(item, key) in firstLevelDutyTerritoryList"
:key="key"
:label="item.key"
:value="item.key">
<span style="display: inline-block;width: 100%" :title=" item.key ">
{{ item.key }}
</span>
</a-select-option>
</a-select>
</a-form-model-item>
</div>
</a-col>
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('areaOfResponsibility')">{{$t('areaOfResponsibility')}}</span>
</div>
<a-form-model-item class="itemModel-multi">
<a-select :placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
class="box-input"
optionFilterProp="label"
mode="multiple"
@change="dutyTerritoryChange"
:getPopupContainer="triggerNode=> triggerNode.parentNode"
v-model="formInline.dutyTerritory">
<a-select-option v-for="(item, key) in dutyTerritoryList"
:key="key"
:label="item.itemText"
:value="item.itemValue">
<span style="display: inline-block;width: 100%" :title=" item.itemText ">
{{ item.itemText }}
</span>
</a-select-option>
</a-select>
<!-- <j-multi-select-tag class="box-input" v-model="formInline.dutyTerritory"-->
<!-- @change="dutyTerritoryChange"-->
<!-- :placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"-->
<!-- :type="'select'"-->
<!-- :triggerChange="false" :dictCode="'duty_territory'"/>-->
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24" v-if="this.code == '0'">
<a-col :span="12" v-if="this.code == '0'">
<div class="box-title-text">
<div class="title-text">
@@ -91,8 +134,6 @@
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24" v-if="this.code == '0'">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
@@ -360,18 +401,46 @@
rules: {},
ids: [],
code: '',
dutyTerritoryList:[],
regulatoryEngineerList: [],
engineeringInterfacePersonList: []
engineeringInterfacePersonList: [],
firstLevelDutyTerritoryList:[],
}
},
mounted() {
},
methods: {
getFirstLevelDutyTerritory() {
getAction('/sys/dictItem/getFirstLevelDutyTerritory', {}).then((res) => {
if (res.success) {
this.firstLevelDutyTerritoryList = res.result
} else {
this.firstLevelDutyTerritoryList = []
}
})
},
DutyDepartChange(event) {
this.formInline.dutyTerritory = []
this.formInline = { ...this.formInline }
this.getDutyTerritory(event.join(','))
},
getDutyTerritory(row) {
let query = {
dutyDepart: row
}
getAction('/sys/dict/getDutyTeryByDD', query).then((res) => {
if (res.success) {
this.dutyTerritoryList = res.result || []
} else {
this.dutyTerritoryList = []
}
})
},
dutyTerritoryChange(event) {
this.formInline.regulationOwnerId = undefined
this.formInline.engineeringInterfacePerson = undefined
this.formInline = { ...this.formInline }
this.queryPersonByProject(event)
this.queryPersonByProject(event.join(','))
},
queryPersonByProject(row) {
let query = {
@@ -401,13 +470,14 @@
this.regulatoryEngineerList = []
this.engineeringInterfacePersonList = []
this.getDeliverableTree()
this.getFirstLevelDutyTerritory()
this.code = code
this.$nextTick(() => {
this.ids = data || []
this.formInline = {}
if (content && code == '0') {
this.formInline.dutyTerritory = content.dutyTerritory
this.queryPersonByProject(content)
// this.formInline.dutyTerritory = content.dutyTerritory
// this.queryPersonByProject(content)
}
this.formInline = { ...this.formInline }
})
@@ -29,23 +29,6 @@
</a-form-model-item>
</div>
</a-col>
<a-col :span="12" v-if="name == $t('BatchSetting')">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('areaOfResponsibility')">{{$t('areaOfResponsibility')}}</span>
</div>
<a-form-model-item class="itemModel">
<j-dict-select-tag class="box-input" v-model="formInline.dutyTerritory"
@input="handleInput('dutyTerritory')"
@changeQuery="handleChange"
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
:type="'select'"
:triggerChange="false" :dictCode="'duty_territory'"/>
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24" v-if="name == $t('BatchSetting')">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
@@ -70,6 +53,69 @@
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24" v-if="name == $t('BatchSetting')">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('statisticalNodes')">{{$t('statisticalNodes')}}</span>
</div>
<a-form-model-item class="itemModel-multi">
<a-select :placeholder="$t('PleaseSelect')+$t('statisticalNodes')"
class="box-input"
optionFilterProp="label"
@change="DutyDepartChange"
mode="multiple"
:getPopupContainer="triggerNode=> triggerNode.parentNode"
v-model="formInline.dutyDepart">
<a-select-option v-for="(item, key) in firstLevelDutyTerritoryList"
:key="key"
:label="item.key"
:value="item.key">
<span style="display: inline-block;width: 100%" :title=" item.key ">
{{ item.key }}
</span>
</a-select-option>
</a-select>
</a-form-model-item>
</div>
</a-col>
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('areaOfResponsibility')">{{$t('areaOfResponsibility')}}</span>
</div>
<a-form-model-item class="itemModel-multi">
<a-select :placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
class="box-input"
optionFilterProp="label"
mode="multiple"
@change="handleChange"
:getPopupContainer="triggerNode=> triggerNode.parentNode"
v-model="formInline.dutyTerritory">
<a-select-option v-for="(item, key) in dutyTerritoryList"
:key="key"
:label="item.itemText"
:value="item.itemValue">
<span style="display: inline-block;width: 100%" :title=" item.itemText ">
{{ item.itemText }}
</span>
</a-select-option>
</a-select>
<!-- <j-dict-select-tag class="box-input" v-model="formInline.dutyTerritory"-->
<!-- @input="handleInput('dutyTerritory')"-->
<!-- @changeQuery="handleChange"-->
<!-- :placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"-->
<!-- :type="'select'"-->
<!-- :triggerChange="false" :dictCode="'duty_territory'"/>-->
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24" v-if="name == $t('BatchSetting')">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
@@ -90,8 +136,6 @@
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24" v-if="name == $t('BatchSetting')">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
@@ -111,6 +155,8 @@
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24" v-if="name == $t('BatchSetting')">
<a-col :span="12" v-if="roleSwitchingCode == 2">
<div class="box-title-text">
<div class="title-text">
@@ -164,11 +210,13 @@
formInline: {},
rules: {},
ids: [],
firstLevelDutyTerritoryList: [],
configurationItemList: [],
engineeringInterfacePersonList: [],
typeOfDeliverablesList: [],
name: '',
DeliverableTreeList: []
DeliverableTreeList: [],
dutyTerritoryList:[],
}
},
mounted() {
@@ -177,7 +225,32 @@
disabledDate(current) {
return current && current < moment().subtract(1, 'day')
},
getFirstLevelDutyTerritory() {
getAction('/sys/dictItem/getFirstLevelDutyTerritory', {}).then((res) => {
if (res.success) {
this.firstLevelDutyTerritoryList = res.result
} else {
this.firstLevelDutyTerritoryList = []
}
})
},
DutyDepartChange(event) {
this.formInline.dutyTerritory = []
this.formInline = { ...this.formInline }
this.getDutyTerritory(event.join(','))
},
getDutyTerritory(row) {
let query = {
dutyDepart: row
}
getAction('/sys/dict/getDutyTeryByDD', query).then((res) => {
if (res.success) {
this.dutyTerritoryList = res.result || []
} else {
this.dutyTerritoryList = []
}
})
},
getDeliverableTree() {
getAction('/sys/category/getCertificationDeliverableTree', {}).then((res) => {
if (res.success) {
@@ -187,16 +260,17 @@
}
})
},
edit(data, name,content) {
edit(data, name, content) {
this.visible = true
this.getDeliverableTree()
this.getFirstLevelDutyTerritory()
this.$nextTick(() => {
this.ids = data || []
this.formInline = {}
this.name = name
if (content && name == this.$t('BatchSetting')) {
this.formInline.dutyTerritory = content.dutyTerritory
this.queryPersonByProject(content.dutyTerritory)
// this.formInline.dutyTerritory = content.dutyTerritory
// this.queryPersonByProject(content.dutyTerritory)
}
this.formInline = { ...this.formInline }
})
@@ -231,7 +305,7 @@
} else {
url = this.url.setBatch
}
if (!query.configItem){
if (!query.configItem) {
query.configItem = undefined
}
postAction(url, query).then((res) => {
@@ -286,7 +360,7 @@
},
handleChange(value) {
this.formInline.sdt = undefined
this.queryPersonByProject(this.formInline.dutyTerritory)
this.queryPersonByProject(this.formInline.dutyTerritory.join(','))
},
queryPersonByProject(row) {
let query = {
@@ -739,6 +739,13 @@
sorter: true,
scopedSlots: { customRender: 'serialNumber' }
},
{
title: this.$t('statisticalNodes'),
align: 'left',
dataIndex: 'dutyDepart',
width: 100,
ellipsis: true
},
{
title: this.$t('areaOfResponsibility'),
align: 'left',
@@ -858,6 +858,13 @@
width: 180,
sorter: true
},
{
title: this.$t('statisticalNodes'),
align: 'left',
ellipsis: true,
dataIndex: 'dutyDepart',
width: 120
},
{
title: this.$t('areaOfResponsibility'),
align: 'left',
@@ -1126,6 +1133,15 @@
key: 6,
moduleFlag: '法规清单'
},
{
sort: '',
name: this.$t('statisticalNodes'),
headFieldCn: '责任部门',
headFieldEn: 'Duty Department',
field: 'dutyDepart',
key: 8,
moduleFlag: '法规清单'
},
{
sort: '',
name: this.$t('areaOfResponsibility'),
@@ -10,17 +10,57 @@
>
<a-form-model class="formAdd" v-model="formInline" :rules="rules" ref="ruleForm">
<a-row :gutter="24">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('statisticalNodes')">{{$t('statisticalNodes')}}</span>
</div>
<a-form-model-item class="itemModel-multi">
<a-select :placeholder="$t('PleaseSelect')+$t('statisticalNodes')"
class="box-input"
optionFilterProp="label"
@change="DutyDepartChange"
mode="multiple"
:getPopupContainer="triggerNode=> triggerNode.parentNode"
v-model="formInline.dutyDepart">
<a-select-option v-for="(item, key) in firstLevelDutyTerritoryList"
:key="key"
:label="item.key"
:value="item.key">
<span style="display: inline-block;width: 100%" :title=" item.key ">
{{ item.key }}
</span>
</a-select-option>
</a-select>
</a-form-model-item>
</div>
</a-col>
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
<span class="title-text-text" :title="$t('areaOfResponsibility')">{{$t('areaOfResponsibility')}}</span>
</div>
<a-form-model-item class="itemModel-multi">
<j-dict-select-tag class="box-input"
v-model="formInline.dutyTerritory"
:placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
:type="'select'"
:triggerChange="false" :dictCode="'duty_territory'"/>
<a-select :placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"
class="box-input"
allowClear
optionFilterProp="label"
:getPopupContainer="triggerNode=> triggerNode.parentNode"
v-model="formInline.dutyTerritory">
<a-select-option v-for="(item, key) in dutyTerritoryList"
:key="key"
:label="item.itemText"
:value="item.itemValue">
<span style="display: inline-block;width: 100%" :title=" item.itemText ">
{{ item.itemText }}
</span>
</a-select-option>
</a-select>
<!-- <j-dict-select-tag class="box-input"-->
<!-- v-model="formInline.dutyTerritory"-->
<!-- :placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"-->
<!-- :type="'select'"-->
<!-- :triggerChange="false" :dictCode="'duty_territory'"/>-->
<!-- <j-dict-select-tag class="box-input" v-model="formInline.dutyTerritory"-->
<!-- @input="handleInput('dutyTerritory')"-->
<!-- :placeholder="$t('PleaseSelect')+$t('areaOfResponsibility')"-->
@@ -29,6 +69,9 @@
</a-form-model-item>
</div>
</a-col>
</a-row>
<a-row :gutter="24">
<a-col :span="12">
<div class="box-title-text">
<div class="title-text">
@@ -67,14 +110,43 @@ export default {
rules: {},
ids: [],
DeliverableTreeList: [],
firstLevelDutyTerritoryList:[],
dutyTerritoryList:[],
}
},
mounted() {
this.getDeliverableTree()
},
methods: {
getFirstLevelDutyTerritory() {
getAction('/sys/dictItem/getFirstLevelDutyTerritory', {}).then((res) => {
if (res.success) {
this.firstLevelDutyTerritoryList = res.result
} else {
this.firstLevelDutyTerritoryList = []
}
})
},
DutyDepartChange(event) {
this.formInline.dutyTerritory = []
this.formInline = { ...this.formInline }
this.getDutyTerritory(event.join(','))
},
getDutyTerritory(row) {
let query = {
dutyDepart: row
}
getAction('/sys/dict/getDutyTeryByDD', query).then((res) => {
if (res.success) {
this.dutyTerritoryList = res.result || []
} else {
this.dutyTerritoryList = []
}
})
},
edit(data) {
this.visible = true
this.getFirstLevelDutyTerritory()
this.$nextTick(() => {
this.ids = data || []
this.formInline = {}
@@ -373,6 +373,13 @@
ellipsis: true,
scopedSlots: { customRender: 'serialNumber' }
},
{
title: this.$t('statisticalNodes'),
align: 'left',
dataIndex: 'dutyDepart',
width: 100,
ellipsis: true
},
{
title: this.$t('areaOfResponsibility'),
align: 'left',