Appearance
核价标准
物料编码 materialNumber
json
{
"groupCode": "baseForm",
"fieldType": "remoteSelect",
"fieldLabel": "物料编码",
"fieldName": "materialNumber",
"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 {
materialNumber = "",
materialName = "",
materialDesc = "",
materialSpec = "",
materialGroup = "",
id = "",
cateName = "",
cateCode = "",
purchaseUnit = "",
} = data[0] || {};
pageData.materialNumber = materialNumber;
pageData.materialName = materialName;
pageData.materialDesc = materialDesc;
pageData.materialSpec = materialSpec;
pageData.materialGroup = materialGroup;
pageData.materialId = id;
pageData.cateName = cateName;
pageData.cateCode = cateCode;
pageData.purchaseUnit = purchaseUnit;
}js
{
modalColumns: [
{
field: "materialNumber",
title: "物料编码",
fieldLabelI18nKey: "i18n_field_materialNumber",
with: 150,
},
{
field: "materialDesc",
title: "物料描述",
fieldLabelI18nKey: "i18n_field_materialDesc",
with: 150,
},
{
field: "materialName",
title: "物料名称",
fieldLabelI18nKey: "i18n_field_materialName",
with: 150,
},
{
field: "materialSpec",
title: "物料规格",
fieldLabelI18nKey: "i18n_field_materialSpec",
with: 150,
},
{
field: "materialGroup_dictText",
title: "物料组",
fieldLabelI18nKey: "i18n_field_materialGroup",
with: 150,
},
{
field: "cateCode",
title: "物料分类",
fieldLabelI18nKey: "i18n_field_cateCode",
with: 150,
},
{
field: "cateName",
title: "物料分类名称",
fieldLabelI18nKey: "i18n_field_cateName",
with: 150,
},
{
field: "purchaseUnit_dictText",
title: "采购单位",
width: 180,
},
],
modalUrl: "/material/purchaseMaterialHead/page-list",
modalParams: {},
afterClearCallBack: function (that, form, col) {
form.materialNumber = "";
form.materialName = "";
form.materialDesc = "";
form.materialSpec = "";
form.materialGroup = "";
form.materialId = "";
form.cateName = "";
form.cateCode = "";
form.purchaseUnit = "";
},
handleAfter: ({ pageData, userInfo }) => {
pageData.materialNumber = "";
pageData.materialName = "";
pageData.materialDesc = "";
pageData.materialSpec = "";
pageData.materialGroup = "";
pageData.materialId = "";
pageData.cateName = "";
pageData.cateCode = "";
pageData.purchaseUnit = "";
},
}税码 taxCode
json
{
"groupCode": "baseForm",
"fieldType": "remoteSelect",
"fieldLabel": "税码",
"fieldName": "taxCode",
"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 { taxCode = "", taxRate = "" } = data[0] || {};
pageData.taxCode = taxCode;
pageData.taxRate = taxRate;
// 本地页面处理复杂绑定函数需求
topEmit && topEmit();
}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",
selectModel: "single",
modalParams(Vue, form, row) {},
mobileModalParams(Vue, { _pageData, _cacheAllData }) {},
afterClearCallBack: function (that, form, col) {
form.taxRate = "";
form.taxCode = "";
},
}核价单业务模版编号 managementTemplateNumber
json
{
"groupCode": "baseForm",
"fieldType": "selectModal",
"fieldLabel": "核价单业务模版编号",
"fieldName": "managementTemplateNumber",
"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 {
templateName = "",
templateVersion = "",
elsAccount = "",
templateNumber = "",
} = data[0] || {};
pageData.managementTemplateName = templateName;
pageData.managementTemplateVersion = templateVersion;
pageData.managementTemplateAccount = elsAccount;
pageData.managementTemplateNumber = templateNumber;
}js
{
modalColumns: [
{
field: "elsAccount",
title: "模版账号",
fieldLabelI18nKey: "i18n_field_Crey_31fcc218",
width: 180,
},
{
field: "templateName",
fieldLabelI18nKey: "i18n_field_CrRL_31f5fe0a",
title: "模版名称",
width: 180,
},
{
field: "templateNumber",
fieldLabelI18nKey: "i18n_field_CrAy_31fb0e28",
title: "模版编号",
width: 180,
},
{
field: "templateVersion",
fieldLabelI18nKey: "i18n_field_Crrv_31f9946b",
title: "模版版本",
width: 180,
},
],
modalUrl: "/template/templateHead/noToken/listByBusiness",
params: {
businessType: "purchasePriceEvaluationManageHead",
},
handleAfter: ({ pageData }) => {
pageData.managementTemplateName = "";
pageData.managementTemplateVersion = "";
pageData.managementTemplateAccount = "";
pageData.managementTemplateNumber = "";
},
}发布供应商 publish
json
{
"groupCode": "baseForm",
"fieldType": "select",
"fieldLabel": "发布供应商",
"fieldName": "publish",
"dictCode": "yn",
"defaultValue": "1",
"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,
},
) {
/**
* @description: 业务规则
* 发布供应商为'是'时, '确认截止时间'必填
* 且 供应商意见 purchaseSupplierOptionEvaluationStanderList
* 分组可见, 否则不可见
* @return {*}
*/
setItemRequired("baseForm", "deadline", value === "1");
// 本地页面处理复杂绑定函数需求
const hideSingleGroup = (layoutConfig, groupCode, flag) => {
let { groups } = layoutConfig;
if (groups?.length) {
for (let group of groups) {
if (group.groupCode == groupCode) {
group.show = !flag;
}
}
}
};
if (value == "1") {
hideSingleGroup(
layoutConfig,
"purchaseSupplierEvaluationStanderList",
false,
);
} else {
hideSingleGroup(
layoutConfig,
"purchaseSupplierEvaluationStanderList",
true,
);
}
}是否生成价格 generatePrice
json
{
"groupCode": "baseForm",
"fieldType": "select",
"fieldLabel": "是否生成价格",
"fieldName": "generatePrice",
"dictCode": "yn",
"defaultValue": "0",
"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,
},
) {
/**
* @description: 业务规则
* 为'是'时, '价格生效日期'和'价格失效日期'必填
* 且 供应商意见 purchaseSupplierOptionEvaluationStanderList
* 分组可见, 否则不可见
* @return {*}
*/
setItemRequired("baseForm", "effectiveDate", value === "1");
setItemRequired("baseForm", "expiryDate", value === "1");
}费用基数 rateBase 🎉
json
{
"groupCode": "purchaseManagementClassifyItemList",
"fieldType": "input",
"title": "费用基数",
"field": "rateBase",
"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,
},
) {
// 本地页面处理复杂绑定函数需求
topEmit && topEmit();
}用量 quantity 🎉
json
{
"groupCode": "purchaseProcessingProcedurePriceItemList",
"fieldType": "number",
"title": "用量",
"field": "quantity",
"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,
},
) {
// 本地页面处理复杂绑定函数需求
topEmit && topEmit();
}用量 quantity 🎉
json
{
"groupCode": "purchasePriceEvaluationItemList",
"fieldType": "number",
"title": "用量",
"field": "quantity",
"defaultValue": "0",
"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,
},
) {
// 本地页面处理复杂绑定函数需求
topEmit && topEmit();
}