修改参数收集增加数据

This commit is contained in:
sunFlower
2023-02-01 10:32:20 +08:00
parent fb388ffa90
commit 068f6d2929
2 changed files with 164 additions and 67 deletions
@@ -6,7 +6,7 @@
<div v-for='(item,index) in Object.keys(detailDate.paramsConfigData)' :key='index' class='add-width'>
<div v-for='(itemval,index1) in detailDate.paramsConfigData[item]' :key='index1'
style="display: inline-block" class='valflex'>
<div style='display: inline-block' v-if='itemval.type==="text"'>
<div class="textClass" v-if='itemval.type==="text"'>
<!-- 文本校验 分情况-->
<!-- 1 无-->
<!-- 2 中文-->
@@ -98,7 +98,8 @@
</div>
</div>
</div>
<div @click="addconfig" class='addicon' v-if="Object.keys(detailDate.paramsConfigData).length - 1 == index && index < 9">
<div @click="addconfig" class='addicon'
v-if="Object.keys(detailDate.paramsConfigData).length - 1 == index && index < 9">
<a-icon type="plus"/>
</div>
<div @click="delconfig(item)" class='delicon'
@@ -112,7 +113,7 @@
<div v-for='(item,index) in Object.keys(detailDate.paramsConfigData)' :key='index' class='add-width'>
<div v-for='(itemval,index1) in detailDate.paramsConfigData[item]' :key='index1'
style="display: inline-block" class='valflex'>
<div style='display: inline-block' v-if='itemval.type==="text"'>
<div class="textClass" v-if='itemval.type==="text"'>
<!-- 文本校验 分情况-->
<!-- 1 无-->
<!-- 2 中文-->
@@ -133,7 +134,8 @@
</div>
</div>
</div>
<div @click="addconfig" class='addicon' v-if="Object.keys(detailDate.paramsConfigData).length - 1 == index && index < 9">
<div @click="addconfig" class='addicon'
v-if="Object.keys(detailDate.paramsConfigData).length - 1 == index && index < 9">
<a-icon type="plus"/>
</div>
<div @click="delconfig(item)" class='delicon'
@@ -147,7 +149,7 @@
<div v-for='(item,index) in Object.keys(detailDate.paramsConfigData)' :key='index' class='add-width'>
<div v-for='(itemval,index1) in detailDate.paramsConfigData[item]' :key='index1'
style="display: inline-block" class='valflex'>
<div style='display: inline-block' v-if='itemval.type === "pull"'>
<div class="textClass" v-if='itemval.type === "pull"'>
<a-select v-model="itemval.dataValue" @change='selectChange'
:getPopupContainer="triggerNode=> triggerNode.parentNode"
class='selectWid' :disabled="itemval.isLock == '1' ? true: false"
@@ -160,7 +162,8 @@
</a-select>
</div>
</div>
<div @click="addconfig" class='addicon' v-if="Object.keys(detailDate.paramsConfigData).length - 1 == index && index < 9">
<div @click="addconfig" class='addicon'
v-if="Object.keys(detailDate.paramsConfigData).length - 1 == index && index < 9">
<a-icon type="plus"/>
</div>
<div @click="delconfig(item)" class='delicon'
@@ -174,8 +177,9 @@
<div v-for='(item,index) in Object.keys(detailDate.paramsConfigData)' :key='index' style='flex: 1'
class='add-width'>
<div v-for='(itemval,index1) in detailDate.paramsConfigData[item]' :key='index1'
style="display: inline-block" class='valflex'>
<div style='display: inline-block' v-if='itemval.type==="pull_more"'>
style="display: inline-block;" class='valflex'
:class="{'multiple':itemval.type==='pull_more'?true:false}">
<div class="textClass" v-if='itemval.type==="pull_more"'>
<a-select v-model="itemval.dataValue"
:getPopupContainer="triggerNode=> triggerNode.parentNode"
mode="multiple" class='selectWid'
@@ -188,7 +192,8 @@
</a-select>
</div>
</div>
<div @click="addconfig" class='addicon' v-if="Object.keys(detailDate.paramsConfigData).length - 1 == index && index < 9">
<div @click="addconfig" class='addicon'
v-if="Object.keys(detailDate.paramsConfigData).length - 1 == index && index < 9">
<a-icon type="plus"/>
</div>
<div @click="delconfig(item)" class='delicon'
@@ -203,7 +208,7 @@
class='add-width'>
<div v-for='(itemval,index1) in detailDate.paramsConfigData[item]' :key='index1'
style="display: inline-block" class='valflex'>
<div style='display: inline-block' v-if='itemval.type==="file"'>
<div class="textClass" v-if='itemval.type==="file"'>
<a-button type="primary" class="button-text inputWid"
@click="clickButtonToUpload(item,itemval,index1)">
{{ (itemval.dataValue === 'null' || itemval.dataValue === '' ||
@@ -211,7 +216,8 @@
</a-button>
</div>
</div>
<div @click="addconfig" class='addicon' v-if="Object.keys(detailDate.paramsConfigData).length - 1 == index && index < 9">
<div @click="addconfig" class='addicon'
v-if="Object.keys(detailDate.paramsConfigData).length - 1 == index && index < 9">
<a-icon type="plus"/>
</div>
<div @click="delconfig(item)" class='delicon'
@@ -225,7 +231,7 @@
<div v-for='(item,index) in Object.keys(detailDate.paramsConfigData)' :key='index' class='add-width'>
<div v-for='(itemval,index1) in detailDate.paramsConfigData[item]' :key='index1'
style="display: inline-block" class='valflex'>
<div style='display: inline-block' v-if='itemval.type==="pull"'>
<div class="textClass" v-if='itemval.type==="pull"'>
<a-select v-model="itemval.dataValue"
:getPopupContainer="triggerNode=> triggerNode.parentNode"
class='selectWid' :disabled="itemval.isLock == '1' ? true: false"
@@ -237,7 +243,7 @@
</a-select-option>
</a-select>
</div>
<div style='display: inline-block' v-else-if='itemval.type==="text"'>
<div class="textClass" v-else-if='itemval.type==="text"'>
<!-- 文本校验 分情况-->
<!-- 1 无-->
<!-- 2 中文-->
@@ -329,7 +335,8 @@
</div>
</div>
</div>
<div @click="addconfig" class='addicon' v-if="Object.keys(detailDate.paramsConfigData).length - 1 == index && index < 9">
<div @click="addconfig" class='addicon'
v-if="Object.keys(detailDate.paramsConfigData).length - 1 == index && index < 9">
<a-icon type="plus"/>
</div>
<div @click="delconfig(item)" class='delicon'
@@ -342,8 +349,10 @@
<div v-else-if='detailDate.controlType === "6" && detailDate.paramsConfigData' class='add_flex'>
<div v-for='(item,index) in Object.keys(detailDate.paramsConfigData)' :key='index' class='add-width'>
<div v-for='(itemval,index1) in detailDate.paramsConfigData[item]' :key='index1'
style="display: inline-block" class='valflex'>
<div style='display: inline-block' v-if='itemval.type==="pull_more"'>
style="display: inline-block"
:class="{'multiple':itemval.type==='pull_more'?true:false}"
class='valflex'>
<div class="textClass" v-if='itemval.type==="pull_more"'>
<a-select v-model="itemval.dataValue"
:getPopupContainer="triggerNode=> triggerNode.parentNode"
mode="multiple" class='selectWid'
@@ -355,7 +364,7 @@
</a-select-option>
</a-select>
</div>
<div style='display: inline-block' v-if='itemval.type==="text"'>
<div class="textClass" v-if='itemval.type==="text"'>
<!-- 文本校验 分情况-->
<!-- 1 无-->
<!-- 2 中文-->
@@ -447,7 +456,8 @@
</div>
</div>
</div>
<div @click="addconfig" class='addicon' v-if="Object.keys(detailDate.paramsConfigData).length - 1 == index && index < 9">
<div @click="addconfig" class='addicon'
v-if="Object.keys(detailDate.paramsConfigData).length - 1 == index && index < 9">
<a-icon type="plus"/>
</div>
<div @click="delconfig(item)" class='delicon'
@@ -461,7 +471,7 @@
<div v-for='(item,index) in Object.keys(detailDate.paramsConfigData)' :key='index' class='add-width'>
<div v-for='(itemval,index1) in detailDate.paramsConfigData[item]' :key='index1'
style="display: inline-block" class='valflex'>
<div style='display: inline-block' v-if='itemval.type==="text"'>
<div class="textClass" v-if='itemval.type==="text"'>
<!-- 文本校验 分情况-->
<!-- 1 无-->
<!-- 2 中文-->
@@ -552,7 +562,7 @@
v-model="itemval.dataValue"/>
</div>
</div>
<div style='display: inline-block' v-if='itemval.type==="file"'>
<div class="textClass" v-if='itemval.type==="file"'>
<a-button type="primary" class="button-text inputWid"
@click="clickButtonToUpload(item,itemval,index1)">
{{ (itemval.dataValue === 'null' || itemval.dataValue === '' ||
@@ -560,7 +570,8 @@
</a-button>
</div>
</div>
<div @click="addconfig" class='addicon' v-if="Object.keys(detailDate.paramsConfigData).length - 1 == index && index < 9">
<div @click="addconfig" class='addicon'
v-if="Object.keys(detailDate.paramsConfigData).length - 1 == index && index < 9">
<a-icon type="plus"/>
</div>
<div @click="delconfig(item)" class='delicon'
@@ -575,7 +586,7 @@
<div v-for='(itemval,index1) in detailDate.paramsConfigData[item]'
:key='index1' style="display: inline-block" class='valflex'>
<!-- <div v-for='(itemval,val) in val' :key='val'>-->
<div style='display: inline-block' v-if='itemval.type==="pull"'>
<div class="textClass" v-if='itemval.type==="pull"'>
<a-select v-model="itemval.dataValue"
:getPopupContainer="triggerNode=> triggerNode.parentNode"
class='selectWid' :disabled="itemval.isLock == '1' ? true: false"
@@ -587,7 +598,7 @@
</a-select-option>
</a-select>
</div>
<div style='display: inline-block' v-else-if='itemval.type==="file"'>
<div class="textClass" v-else-if='itemval.type==="file"'>
<a-button type="primary" class="button-text inputWid"
@click="clickButtonToUpload(item,itemval,index1)">
{{ (itemval.dataValue === 'null' || itemval.dataValue === '' ||
@@ -596,7 +607,8 @@
</div>
<!-- </div>-->
</div>
<div @click="addconfig" class='addicon' v-if="Object.keys(detailDate.paramsConfigData).length - 1 == index && index < 9">
<div @click="addconfig" class='addicon'
v-if="Object.keys(detailDate.paramsConfigData).length - 1 == index && index < 9">
<a-icon type="plus"/>
</div>
<div @click="delconfig(item)" class='delicon'
@@ -609,9 +621,11 @@
<div v-else-if='detailDate.controlType === "9" && detailDate.paramsConfigData' class='add_flex'>
<div v-for='(item,index) in Object.keys(detailDate.paramsConfigData)' :key='index' class='add-width'>
<div v-for='(itemval,index1) in detailDate.paramsConfigData[item]' :key='index1'
style="display: inline-block" class='valflex'>
style="display: inline-block"
:class="{'multiple':itemval.type==='pull_more'?true:false}"
class='valflex'>
<!-- <div v-for='(itemval,val) in val' :key='val'>-->
<div style='display: inline-block' v-if='itemval.type==="pull_more"'>
<div class="textClass" v-if='itemval.type==="pull_more"'>
<a-select v-model="itemval.dataValue"
:getPopupContainer="triggerNode=> triggerNode.parentNode"
mode="multiple" class='selectWid'
@@ -623,7 +637,7 @@
</a-select-option>
</a-select>
</div>
<div style='display: inline-block' v-else-if='itemval.type==="file"'>
<div class="textClass" v-else-if='itemval.type==="file"'>
<a-button type="primary" class="button-text inputWid"
@click="clickButtonToUpload(item,itemval,index1)">
{{ (itemval.dataValue === 'null' || itemval.dataValue === '' ||
@@ -632,7 +646,8 @@
</div>
<!-- </div>-->
</div>
<div @click="addconfig" class='addicon' v-if="Object.keys(detailDate.paramsConfigData).length - 1 == index && index < 9">
<div @click="addconfig" class='addicon'
v-if="Object.keys(detailDate.paramsConfigData).length - 1 == index && index < 9">
<a-icon type="plus"/>
</div>
<div @click="delconfig(item)" class='delicon'
@@ -648,7 +663,7 @@
<div v-for='(itemval,index1) in detailDate.paramsConfigData[item]' :key='index1'
style="display: inline-block" class='valflex'>
<!-- <div v-for='(itemval,val) in val' :key='val'>-->
<div style='display: inline-block' v-if='itemval.type==="pull"'>
<div class="textClass" v-if='itemval.type==="pull"'>
<a-select v-model="itemval.dataValue"
:getPopupContainer="triggerNode=> triggerNode.parentNode"
class='selectWid' :disabled="itemval.isLock == '1' ? true: false"
@@ -660,7 +675,7 @@
</a-select-option>
</a-select>
</div>
<div style='display: inline-block' v-if='itemval.type==="text"'>
<div class="textClass" v-if='itemval.type==="text"'>
<!-- 文本校验 分情况-->
<!-- 1 无-->
<!-- 2 中文-->
@@ -751,7 +766,7 @@
v-model="itemval.dataValue"/>
</div>
</div>
<div style='display: inline-block' v-if='itemval.type==="file"'>
<div class="textClass" v-if='itemval.type==="file"'>
<a-button type="primary" class="button-text inputWid"
@click="clickButtonToUpload(item,itemval,index1)">
{{ (itemval.dataValue === 'null' || itemval.dataValue === '' ||
@@ -811,9 +826,9 @@
detailDatetransformation: [],
detailDateList: [],
paramsConfigData: {},
fileNameOne:'',
fileNameTwo:'',
fileIndex:'',
fileNameOne: '',
fileNameTwo: '',
fileIndex: ''
}
},
components: {
@@ -894,7 +909,7 @@
// }
// })
},
clickButtonToUpload(name,item,index) {
clickButtonToUpload(name, item, index) {
this.fileNameOne = name
this.fileIndex = index
if (item.isLock && item.isLock == '1') {
@@ -924,7 +939,7 @@
this.detailDate.paramsConfigData[generateRandom].forEach(res => {
if (res.type === 'pull_more') {
res.dataValue = []
}else{
} else {
res.dataValue = ''
}
})
@@ -999,6 +1014,10 @@
}
</style>
<style lang="less" scoped>
.selectWid {
width: 100%;
}
.box {
width: 100%;
height: calc(100% - 100px);
@@ -1027,6 +1046,12 @@
flex-direction: column;
}
.valflex {
width: calc(33% - 16px);
margin-right: 6px;
margin-bottom: 6px;
}
.iconRow, .valflex {
display: flex;
}
@@ -1041,20 +1066,21 @@
}
.selectWid {
min-width: 150px;
width: 100%;
}
.inputWid {
min-width: 150px;
/*min-width: 150px;*/
height: 38px;
width: 100%;
display: inline-block;
}
.add-width {
width: calc(33.3% - 5px);
/*width: calc(33.3% - 5px);*/
margin-right: 5px;
float: left;
display: flex;
/*display: flex;*/
}
.add--number {
@@ -1065,12 +1091,14 @@
display: inline-block;
//margin-left: -34px;
margin-top: 8px;
cursor: pointer;
}
.delicon {
display: inline-block;
margin-left: 5px;
margin-top: 8px;
cursor: pointer;
}
.ant-input-disabled {
@@ -1089,4 +1117,14 @@
text-overflow: ellipsis;
-o-text-overflow: ellipsis;
}
.textClass {
display: inline-block;
width: 100%;
}
.multiple {
float: inherit;
margin-bottom: 0;
}
</style>
@@ -1552,7 +1552,6 @@
selectedRowKeysValue.push(res)
}
})
console.log(selectedRowKeysValue)
// for (let i = 0; i < selectedRowKeysValue.length; i++) {
// let postDateobj = {}
// let itemIn = Object.keys(selectedRowKeysValue[i])
@@ -1598,12 +1597,12 @@
}
}
// return
if (configDataList && configDataList.length > 0){
if (configDataList && configDataList.length > 0) {
configDataList.forEach(res => {
Object.keys(res).forEach(val => {
if (res[val] && res[val].paramsConfigData) {
let paramsConfigData = res[val].paramsConfigData
Object.keys(paramsConfigData).forEach((ol,index) => {
Object.keys(paramsConfigData).forEach((ol, index) => {
paramsConfigData[ol][0].orderNum = index
paramsConfigData[ol].forEach(item => {
if (item.type == 'pull_more') {
@@ -1614,9 +1613,7 @@
}
})
})
}
console.log(configDataList)
let query = {
// ...configDataList,
configDataList: configDataList,
@@ -1651,34 +1648,92 @@
let _this = this
let postDate = []
let selectedRowKeysValue = JSON.parse(JSON.stringify(this.selectedRowKeysValue))
// for (let i = 0; i < selectedRowKeysValue.length; i++) {
// let postDateobj = {}
// let itemIn = Object.keys(selectedRowKeysValue[i])
// for (let j = 0; j < itemIn.length; j++) {
// if (itemIn[j] !== 'sdt' && selectedRowKeysValue[i][itemIn[j]].list) {
// if (selectedRowKeysValue[i][itemIn[j]] instanceof Object && !(selectedRowKeysValue[i][itemIn[j]] instanceof Array)) {
// postDateobj[itemIn[j]] = selectedRowKeysValue[i][itemIn[j]]
// for (let k = 0; k < selectedRowKeysValue[i][itemIn[j]].list.length; k++) {
// if (selectedRowKeysValue[i][itemIn[j]].list[k].type == 'pull_more') {
// selectedRowKeysValue[i][itemIn[j]].list[k].dataValue = selectedRowKeysValue[i][itemIn[j]].list[k].dataValue.join(',')
// }
// if (selectedRowKeysValue[i][itemIn[j]].list[k].type == 'text' && selectedRowKeysValue[i][itemIn[j]].list[k].dataValue !== null) {
// selectedRowKeysValue[i][itemIn[j]].list[k].dataValue = selectedRowKeysValue[i][itemIn[j]].list[k].dataValue.toString()
// }
// if (!selectedRowKeysValue[i][itemIn[j]].list[k].dataValue && selectedRowKeysValue[i][itemIn[j]].list[k].isMust == '1'
// && selectedRowKeysValue[i][itemIn[j]].list[k].isLock == '0') {
// this.$message.warning(selectedRowKeysValue[i].nioNumber + ',' + this.$t('requiredParametersEmpty'))
// return
// }
// }
// }
// }
// }
// postDateobj.id = selectedRowKeysValue[i].id
// postDate.push(postDateobj)
// }
let configDataList = []
for (let i = 0; i < selectedRowKeysValue.length; i++) {
let postDateobj = {}
let itemIn = Object.keys(selectedRowKeysValue[i])
for (let j = 0; j < itemIn.length; j++) {
if (itemIn[j] !== 'sdt' && selectedRowKeysValue[i][itemIn[j]].list) {
if (selectedRowKeysValue[i][itemIn[j]] instanceof Object && !(selectedRowKeysValue[i][itemIn[j]] instanceof Array)) {
postDateobj[itemIn[j]] = selectedRowKeysValue[i][itemIn[j]]
for (let k = 0; k < selectedRowKeysValue[i][itemIn[j]].list.length; k++) {
if (selectedRowKeysValue[i][itemIn[j]].list[k].type == 'pull_more') {
selectedRowKeysValue[i][itemIn[j]].list[k].dataValue = selectedRowKeysValue[i][itemIn[j]].list[k].dataValue.join(',')
}
if (selectedRowKeysValue[i][itemIn[j]].list[k].type == 'text' && selectedRowKeysValue[i][itemIn[j]].list[k].dataValue !== null) {
selectedRowKeysValue[i][itemIn[j]].list[k].dataValue = selectedRowKeysValue[i][itemIn[j]].list[k].dataValue.toString()
}
if (!selectedRowKeysValue[i][itemIn[j]].list[k].dataValue && selectedRowKeysValue[i][itemIn[j]].list[k].isMust == '1'
&& selectedRowKeysValue[i][itemIn[j]].list[k].isLock == '0') {
this.$message.warning(selectedRowKeysValue[i].nioNumber + ',' + this.$t('requiredParametersEmpty'))
return
configDataList.push({
id: selectedRowKeysValue[i].id
})
if (selectedRowKeysValue[i].configIds && selectedRowKeysValue[i].configIds.length > 0) {
for (let j = 0; j < selectedRowKeysValue[i].configIds.length; j++) {
let keyIndex = Object.keys(selectedRowKeysValue[i])
for (let k = 0; k < keyIndex.length; k++) {
if (keyIndex[k] == selectedRowKeysValue[i].configIds[j]) {
let keyName = keyIndex[k]
configDataList[i][keyName] = selectedRowKeysValue[i][keyName]
}
}
}
}
}
// return
if (configDataList && configDataList.length > 0) {
for (let i = 0; i < configDataList.length; i++) {
let res = Object.keys(configDataList[i])
for (let j = 0; j < res.length; j++) {
let key = res[j]
if (configDataList[i][key] && configDataList[i][key].paramsConfigData) {
let paramsConfigData = configDataList[i][key].paramsConfigData
let paramsConfigDataQuery = Object.keys(paramsConfigData)
for (let k = 0; k < paramsConfigDataQuery.length; k++) {
let keyName = paramsConfigDataQuery[k]
paramsConfigData[keyName][0].orderNum = k
let keyNameOne = paramsConfigData[keyName]
for (let l = 0; l < keyNameOne.length; l++) {
if (keyNameOne[l].type == 'pull_more') {
keyNameOne[l].dataValue = keyNameOne[l].dataValue.join(',')
}
if (!keyNameOne[l].dataValue && keyNameOne[l].isMust == '1' && keyNameOne[l].isLock == '0') {
this.$message.warning(selectedRowKeysValue[i].nioNumber + ',' + this.$t('requiredParametersEmpty'))
return
}
}
}
}
}
}
postDateobj.id = selectedRowKeysValue[i].id
postDate.push(postDateobj)
// configDataList.forEach(res => {
// Object.keys(res).forEach(val => {
// if (res[val] && res[val].paramsConfigData) {
// let paramsConfigData = res[val].paramsConfigData
// Object.keys(paramsConfigData).forEach((ol, index) => {
// paramsConfigData[ol][0].orderNum = index
// paramsConfigData[ol].forEach(item => {
// if (item.type == 'pull_more') {
// item.dataValue = item.dataValue.join(',')
// }
// })
// })
// }
// })
// })
}
let configDataList = { configDataList: postDate }
// let configDataList = { configDataList: postDate }
if (this.selectedRowKeys.length == 0) {
this.$message.warning(this.$t('selectLeastOne'))
} else {
@@ -1686,7 +1741,11 @@
this.$confirm({
content: _this.$t('Areyousureparameteritems'),
onOk() {
postAction(_this.url.add, configDataList).then((res) => {
let query = {
configDataList: configDataList,
paramsManifestId: this.paramsManifest.id
}
postAction(_this.url.add, query).then((res) => {
if (res.success) {
_this.$message.success(_this.$t('OperationSuccessful'))
_this.GetgetTableList()