Appearance
采购申请
表行编辑规则
js
{
groupName: "采购申请行信息",
groupNameI18nKey: "i18n_title_purchaseRequisitionInfo",
groupCode: "purchaseRequestItemList",
groupType: "item",
sortOrder: "2",
extend: {
vxeGridConfig: {
editConfig: {
trigger: "click", // 单击击触发编辑
mode: "cell", // 单元格编辑模式
/**
* @description: 表行编辑规则
* @param {Object} pageData 页面所有数据, ref响应对象,注意在使用时须带上.value
* @param {Object} row 表行数据
* @param {number} rowIndex 表行索引值
* @param {Object} column 列配置
* @param {number} columnIndex 列索引
* @return {boolean} 返回布尔值, 为 true 时允许编辑
*/
beforeEditMethod(pageData, { row, rowIndex, column, columnIndex }) {
console.log("row :>> ", row);
console.log("rowIndex :>> ", rowIndex);
console.log("column :>> ", column);
console.log("columnIndex :>> ", columnIndex);
console.log("pageData :>> ", pageData.value);
const tableData = pageData.value.purchaseRequestItemList;
const mustMaterialNumber = pageData.value.mustMaterialNumber;
const filterData = tableData.filter((item) => {
return item.id === row.id;
});
if (filterData && filterData.length) {
if (
row["itemStatus"] &&
row["itemStatus"] !== "0" &&
row["itemStatus"] !== "-1"
) {
return false;
}
} else {
return false;
}
if (
mustMaterialNumber == "1" &&
(column.property == "materialDesc" ||
column.property == "materialName" ||
column.property == "materialSpec")
) {
return false;
}
//只有新建和退回的单据才可以编辑 return false 是不能编辑
if (row["itemStatus"] == "-1") {
return true;
}
if (row["itemStatus"] == "0") {
return true;
}
return true;
},
},
},
},
}采购负责人 purchasePrincipal
json
{
"groupCode": "baseForm",
"fieldType": "remoteSelect",
"fieldLabel": "采购负责人",
"fieldName": "purchasePrincipal",
"required": "0"
}js
/**
* @param {Object} ctx 组件实例
* @param {String} value 当前所选值
* @param {Array} data selectModal, remoteSelect 已选行数据 (如有)
* @param {boolean} _isFill 填充、粘贴操作判断标识
* @param {Object} row 表行数据 (如有)
* @param {number} idx 表行索引值 (如有)
* @param {Object} pageData 页面所有数据
* @param {Object} layoutConfig 模板配置
* @param {Object} userInfo 当前登录人信息
* @param {(groupCode: string, fieldName: string, fn: (item: FormFieldsItem | ColumnItem) => void) => void}
* customFormatItem 遍历模板分组配置,自定义格式化查询到的字段
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemRequired 自定义设置字段必填
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemDisabled 自定义设置字段置灰
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemRequiredOrDisabled 自定义设置字段必填/置灰
* @param {() => void} topEmit 用于处理复杂绑定函数需求
* @param {Constructor} Decimal构造函数, 适用于js小数位数精度计算
* https://github.com/MikeMcl/decimal.js
*/
function callback(
ctx,
{
value,
data,
_isFill,
row,
idx,
pageData,
layoutConfig,
userInfo,
customFormatItem,
setItemRequired,
setItemDisabled,
setItemRequiredOrDisabled,
topEmit,
Decimal,
},
) {
if (!data || !data.length) {
return;
}
let { subAccount = "", realname = "" } = data[0] || {};
pageData.purchasePrincipal = subAccount + "_" + realname;
}js
{
modalColumns: [
{
field: "subAccount",
title: "子账号",
fieldLabelI18nKey: "i18n_field_subAccount",
width: 150,
},
{
field: "realname",
title: "姓名",
fieldLabelI18nKey: "i18n_field_realname",
width: 150,
},
],
modalUrl: "/account/elsSubAccount/page",
selectModel: "single",
params: {
status: "1",
},
}申请人 applicant
json
{
"groupCode": "baseForm",
"fieldType": "remoteSelect",
"fieldLabel": "申请人",
"fieldName": "applicant",
"required": "1"
}js
/**
* @param {Object} ctx 组件实例
* @param {String} value 当前所选值
* @param {Array} data selectModal, remoteSelect 已选行数据 (如有)
* @param {boolean} _isFill 填充、粘贴操作判断标识
* @param {Object} row 表行数据 (如有)
* @param {number} idx 表行索引值 (如有)
* @param {Object} pageData 页面所有数据
* @param {Object} layoutConfig 模板配置
* @param {Object} userInfo 当前登录人信息
* @param {(groupCode: string, fieldName: string, fn: (item: FormFieldsItem | ColumnItem) => void) => void}
* customFormatItem 遍历模板分组配置,自定义格式化查询到的字段
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemRequired 自定义设置字段必填
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemDisabled 自定义设置字段置灰
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemRequiredOrDisabled 自定义设置字段必填/置灰
* @param {() => void} topEmit 用于处理复杂绑定函数需求
* @param {Constructor} Decimal构造函数, 适用于js小数位数精度计算
* https://github.com/MikeMcl/decimal.js
*/
function callback(
ctx,
{
value,
data,
_isFill,
row,
idx,
pageData,
layoutConfig,
userInfo,
customFormatItem,
setItemRequired,
setItemDisabled,
setItemRequiredOrDisabled,
topEmit,
Decimal,
},
) {
if (!data || !data.length) {
return;
}
pageData.applicant = data[0].subAccount + "_" + data[0].realname;
}js
{
modalColumns: [
{
field: "subAccount",
title: "子账号",
fieldLabelI18nKey: "i18n_field_subAccount",
with: 150,
},
{
field: "realname",
title: "姓名",
fieldLabelI18nKey: "i18n_field_realname",
with: 150,
},
],
modalUrl: "/account/elsSubAccount/page",
selectModel: "single",
params: {
status: "1",
},
}物料编号必填 mustMaterialNumber
json
{
"groupCode": "baseForm",
"fieldType": "switch",
"fieldLabel": "物料编号必填",
"fieldName": "mustMaterialNumber",
"dictCode": "yn",
"defaultValue": "1",
"required": "1"
}js
/**
* @param {Object} ctx 组件实例
* @param {String} value 当前所选值
* @param {Array} data selectModal, remoteSelect 已选行数据 (如有)
* @param {boolean} _isFill 填充、粘贴操作判断标识
* @param {Object} row 表行数据 (如有)
* @param {number} idx 表行索引值 (如有)
* @param {Object} pageData 页面所有数据
* @param {Object} layoutConfig 模板配置
* @param {Object} userInfo 当前登录人信息
* @param {(groupCode: string, fieldName: string, fn: (item: FormFieldsItem | ColumnItem) => void) => void}
* customFormatItem 遍历模板分组配置,自定义格式化查询到的字段
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemRequired 自定义设置字段必填
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemDisabled 自定义设置字段置灰
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemRequiredOrDisabled 自定义设置字段必填/置灰
* @param {() => void} topEmit 用于处理复杂绑定函数需求
* @param {Constructor} Decimal构造函数, 适用于js小数位数精度计算
* https://github.com/MikeMcl/decimal.js
*/
function callback(
ctx,
{
value,
data,
_isFill,
row,
idx,
pageData,
layoutConfig,
userInfo,
customFormatItem,
setItemRequired,
setItemDisabled,
setItemRequiredOrDisabled,
topEmit,
Decimal,
},
) {
setItemRequired("purchaseRequestItemList", "materialNumber", value === "1");
}要求交期 deliveryDate 🎉
json
{
"groupCode": "purchaseRequestItemList",
"fieldType": "date",
"title": "要求交期",
"field": "deliveryDate",
"required": "1"
}js
/**
* @param {Object} ctx 组件实例
* @param {String} value 当前所选值
* @param {Array} data selectModal, remoteSelect 已选行数据 (如有)
* @param {boolean} _isFill 填充、粘贴操作判断标识
* @param {Object} row 表行数据 (如有)
* @param {number} idx 表行索引值 (如有)
* @param {Object} pageData 页面所有数据
* @param {Object} layoutConfig 模板配置
* @param {Object} userInfo 当前登录人信息
* @param {(groupCode: string, fieldName: string, fn: (item: FormFieldsItem | ColumnItem) => void) => void}
* customFormatItem 遍历模板分组配置,自定义格式化查询到的字段
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemRequired 自定义设置字段必填
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemDisabled 自定义设置字段置灰
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemRequiredOrDisabled 自定义设置字段必填/置灰
* @param {() => void} topEmit 用于处理复杂绑定函数需求
* @param {Constructor} Decimal构造函数, 适用于js小数位数精度计算
* https://github.com/MikeMcl/decimal.js
*/
function callback(
ctx,
{
value,
data,
_isFill,
row,
idx,
pageData,
layoutConfig,
userInfo,
customFormatItem,
setItemRequired,
setItemDisabled,
setItemRequiredOrDisabled,
topEmit,
Decimal,
},
) {
if (pageData.ifLeadTime == 1) {
if (pageData.applyDate == "" || pageData.applyDate == null) {
return new Error("请先填写表头的采购申请日期");
} else {
var stime = Date.parse(new Date(pageData.applyDate));
var etime = Date.parse(new Date(pageData["deliveryDate"]));
// // 两个时间戳相差的毫秒数
var usedTime = etime - stime;
// 计算相差的天数
var days = Math.floor(usedTime / (24 * 3600 * 1000));
if (pageData["leadTime"] - days > 0) {
return new Error("当前不满足采购提前期");
}
}
}
}需求数量 repertoryQuantity 🎉
json
{
"groupCode": "purchaseRequestItemList",
"fieldType": "float",
"title": "需求数量",
"field": "repertoryQuantity",
"required": "1"
}js
/**
* @param {Object} ctx 组件实例
* @param {String} value 当前所选值
* @param {Array} data selectModal, remoteSelect 已选行数据 (如有)
* @param {boolean} _isFill 填充、粘贴操作判断标识
* @param {Object} row 表行数据 (如有)
* @param {number} idx 表行索引值 (如有)
* @param {Object} pageData 页面所有数据
* @param {Object} layoutConfig 模板配置
* @param {Object} userInfo 当前登录人信息
* @param {(groupCode: string, fieldName: string, fn: (item: FormFieldsItem | ColumnItem) => void) => void}
* customFormatItem 遍历模板分组配置,自定义格式化查询到的字段
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemRequired 自定义设置字段必填
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemDisabled 自定义设置字段置灰
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemRequiredOrDisabled 自定义设置字段必填/置灰
* @param {() => void} topEmit 用于处理复杂绑定函数需求
* @param {Constructor} Decimal构造函数, 适用于js小数位数精度计算
* https://github.com/MikeMcl/decimal.js
*/
function callback(
ctx,
{
value,
data,
_isFill,
row,
idx,
pageData,
layoutConfig,
userInfo,
customFormatItem,
setItemRequired,
setItemDisabled,
setItemRequiredOrDisabled,
topEmit,
Decimal,
},
) {
if (row.price && row.taxRate) {
let taxRate = row.taxRate;
let price = row.price;
let tax = Decimal.add(1, Decimal.div(taxRate, 100));
let netPrice = Decimal.div(price, tax);
netPrice = new Decimal(netPrice).toFixed(4);
row.netPrice = netPrice;
if (row.repertoryQuantity) {
let quantity = row.repertoryQuantity;
let taxAmount = Decimal.mul(price, quantity);
taxAmount = new Decimal(taxAmount).toFixed(4);
row.taxAmount = taxAmount;
let netAmount = Decimal.div(taxAmount, tax);
netAmount = new Decimal(netAmount).toFixed(4);
row.netAmount = netAmount;
let tableData = pageData.purchaseRequestItemList;
let totalTaxAmount = 0;
let totalNetAmount = 0;
tableData.forEach((item) => {
if (item.taxAmount) {
totalTaxAmount += Number(item.taxAmount);
}
if (item.netAmount) {
totalNetAmount += Number(item.netAmount);
}
});
pageData.totalTaxAmount = totalTaxAmount;
pageData.totalNetAmount = totalNetAmount;
}
}
}含税单价 price 🎉
json
{
"groupCode": "purchaseRequestItemList",
"fieldType": "hiddenField",
"title": "含税单价",
"field": "price",
"required": "0"
}js
/**
* @param {Object} ctx 组件实例
* @param {String} value 当前所选值
* @param {Array} data selectModal, remoteSelect 已选行数据 (如有)
* @param {boolean} _isFill 填充、粘贴操作判断标识
* @param {Object} row 表行数据 (如有)
* @param {number} idx 表行索引值 (如有)
* @param {Object} pageData 页面所有数据
* @param {Object} layoutConfig 模板配置
* @param {Object} userInfo 当前登录人信息
* @param {(groupCode: string, fieldName: string, fn: (item: FormFieldsItem | ColumnItem) => void) => void}
* customFormatItem 遍历模板分组配置,自定义格式化查询到的字段
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemRequired 自定义设置字段必填
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemDisabled 自定义设置字段置灰
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemRequiredOrDisabled 自定义设置字段必填/置灰
* @param {() => void} topEmit 用于处理复杂绑定函数需求
* @param {Constructor} Decimal构造函数, 适用于js小数位数精度计算
* https://github.com/MikeMcl/decimal.js
*/
function callback(
ctx,
{
value,
data,
_isFill,
row,
idx,
pageData,
layoutConfig,
userInfo,
customFormatItem,
setItemRequired,
setItemDisabled,
setItemRequiredOrDisabled,
topEmit,
Decimal,
},
) {
if (row.price && row.taxRate) {
let taxRate = row.taxRate;
let price = row.price;
let tax = Decimal.add(1, Decimal.div(taxRate, 100));
let netPrice = Decimal.div(price, tax);
netPrice = new Decimal(netPrice).toFixed(4);
row.netPrice = netPrice;
if (row.repertoryQuantity) {
let quantity = row.repertoryQuantity;
let taxAmount = Decimal.mul(price, quantity);
taxAmount = new Decimal(taxAmount).toFixed(4);
row.taxAmount = taxAmount;
let netAmount = Decimal.div(taxAmount, tax);
netAmount = new Decimal(netAmount).toFixed(4);
row.netAmount = netAmount;
let tableData = pageData.purchaseRequestItemList;
let totalTaxAmount = 0;
let totalNetAmount = 0;
tableData.forEach((item) => {
if (item.taxAmount) {
totalTaxAmount += Number(item.taxAmount);
}
if (item.netAmount) {
totalNetAmount += Number(item.netAmount);
}
});
pageData.totalTaxAmount = totalTaxAmount;
pageData.totalNetAmount = totalNetAmount;
}
}
}税码 taxCode 🎉
json
{
"groupCode": "purchaseRequestItemList",
"fieldType": "hiddenField",
"title": "税码",
"field": "taxCode",
"required": "0"
}js
/**
* @param {Object} ctx 组件实例
* @param {String} value 当前所选值
* @param {Array} data selectModal, remoteSelect 已选行数据 (如有)
* @param {boolean} _isFill 填充、粘贴操作判断标识
* @param {Object} row 表行数据 (如有)
* @param {number} idx 表行索引值 (如有)
* @param {Object} pageData 页面所有数据
* @param {Object} layoutConfig 模板配置
* @param {Object} userInfo 当前登录人信息
* @param {(groupCode: string, fieldName: string, fn: (item: FormFieldsItem | ColumnItem) => void) => void}
* customFormatItem 遍历模板分组配置,自定义格式化查询到的字段
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemRequired 自定义设置字段必填
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemDisabled 自定义设置字段置灰
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemRequiredOrDisabled 自定义设置字段必填/置灰
* @param {() => void} topEmit 用于处理复杂绑定函数需求
* @param {Constructor} Decimal构造函数, 适用于js小数位数精度计算
* https://github.com/MikeMcl/decimal.js
*/
function callback(
ctx,
{
value,
data,
_isFill,
row,
idx,
pageData,
layoutConfig,
userInfo,
customFormatItem,
setItemRequired,
setItemDisabled,
setItemRequiredOrDisabled,
topEmit,
Decimal,
},
) {
if (!data) return;
row.taxCode = data[0].taxCode || "";
row.taxRate = data[0].taxRate || "";
// ...
if (row.price && row.taxRate) {
let taxRate = row.taxRate;
let price = row.price;
if (Decimal) {
let formula = Decimal.add(1, Decimal.div(taxRate, 100));
let netPrice = Decimal.div(price, formula);
// 4位小数
row.netPrice = new Decimal(netPrice).toFixed(4);
let tax = Decimal.add(1, Decimal.div(taxRate, 100));
if (row.repertoryQuantity) {
let quantity = row.repertoryQuantity;
let taxAmount = Decimal.mul(price, quantity);
row.taxAmount = new Decimal(taxAmount).toFixed(4);
let netAmount = Decimal.div(taxAmount, tax);
row.netAmount = new Decimal(netAmount).toFixed(4);
let totalTaxAmount = 0;
let totalNetAmount = 0;
pageData.purchaseRequestItemList.forEach((item) => {
if (item.taxAmount) {
totalTaxAmount += Number(item.taxAmount);
}
if (item.netAmount) {
totalNetAmount += Number(item.netAmount);
}
});
pageData.totalTaxAmount = totalTaxAmount;
pageData.totalNetAmount = totalNetAmount;
}
}
}
}js
{
modalColumns: [
{
field: "taxCode",
title: "税码",
fieldLabelI18nKey: "i18n_field_taxCode",
with: 150,
},
{
field: "taxRate",
title: "税率(%)",
fieldLabelI18nKey: "i18n_field_fIW_1d82c0c",
with: 150,
},
{
field: "taxName",
title: "税码名称",
fieldLabelI18nKey: "i18n_field_taxName",
with: 150,
},
{
field: "remark",
title: "备注",
fieldLabelI18nKey: "i18n_field_remark",
with: 150,
},
],
modalUrl: "/base/tax/queryTaxForTemplate",
modalParams: {},
selectModel: "single",
beforeCheckedCallBack(Vue, row, column) {
console.log("row", row);
return new Promise((resolve, reject) => {
return row.itemStatus !== "-1" && row.itemStatus !== "0"
? reject("只有新建和退回状态的单据才允许编辑")
: resolve("success");
});
},
afterRowClearCallBack: function (Vue, row) {
row.taxCode = "";
row.taxRate = "";
},
}期望供应商 ELS 账号 expectSupplierEls 🎉
json
{
"groupCode": "purchaseRequestItemList",
"fieldType": "remoteSelect",
"title": "期望供应商ELS账号",
"field": "expectSupplierEls",
"required": "0"
}js
/**
* @param {Object} ctx 组件实例
* @param {String} value 当前所选值
* @param {Array} data selectModal, remoteSelect 已选行数据 (如有)
* @param {boolean} _isFill 填充、粘贴操作判断标识
* @param {Object} row 表行数据 (如有)
* @param {number} idx 表行索引值 (如有)
* @param {Object} pageData 页面所有数据
* @param {Object} layoutConfig 模板配置
* @param {Object} userInfo 当前登录人信息
* @param {(groupCode: string, fieldName: string, fn: (item: FormFieldsItem | ColumnItem) => void) => void}
* customFormatItem 遍历模板分组配置,自定义格式化查询到的字段
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemRequired 自定义设置字段必填
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemDisabled 自定义设置字段置灰
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemRequiredOrDisabled 自定义设置字段必填/置灰
* @param {() => void} topEmit 用于处理复杂绑定函数需求
* @param {Constructor} Decimal构造函数, 适用于js小数位数精度计算
* https://github.com/MikeMcl/decimal.js
*/
function callback(
ctx,
{
value,
data,
_isFill,
row,
idx,
pageData,
layoutConfig,
userInfo,
customFormatItem,
setItemRequired,
setItemDisabled,
setItemRequiredOrDisabled,
topEmit,
Decimal,
},
) {
if (data && data.length) {
// 填充操作时 _isFill 判断标识值为 true
// 且 data 参数为当前所选行缓存数据
// 如果赋值操作中字段属性不同, 需要加条件判断区分取值
// 如果各属性名称相同, 则不用修改
if (_isFill) {
const { expectSupplierEls = "", expectSupplierName = "" } = data[0] || {};
row.expectSupplierEls = expectSupplierEls;
row.expectSupplierName = expectSupplierName;
} else {
const { toElsAccount = "", supplierName = "" } = data[0] || {};
row.expectSupplierEls = address;
row.expectSupplierName = consignee;
}
}
}js
{
modalColumns: [
{ field: "toElsAccount", title: "供应商账号", with: 150 },
{ field: "supplierName", title: "供应商名称", with: 150 },
{ field: "supplierCode", title: "供应商编码", with: 150 },
],
modalUrl: "/supplier/supplierMaster/list",
modalParams: {},
}收货地址 receivedAddress 🎉
json
{
"groupCode": "purchaseRequestItemList",
"fieldType": "selectModal",
"title": "收货地址",
"field": "receivedAddress",
"required": "0"
}js
/**
* @param {Object} ctx 组件实例
* @param {String} value 当前所选值
* @param {Array} data selectModal, remoteSelect 已选行数据 (如有)
* @param {boolean} _isFill 填充、粘贴操作判断标识
* @param {Object} row 表行数据 (如有)
* @param {number} idx 表行索引值 (如有)
* @param {Object} pageData 页面所有数据
* @param {Object} layoutConfig 模板配置
* @param {Object} userInfo 当前登录人信息
* @param {(groupCode: string, fieldName: string, fn: (item: FormFieldsItem | ColumnItem) => void) => void}
* customFormatItem 遍历模板分组配置,自定义格式化查询到的字段
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemRequired 自定义设置字段必填
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemDisabled 自定义设置字段置灰
* @param {(groupCode: string, fieldName: string, flag: boolean) => void}
* setItemRequiredOrDisabled 自定义设置字段必填/置灰
* @param {() => void} topEmit 用于处理复杂绑定函数需求
* @param {Constructor} Decimal构造函数, 适用于js小数位数精度计算
* https://github.com/MikeMcl/decimal.js
*/
function callback(
ctx,
{
value,
data,
_isFill,
row,
idx,
pageData,
layoutConfig,
userInfo,
customFormatItem,
setItemRequired,
setItemDisabled,
setItemRequiredOrDisabled,
topEmit,
Decimal,
},
) {
if (data && data.length) {
// 填充操作时 _isFill 判断标识值为 true
// 且 data 参数为当前所选行缓存数据
// 如果赋值操作中字段属性不同, 需要加条件判断区分取值
// 如果各属性名称相同, 则不用修改
if (_isFill) {
const {
receivedAddress = "",
receivedUser = "",
receivedPhone = "",
} = data[0] || {};
row.receivedAddress = receivedAddress;
row.receivedUser = receivedUser;
row.receivedPhone = receivedPhone;
} else {
const {
address = "",
consignee = "",
purchasePhone = "",
} = data[0] || {};
row.receivedAddress = address;
row.receivedUser = consignee;
row.receivedPhone = purchasePhone;
}
}
}js
{
selectModal: "single",
modalColumns: [
{
field: "address",
title: "收货地址",
fieldLabelI18nKey: "i18n_field_receiveAddress",
with: 150,
},
{
field: "consignee",
title: "收货人",
fieldLabelI18nKey: "i18n_field_consignee",
with: 150,
},
{
field: "purchasePhone",
title: "收货人联系电话",
fieldLabelI18nKey: "i18n_field_receivedPhone",
with: 150,
},
],
modalUrl: "/delivery/deliveryOrderAddress/list",
modalParams: {},
// 表行弹窗清除按钮回调
handleAfter: function ({ pageData, row }) {
row.receivedAddress = "";
row.receivedUser = "";
row.receivedPhone = "";
},
}