import {verifyNull, verifySlash} from "@/util/validate";
|
|
export default {
|
async getDictList(val,that) {
|
for (let code of val) {
|
if (!verifyNull(code.dictData) && code.type == "select") {
|
if (
|
verifySlash(code.dictCode) &&
|
Object.prototype.hasOwnProperty.call(code, "dictCode")
|
) {
|
const res = await getlistByCode(code.dictCode);
|
if (res.success) {
|
const dic = res.data;
|
code.dictData = dic.map((d) => {
|
return {
|
label: d.name,
|
key: d.code,
|
value: d.id,
|
};
|
});
|
}
|
} else {
|
that.getDicts(code.dictCode)
|
.then((res) => {
|
if (res.success) {
|
const dic = res.obj.datas;
|
code.dictData = dic.map((d) => {
|
return {
|
label: d.name,
|
key: d.code,
|
value: d.code,
|
};
|
});
|
}
|
})
|
.catch(() => {
|
that.$message.error(` 数据字典${code.dictCode}错误`);
|
});
|
}
|
}
|
if (code.type == "refer") {
|
if (code.referConfig && code.referConfig.useFormKey) {
|
if (verifyNull(code.referConfig.formValuesKey)) {
|
code.referConfig.formValuesKey = "ruleForm";
|
}
|
code.referConfig.formValues = that[code.referConfig.formValuesKey];
|
}
|
code.referConfigTemp = {
|
title: code.label,
|
showProp:
|
code.showProp || code.referConfig.showProp || code.prop + "Name",
|
prop: code.prop,
|
propMap: code.propMap || {},
|
placeholder: code.placeholder
|
? code.placeholder
|
: ` 请选择` + code.label,
|
options: code.referConfig,
|
};
|
}
|
}
|
that.formTemplateData = val;
|
},
|
setReferValue(data,that) {
|
if (data.prop) {
|
that.ruleForm[data.prop] = data.value || "";
|
that.ruleForm[data.showProp] = data.text || "";
|
if (data.propMap) {
|
//说明需要映射
|
for (let key in data.propMap) {
|
let mapFields = data.propMap[key].split(",");
|
let value = [];
|
data.rawData.forEach((_item) => {
|
var temp;
|
if (!_item.extendData) {
|
_item.extendData = {};
|
}
|
if (mapFields.length == 1) {
|
var mapField = mapFields[0];
|
temp = _item[mapField] || _item["extendData"][mapField];
|
} else {
|
//有多个
|
var mutiTemp = [];
|
mapFields.forEach((_itemField) => {
|
mutiTemp.push(
|
_item[_itemField] || _item["extendData"][_itemField]
|
);
|
});
|
temp = mutiTemp.join(" ");
|
}
|
if (temp != null && temp != "") {
|
value.push(temp);
|
}
|
});
|
that.ruleForm[key] = value.join(",");
|
}
|
}
|
}
|
},
|
}
|