master
lion 6 days ago
parent 3bb857e528
commit 77770026f2

@ -552,22 +552,33 @@
}
}
this.codeForm.type = nextType
this.codeForm.person_no = []
this.codeForm.car_no = []
if(this.codeForm.type==1){
this.codeForm.person_no.push({name:this.form.name,person_no:''})
for(var k of this.form.follw_people){
const follows = Array.isArray(this.form.follw_people) ? this.form.follw_people : []
for(var k of follows){
this.codeForm.person_no.push({name:k.name,person_no:''})
}
for(var m of this.form.cars){
const cars = Array.isArray(this.form.cars) ? this.form.cars : []
for(var m of cars){
this.codeForm.car_no.push({car:m,car_no:''})
}
}else{
for(var k of this.form.person_no){
this.codeForm.person_no.push(JSON.parse(k))
}else if(this.codeForm.type==2){
const personList = this.asGateList(this.form.person_no)
for(var k of personList){
const personItem = this.normalizePersonNoItem(k, this.form.name)
if (personItem) {
this.codeForm.person_no.push(personItem)
}
}
for(var m of this.form.car_no){
this.codeForm.car_no.push(JSON.parse(m))
const carList = this.asGateList(this.form.car_no)
for(var m of carList){
const carItem = this.normalizeCarNoItem(m)
if (carItem) {
this.codeForm.car_no.push(carItem)
}
}
}
}
@ -577,6 +588,54 @@
}
},
methods: {
asGateList(val) {
if (val == null || val === '') {
return []
}
if (Array.isArray(val)) {
return val
}
return [val]
},
parseGateJsonItem(val) {
if (val == null || val === '') {
return null
}
if (typeof val === 'object') {
return val
}
if (typeof val === 'string') {
try {
const parsed = JSON.parse(val)
if (parsed && typeof parsed === 'object') {
return parsed
}
} catch (e) {
return val
}
}
return val
},
normalizePersonNoItem(item, fallbackName) {
const parsed = this.parseGateJsonItem(item)
if (parsed == null || parsed === '') {
return null
}
if (typeof parsed === 'object') {
return parsed
}
return { name: fallbackName || '', person_no: parsed }
},
normalizeCarNoItem(item) {
const parsed = this.parseGateJsonItem(item)
if (parsed == null || parsed === '') {
return null
}
if (typeof parsed === 'object') {
return parsed
}
return { car: parsed, car_no: '' }
},
selectLevel(val) {
this.form.audit.map(item => {
if (item.level == val) {

Loading…
Cancel
Save