|
|
|
@ -32,8 +32,8 @@ const tableDataNew = computed(() => { |
|
|
|
// console.log("如果编辑页禁用时-----2---->",formProps.value.model[props.data.name]) |
|
|
|
// console.log("如果编辑页禁用时-----3---->",formProps.value.model) |
|
|
|
// console.log("如果编辑页禁用时-----4---->",formProps.value) |
|
|
|
console.log(formProps.value.model) |
|
|
|
console.log(props.data.name) |
|
|
|
/* console.log(formProps.value.model) |
|
|
|
console.log(props.data.name) */ |
|
|
|
return formProps.value.model[props.data.name] |
|
|
|
}) |
|
|
|
const type = computed(() => { |
|
|
|
@ -43,6 +43,26 @@ const type = computed(() => { |
|
|
|
const editDisabled = computed(() => { |
|
|
|
return formProps.value.type === 2 && props.data.config?.editDisabled |
|
|
|
}) |
|
|
|
|
|
|
|
|
|
|
|
const preFillFlag = computed(() => { |
|
|
|
if(props.data.control.preFill){ |
|
|
|
if(props.data.control.preFill.asf==""){ |
|
|
|
return 0 |
|
|
|
}else{ |
|
|
|
if(props.data.control.preFill.ids.length>0){ |
|
|
|
return 1 |
|
|
|
}else{ |
|
|
|
return 0 |
|
|
|
} |
|
|
|
} |
|
|
|
}else{ |
|
|
|
return 1 |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
const defaultOneFlag = ref(true) |
|
|
|
if(type.value==1 && props.data.control.defaultOne==2){ |
|
|
|
defaultOneFlag.value = false |
|
|
|
@ -104,9 +124,79 @@ function lookOrgAndManTreeFinish(){ |
|
|
|
},200) |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 提取字符串中最后一个英文冒号后的内容,无冒号则返回原字符串 |
|
|
|
* @param {string} str - 输入的字符串 |
|
|
|
* @returns {string} 最后一个冒号后的内容或原字符串 |
|
|
|
*/ |
|
|
|
function getAfterLastColon(str:string) { |
|
|
|
//console.log(str) |
|
|
|
// 首先验证入参类型,确保是字符串(避免非字符串类型导致方法出错) |
|
|
|
if (typeof str !== 'string') { |
|
|
|
//console.warn('入参必须是字符串类型,当前已自动转为字符串'); |
|
|
|
str = String(str); // 非字符串类型自动转为字符串 |
|
|
|
} |
|
|
|
|
|
|
|
// 查找最后一个英文冒号的索引位置 |
|
|
|
const lastColonIndex = str.lastIndexOf(':'); |
|
|
|
|
|
|
|
// 若未找到冒号(索引为 -1),或冒号在字符串最后一位(后面无内容),返回原字符串 |
|
|
|
if (lastColonIndex === -1 || lastColonIndex === str.length - 1) { |
|
|
|
return str; |
|
|
|
} |
|
|
|
|
|
|
|
// 截取最后一个冒号后面的字符(索引+1 开始到字符串结尾) |
|
|
|
return str.slice(lastColonIndex + 1); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
onMounted(()=>{ |
|
|
|
lookOrgAndManTreeFinish() |
|
|
|
autoAddColumnOne() |
|
|
|
|
|
|
|
if(props.type==1){ |
|
|
|
if(preFillFlag.value==1){ |
|
|
|
setTimeout(() => { |
|
|
|
if(preFillFlag.value==1&&props.data.control.preFill&&props.data.control.preFill.ids){ |
|
|
|
let i = 0; |
|
|
|
props.data.control.preFill?.ids.forEach((element:any) => { |
|
|
|
addColumn() |
|
|
|
//console.log(element) |
|
|
|
if(i==0){ |
|
|
|
setTimeout(()=>{ |
|
|
|
let asfName = getAfterLastColon(props.data.control.preFill.asf) |
|
|
|
//console.log(asfName) |
|
|
|
tableDataNew.value[i] |
|
|
|
tableDataNew.value[i][asfName] = element |
|
|
|
i++ |
|
|
|
},10) |
|
|
|
}else{ |
|
|
|
setTimeout(()=>{ |
|
|
|
let asfName = getAfterLastColon(props.data.control.preFill.asf) |
|
|
|
//console.log(asfName) |
|
|
|
tableDataNew.value[i] |
|
|
|
tableDataNew.value[i][asfName] = element |
|
|
|
i++ |
|
|
|
},200) |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}); |
|
|
|
|
|
|
|
} |
|
|
|
}, 700); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}else{ |
|
|
|
autoAddColumnOne() |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
}) |
|
|
|
|
|
|
|
@ -144,6 +234,12 @@ function autoAddColumnOne(){ |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* |
|
|
|
|
|
|
|
*/ |
|
|
|
|
|
|
|
|
|
|
|
function waitProvideFormPropsModelDo(){ |
|
|
|
setTimeout(()=>{ |
|
|
|
if(tableDataNew){ |
|
|
|
@ -153,7 +249,7 @@ function waitProvideFormPropsModelDo(){ |
|
|
|
}else{ |
|
|
|
waitProvideFormPropsModelDo |
|
|
|
} |
|
|
|
},200) |
|
|
|
},400) |
|
|
|
|
|
|
|
} |
|
|
|
|
|
|
|
@ -162,14 +258,14 @@ const addColumn = () => { |
|
|
|
console.log("如果编辑页禁用时--------->",tableDataNew.value) */ |
|
|
|
const temp: any = {} |
|
|
|
if (props.data.list) { |
|
|
|
console.log(props.data.list) |
|
|
|
//console.log(props.data.list) |
|
|
|
props.data.list.forEach((item: any) => { |
|
|
|
if (item.name) { |
|
|
|
temp[item.name] = item.control.modelValue |
|
|
|
} |
|
|
|
}) |
|
|
|
//console.log(temp) |
|
|
|
|
|
|
|
//console.log(tableDataNew.value) |
|
|
|
tableDataNew.value.push(jsonParseStringify(temp)) |
|
|
|
//console.log(tableDataNew.value) |
|
|
|
addBtnFlag.value = false |
|
|
|
@ -177,11 +273,11 @@ const addColumn = () => { |
|
|
|
} |
|
|
|
|
|
|
|
const addColumn2 = () => { |
|
|
|
/* console.error("addColumn") |
|
|
|
console.log("如果编辑页禁用时--------->", tableDataNew.value) */ |
|
|
|
//console.error("addColumn2") |
|
|
|
//console.log("如果编辑页禁用时--------->", tableDataNew.value) |
|
|
|
const temp: any = {} |
|
|
|
if (props.data.list) { |
|
|
|
//console.log(props.data.list) |
|
|
|
//console.error(props.data.list) |
|
|
|
props.data.list.forEach((item: any) => { |
|
|
|
if (item.name) { |
|
|
|
temp[item.name] = item.control.modelValue |
|
|
|
@ -192,13 +288,13 @@ const addColumn2 = () => { |
|
|
|
if (tableDataNew.value.length === 0) { |
|
|
|
// 仅当数组为空时,才添加新元素 |
|
|
|
tableDataNew.value.push(jsonParseStringify(temp)); |
|
|
|
//console.log("数组为空,已添加最新元素:", tableDataNew.value); |
|
|
|
//console.error("数组为空,已添加最新元素:", tableDataNew.value); |
|
|
|
} else { |
|
|
|
// 数组已有元素,不执行添加操作,可添加日志提示 |
|
|
|
//console.log("数组中已存在元素,不重复添加"); |
|
|
|
//console.error("数组中已存在元素,不重复添加"); |
|
|
|
} |
|
|
|
|
|
|
|
console.log(tableDataNew.value) |
|
|
|
//console.log(tableDataNew.value) |
|
|
|
addBtnFlag.value = false |
|
|
|
} |
|
|
|
} |
|
|
|
@ -410,7 +506,7 @@ const emits = defineEmits<{ |
|
|
|
|
|
|
|
|
|
|
|
function asfValueChanged(val:any){ |
|
|
|
console.log("tablePage-asfValueChanged",val) |
|
|
|
//console.log("tablePage-asfValueChanged",val) |
|
|
|
emits("asfValueChanged",val) |
|
|
|
} |
|
|
|
</script> |
|
|
|
|