import XEUtils from "xe-utils" import { materialDic } from "@/utils/basicDic" import { mapFormItemInput } from "@/components/scTable/helper" export const tableOptions = reactive({ tableKey: "material", columns: [ { type: "seq", fixed: "left", width: 80, className: "vxe-table-seq-cell__handler", footerAlign: "right", showOverflow: false, slots: { default: "seq_del" } }, { field: "code", title: "产品编码", fixed: "left", minWidth: 150 }, { field: "name", title: "产品名称", fixed: "left", minWidth: 150 }, { field: "unit", title: "单位", minWidth: 150 }, { field: "quantity", title: "数量", minWidth: 100, editRender: { name: "VxeNumberInput", props: { min: 1, controlConfig: { enabled: false } }, defaultValue: 1 } }, { field: "price", title: "单价", minWidth: 100, editRender: { name: "VxeNumberInput", props: { min: 0, type: "float", controlConfig: { enabled: false } }, defaultValue: 1 } } ], editRules: { quantity: [{ required: true, message: "必须填写" }], price: [{ required: true, message: "必须填写" }] }, footerField: [["quantity", "price"], ["quantity"]], footerTitle: ["合计:", "整单标价总额:"], footerMethod: [ (data, field) => XEUtils.sum(data, field), (data, field) => XEUtils.sum(XEUtils.map(data, item => XEUtils.multiply(XEUtils.get(item, field), XEUtils.get(item, "price")))) ], // 整单标价总额 mergeFooterItems: [ { row: 0, col: 0, rowspan: 1, colspan: 4 }, { row: 1, col: 0, rowspan: 1, colspan: 4 }, { row: 1, col: 4, rowspan: 2, colspan: 2 } ], selectOptions: { paramsColums: [ { column: "status", defaultValue: "enable" }, { column: "materialTypeIn", defaultValue: materialDic.typeRelation["salable"] } ] }, add_success: (oldValue, newValue) => XEUtils.map(newValue, (item, index) => XEUtils.pick(item, "id", "code", "name", "unit", "price")) }) export const selectOptions = reactive({ tableKey: "customer", valueKey: "name", paramsColums: [{ column: "status", defaultValue: "enable" }] })