From eed8204e87651314b455ad330db142f9b10d956a Mon Sep 17 00:00:00 2001 From: zhang_li <2235006734@qqq.com> Date: Thu, 12 Dec 2024 17:01:41 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E9=87=87=E8=B4=AD=E4=BB=B6=E6=A0=87?= =?UTF-8?q?=E7=AD=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/wms/package/index.ts | 5 + src/components/Detail/src/Detail.vue | 51 ++- .../itempackage/itempackage.data.ts | 224 +++++++++++ .../labelManage/purchasePackage/index.vue | 67 +++- .../purchasePackage/purchasePackage.data.ts | 352 +++++++++++++----- .../purchaseBarterRecordMain.data.ts | 77 +++- .../purchaseBarterRequestMain.data.ts | 75 ++++ 7 files changed, 739 insertions(+), 112 deletions(-) diff --git a/src/api/wms/package/index.ts b/src/api/wms/package/index.ts index 6bb42be07..4315e8f91 100644 --- a/src/api/wms/package/index.ts +++ b/src/api/wms/package/index.ts @@ -159,3 +159,8 @@ export const getBalanceToPackageByIntex = async (itemCode: String,batch: String) export const getBalanceToPackageSelection = async (data: any) => { return await request.post({ url: `/wms/balance/batchPrintLabel` ,data}) } + +// 获取包装信息 +export const getPackageByBarbasic = async (relateNumber) => { + return await request.get({ url: `/wms/package/getPackageByBarbasic?relateNumber=${relateNumber}`}) +} diff --git a/src/components/Detail/src/Detail.vue b/src/components/Detail/src/Detail.vue index 46553fe3b..00cc83a23 100644 --- a/src/components/Detail/src/Detail.vue +++ b/src/components/Detail/src/Detail.vue @@ -49,6 +49,7 @@ :data="detailData" :schema="allSchemas.detailSchema" :columns="2" + :key="updateKey" /> @@ -498,6 +499,17 @@ const props = defineProps({ required: false, default: false }, + isHaveDetailTabs:{ + type: Boolean, + required: true, + default: false + }, + // 主列表数据 + detailDataProps: { + type: Object, + required: true, + default: null + } }) const allSchemas = ref(props.allSchemas) const detailAllSchemasRef = ref(props.detailAllSchemas) @@ -535,10 +547,13 @@ const tabsList = ref(JSON.parse(JSON.stringify(props.tabs ? props.tabs : ''))) if (props.isBasic == true) { if (tabsList.value && tabsList.value.length > 0) { - tabsList.value.unshift({ - label: '详情', - prop: 'Detail' - }) + if (props.isHaveDetailTabs) { + tabsList.value.unshift({ + label: '详情', + prop: 'Detail' + }) + } + } } else { if (tabsList.value && tabsList.value.length > 0) { @@ -1283,6 +1298,34 @@ watch( { deep: true } +) +watch( + () => props.detailDataProps, + (val) => { + detailData.value = val + }, + { + deep: true + } +) +watch( + () => props.allSchemas, + (val) => { + allSchemas.value =val + // if (!wsCache.get('ShowPackingNumber') && !props.isShowPackNumber) { + // if (allSchemas.value) { + // allSchemas.value.detailSchema = val.detailSchema.filter(item => item.field != 'packingNumber') + // } + // if (detailAllSchemasRules.value&&detailAllSchemasRules.value.packingNumber) { + // delete detailAllSchemasRules.value.packingNumber + // } + // } + updateKey.value++ + + }, + { + deep: true + } ) defineExpose({ openDetail, formRef ,updateList,submitUpdateList,changeTabCurrent,openForm,tableObjectRef}) // 提供 open 方法,用于打开弹窗 diff --git a/src/views/wms/basicDataManage/itemManage/itempackage/itempackage.data.ts b/src/views/wms/basicDataManage/itemManage/itempackage/itempackage.data.ts index e9004c76c..dc96e4d5a 100644 --- a/src/views/wms/basicDataManage/itemManage/itempackage/itempackage.data.ts +++ b/src/views/wms/basicDataManage/itemManage/itempackage/itempackage.data.ts @@ -4,6 +4,7 @@ import * as ItembasicApi from '@/api/wms/itembasic' import { Itembasic } from '../itembasic/itembasic.data' import * as PackageunitApi from '@/api/wms/packageunit' import { Packageunit } from '../packageunit/packageunit.data' +import { dateFormatter,dateFormatter2 } from '@/utils/formatTime' const { t } = useI18n() // 国际化 @@ -365,3 +366,226 @@ export const ItempackagingRules = reactive({ ], available: [{ required: true, message: '是否可用不能为空', trigger: 'change' }] }) +/** + * @returns {Array} 采购件标签需要基础包装信息 + */ +export const PurchasePackaging = useCrudSchemas(reactive([ + { + label: '包装号', + field: 'number', + sort: 'custom', + + }, + { + label: '看板编号', + field: 'lookNumber', + sort: 'custom', + }, + { + label: '物料代码', + field: 'itemCode', + sort: 'custom', + }, + { + label: '物料名称', + field: 'itemName', + sort: 'custom', + }, + { + label: '物料描述1', + field: 'itemDesc1', + sort: 'custom', + }, + { + label: '物料描述2', + field: 'itemDesc2', + sort: 'custom', + }, + { + label: '批次', + field: 'batch', + sort: 'custom', + }, + { + label: '生产日期', + field: 'produceDate', + sort: 'custom', + formatter: dateFormatter2, + detail: { + dateFormat: 'YYYY-MM-DD' + }, + }, + { + label: '有效期(日)', + field: 'validityDays', + sort: 'custom', + }, + { + label: '失效日期', + field: 'expireDate', + sort: 'custom', + formatter: dateFormatter2, + detail: { + dateFormat: 'YYYY-MM-DD' + }, + }, + { + label: '计量单位', + field: 'uom', + + form: { + // labelMessage: '信息提示说明!!!', + componentProps: { + disabled: true + } + } + }, + { + label: '数量', + field: 'qty', + sort: 'custom', + }, + { + label: '替代计量单位', + field: 'altUom', + sort: 'custom', + dictType: DICT_TYPE.UOM, + dictClass: 'string', + isSearch: true, + isTable: true, + table: { + width: 120 + }, + }, + { + label: '替代数量', + field: 'altQty', + sort: 'custom', + }, + { + label: '转换率', + field: 'convertRate', + sort: 'custom', + }, + { + label: '包装规格', + field: 'packUnit', + sort: 'custom', + table: { + width: 150 + }, + form: { + // labelMessage: '信息提示说明!!!', + componentProps: { + enterSearch: true, //可输入回车 + isSearchList: true, // 开启查询弹窗 + searchListPlaceholder: '请选择包装规格', // 输入框占位文本 + searchField: 'code', // 查询弹窗赋值字段 + searchTitle: '包装规格信息', // 查询弹窗标题 + searchAllSchemas: Packageunit.allSchemas, // 查询弹窗所需类 + searchPage: PackageunitApi.getPackageunitPage, // 查询弹窗所需分页方法 + searchCondition: [{ + key: 'available', + value: 'TRUE', + action: '==', + isSearch: true, + isMainValue: false + }], + verificationParams: [{ + key: 'code', + action: '==', + value: '', + isMainValue: false, + isSearch: 'true', + isFormModel: true + }], // 失去焦点校验参数 + } + } + }, + + { + label: '包装数量', + field: 'packQty', + sort: 'custom', + isSearch: false, + table: { + width: 120 + }, + form: { + component: 'InputNumber', + componentProps: { + min: 0, + precision: 6 + } + } + }, + { + label: '供应商代码', + field: 'supplierCode', + sort: 'custom', + isSearch: false, + table: { + width: 120 + }, + }, + { + label: '供应商物料代码', + field: 'supplierItemCode', + sort: 'custom', + isSearch: false, + table: { + width: 120 + }, + }, + { + label: '标签数量', + field: 'count', + sort: 'custom', + isSearch: false, + table: { + width: 120 + }, + }, + { + label: '生产线代码', + field: 'productionLineCode', + sort: 'custom', + isSearch: false, + table: { + width: 120 + }, + }, + { + label: '创建时间', + field: 'createTime', + sort: 'custom', + isForm: false, + isTable: true, + formatter: dateFormatter, + detail: { + dateFormat: 'YYYY-MM-DD HH:mm:ss' + }, + table: { + width: 180 + }, + form: { + component: 'DatePicker', + componentProps: { + style: { width: '100%' }, + type: 'datetime', + dateFormat: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'x', + } + } + }, + { + label: '创建者', + field: 'creator', + isForm: false, + isTable: true, + table: { + width: 150 + } + }, + +])) diff --git a/src/views/wms/basicDataManage/labelManage/purchasePackage/index.vue b/src/views/wms/basicDataManage/labelManage/purchasePackage/index.vue index 317fadb1f..27b812a0d 100644 --- a/src/views/wms/basicDataManage/labelManage/purchasePackage/index.vue +++ b/src/views/wms/basicDataManage/labelManage/purchasePackage/index.vue @@ -48,10 +48,23 @@ :apiCreate="PackageApi.createPackageLabel" @searchTableSuccess="searchTableSuccess" :isBusiness="false" + @onChange="onChange" /> - + + @@ -63,6 +76,7 @@ import download from '@/utils/download' import { getAccessToken } from '@/utils/auth' import { Package,PackageRules,PackageInventory,PackageRulesInventor } from './purchasePackage.data' import * as BarbasicApi from '@/api/wms/barbasic' +import {PurchasePackaging} from '@/views/wms/basicDataManage/itemManage/itempackage/itempackage.data' import * as defaultButtons from '@/utils/disposition/defaultButtons' import * as PackageApi from '@/api/wms/package' import { formatTime } from '@/utils/index' @@ -71,6 +85,7 @@ import { getJmreportBaseUrl } from '@/utils/systemParam' import { formatDate } from '@/utils/formatTime' import { usePageLoading } from '@/hooks/web/usePageLoading' import {getProductionlineitemPage} from "@/api/wms/productionlineitem"; +import Decimal from "decimal.js" // 具体文件中引入 const { loadStart, loadDone } = usePageLoading() // 采购标签 defineOptions({ name: 'PurchasePackage' }) @@ -82,6 +97,7 @@ const route = useRoute() // 路由信息 const routeName = ref() routeName.value = route.name const tableColumns = ref(Package.allSchemas.tableColumns) +const detailAllSchemas = ref(PurchasePackaging.allSchemas) /** @@ -107,6 +123,7 @@ const searchTableSuccess = (formField, searchField, val, basicFormRef, type, row setV['itemName'] = val[0]['name'] setV['itemDesc1'] = val[0]['desc1'] setV['itemDesc2'] = val[0]['desc2'] + setV['itemType'] = val[0]['type'] setV['uom'] = val[0]['uom'] setV['backNumber'] = val[0]['backNumber'] setV['colorCode'] = val[0]['colorCode'] @@ -135,6 +152,17 @@ const searchTableSuccess = (formField, searchField, val, basicFormRef, type, row } if (formField == 'asnNumber') { setV['purchaseOrderRemarks'] = val[0]['remark'] + setV['poNumber'] = val[0]['poNumber'] + setV['poLine'] = val[0]['poLine'] + setV['purchaseStdQty'] = val[0]['supplierQty'] + setV['purchaseUom'] = val[0]['supplierUom'] + setV['convertRate'] = val[0]['convertRate'] + if (val[0]['convertRate']==0 || val[0]['convertRate'] == 1) { + setV['purchaseQty'] =basicFormRef.formModel.qty + } else { + setV['purchaseQty'] = parseFloat(Decimal(basicFormRef.formModel.qty).div(Decimal(parseFloat(val[0]['convertRate']))).toNumber().toFixed(5)) + } + PackageInventory.allSchemas.formSchema.forEach(item =>{ if(item.value == ''){ if(item.field == 'purchaseOrderRemarks'){ @@ -307,8 +335,14 @@ const openForm = (type: string, row?: number) => { /** 详情操作 */ const detailRef = ref() -const openDetail = (row: any, titleName: any, titleValue: any) => { - detailRef.value.openDetail(row, titleName, titleValue,"labelBarbasic") +const detailData = ref() +const openDetail =async (row: any, titleName: any, titleValue: any) => { + detailData.value = row + //打开默认获取包装信息 + await PackageApi.getPackageByBarbasic(detailData.value.relateNumber).then((res) => { + detailDataProps.value = res + }) + detailRef.value.openDetail(detailDataProps.value, titleName, titleValue,"labelBarbasic") } /** 删除按钮操作 */ @@ -358,11 +392,9 @@ const handlePoint = async (row) => { labelType.value = 'cg' } PackageApi.batchPrintingLable((res.number)).then((resLable) =>{ - console.log(159,resLable ) // 判断是采购还是制造 if (labelType.value == 'cg') { const src = ref(BASE_URL + '/jmreport/view/922729953438072832?token=' + getAccessToken()) - console.log(159,resLable ) window.open(src.value+'&asn_number='+resLable) } else { const src = ref(BASE_URL + '/jmreport/view/922734157577715712?token=' + getAccessToken()) @@ -423,6 +455,31 @@ const searchFormClick = (searchData) => { } getList() // 刷新当前列表 } +const detailDataProps = ref({}) +const changeTabs = async (item) => { + if (item.prop == 'PackDetail') { + nextTick(async () => { + detailAllSchemas.value = PurchasePackaging.allSchemas + await PackageApi.getPackageByBarbasic(detailData.value.relateNumber).then((res) => { + detailDataProps.value = res + }) + }) + } else if(item.prop == 'Detail'){ + nextTick(async()=>{ + detailAllSchemas.value = Package.allSchemas + detailDataProps.value = detailData.value + }) + } +} +const onChange = (field, cur) => { + if (field == 'qty') { + if (basicFormRef.value.formRef.formModel.convertRate==0 || basicFormRef.value.formRef.formModel.convertRate == 1) { + basicFormRef.value.formRef.formModel['purchaseQty'] =basicFormRef.value.formRef.formModel.qty + } else { + basicFormRef.value.formRef.formModel['purchaseQty'] = parseFloat(Decimal(basicFormRef.value.formRef.formModel.qty).div(Decimal(parseFloat(basicFormRef.value.formRef.formModel.convertRate))).toNumber().toFixed(5)) + } + } +} /** 初始化 **/ onMounted(async () => { diff --git a/src/views/wms/basicDataManage/labelManage/purchasePackage/purchasePackage.data.ts b/src/views/wms/basicDataManage/labelManage/purchasePackage/purchasePackage.data.ts index 4d3b7a23c..b8c65abc3 100644 --- a/src/views/wms/basicDataManage/labelManage/purchasePackage/purchasePackage.data.ts +++ b/src/views/wms/basicDataManage/labelManage/purchasePackage/purchasePackage.data.ts @@ -1,5 +1,6 @@ import type { CrudSchema } from '@/hooks/web/useCrudSchemas' -import { dateFormatter,dateFormatter2 } from '@/utils/formatTime' +import { dateFormatter, dateFormatter2 } from '@/utils/formatTime' +import { cloneDeep } from 'lodash-es' import { Itembasic } from "@/views/wms/basicDataManage/itemManage/itembasic/itembasic.data"; import * as ItembasicApi from "@/api/wms/itembasic"; @@ -7,21 +8,31 @@ import { Dock } from "@/views/wms/basicDataManage/factoryModeling/dock/dock.data import * as DockApi from "@/api/wms/dock"; import { Supplier } from "@/views/wms/basicDataManage/supplierManage/supplier/supplier.data"; import * as SupplierApi from "@/api/wms/supplier"; -import { SupplierdeliverRecordMain } from "@/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRecordMain/supplierdeliverRecordMain.data"; +import { SupplierdeliverRecordMain, SupplierdeliverRecordDetail } from "@/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRecordMain/supplierdeliverRecordMain.data"; import * as SupplierdeliverRecordDetailApi from "@/api/wms/supplierdeliverRecordDetail"; import * as ItemPackageApi from "@/api/wms/itempackage"; -import {Itempackaging} from "@/views/wms/basicDataManage/itemManage/itempackage/itempackage.data"; -import {validatePositiveNumber} from "@/utils/validator"; +import { Itempackaging } from "@/views/wms/basicDataManage/itemManage/itempackage/itempackage.data"; +import { validatePositiveNumber } from "@/utils/validator"; import { Productionlineitem } from "@/views/wms/basicDataManage/itemManage/productionlineitem/productionlineitem.data"; -import {getProductionlineitemPage} from "@/api/wms/productionlineitem"; +import { getProductionlineitemPage } from "@/api/wms/productionlineitem"; import * as ProductionlineitemApi from "@/api/wms/productionlineitem"; import { Supplieritem } from "@/views/wms/basicDataManage/supplierManage/supplieritem/supplieritem.data"; -import {getSupplieritemPage} from "@/api/wms/supplieritem"; +import { getSupplieritemPage } from "@/api/wms/supplieritem"; import * as SupplieritemApi from "@/api/wms/supplieritem"; +console.log(44, SupplierdeliverRecordMain.allSchemas) +console.log(44, SupplierdeliverRecordDetail.allSchemas) +// const SupplierdeliverRecordMainAllSchemas = cloneDeep(SupplierdeliverRecordMain.allSchemas) +// const SupplierdeliverRecordDetailAllSchemas = cloneDeep(SupplierdeliverRecordDetail.allSchemas) +// const allSchemas = cloneDeep(SupplierdeliverRecordDetail.allSchemas) +const allSchemas = ref(cloneDeep(SupplierdeliverRecordMain.allSchemas)) +allSchemas.value.tableColumns = [ + ...SupplierdeliverRecordMain.allSchemas.tableColumns, + ...SupplierdeliverRecordDetail.allSchemas.tableMainColumns +] // 表单校验 export const PackageRules = reactive({ @@ -51,30 +62,30 @@ export const Package = useCrudSchemas(reactive([ width: 180 } }, - { - label: '标签模板', - field: 'template', - sort: 'custom', - table: { - width: 180 - } - }, - { - label: '标签状态', - field: 'status', - sort: 'custom', - isSearch: true, - dictType: DICT_TYPE.LABEL_STATUS, - dictClass: 'string', - table: { - width: 180 - } - }, + // { + // label: '标签模板', + // field: 'template', + // sort: 'custom', + // table: { + // width: 180 + // } + // }, + // { + // label: '标签状态', + // field: 'status', + // sort: 'custom', + // isSearch: true, + // dictType: DICT_TYPE.LABEL_STATUS, + // dictClass: 'string', + // table: { + // width: 180 + // } + // }, { label: '关联号', field: 'relateNumber', sort: 'custom', - isSearch:true, + isSearch: true, table: { width: 210 } @@ -110,7 +121,7 @@ export const Package = useCrudSchemas(reactive([ form: { component: 'DatePicker', componentProps: { - style: {width:'100%'}, + style: { width: '100%' }, type: 'datetime', dateFormat: 'YYYY-MM-DD HH:mm:ss', valueFormat: 'x', @@ -140,7 +151,7 @@ export const Package = useCrudSchemas(reactive([ label: '是否可用', field: 'available', sort: 'custom', - isSearch:true, + isSearch: true, isForm: false, dictType: DICT_TYPE.TRUE_FALSE, dictClass: 'string', // 默认都是字符串类型其他暂不考虑 @@ -168,12 +179,12 @@ export const Package = useCrudSchemas(reactive([ }, formatter: dateFormatter, detail: { - dateFormat : 'YYYY-MM-DD HH:mm:ss' + dateFormat: 'YYYY-MM-DD HH:mm:ss' }, form: { component: 'DatePicker', componentProps: { - style: {width:'100%'}, + style: { width: '100%' }, type: 'datetime', dateFormat: 'YYYY-MM-DD HH:mm:ss', valueFormat: 'x', @@ -206,7 +217,7 @@ export const Package = useCrudSchemas(reactive([ form: { component: 'DatePicker', componentProps: { - style: {width:'100%'}, + style: { width: '100%' }, type: 'datetime', dateFormat: 'YYYY-MM-DD HH:mm:ss', valueFormat: 'x', @@ -261,7 +272,7 @@ export const PackageInventory = useCrudSchemas(reactive([ key: 'enableBuy', value: 'TRUE', isMainValue: false - }], + }], verificationParams: [{ key: 'code', action: '==', @@ -281,7 +292,7 @@ export const PackageInventory = useCrudSchemas(reactive([ width: 150, }, form: { - componentProps:{ + componentProps: { disabled: true } }, @@ -294,7 +305,7 @@ export const PackageInventory = useCrudSchemas(reactive([ width: 150, }, form: { - componentProps:{ + componentProps: { disabled: true } }, @@ -307,7 +318,7 @@ export const PackageInventory = useCrudSchemas(reactive([ width: 150, }, form: { - componentProps:{ + componentProps: { disabled: true } }, @@ -320,7 +331,7 @@ export const PackageInventory = useCrudSchemas(reactive([ width: 150, }, form: { - componentProps:{ + componentProps: { disabled: true } }, @@ -333,11 +344,96 @@ export const PackageInventory = useCrudSchemas(reactive([ width: 150, }, form: { - componentProps:{ + componentProps: { + disabled: true + } + }, + }, + { + label: '物料类型', + field: 'itemType', + sort: 'custom', + dictType: DICT_TYPE.ITEM_TYPE, + table: { + width: 150, + }, + form: { + component: 'Select', + componentProps: { + disabled: true + } + }, + }, + { + label: '物料状态', + field: 'status', + sort: 'custom', + dictType: DICT_TYPE.ITEM_STATUS, + dictClass: 'string', + table: { + width: 120 + }, + form: { + component: 'Select', + componentProps: { + disabled: true + } + }, + }, + { + label: '受入号', + field: 'receivedNumber', + sort: 'custom', + isSearch: false, + table: { + width: 150 + }, + form: { + componentProps: { + disabled: true + } + }, + }, + { + label: '计量单位', + field: 'uom', + sort: 'custom', + dictType: DICT_TYPE.UOM, + table: { + width: 150, + }, + form: { + component: 'Select', + componentProps: { disabled: true } }, }, + { + label: '数量', + field: 'qty', + sort: 'custom', + table: { + width: 150, + }, + form: { + component: 'InputNumber', + componentProps: { + min: 0, + precision: 6 + }, + value: 0 + }, + }, + { + label: '批次', + field: 'batch', + sort: 'custom', + isSearch: true, + table: { + width: 150 + }, + }, { label: '包装规格', field: 'packUnit', @@ -379,7 +475,7 @@ export const PackageInventory = useCrudSchemas(reactive([ width: 150, }, form: { - componentProps:{ + componentProps: { disabled: true } }, @@ -387,36 +483,6 @@ export const PackageInventory = useCrudSchemas(reactive([ disabled: true } }, - { - label: '数量', - field: 'qty', - sort: 'custom', - table: { - width: 150, - }, - form: { - component: 'InputNumber', - componentProps: { - min: 0, - precision: 6 - }, - value: 0 - }, - }, - { - label: '受入号', - field: 'receivedNumber', - sort: 'custom', - isSearch: false, - table: { - width: 150 - }, - form: { - componentProps:{ - disabled: true - } - }, - }, { label: '生产线区分', field: 'productionLine', @@ -451,20 +517,18 @@ export const PackageInventory = useCrudSchemas(reactive([ } } }, + { - label: '物料状态', - field: 'status', + label: '', + field: '', sort: 'custom', - dictType: DICT_TYPE.ITEM_STATUS, - dictClass: 'string', + isSearch: false, table: { - width: 120 + width: 150 }, form: { - componentProps:{ - disabled: true - } - }, + component: 'err' + } }, { label: '供应商代码', @@ -491,10 +555,10 @@ export const PackageInventory = useCrudSchemas(reactive([ isMainValue: true }, { - key: 'available', - value: 'TRUE', - isMainValue: false - }], + key: 'available', + value: 'TRUE', + isMainValue: false + }], verificationParams: [{ key: 'supplierCode', action: '==', @@ -514,7 +578,7 @@ export const PackageInventory = useCrudSchemas(reactive([ width: 150, }, form: { - componentProps:{ + componentProps: { disabled: true } }, @@ -527,7 +591,7 @@ export const PackageInventory = useCrudSchemas(reactive([ search: { component: 'DatePicker', componentProps: { - style: {width:'100%'}, + style: { width: '100%' }, valueFormat: 'YYYY-MM-DD', type: 'daterange', disabled: false, @@ -537,7 +601,7 @@ export const PackageInventory = useCrudSchemas(reactive([ form: { component: 'DatePicker', componentProps: { - style: {width: '100%'}, + style: { width: '100%' }, type: 'date', dateFormat: 'YYYY-MM-DD', valueFormat: 'x', @@ -571,7 +635,7 @@ export const PackageInventory = useCrudSchemas(reactive([ searchListPlaceholder: '请选择发货单号', searchField: 'asnNumber', searchTitle: '发货信息', - searchAllSchemas: SupplierdeliverRecordMain.allSchemas, + searchAllSchemas: allSchemas.value, searchPage: SupplierdeliverRecordDetailApi.getSupplierdeliverRecordDetailPage, searchCondition: [ { @@ -602,6 +666,34 @@ export const PackageInventory = useCrudSchemas(reactive([ } } }, + { + label: '采购订单号', + field: 'poNumber', + sort: 'custom', + isSearch: true, + table: { + width: 150, + }, + form: { + componentProps: { + disabled: true + } + }, + }, + { + label: '订单行', + field: 'poLine', + sort: 'custom', + isSearch: true, + table: { + width: 150, + }, + form: { + componentProps: { + disabled: true + } + }, + }, { label: '采购订单备注', field: 'purchaseOrderRemarks', @@ -611,11 +703,75 @@ export const PackageInventory = useCrudSchemas(reactive([ width: 150, }, form: { - componentProps:{ + componentProps: { disabled: true } }, }, + + { + label: '采购标包数量', + field: 'supplierQty', + sort: 'custom', + table: { + width: 150, + }, + form: { + componentProps: { + disabled: true, + }, + }, + }, + { + label: '采购计量单位', + field: 'supplierUom', + sort: 'custom', + dictType: DICT_TYPE.UOM, + dictClass: 'string', + isTable: true, + isTableForm: true, + form: { + componentProps: { + disabled: true + } + }, + tableForm: { + disabled: true, + type: 'Select', + }, + table: { + width: 150 + }, + }, + { + label: '转换率', + field: 'convertRate', + form: { + component: 'InputNumber', + componentProps: { + disabled: true, + min: 0 + } + }, + hiddenInMain: true, + table: { + width: 150 + }, + isTableForm: false, + }, + { + label: '采购数量', + field: 'purchaseQty', + sort: 'custom', + table: { + width: 150, + }, + form: { + componentProps: { + disabled: true, + }, + }, + }, { label: '月台', field: 'toDockCode', @@ -650,42 +806,34 @@ export const PackageInventory = useCrudSchemas(reactive([ } }, { - label: '受入地', - field: 'receivedLocation', + label: '默认收货库区', + field: 'defaultReceivingArea', sort: 'custom', isSearch: true, table: { width: 150 }, form: { - componentProps:{ + componentProps: { disabled: true } }, }, { - label: '默认收货库区', - field: 'defaultReceivingArea', + label: '受入地', + field: 'receivedLocation', sort: 'custom', isSearch: true, table: { width: 150 }, form: { - componentProps:{ + componentProps: { disabled: true } }, }, - { - label: '批次', - field: 'batch', - sort: 'custom', - isSearch: true, - table: { - width: 150 - }, - }, + ])) //表单校验 @@ -695,7 +843,7 @@ export const PackageRulesInventor = reactive({ ], qty: [ { required: true, message: '请输入数量', trigger: 'blur' }, - { validator:validatePositiveNumber, message: '必须是一个正数', trigger: 'change'} + { validator: validatePositiveNumber, message: '必须是一个正数', trigger: 'change' } ], toDockCode: [ { required: true, message: '请选择月台代码', trigger: 'change' } diff --git a/src/views/wms/purchasereceiptManage/purchaseBarter/purchaseBarterRecord/purchaseBarterRecordMain.data.ts b/src/views/wms/purchasereceiptManage/purchaseBarter/purchaseBarterRecord/purchaseBarterRecordMain.data.ts index d26cfcc86..0d5105240 100644 --- a/src/views/wms/purchasereceiptManage/purchaseBarter/purchaseBarterRecord/purchaseBarterRecordMain.data.ts +++ b/src/views/wms/purchasereceiptManage/purchaseBarter/purchaseBarterRecord/purchaseBarterRecordMain.data.ts @@ -1,4 +1,5 @@ import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter } from '@/utils/formatTime' export const PurchaseBarterRecordMain = useCrudSchemas(reactive([ { @@ -42,7 +43,81 @@ export const PurchaseBarterRecordMain = useCrudSchemas(reactive([ field: 'supplierName', sort: 'custom', isSearch: false, - } + }, + { + label: '创建时间', + field: 'createTime', + isForm: false, + table: { + width: 180 + }, + formatter: dateFormatter, + detail: { + dateFormat: 'YYYY-MM-DD HH:mm:ss' + }, + form: { + component: 'DatePicker', + componentProps: { + style: { width: '100%' }, + type: 'datetime', + dateFormat: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'x' + } + }, + isSearch: true, + isTable:false, + search: { + component: 'DatePicker', + componentProps: { + valueFormat: 'YYYY-MM-DD HH:mm:ss', + type: 'daterange', + defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] + } + } + }, + { + label: '创建者', + field: 'creator', + table: { + width: 130 + }, + isForm: false, + isTable: false, + }, + { + label: '最后更新时间', + field: 'updateTime', + sort: 'custom', + isDetail: true, + isForm: false, + isTable: false, + formatter: dateFormatter, + detail: { + dateFormat: 'YYYY-MM-DD HH:mm:ss' + }, + table: { + width: 180 + }, + form: { + component: 'DatePicker', + componentProps: { + style: { width: '100%' }, + type: 'datetime', + dateFormat: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'x' + } + } + }, + { + label: '最后更新者', + field: 'updater', + isDetail: true, + isForm: false, + isTable: false, + table: { + width: 150 + } + }, ])) export const PurchaseBarterRecordDetail = useCrudSchemas(reactive([ diff --git a/src/views/wms/purchasereceiptManage/purchaseBarter/purchaseBarterRequest/purchaseBarterRequestMain.data.ts b/src/views/wms/purchasereceiptManage/purchaseBarter/purchaseBarterRequest/purchaseBarterRequestMain.data.ts index 209aae855..a65a0fff4 100644 --- a/src/views/wms/purchasereceiptManage/purchaseBarter/purchaseBarterRequest/purchaseBarterRequestMain.data.ts +++ b/src/views/wms/purchasereceiptManage/purchaseBarter/purchaseBarterRequest/purchaseBarterRequestMain.data.ts @@ -2,6 +2,7 @@ import type { CrudSchema } from '@/hooks/web/useCrudSchemas' import {Supplier} from "@/views/wms/basicDataManage/supplierManage/supplier/supplier.data"; import * as SupplierApi from "@/api/wms/supplier"; import * as ItembasicApi from "@/api/wms/itembasic"; +import { dateFormatter } from '@/utils/formatTime' import { Supplieritem } from "@/views/wms/basicDataManage/supplierManage/supplieritem/supplieritem.data"; @@ -74,6 +75,80 @@ export const PurchaseBarterRequestMain = useCrudSchemas(reactive([ } }, }, + { + label: '创建时间', + field: 'createTime', + isForm: false, + table: { + width: 180 + }, + formatter: dateFormatter, + detail: { + dateFormat: 'YYYY-MM-DD HH:mm:ss' + }, + form: { + component: 'DatePicker', + componentProps: { + style: { width: '100%' }, + type: 'datetime', + dateFormat: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'x' + } + }, + isSearch: true, + isTable: false, + search: { + component: 'DatePicker', + componentProps: { + valueFormat: 'YYYY-MM-DD HH:mm:ss', + type: 'daterange', + defaultTime: [new Date('1 00:00:00'), new Date('1 23:59:59')] + } + } + }, + { + label: '创建者', + field: 'creator', + table: { + width: 130 + }, + isForm: false, + isTable: false, + }, + { + label: '最后更新时间', + field: 'updateTime', + sort: 'custom', + isDetail: true, + isForm: false, + isTable: false, + formatter: dateFormatter, + detail: { + dateFormat: 'YYYY-MM-DD HH:mm:ss' + }, + table: { + width: 180 + }, + form: { + component: 'DatePicker', + componentProps: { + style: { width: '100%' }, + type: 'datetime', + dateFormat: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'x' + } + } + }, + { + label: '最后更新者', + field: 'updater', + isDetail: true, + isForm: false, + isTable: false, + table: { + width: 150 + } + }, { label: '操作', field: 'action', From 8da64d1f8c8f72b515f28b9713ab0a8b2064062c Mon Sep 17 00:00:00 2001 From: zhang_li <2235006734@qqq.com> Date: Thu, 12 Dec 2024 17:13:02 +0800 Subject: [PATCH 2/3] =?UTF-8?q?YT-1648=E6=96=B0=E5=A2=9E=E8=A6=81=E8=B4=A7?= =?UTF-8?q?=E8=AE=A1=E5=88=92=EF=BC=8C=E9=80=81=E8=BE=BE=E6=97=A5=E6=9C=9F?= =?UTF-8?q?=E6=98=BE=E7=A4=BA=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../purchasePlanMain/purchasePlanMain.data.ts | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/views/wms/purchasereceiptManage/supplierdeliver/purchasePlanMain/purchasePlanMain.data.ts b/src/views/wms/purchasereceiptManage/supplierdeliver/purchasePlanMain/purchasePlanMain.data.ts index e29e2e9c9..5ac69368d 100644 --- a/src/views/wms/purchasereceiptManage/supplierdeliver/purchasePlanMain/purchasePlanMain.data.ts +++ b/src/views/wms/purchasereceiptManage/supplierdeliver/purchasePlanMain/purchasePlanMain.data.ts @@ -202,11 +202,17 @@ export const PurchasePlanMain = useCrudSchemas( component: 'DatePicker', componentProps: { valueFormat: 'YYYY-MM-DD HH:mm:ss', - // type: 'datetimerange', type: 'daterange', defaultTime: [new Date('1 '), new Date('1 ')] } }, + form: { + component: 'DatePicker', + componentProps: { + format: 'YYYY-MM-DD', + defaultTime: [new Date('1 '), new Date('1 ')] + } + }, table: { width: 150 }, From abced8afc7a3f6d67c361624a285b2b0ea80e062 Mon Sep 17 00:00:00 2001 From: zhang_li <2235006734@qqq.com> Date: Thu, 12 Dec 2024 17:16:32 +0800 Subject: [PATCH 3/3] =?UTF-8?q?YT-1649=E6=96=B0=E5=A2=9E=E8=A6=81=E8=B4=A7?= =?UTF-8?q?=E8=AE=A1=E5=88=92=EF=BC=8C=E6=B8=85=E7=A9=BA=E9=87=87=E8=B4=AD?= =?UTF-8?q?=E8=AE=A2=E5=8D=95=E5=90=8E=E6=98=8E=E7=BB=86=E6=B2=A1=E6=9C=89?= =?UTF-8?q?=E6=B8=85=E7=A9=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../supplierdeliver/purchasePlanMain/index.vue | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/views/wms/purchasereceiptManage/supplierdeliver/purchasePlanMain/index.vue b/src/views/wms/purchasereceiptManage/supplierdeliver/purchasePlanMain/index.vue index c44e192bf..4be71a753 100644 --- a/src/views/wms/purchasereceiptManage/supplierdeliver/purchasePlanMain/index.vue +++ b/src/views/wms/purchasereceiptManage/supplierdeliver/purchasePlanMain/index.vue @@ -67,6 +67,7 @@ :isShowReduceButton="false" :isShowButton="false" @handleAddTable="handleAddTable" + @clearSearchInput="clearSearchInput" @handleDeleteTable="handleDeleteTable" @tableSelectionDelete="tableSelectionDelete" @searchTableSuccess="searchTableSuccess" @@ -984,6 +985,11 @@ const handleSelectionPublish = async ()=>{ } getList() // 刷新当前列表 } + const clearSearchInput = (field) => { + if (field == 'poNumber') { + tableData.value = [] + } + } /** 初始化 **/ onMounted(async () => {