Appearance
供应商主数据
供应商状态 supplierStatus
json
{
"groupCode": "expandForm",
"fieldType": "select",
"fieldLabel": "供应商状态",
"fieldName": "supplierStatus",
"dictCode": "srmSupplierStatus",
"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 (value == "4") {
let demo = {
frozenFunction: "",
orgCode: "",
frozenStatus: "1",
isSelectAll: "1",
};
let dictCodeValueMax = 4;
let frozenFunction = [];
for (let i = 0; i <= dictCodeValueMax; i++) {
frozenFunction.push({
...demo,
frozenFunction: i + "",
});
}
pageData.frozenFunction = JSON.stringify(frozenFunction);
}
}冻结功能 frozenFunction
json
{
"groupCode": "expandForm",
"fieldType": "customSelectModal",
"fieldLabel": "冻结功能 ",
"fieldName": "frozenFunction",
"dictCode": "srmFreezeFunction",
"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;
pageData.sampleItemId = data[0].id;
pageData.sampleHeadId = data[0].headId;
pageData.itemNumber = data[0].itemNumber;
pageData.sampleNumber = data[0].sampleNumber;
pageData.toElsAccount = data[0].toElsAccount;
pageData.supplierCode = data[0].supplierCode;
pageData.supplierName = data[0].supplierName;
pageData.purchaseGroup = data[0].purchaseGroup;
pageData.purchaseOrg = data[0].purchaseOrg;
pageData.materialNumber = data[0].materialNumber;
pageData.materialDesc = data[0].materialDesc;
pageData.cateCode = data[0].cateCode;
pageData.cateName = data[0].cateName;
pageData.materialSpec = data[0].materialSpec;
pageData.materialGroup = data[0].materialGroup;
pageData.materialGroupName = data[0].materialGroupName;
pageData.factory = data[0].factory;
pageData.company = data[0].company;
pageData.approveQuantity = data[0].repertoryQuantity;
}采购负责人 principal
json
{
"groupCode": "expandForm",
"fieldType": "remoteSelect",
"fieldLabel": "采购负责人",
"fieldName": "principal",
"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;
}
const { subAccount = "", realname = "" } = data[0] || {};
pageData.purchasePrincipal = `${subAccount}_${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",
modalParams: {
status: "1",
},
selectModel: "single",
}审批状态 auditStatus
json
{
"groupCode": "expandForm",
"fieldType": "select",
"fieldLabel": "审批状态",
"fieldName": "auditStatus",
"dictCode": "srmAuditStatus",
"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 (!pageData.id) {
return;
}
// 审批状态 auditStatus_dictText
// 数据字典 srmAuditStatus (0: 未审批, 1: 审批中, 2: 审批通过, 3: 审批拒绝, 4: 无需审批)
/**
* @description: 业务规则
* 审批中的单据不允许修改表头
* @return {*}
*/
setItemDisabled("baseForm", "***", value === "1");
}子账号 subAccount 🎉
json
{
"groupCode": "supplierContactsInfoList",
"fieldType": "remoteSelect",
"title": "子账号",
"field": "subAccount",
"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,
},
) {
const {
subAccount = "",
realname = "",
phone = "",
email = "",
} = data[0] || {};
row.subAccount = subAccount;
row.name = realname;
row.telphone = phone;
row.email = email;
}js
{
modalColumns: [
{
field: "subAccount",
title: "子账号",
fieldLabelI18nKey: "i18n_field_subAccount",
with: 150,
},
{
field: "realname",
title: "姓名",
fieldLabelI18nKey: "i18n_field_realname",
with: 150,
},
{
field: "phone",
title: "电话号码",
fieldLabelI18nKey: "i18n_title_telphone",
with: 150,
},
{
field: "email",
title: "邮箱",
fieldLabelI18nKey: "i18n_field_email",
with: 150,
},
],
modalUrl: "/account/elsSubAccount/page",
selectModal: "single",
params: ({ pageData }) => {
return {
elsAccount: pageData.toElsAccount,
status: 1,
};
},
handleBefore: ({ pageData }) => {
if (!pageData.toElsAccount) {
return Promise.reject("公共信息只能供方在企业基本信息中维护");
} else {
return Promise.resolve();
}
},
handleAfter: ({ row }) => {
row.subAccount = "";
row.name = "";
row.telphone = "";
row.email = "";
},
}国家/地区 country 🎉
json
{
"groupCode": "supplierAddressInfoList",
"fieldType": "remoteSelect",
"title": "国家/地区",
"field": "country",
"defaultValue": "中国",
"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;
}
const { name = "" } = data[0] || {};
row.country = name;
}js
{
modalColumns: [
{
field: "code",
title: "国家/地区编码",
fieldLabelI18nKey: "i18n_field_RunMAo_4a839f2b",
with: 400,
},
{
field: "name",
title: "国家/地区名称",
fieldLabelI18nKey: "i18n_field_RunMRL_4a7e6b03",
with: 400,
},
],
modalUrl: "/base/dict/queryDzCountryPage",
modalParams: {},
selectModal: "single",
handleAfter: ({ row }) => {
row.country = "";
},
}省份 province 🎉
json
{
"groupCode": "supplierAddressInfoList",
"fieldType": "selectModal",
"title": "省份",
"field": "province",
"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;
}
const {
provinceName = "",
cityName = "",
areasName = "",
streetsName = "",
} = data[0] || {};
row.province = provinceName;
row.city = cityName;
row.address = `${areasName}${streetsName}`;
}js
{
modalColumns: [
{
field: "provinceName",
title: "省份名称",
fieldLabelI18nKey: "i18n_field_bzRL_374bc89f",
with: 350,
},
{
field: "cityName",
title: "城市名称",
fieldLabelI18nKey: "i18n_field_city",
with: 350,
},
{
field: "areasName",
title: "地区名称",
fieldLabelI18nKey: "i18n_field_nMRL_28e52f0d",
with: 350,
},
{
field: "streetsName",
title: "乡道/街道名称",
fieldLabelI18nKey: "i18n_field_duyuRL_bb7eb13c",
with: 350,
},
],
modalUrl: "/base/dict/queryDzAddressPage",
params: {},
selectModal: "single",
handleAfter: ({ row }) => {
row.province = "";
row.city = "";
row.address = "";
},
}银行国家/地区 bankCountry 🎉
json
{
"groupCode": "supplierBankInfoList",
"fieldType": "remoteSelect",
"title": "银行国家/地区",
"field": "bankCountry",
"defaultValue": "中国",
"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;
}
const { name = "" } = data[0] || {};
row.bankCountry = name;
}js
{
modalColumns: [
{
field: "code",
title: "国家/地区编码",
fieldLabelI18nKey: "i18n_field_RunMAo_4a839f2b",
with: 400,
},
{
field: "name",
title: "国家/地区名称",
fieldLabelI18nKey: "i18n_field_RunMRL_4a7e6b03",
with: 400,
},
],
modalUrl: "/base/dict/queryDzCountryPage",
modalParams: {},
selectModal: "single",
handleAfter: ({ row }) => {
row.bankCountry = "";
},
}开户行全称 bankBranchName 🎉
json
{
"groupCode": "supplierBankInfoList",
"fieldType": "selectModal",
"title": "开户行全称",
"field": "bankBranchName",
"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;
}
row.bankProvince = data[0].provinceName;
row.bankCity = data[0].cityName;
row.bankBranchName = data[0].branchName;
row.cooperationBankType = data[0].bankName;
row.bankCode = data[0].bankCode;
}js
{
modalColumns: [
{
field: "provinceCode",
title: "省份编码",
fieldLabelI18nKey: "i18n_field_bzAo_3750fcc7",
with: 150,
},
{
field: "provinceName",
title: "省份名称",
fieldLabelI18nKey: "i18n_field_bzRL_374bc89f",
with: 150,
},
{
field: "cityCode",
title: "城市编码",
fieldLabelI18nKey: "i18n_field_LKAo_295aae9f",
with: 150,
},
{
field: "cityName",
title: "城市名称",
fieldLabelI18nKey: "i18n_field_city",
with: 150,
},
{
field: "bankCode",
title: "银行编号",
fieldLabelI18nKey: "i18n_field_WEAy_45c61c37",
with: 150,
},
{
field: "bankName",
title: "银行名称",
fieldLabelI18nKey: "i18n_field_WERL_45c10c19",
with: 150,
},
{
field: "branchCode",
title: "银行支行编码",
fieldLabelI18nKey: "i18n_field_WERcAo_e1bdf07e",
with: 150,
},
{
field: "branchName",
title: "银行支行名称",
fieldLabelI18nKey: "i18n_field_WERcRL_e1b8bc56",
with: 350,
},
],
modalUrl: "/base/dict/seleBanksPage",
params: function ({ pageData }) {
return {};
},
mobileModalParams: function (Vue, { _row }) {
return {};
},
selectModal: "single",
afterRowClearCallBack: function (Vue, row) {
row.bankCity = "";
row.bankBranchName = "";
row.cooperationBankType = "";
row.bankCode = "";
},
}采购负责人 principal 🎉
json
{
"groupCode": "supplierOrgInfoList",
"fieldType": "remoteSelect",
"title": "采购负责人 ",
"field": "principal",
"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] || {};
row.principal = subAccount + "_" + realname;
}js
{
modalColumns: [
{
field: "subAccount",
title: "子账号",
fieldLabelI18nKey: "i18n_field_subAccount",
with: 150,
},
{
field: "realname",
title: "姓名",
fieldLabelI18nKey: "i18n_field_realname",
with: 150,
},
],
modalUrl: "/account/elsSubAccount/list",
params: {
status: "1",
},
selectModel: "single",
}税码 taxCode 🎉
json
{
"groupCode": "supplierOrgInfoList",
"fieldType": "remoteSelect",
"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 || !data.length) {
return;
}
const { taxCode = "", taxRate = "" } = data[0] || {};
row.taxCode = taxCode;
row.taxRate = taxRate;
}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",
handleAfter: ({ row }) => {
row.taxCode = "";
row.taxRate = "";
},
}收货员 receiveClerk 🎉
json
{
"groupCode": "supplierOrgInfoList",
"fieldType": "remoteSelect",
"title": "收货员 ",
"field": "receiveClerk",
"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;
}
const { subAccount = "", realname = "" } = data[0] || {};
row.receiveClerk = `${subAccount}_${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",
modalParams: {
status: "1",
},
selectModal: "single",
handleAfter: ({ row }) => {
row.receiveClerk = "";
},
}准入品类 accessCategory 🎉
json
{
"groupCode": "supplierOrgInfoList",
"fieldType": "remoteSelect",
"title": "准入品类",
"field": "accessCategory",
"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;
}
const { cateCode = "", cateName = "" } = data[0] || {};
row.accessCategory = `${cateCode}_${cateName}`;
}js
{
modalColumns: [
{
field: "cateCode",
title: "物料分类编码",
fieldLabelI18nKey: "i18n_field_materialClassificationCode",
with: 150,
},
{
field: "cateName",
title: "物料分类名称",
fieldLabelI18nKey: "i18n_field_cateName",
with: 150,
},
],
modalUrl: "/material/purchaseMaterialCode/list",
modalParams: {
cateStatus: "1",
},
selectModal: "single",
handleBefore: ({ row }) => {
if (row.accessed === "1") {
return Promise.reject("该条为准入数据生产,不能修改准入品类");
} else {
return Promise.resolve();
}
},
handleAfter: ({ row }) => {
if (row.accessed === "1") {
console.error("该条为准入数据生产,不能修改准入品类");
return;
}
row.accessCategory = "";
},
}