export const FormColumns = [ { key: "puOrgName", title: "采购组织", inputType: "PopoverSelect", referName: "ORG_PARAM", dataMapping: { puOrg: "code", puOrgName: "name", }, require: true, }, { key: "code", title: "合同编码", inputType: "Input" }, { key: "lastPuMoney", title: "上年度采购额", inputType: "Input", require: true, }, { key: "buyerName", title: "采购员", inputType: "PopoverSelect", referName: "CONTACTS_PARAM", dataMapping: { buyer: "code", buyerName: "name", puDept: "deptId", puDeptName: "deptName", }, require: true, }, { key: "supplierName", title: "供应商", inputType: "PopoverSelect", referName: "SUPPLIER_PARAM", dataMapping: { supplier: "code", supplierName: "name", }, require: true, }, { key: "contractType", title: "合同类型", inputType: "Select", require: true, referName: "puarchase_contract_contract_type", }, { key: "puMoneyYear", title: "本年度采购额", inputType: "InputNumber", require: true, }, { key: "puDeptName", title: "采购部门", inputType: "PopoverSelect", referName: "DEPT_PARAM", dataMapping: { puDept: "code", puDeptName: "name", }, require: true, }, { key: "supplierTier", title: "供应商层级", inputType: "Select", require: true, referName: "puarchase_contract_supplier_tier", }, { key: "contractName", title: "合同名称", inputType: "Input", require: true }, { key: "grossRateAverage", title: "平均毛利率", inputType: "InputNumber", require: true, }, { key: "approveFlow", title: "审批流程", inputType: "Select", require: true, referName: "puarchase_contract_approve_flow", }, { key: "consumableClass", title: "耗材类别", inputType: "Select", require: true, referName: "puarchase_contract_consumable_class", }, { key: "effectiveDate", title: "合同生效日期", inputType: "DatePicker", require: true, valueFormat: "yyyy-MM-dd", }, { key: "brandGrossRate", title: "同类品牌及毛利率", inputType: "InputNumber", require: true, }, { key: "contractFormat", title: "合同格式", inputType: "Select", require: true, referName: "puarchase_contract_contract_format", }, { key: "productName", title: "产品类别&名称", inputType: "Input", require: true, }, { key: "endDate", title: "合同终止日期", inputType: "DatePicker", require: true, valueFormat: "yyyy-MM-dd", }, { key: "invoiceTax", title: "发票税率", inputType: "PopoverSelect", referName: "TAX_RATE_PARAM", dataMapping: { invoiceTax: "ntaxrate", }, require: true, }, { key: "emergencyDegree", title: "紧急程度", inputType: "Select", require: true, referName: "puarchase_contract_emergency_degree", }, { key: "project", title: "项目医院", inputType: "Input", require: true }, { key: "signDate", title: "合同签订日期", inputType: "DatePicker", require: true, valueFormat: "yyyy-MM-dd", }, { key: "deliveryType", title: "交货方式", inputType: "Select", referName: "puarchase_contract_delivery_type", }, { key: "source", title: "合同来源", inputType: "Input", value: "自制", disabled: true, }, { key: "contractPartycName", title: "合同丙方", inputType: "PopoverSelect", referName: "SUPPLIER_PARAM", dataMapping: { contractPartyc: "code", contractPartycName: "name", }, }, { key: "guaranteePeriodEnd", title: "质保期限", inputType: "Input", require: true, }, { key: "freightMethods", title: "运费承担方式", inputType: "Select", referName: "puarchase_contract_freight_methods", }, { key: "signDate", title: "合同创建时间", inputType: "DatePicker", disabled: true, }, { key: "isTarget", title: "是否有指标", inputType: "Select", require: true, referName: "sys_yes_no", }, { key: "contractTarget", title: "合同指标", inputType: "Input", require: true, placeholder: '当【是否有指标】="有"时,必填', }, { key: "exemptionPostageCondtion", title: "包邮条件", inputType: "Input", placeholder: "当运费承担方式为供应商有条件承担时,该字段必填,填写要求,写明什么条件下供应商承担全部,什么条件下我方承担,什么条件下分别承担", span: 12, }, { key: "isRebate", title: "是否有返利", inputType: "Select", require: true, referName: "sys_yes_no", }, { key: "rebatePolicy", title: "返利政策", inputType: "Input", placeholder: '当【是否有返利】="有"时,必填', span: 18, }, { key: "externalContract", title: "外部合同号", inputType: "Input" }, { key: "rollbackPolicy", title: "退换货政策", inputType: "Input", require: true, }, { key: "enquiryCode", title: "询价单号", inputType: "Input" }, { key: "contractContent", title: "合同主要内容", inputType: "Textarea", require: true, span: 24, }, { key: "refusalReasons", title: "拒绝理由", inputType: "Input", span: 24 }, { key: "externalFile", title: "对外附件", inputType: "Upload", span: 24, fileType: ["pdf"], }, { key: "puFile", title: "采购商盖章合同附件", inputType: "Upload", span: 24, fileType: ["pdf"], }, { key: "supplierFile", title: "供应商盖章合同附件", inputType: "Upload", span: 24, fileType: ["pdf"], }, { key: "projectCode", title: "项目编号", inputType: "Input" }, { key: "projectName", title: "项目名称", inputType: "Input" }, { key: "area", title: "区域", inputType: "Input" }, { key: "consigneePhone", title: "收货人联系方式", inputType: "Input" }, { key: "paymentAgreement", title: "付款协议", inputType: "PopoverSelect", referName: "PAYAGREEMENT_PARAM", dataMapping: { paymentAgreement: "code", paymentAgreementName: "name", }, require: true, }, { key: "taxPrice", title: "价税合计", inputType: "InputNumber", }, { key: "currencyName", title: "币种", inputType: "PopoverSelect", referName: "CURRENCY_PARAM", dataMapping: { currency: "code", currencyName: "name", }, require: true, }, { key: "guaranteePeriod", title: "质保期", inputType: "Input" }, ]; export const TabColumns = [ { title: "物料基本信息", key: "contractItemList", tableColumns: [ { title: "物料名称", key: "materialName", inputType: "PopoverSelect", width: 200, referName: "MATERIAL_PARAM", dataMapping: { material: "code", materialName: "name", puUnit: "unitIdName", registration: "registrationNo", specification: "specification", manufacturer: "manufacturerIdName", }, }, { title: "物料编码", key: "material", width: 200 }, { title: "规格", key: "specification", width: 200, }, // { // title: "品牌", // key: "brand", // inputType: "PopoverSelect", // width: 200, // referName: "MATERIAL_PARAM", // dataMapping: { // material: "code", // materialName: "name", // }, // }, { title: "生产厂家", key: "manufacturer", inputType: "Input", width: 200, }, { title: "采购单位", key: "puUnit", inputType: "PopoverSelect", width: 200, referName: "UNIT_PARAM", dataMapping: { puUnit: "name", }, }, { title: "税率%", key: "tax", inputType: "PopoverSelect", referName: "TAX_RATE_PARAM", dataMapping: { tax: "ntaxrate", }, width: 200, }, { title: "采购数量", key: "qty", inputType: "InputNumber", width: 200, }, { title: "含税单价", key: "taxPrice", inputType: "InputNumber", width: 200, }, { title: "含税金额合计", key: "taxMoney", inputType: "ComputedInput", width: 200, computed: (prop) => { const { qty, taxPrice } = prop; const taxMoney = (qty * taxPrice).toFixed(8); return taxMoney === "NaN" ? null : taxMoney; }, }, { title: "无税单价", key: "taxFreePrice", inputType: "ComputedInput", width: 200, computed: (prop) => { const { tax, taxPrice } = prop; const newTax = Number(tax) / 100; const taxFreePrice = (taxPrice / (1 + newTax)).toFixed(8); return taxFreePrice === "NaN" ? null : taxFreePrice; }, }, { title: "无税金额合计", key: "taxFreeMoney", inputType: "ComputedInput", width: 200, computed: (prop) => { const { qty, taxFreePrice } = prop; const taxFreeMoney = (qty * taxFreePrice).toFixed(8); return taxFreeMoney === "NaN" ? null : taxFreeMoney; }, }, { title: "注册证号及备案凭证号", key: "registration", inputType: "Input", width: 200, }, { title: "收货客户", key: "customerName", inputType: "PopoverSelect", width: 200, referName: "CUSTOMER_PARAM", dataMapping: { customer: "code", customerName: "name", }, }, ], }, { title: "合同条款", key: "contractClauseList", tableColumns: [ { title: "条款编码", key: "code", inputType: "Input" }, { title: "条款名称", key: "name", inputType: "Input" }, { title: "条款内容", key: "content", inputType: "Input" }, { title: "变量序号", key: "variableRowno" }, { title: "变量内容", key: "variableContent", inputType: "Input" }, ], }, { title: "合同费用", key: "contractExpenseList", tableColumns: [ { title: "费用编码", key: "code", inputType: "Input" }, { title: "费用名称", key: "name", inputType: "Input" }, { title: "费用金额", key: "money", inputType: "InputNumber", width: 200, }, ], }, { title: "付款协议信息", key: "contractAgreementList", tableColumns: [ { title: "付款阶段", key: "satge", inputType: "InputNumber", width: 200, }, { title: "付款起点", key: "origin", width: 200, inputType: "Select", referName: "puarchase_contract_origin", }, { title: "账期天数", key: "paymetDays", inputType: "Input", width: 200 }, { title: "付款比例%", key: "ratio", inputType: "Input", width: 200 }, { title: "付款金额", key: "money", inputType: "Input", width: 200 }, { title: "是否预付款", key: "isAdvance", width: 200, inputType: "Select", referName: "sys_yes_no", }, { title: "是否质保金", key: "isQuality", width: 200, inputType: "Select", referName: "sys_yes_no", }, { title: "结算方式", key: "paymentMeans", inputType: "PopoverSelect", width: 200, referName: "BALATYPE_PARAM", dataMapping: { paymentMeans: "name", }, }, { title: "需进度确认", key: "schedule", inputType: "Select", referName: "sys_yes_no", width: 200, }, ], }, { title: "合同执行组织范围", key: "contractApplyOrgList", tableColumns: [ { title: "组织名称", key: "orgName", inputType: "PopoverSelect", referName: "ORG_PARAM", dataMapping: { org: "code", orgName: "name", }, }, { title: "组织编码", key: "org" }, ], }, ]; export default { FormColumns, TabColumns };