| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- 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" }]
- })
|