Browse Source

采购件标签

intex_online20241216
张立 2 months ago
parent
commit
eed8204e87
  1. 5
      src/api/wms/package/index.ts
  2. 43
      src/components/Detail/src/Detail.vue
  3. 224
      src/views/wms/basicDataManage/itemManage/itempackage/itempackage.data.ts
  4. 67
      src/views/wms/basicDataManage/labelManage/purchasePackage/index.vue
  5. 340
      src/views/wms/basicDataManage/labelManage/purchasePackage/purchasePackage.data.ts
  6. 75
      src/views/wms/purchasereceiptManage/purchaseBarter/purchaseBarterRecord/purchaseBarterRecordMain.data.ts
  7. 75
      src/views/wms/purchasereceiptManage/purchaseBarter/purchaseBarterRequest/purchaseBarterRequestMain.data.ts

5
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}`})
}

43
src/components/Detail/src/Detail.vue

@ -49,6 +49,7 @@
:data="detailData"
:schema="allSchemas.detailSchema"
:columns="2"
:key="updateKey"
/>
<!-- 检验工序用到插槽 -->
<slot v-if="isBasic && !tabsExtend" :data="detailData" name="basicBottom" :key="updateKey"></slot>
@ -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,11 +547,14 @@ const tabsList = ref(JSON.parse(JSON.stringify(props.tabs ? props.tabs : '')))
if (props.isBasic == true) {
if (tabsList.value && tabsList.value.length > 0) {
if (props.isHaveDetailTabs) {
tabsList.value.unshift({
label: '详情',
prop: 'Detail'
})
}
}
} else {
if (tabsList.value && tabsList.value.length > 0) {
} else {
@ -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

224
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<CrudSchema[]>([
{
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
}
},
]))

67
src/views/wms/basicDataManage/labelManage/purchasePackage/index.vue

@ -48,10 +48,23 @@
:apiCreate="PackageApi.createPackageLabel"
@searchTableSuccess="searchTableSuccess"
:isBusiness="false"
@onChange="onChange"
/>
<!-- 详情 -->
<Detail ref="detailRef" :isBasic="true" :allSchemas="Package.allSchemas" />
<Detail ref="detailRef" :isBasic="true" :allSchemas="detailAllSchemas"
:tabs="[{
label: '包装明细',
prop: 'PackDetail'
},{
label: '明细',
prop: 'Detail'
}]"
:isHaveDetailTabs="false"
@changeTabs="changeTabs"
:detailDataProps=" detailDataProps"
/>
<!-- 导入 -->
<ImportForm ref="importFormRef" url="/wms/package/import" :importTemplateData="importTemplateData" @success="importSuccess" />
@ -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 () => {

340
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<CrudSchema[]>([
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<CrudSchema[]>([
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<CrudSchema[]>([
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<CrudSchema[]>([
},
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<CrudSchema[]>([
form: {
component: 'DatePicker',
componentProps: {
style: {width:'100%'},
style: { width: '100%' },
type: 'datetime',
dateFormat: 'YYYY-MM-DD HH:mm:ss',
valueFormat: 'x',
@ -281,7 +292,7 @@ export const PackageInventory = useCrudSchemas(reactive<CrudSchema[]>([
width: 150,
},
form: {
componentProps:{
componentProps: {
disabled: true
}
},
@ -294,7 +305,7 @@ export const PackageInventory = useCrudSchemas(reactive<CrudSchema[]>([
width: 150,
},
form: {
componentProps:{
componentProps: {
disabled: true
}
},
@ -307,7 +318,7 @@ export const PackageInventory = useCrudSchemas(reactive<CrudSchema[]>([
width: 150,
},
form: {
componentProps:{
componentProps: {
disabled: true
}
},
@ -320,7 +331,7 @@ export const PackageInventory = useCrudSchemas(reactive<CrudSchema[]>([
width: 150,
},
form: {
componentProps:{
componentProps: {
disabled: true
}
},
@ -333,60 +344,71 @@ export const PackageInventory = useCrudSchemas(reactive<CrudSchema[]>([
width: 150,
},
form: {
componentProps:{
componentProps: {
disabled: true
}
},
},
{
label: '包装规格',
field: 'packUnit',
label: '物料类型',
field: 'itemType',
sort: 'custom',
dictType: DICT_TYPE.ITEM_TYPE,
table: {
width: 150,
},
form: {
component: 'Select',
componentProps: {
enterSearch: true,
disabled: true,
isSearchList: true,
searchListPlaceholder: '请选择包装',
searchField: 'packUnit',
searchTitle: '物品包装信息',
searchAllSchemas: Itempackaging.allSchemas,
searchPage: ItemPackageApi.getItemPackagingPageByItemCode,
searchCondition: [
{
key: 'itemCode',
value: 'itemCode',
message: '请选择物料代码',
isMainValue: true
disabled: true
}
},
},
{
key: 'available',
value: 'TRUE',
isMainValue: false
}
]
}
label: '物料状态',
field: 'status',
sort: 'custom',
dictType: DICT_TYPE.ITEM_STATUS,
dictClass: 'string',
table: {
width: 120
},
form: {
component: 'Select',
componentProps: {
disabled: true
}
},
},
{
label: '包装数量',
field: 'packQty',
label: '受入号',
field: 'receivedNumber',
sort: 'custom',
isSearch: false,
table: {
width: 150,
width: 150
},
form: {
componentProps:{
componentProps: {
disabled: true
}
},
tableForm: {
},
{
label: '计量单位',
field: 'uom',
sort: 'custom',
dictType: DICT_TYPE.UOM,
table: {
width: 150,
},
form: {
component: 'Select',
componentProps: {
disabled: true
}
},
},
{
label: '数量',
field: 'qty',
@ -404,18 +426,62 @@ export const PackageInventory = useCrudSchemas(reactive<CrudSchema[]>([
},
},
{
label: '受入号',
field: 'receivedNumber',
label: '批次',
field: 'batch',
sort: 'custom',
isSearch: false,
isSearch: true,
table: {
width: 150
},
},
{
label: '包装规格',
field: 'packUnit',
sort: 'custom',
table: {
width: 150,
},
form: {
componentProps: {
enterSearch: true,
disabled: true,
isSearchList: true,
searchListPlaceholder: '请选择包装',
searchField: 'packUnit',
searchTitle: '物品包装信息',
searchAllSchemas: Itempackaging.allSchemas,
searchPage: ItemPackageApi.getItemPackagingPageByItemCode,
searchCondition: [
{
key: 'itemCode',
value: 'itemCode',
message: '请选择物料代码',
isMainValue: true
},
{
key: 'available',
value: 'TRUE',
isMainValue: false
}
]
}
}
},
{
label: '包装数量',
field: 'packQty',
sort: 'custom',
table: {
width: 150,
},
form: {
componentProps:{
componentProps: {
disabled: true
}
},
tableForm: {
disabled: true
}
},
{
label: '生产线区分',
@ -451,21 +517,19 @@ export const PackageInventory = useCrudSchemas(reactive<CrudSchema[]>([
}
}
},
{
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: '供应商代码',
field: 'supplierCode',
@ -514,7 +578,7 @@ export const PackageInventory = useCrudSchemas(reactive<CrudSchema[]>([
width: 150,
},
form: {
componentProps:{
componentProps: {
disabled: true
}
},
@ -527,7 +591,7 @@ export const PackageInventory = useCrudSchemas(reactive<CrudSchema[]>([
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<CrudSchema[]>([
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<CrudSchema[]>([
searchListPlaceholder: '请选择发货单号',
searchField: 'asnNumber',
searchTitle: '发货信息',
searchAllSchemas: SupplierdeliverRecordMain.allSchemas,
searchAllSchemas: allSchemas.value,
searchPage: SupplierdeliverRecordDetailApi.getSupplierdeliverRecordDetailPage,
searchCondition: [
{
@ -602,6 +666,34 @@ export const PackageInventory = useCrudSchemas(reactive<CrudSchema[]>([
}
}
},
{
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,10 +703,74 @@ export const PackageInventory = useCrudSchemas(reactive<CrudSchema[]>([
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: '月台',
@ -650,42 +806,34 @@ export const PackageInventory = useCrudSchemas(reactive<CrudSchema[]>([
}
},
{
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' }

75
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<CrudSchema[]>([
{
@ -42,7 +43,81 @@ export const PurchaseBarterRecordMain = useCrudSchemas(reactive<CrudSchema[]>([
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<CrudSchema[]>([

75
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<CrudSchema[]>([
}
},
},
{
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',

Loading…
Cancel
Save