From 4704553fe047a8b9340399960339c54b372d421c Mon Sep 17 00:00:00 2001 From: songguoqiang <765017469@qq.com> Date: Wed, 5 Jun 2024 15:14:51 +0800 Subject: [PATCH 01/40] =?UTF-8?q?=E5=BA=93=E4=BD=8D=E5=AE=B9=E9=87=8F?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E6=9D=A1=E4=BB=B6=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../inventoryManage/locationcapacity/locationcapacity.data.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/views/wms/inventoryManage/locationcapacity/locationcapacity.data.ts b/src/views/wms/inventoryManage/locationcapacity/locationcapacity.data.ts index 8c6945dfe..b0e43194f 100644 --- a/src/views/wms/inventoryManage/locationcapacity/locationcapacity.data.ts +++ b/src/views/wms/inventoryManage/locationcapacity/locationcapacity.data.ts @@ -20,7 +20,7 @@ export const Locationcapacity = useCrudSchemas(reactive([ label: '已用容量百分比', field: 'usedCapacity', sort: 'custom', - isSearch: true, + isSearch: false, }, { label: '可用容量百分比', From e53ca36359904c3798bf34950bb85b53c80ce248 Mon Sep 17 00:00:00 2001 From: songguoqiang <765017469@qq.com> Date: Wed, 5 Jun 2024 16:32:45 +0800 Subject: [PATCH 02/40] =?UTF-8?q?=E6=88=90=E5=93=81=E5=8F=91=E8=B4=A7?= =?UTF-8?q?=E7=AD=9B=E9=80=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../customerDeliveryForecast.data.ts | 10 +++++++++- .../deliverRecordMain/deliverRecordMain.data.ts | 6 +++--- .../deliver/deliverRequestMain/index.vue | 4 ++++ .../deliverPlanMain/deliverPlanMain.data.ts | 2 +- .../deliverplan/saleMain/saleMain.data.ts | 2 +- 5 files changed, 18 insertions(+), 6 deletions(-) diff --git a/src/views/wms/basicDataManage/customerManage/customerDeliveryForecast/customerDeliveryForecast.data.ts b/src/views/wms/basicDataManage/customerManage/customerDeliveryForecast/customerDeliveryForecast.data.ts index ef5e1682f..cda8e2e8e 100644 --- a/src/views/wms/basicDataManage/customerManage/customerDeliveryForecast/customerDeliveryForecast.data.ts +++ b/src/views/wms/basicDataManage/customerManage/customerDeliveryForecast/customerDeliveryForecast.data.ts @@ -116,7 +116,15 @@ export const CustomerDeliveryForecast = useCrudSchemas(reactive([ field: 'createTime', sort: 'custom', formatter: dateFormatter, - isForm: false + isForm: false, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + dateFormat: 'YYYY-MM-DD HH:mm:ss', + valueFormat: 'x', + } + }, }, { label: '是否可用', diff --git a/src/views/wms/deliversettlementManage/deliver/deliverRecordMain/deliverRecordMain.data.ts b/src/views/wms/deliversettlementManage/deliver/deliverRecordMain/deliverRecordMain.data.ts index 298e1bf5a..3578520b6 100644 --- a/src/views/wms/deliversettlementManage/deliver/deliverRecordMain/deliverRecordMain.data.ts +++ b/src/views/wms/deliversettlementManage/deliver/deliverRecordMain/deliverRecordMain.data.ts @@ -39,7 +39,7 @@ export const DeliverRecordMain = useCrudSchemas(reactive([ table: { width: 150 }, - isSearch: true, + isSearch: false, }, // { // label: '发货计划单号', @@ -62,7 +62,7 @@ export const DeliverRecordMain = useCrudSchemas(reactive([ field: 'status', dictType: DICT_TYPE.REQUEST_STATUS, dictClass: 'string', - isSearch: true, + isSearch: false, isTable: true, isForm: false, sort: 'custom', @@ -366,7 +366,7 @@ export const DeliverRecordMain = useCrudSchemas(reactive([ field: 'available', dictType: DICT_TYPE.TRUE_FALSE, dictClass: 'string', - isSearch: true, + isSearch: false, isTable: false, sort: 'custom', table: { diff --git a/src/views/wms/deliversettlementManage/deliver/deliverRequestMain/index.vue b/src/views/wms/deliversettlementManage/deliver/deliverRequestMain/index.vue index d75a19e9f..fb6bd2c07 100644 --- a/src/views/wms/deliversettlementManage/deliver/deliverRequestMain/index.vue +++ b/src/views/wms/deliversettlementManage/deliver/deliverRequestMain/index.vue @@ -559,6 +559,10 @@ const importSuccess = () => { // 筛选提交 const searchFormClick = (searchData) => { tableObject.params.isSearch = true + console.log('searchData',searchData.filters); + if(!searchData.filters){//重置的时候应用 + searchData.filters = [] + } let filters = [...searchData.filters] if(!filters.find(item=>item.column=='business_type')){ if ( routeName.value == 'DeliverRequestMain') { diff --git a/src/views/wms/deliversettlementManage/deliverplan/deliverPlanMain/deliverPlanMain.data.ts b/src/views/wms/deliversettlementManage/deliverplan/deliverPlanMain/deliverPlanMain.data.ts index b4239de99..ed61ebad9 100644 --- a/src/views/wms/deliversettlementManage/deliverplan/deliverPlanMain/deliverPlanMain.data.ts +++ b/src/views/wms/deliversettlementManage/deliverplan/deliverPlanMain/deliverPlanMain.data.ts @@ -256,7 +256,7 @@ export const DeliverPlanMain = useCrudSchemas(reactive([ field: 'available', dictType: DICT_TYPE.TRUE_FALSE, dictClass: 'string', - isSearch: true, + isSearch: false, isTable: false, sort: 'custom', table: { diff --git a/src/views/wms/deliversettlementManage/deliverplan/saleMain/saleMain.data.ts b/src/views/wms/deliversettlementManage/deliverplan/saleMain/saleMain.data.ts index 39362227c..2123a4199 100644 --- a/src/views/wms/deliversettlementManage/deliverplan/saleMain/saleMain.data.ts +++ b/src/views/wms/deliversettlementManage/deliverplan/saleMain/saleMain.data.ts @@ -249,7 +249,7 @@ export const SaleMain = useCrudSchemas(reactive([ field: 'available', dictType: DICT_TYPE.TRUE_FALSE, dictClass: 'string', - isSearch: true, + isSearch: false, isTable: true, sort: 'custom', table: { From b67081f905b7c3a34c4e4840cddf07a1441dbc01 Mon Sep 17 00:00:00 2001 From: yufei0306 <13417315+yufei0306@user.noreply.gitee.com> Date: Wed, 5 Jun 2024 17:19:50 +0800 Subject: [PATCH 03/40] =?UTF-8?q?=E8=A6=81=E8=B4=A7=E8=AE=A1=E5=88=92?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../issueRequestMain/issueRequestMain.data.ts | 6 ++--- .../supplierdeliverBasicForm.vue | 22 ++++++++++++------- 2 files changed, 17 insertions(+), 11 deletions(-) diff --git a/src/views/wms/issueManage/issue/issueRequestMain/issueRequestMain.data.ts b/src/views/wms/issueManage/issue/issueRequestMain/issueRequestMain.data.ts index 38407d012..07a0de8ab 100644 --- a/src/views/wms/issueManage/issue/issueRequestMain/issueRequestMain.data.ts +++ b/src/views/wms/issueManage/issue/issueRequestMain/issueRequestMain.data.ts @@ -451,7 +451,7 @@ export const IssueRequestMain = useCrudSchemas(reactive([ isDetail: false, isForm: false, table: { - width: 200, + width: 230, fixed: 'right' }, }, @@ -579,7 +579,7 @@ export const IssueRequestDetail = useCrudSchemas(reactive([ field: 'packingNumber', sort: 'custom', table: { - width: 150 + width: 180 }, isSearch: true, sortSearchDefault:4, @@ -846,7 +846,7 @@ export const IssueRequestDetail = useCrudSchemas(reactive([ field: 'itemName', sort: 'custom', table: { - width: 150 + width: 300 }, sortTableDefault:4, isTableForm: false, diff --git a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverBasicForm.vue b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverBasicForm.vue index 258460f1f..0964a5025 100644 --- a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverBasicForm.vue +++ b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/supplierdeliverBasicForm.vue @@ -165,6 +165,7 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row) => console.log("type:",type) console.log("formField:",formField) console.log(formField, searchField, val, formRef, type, row) + if (type == 'tableForm') { // 明细查询页赋值 // row[formField] = val[0][searchField] @@ -185,18 +186,23 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row) => newRow['poLine'] = item['poLine'] newRow['orderQty'] = item['orderQty'] newRow['uom'] = item['uom'] + if(tableData.value.find(item1=>item1['itemCode'] == item['itemCode']&&item1['poLine'] == item['poLine']&&item1['poNumber'] == item['poNumber'])) return + itemCodes.push(item['itemCode']) tableData.value.push(newRow) }) - //有效期 - ItembasicApi.getItembasicPage({ - code:itemCodes.join(',') - }).then((res)=>{ - res.list.forEach((item,index)=>{ - const findItem = tableData.value.find(item1=>item1['itemCode']==item['code']) - findItem['expireTime'] = item['expireTime'] + if(itemCodes.length>0){ + //有效期 + ItembasicApi.getItembasicPage({ + code:itemCodes.join(',') + }).then((res)=>{ + res.list.forEach((item,index)=>{ + const findItem = tableData.value.find(item1=>item1['itemCode']==item['code']) + findItem['expireTime'] = item['expireTime'] + }) }) - }) + } + } else { const setV = {} setV[formField] = val[0][searchField] From 5596ee712d63c28c125f635cfdda30be60f99ffe Mon Sep 17 00:00:00 2001 From: gaojs <757918719@qq.com> Date: Wed, 5 Jun 2024 17:33:36 +0800 Subject: [PATCH 04/40] =?UTF-8?q?EAM=20=E2=80=94=E2=80=94>=20=20=E7=BB=B4?= =?UTF-8?q?=E4=BF=AE=E5=B7=A5=E5=8D=95=20=E4=B8=BB=E5=AD=90=E8=81=94?= =?UTF-8?q?=E5=8A=A8=20=E5=89=8D=E5=90=8E=E7=AB=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/eam/equipmentRepairJobDetail/index.ts | 59 + src/api/eam/equipmentRepairJobMain/index.ts | 93 ++ src/utils/dict.ts | 6 +- .../basicFaultCause/basicFaultCause.data.ts | 2 +- .../eam/basicFaultType/basicFaultType.data.ts | 2 +- .../equipmentMaintenanceMain.data.ts | 2 + .../eam/equipmentMaintenanceMain/index.vue | 35 - .../equipmentRepairJobDetail.data.ts | 145 +++ .../eam/equipmentRepairJobDetail/index.vue | 244 ++++ .../EquipmentRepairJobDetail.vue | 1086 +++++++++++++++++ .../equipmentRepairJobMain.data.ts | 668 ++++++++++ .../eam/equipmentRepairJobMain/index.vue | 320 +++++ .../equipmentReportRepairRequest.data.ts | 2 +- .../equipmentReportRepairRequest/index.vue | 3 +- 14 files changed, 2627 insertions(+), 40 deletions(-) create mode 100644 src/api/eam/equipmentRepairJobDetail/index.ts create mode 100644 src/api/eam/equipmentRepairJobMain/index.ts create mode 100644 src/views/eam/equipmentRepairJobDetail/equipmentRepairJobDetail.data.ts create mode 100644 src/views/eam/equipmentRepairJobDetail/index.vue create mode 100644 src/views/eam/equipmentRepairJobMain/EquipmentRepairJobDetail.vue create mode 100644 src/views/eam/equipmentRepairJobMain/equipmentRepairJobMain.data.ts create mode 100644 src/views/eam/equipmentRepairJobMain/index.vue diff --git a/src/api/eam/equipmentRepairJobDetail/index.ts b/src/api/eam/equipmentRepairJobDetail/index.ts new file mode 100644 index 000000000..efe6bdaa8 --- /dev/null +++ b/src/api/eam/equipmentRepairJobDetail/index.ts @@ -0,0 +1,59 @@ +import request from '@/config/axios' + +export interface EquipmentRepairJobDetailVO { + id: number + number: string + masterId: number + describing: string + faultCause: string + workOut: string + maintenances: string + departmentCode: string + remark: string + siteId: string + available: string + deletionTime: Date + deleterId: byte[] + concurrencyStamp: number +} + +// 查询维修工单子列表 +export const getEquipmentRepairJobDetailPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/eam/equipment-repair-job-detail/senior', data }) + } else { + return await request.get({ url: `/eam/equipment-repair-job-detail/page`, params }) + } +} + +// 查询维修工单子详情 +export const getEquipmentRepairJobDetail = async (id: number) => { + return await request.get({ url: `/eam/equipment-repair-job-detail/get?id=` + id }) +} + +// 新增维修工单子 +export const createEquipmentRepairJobDetail = async (data: EquipmentRepairJobDetailVO) => { + return await request.post({ url: `/eam/equipment-repair-job-detail/create`, data }) +} + +// 修改维修工单子 +export const updateEquipmentRepairJobDetail = async (data: EquipmentRepairJobDetailVO) => { + return await request.put({ url: `/eam/equipment-repair-job-detail/update`, data }) +} + +// 删除维修工单子 +export const deleteEquipmentRepairJobDetail = async (id: number) => { + return await request.delete({ url: `/eam/equipment-repair-job-detail/delete?id=` + id }) +} + +// 导出维修工单子 Excel +export const exportEquipmentRepairJobDetail = async (params) => { + return await request.download({ url: `/eam/equipment-repair-job-detail/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/equipment-repair-job-detail/get-import-template' }) +} \ No newline at end of file diff --git a/src/api/eam/equipmentRepairJobMain/index.ts b/src/api/eam/equipmentRepairJobMain/index.ts new file mode 100644 index 000000000..471f98905 --- /dev/null +++ b/src/api/eam/equipmentRepairJobMain/index.ts @@ -0,0 +1,93 @@ +import request from '@/config/axios' +import {EquipmentReportRepairRequestVO} from "@/api/eam/equipmentReportRepairRequest"; + +export interface EquipmentRepairJobMainVO { + id: number + number: string + type: string + repairNumber: string + sources: string + maintenanceDesc: string + urgency: string + level: string + equipmentCode: string + shutDown: boolean + startTime: Date + endTime: Date + totalMinutes: number + verifyer: number + verifyContent: string + verifyTime: Date + maintenancer: number + maintenancePhone: string + completeResult: string + completionTime: Date + maintenanceTime: Date + repairTime: Date + repairer: number + faultType: string + status: string + autoOrder: string + autoPerform: string + autoVerify: string + directCreateRecord: string + classType: string + factoryAreaCode: string + workshopCode: string + lineCode: string + processCode: string + workstationCode: string + departmentCode: string + remark: string + siteId: string + available: string + deletionTime: Date + deleterId: byte[] + concurrencyStamp: number +} + +// 查询维修工单主列表 +export const getEquipmentRepairJobMainPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/eam/equipment-repair-job-main/senior', data }) + } else { + return await request.get({ url: `/eam/equipment-repair-job-main/page`, params }) + } +} + +// 查询维修工单主详情 +export const getEquipmentRepairJobMain = async (id: number) => { + return await request.get({ url: `/eam/equipment-repair-job-main/get?id=` + id }) +} + +// 新增维修工单主 +export const createEquipmentRepairJobMain = async (data: EquipmentRepairJobMainVO) => { + return await request.post({ url: `/eam/equipment-repair-job-main/create`, data }) +} + +// 修改维修工单主 +export const updateEquipmentRepairJobMain = async (data: EquipmentRepairJobMainVO) => { + return await request.put({ url: `/eam/equipment-repair-job-main/update`, data }) +} + +// 删除维修工单主 +export const deleteEquipmentRepairJobMain = async (id: number) => { + return await request.delete({ url: `/eam/equipment-repair-job-main/delete?id=` + id }) +} + +// 导出维修工单主 Excel +export const exportEquipmentRepairJobMain = async (params) => { + return await request.download({ url: `/eam/equipment-repair-job-main/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/equipment-repair-job-main/get-import-template' }) +} + +// 修改维修工单状态 +export const updateEquipmentRepairOrder = async (data: EquipmentRepairJobMainVO) => { + return await request.post({ url: `/eam/equipment-repair-job-main/updateOrder`, data }) +} diff --git a/src/utils/dict.ts b/src/utils/dict.ts index bee45f6c3..67b6c1bc0 100644 --- a/src/utils/dict.ts +++ b/src/utils/dict.ts @@ -356,6 +356,10 @@ export enum DICT_TYPE { MAINTENANCE_CYCLE ='maintenance_cycle', // 保养周期 EAM_ORDER_STATUS = 'eam_order_status',// 保养工单状态 EAM_PLAN_STATUS = 'eam_plan_status', // 保养计划状态 - EAM_REPAIR_STATUS = 'eam_repair_status', // 报修状态 + EAM_REPAIR_REPORT_STATUS = 'eam_repair_report_status', // 报修状态 + EAM_MAINTENANCE_SOURCES = 'eam_maintenance_sources', // 维保数据来源 + EAM_MAINTENANCE_URGENCY = 'eam_maintenance_urgency', // 维保紧急程度 + EAM_MAINTENANCE_LEVEL = 'eam_maintenance_level', // 维保维修级别 + EAM_REPAIR_STATUS = 'eam_repair_status', // 维修状态 OFF_BACK_STATUS = 'off_back_status' } diff --git a/src/views/eam/basicFaultCause/basicFaultCause.data.ts b/src/views/eam/basicFaultCause/basicFaultCause.data.ts index 3dc367434..b2861cce7 100644 --- a/src/views/eam/basicFaultCause/basicFaultCause.data.ts +++ b/src/views/eam/basicFaultCause/basicFaultCause.data.ts @@ -31,7 +31,7 @@ export const BasicFaultCause = useCrudSchemas(reactive([ }, }, { - label: '设备编码', + label: '编码', field: 'code', sort: 'custom', isSearch: true, diff --git a/src/views/eam/basicFaultType/basicFaultType.data.ts b/src/views/eam/basicFaultType/basicFaultType.data.ts index 8fe42a032..dd36093d0 100644 --- a/src/views/eam/basicFaultType/basicFaultType.data.ts +++ b/src/views/eam/basicFaultType/basicFaultType.data.ts @@ -18,7 +18,7 @@ export const BasicFaultType = useCrudSchemas(reactive([ isDetail:false, }, { - label: '设备编码', + label: '编码', field: 'code', sort: 'custom', isSearch: true, diff --git a/src/views/eam/equipmentMaintenanceMain/equipmentMaintenanceMain.data.ts b/src/views/eam/equipmentMaintenanceMain/equipmentMaintenanceMain.data.ts index cd1c845de..6f9553762 100644 --- a/src/views/eam/equipmentMaintenanceMain/equipmentMaintenanceMain.data.ts +++ b/src/views/eam/equipmentMaintenanceMain/equipmentMaintenanceMain.data.ts @@ -89,6 +89,8 @@ export const EquipmentMaintenanceMain = useCrudSchemas(reactive([ label: '故障类型枚举', field: 'faultType', sort: 'custom', + dictType: DICT_TYPE.FAILURE_REASON, + dictClass: 'string', isSearch: true, isSearch: false, }, diff --git a/src/views/eam/equipmentMaintenanceMain/index.vue b/src/views/eam/equipmentMaintenanceMain/index.vue index 4db1801b9..e4219bc6d 100644 --- a/src/views/eam/equipmentMaintenanceMain/index.vue +++ b/src/views/eam/equipmentMaintenanceMain/index.vue @@ -353,39 +353,6 @@ const handleFinish = async (row) => { //打开提交表单 finishForm2Ref.value.open('update', row); - - //let res = await EquipmentMaintenanceMainApi.getMaintenanceOrderConfig(); - //系统配置需要验证 - // if(res.remark === 'TRUE'){ - // try { - // - // - // // // 二次确认 - // // await message.delConfirm('是否完成所选中工单?'); - // // const params = ref({ - // // id: '', - // // status:'', - // // }) - // // params.value.id = row.id - // // params.value.status = '5' - // // // 发起 - // // await EquipmentMaintenanceMainApi.executeMaintenanceOrder(params.value) - // // message.success(t('工单已完成')) - // // // 刷新列表 - // // await getList() - // } catch {} - // } - // //系统配置不需要验证 - // if(res.remark === 'FALSE'){ - // try { - // // 二次确认 - // await message.delConfirm('是否完成所选中工单?'); - // - // //打开提交表单 - // finishForm2Ref.value.open('update', row); - // - // } catch {} - // } } /** 验证按钮操作 */ @@ -406,8 +373,6 @@ const handleValidate = async (row) => { await getList() }) - - } /** 启用 */ diff --git a/src/views/eam/equipmentRepairJobDetail/equipmentRepairJobDetail.data.ts b/src/views/eam/equipmentRepairJobDetail/equipmentRepairJobDetail.data.ts new file mode 100644 index 000000000..cae967cf5 --- /dev/null +++ b/src/views/eam/equipmentRepairJobDetail/equipmentRepairJobDetail.data.ts @@ -0,0 +1,145 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter } from '@/utils/formatTime' + +// 表单校验 +export const EquipmentRepairJobDetailRules = reactive({ + number: [required], + masterId: [required], + concurrencyStamp: [required], +}) + +export const EquipmentRepairJobDetail = useCrudSchemas(reactive([ + { + label: 'id', + field: 'id', + sort: 'custom', + isForm: false, + }, + { + label: '维修工单号', + field: 'number', + sort: 'custom', + isSearch: true, + }, + { + label: '主表id', + field: 'masterId', + sort: 'custom', + isSearch: true, + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '故障描述', + field: 'describing', + sort: 'custom', + isSearch: true, + }, + { + label: '故障原因关联基础数据', + field: 'faultCause', + sort: 'custom', + isSearch: true, + }, + { + label: '解决措施', + field: 'workOut', + sort: 'custom', + isSearch: true, + }, + { + label: '维修人员字符串多个', + field: 'maintenances', + sort: 'custom', + isSearch: true, + }, + { + label: '创建时间', + field: 'createTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: true, + 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')] + } + }, + isForm: false, + }, + { + label: '部门id', + field: 'departmentCode', + sort: 'custom', + isSearch: true, + }, + { + label: '备注', + field: 'remark', + sort: 'custom', + isSearch: true, + }, + { + label: '地点ID', + field: 'siteId', + sort: 'custom', + isSearch: true, + }, + { + label: '是否可用默认TRUE', + field: 'available', + sort: 'custom', + isSearch: true, + }, + { + label: '删除时间', + field: 'deletionTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: true, + 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')] + } + }, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + valueFormat: 'x' + } + }, + }, + { + label: '删除人id', + field: 'deleterId', + sort: 'custom', + isSearch: true, + }, + { + label: '并发乐观锁', + field: 'concurrencyStamp', + sort: 'custom', + isSearch: true, + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '操作', + field: 'action', + isForm: false, + table: { + width: 150, + fixed: 'right' + } + } +])) diff --git a/src/views/eam/equipmentRepairJobDetail/index.vue b/src/views/eam/equipmentRepairJobDetail/index.vue new file mode 100644 index 000000000..bdfae4458 --- /dev/null +++ b/src/views/eam/equipmentRepairJobDetail/index.vue @@ -0,0 +1,244 @@ + + + diff --git a/src/views/eam/equipmentRepairJobMain/EquipmentRepairJobDetail.vue b/src/views/eam/equipmentRepairJobMain/EquipmentRepairJobDetail.vue new file mode 100644 index 000000000..7626c0627 --- /dev/null +++ b/src/views/eam/equipmentRepairJobMain/EquipmentRepairJobDetail.vue @@ -0,0 +1,1086 @@ + + + + + diff --git a/src/views/eam/equipmentRepairJobMain/equipmentRepairJobMain.data.ts b/src/views/eam/equipmentRepairJobMain/equipmentRepairJobMain.data.ts new file mode 100644 index 000000000..4be0eadb5 --- /dev/null +++ b/src/views/eam/equipmentRepairJobMain/equipmentRepairJobMain.data.ts @@ -0,0 +1,668 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter } from '@/utils/formatTime' +import {EquipmentAccounts} from "@/views/eam/equipmentAccounts/equipmentAccounts.data"; +import * as EquipmentItemApi from "@/api/eam/equipmentAccounts"; +import {BasicFaultCause} from "@/views/eam/basicFaultCause/basicFaultCause.data"; +import * as ItemApi from "@/api/eam/basicFaultCause"; +import {getBasicFaultCausePage} from "@/api/eam/basicFaultCause"; + +// 表单校验 +export const EquipmentRepairJobMainRules = reactive({ + number: [required], + type: [required], + sources: [required], + urgency: [required], + level: [required], + equipmentCode: [required], + totalMinutes: [required], + faultType: [required], + status: [required], +}) + +export const EquipmentRepairJobMain = useCrudSchemas(reactive([ + { + label: 'id', + field: 'id', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + }, + { + label: '维修工单号', + field: 'number', + sort: 'custom', + isSearch: true, + }, + { + label: '设备类别', + field: 'type', + sort: 'custom', + dictType: DICT_TYPE.DEVICE_TYPE, + dictClass: 'string', + isSearch: true, + }, + { + label: '报修工单号', + field: 'repairNumber', + sort: 'custom', + isSearch: true, + }, + { + label: '来源字典', + field: 'sources', + sort: 'custom', + dictType: DICT_TYPE.EAM_MAINTENANCE_SOURCES, + dictClass: 'string', + isSearch: false, + }, + { + label: '维修描述', + field: 'maintenanceDesc', + sort: 'custom', + isSearch: false, + }, + { + label: '紧急程度', + field: 'urgency', + sort: 'custom', + dictType: DICT_TYPE.EAM_MAINTENANCE_URGENCY, + dictClass: 'string', + isSearch: true, + }, + { + label: '维修级别', + field: 'level', + sort: 'custom', + dictType: DICT_TYPE.EAM_MAINTENANCE_LEVEL, + dictClass: 'string', + isSearch: true, + }, + { + label: '设备编号', + field: 'equipmentCode', + sort: 'custom', + isSearch: true, + isForm: true, + form: { + componentProps: { + isSearchList: true, // 开启查询弹窗 + searchTitle: '设备信息', // 查询弹窗标题 + searchListPlaceholder: '请选择 设备编号', // 输入框占位文本 + searchAllSchemas: EquipmentAccounts.allSchemas, // 查询弹窗所需类 + searchField: 'code', // 查询弹窗赋值字段 + searchPage: EquipmentItemApi.getEquipmentAccountsPage, // 查询弹窗所需分页方法 + multiple:true, + searchCondition: [{ + key: 'status', + value: 'NORMAL', + action: '==', + isSearch: true, + isMainValue: false + }] + } + } + }, + { + label: '是否停机', + field: 'shutDown', + sort: 'custom', + dictType: DICT_TYPE.INFRA_BOOLEAN_STRING, + dictClass: 'string', + isSearch: true, + form: { + component: 'Radio' + } + }, + { + label: '维修开始时间', + field: 'startTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: 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')] + } + }, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + valueFormat: 'x' + } + }, + }, + { + label: '维修结束时间', + field: 'endTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: 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')] + } + }, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + valueFormat: 'x' + } + }, + }, + { + label: '维修时长', + field: 'totalMinutes', + sort: 'custom', + isSearch: false, + }, + { + label: '验证人', + field: 'verifyer', + sort: 'custom', + isSearch: false, + }, + { + label: '验证内容', + field: 'verifyContent', + sort: 'custom', + isSearch: false, + }, + { + label: '验证时间', + field: 'verifyTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: 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')] + } + }, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + valueFormat: 'x' + } + }, + }, + { + label: '执行人', + field: 'maintenancer', + sort: 'custom', + isSearch: false, + }, + { + label: '维修人联系电话', + field: 'maintenancePhone', + sort: 'custom', + isSearch: false, + }, + { + label: '结果', + field: 'completeResult', + sort: 'custom', + isSearch: true, + }, + { + label: '完成时间', + field: 'completionTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: 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')] + } + }, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + valueFormat: 'x' + } + }, + }, + { + label: '执行时间', + field: 'maintenanceTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: 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')] + } + }, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + valueFormat: 'x' + } + }, + }, + { + label: '报修时间', + field: 'repairTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: 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')] + } + }, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + valueFormat: 'x' + } + }, + }, + { + label: '报修人', + field: 'repairer', + sort: 'custom', + isSearch: false, + }, + { + label: '故障类型', + field: 'faultType', + dictType: DICT_TYPE.FAILURE_REASON, + dictClass: 'string', + sort: 'custom', + isSearch: true, + }, + { + label: '流程状态', + field: 'status', + sort: 'custom', + dictType: DICT_TYPE.EAM_REPAIR_STATUS, + dictClass: 'string', + isSearch: true, + }, + // { + // label: '自动接单', + // field: 'autoOrder', + // sort: 'custom', + // isSearch: true, + // }, + // { + // label: '自动执行', + // field: 'autoPerform', + // sort: 'custom', + // isSearch: true, + // }, + // { + // label: '自动验证', + // field: 'autoVerify', + // sort: 'custom', + // isSearch: true, + // }, + { + label: '直接生成记录', + field: 'directCreateRecord', + sort: 'custom', + isSearch: false, + }, + { + label: '班组类型', + field: 'classType', + sort: 'custom', + isSearch: false, + }, + // { + // label: '所属厂区编号', + // field: 'factoryAreaCode', + // sort: 'custom', + // isSearch: true, + // }, + { + label: '车间编号', + field: 'workshopCode', + sort: 'custom', + isSearch: false, + }, + // { + // label: '产线编号', + // field: 'lineCode', + // sort: 'custom', + // isSearch: true, + // }, + // { + // label: '工序编号', + // field: 'processCode', + // sort: 'custom', + // isSearch: true, + // }, + // { + // label: '工位编号', + // field: 'workstationCode', + // sort: 'custom', + // isSearch: true, + // }, + { + label: '创建时间', + field: 'createTime', + sort: 'custom', + formatter: dateFormatter, + 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')] + } + }, + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + }, + { + label: '部门id', + field: 'departmentCode', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + }, + { + label: '备注', + field: 'remark', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + }, + { + label: '地点ID', + field: 'siteId', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + }, + { + label: '是否可用默认TRUE', + field: 'available', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + }, + { + label: '删除时间', + field: 'deletionTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: false, + isTable: false, + isForm: false, + isDetail: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')] + } + }, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + valueFormat: 'x' + } + }, + }, + { + label: '删除人id', + field: 'deleterId', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + }, + { + label: '并发乐观锁', + field: 'concurrencyStamp', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '操作', + field: 'action', + isForm: false, + table: { + width: 150, + fixed: 'right' + } + } +])) + +// 表单校验 +export const EquipmentRepairJobDetailRules = reactive({ + number: [required], + masterId: [required], + concurrencyStamp: [required], +}) + +export const EquipmentRepairJobDetail = useCrudSchemas(reactive([ + { + label: 'id', + field: 'id', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + }, + { + label: '维修工单号', + field: 'number', + sort: 'custom', + isSearch: true, + form:{ + componentProps: { + disabled: true + } + } + }, + { + label: '主表id', + field: 'masterId', + sort: 'custom', + isSearch: true, + form:{ + componentProps: { + disabled: true + } + }, + }, + { + label: '故障描述', + field: 'describing', + sort: 'custom', + isSearch: true, + }, + { + label: '故障原因', + field: 'faultCause', + sort: 'custom', + isSearch: true, + form: { + componentProps: { + isSearchList: true, // 开启查询弹窗 + searchListPlaceholder: '请选择 故障原因', + searchTitle: '故障原因', // 查询弹窗标题 + searchAllSchemas: BasicFaultCause.allSchemas, // 查询弹窗所需类 + searchField: 'code', // 查询弹窗赋值字段 + searchPage: ItemApi.getBasicFaultCausePage, // 查询弹窗所需分页方法 + searchCondition: [{ + key: 'available', + value: 'TRUE', + action: '==', + isSearch: true, + isMainValue: false + }] + } + }, + }, + { + label: '解决措施', + field: 'workOut', + sort: 'custom', + isSearch: true, + }, + { + label: '维修人员字符串多个', + field: 'maintenances', + sort: 'custom', + isSearch: true, + }, + { + label: '创建时间', + field: 'createTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: false, + isTable: false, + isForm: false, + isDetail: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')] + } + }, + isForm: false, + }, + { + label: '部门id', + field: 'departmentCode', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + }, + { + label: '备注', + field: 'remark', + sort: 'custom', + isSearch: true, + }, + { + label: '地点ID', + field: 'siteId', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + }, + { + label: '是否可用默认TRUE', + field: 'available', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + }, + { + label: '删除时间', + field: 'deletionTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: false, + isTable: false, + isForm: false, + isDetail: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')] + } + }, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + valueFormat: 'x' + } + }, + }, + { + label: '删除人id', + field: 'deleterId', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + }, + { + label: '并发乐观锁', + field: 'concurrencyStamp', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, + form: { + component: 'InputNumber', + value: 0 + }, + }, + { + label: '操作', + field: 'action', + isForm: false, + table: { + width: 150, + fixed: 'right' + } + } +])) diff --git a/src/views/eam/equipmentRepairJobMain/index.vue b/src/views/eam/equipmentRepairJobMain/index.vue new file mode 100644 index 000000000..2d5d60699 --- /dev/null +++ b/src/views/eam/equipmentRepairJobMain/index.vue @@ -0,0 +1,320 @@ + + + diff --git a/src/views/eam/equipmentReportRepairRequest/equipmentReportRepairRequest.data.ts b/src/views/eam/equipmentReportRepairRequest/equipmentReportRepairRequest.data.ts index 9785ed4d6..c20a61e45 100644 --- a/src/views/eam/equipmentReportRepairRequest/equipmentReportRepairRequest.data.ts +++ b/src/views/eam/equipmentReportRepairRequest/equipmentReportRepairRequest.data.ts @@ -144,7 +144,7 @@ export const EquipmentReportRepairRequest = useCrudSchemas(reactive { }) params.value.id = id params.value.status = '5' - await EquipmentReportRepairRequestApi.updateEquipmentReportRepairOrder(params.value) + await EquipmentReportRepairRequestApi.createEquipmentWeixiuOrder(params.value) message.success(t('common.updateSuccess')) // 刷新列表 await getList() From 15213bfc9dd8b41f714a53be45cf8accf93d444c Mon Sep 17 00:00:00 2001 From: yufei0306 <13417315+yufei0306@user.noreply.gitee.com> Date: Wed, 5 Jun 2024 17:34:49 +0800 Subject: [PATCH 05/40] =?UTF-8?q?=E4=B8=8B=E6=9E=B6=E7=AD=96=E7=95=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../strategySetting/strategy/downShelfStrategy/AddForm.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/views/wms/basicDataManage/strategySetting/strategy/downShelfStrategy/AddForm.vue b/src/views/wms/basicDataManage/strategySetting/strategy/downShelfStrategy/AddForm.vue index 80baf7b2b..4b075a056 100644 --- a/src/views/wms/basicDataManage/strategySetting/strategy/downShelfStrategy/AddForm.vue +++ b/src/views/wms/basicDataManage/strategySetting/strategy/downShelfStrategy/AddForm.vue @@ -759,7 +759,7 @@ const getFormLocationgrouList = async () => { const getFormLocationList = async () => { options.warehouseList = await getLocationList() } -getFormLocationList() +getFormWarehouseList() // 选择仓库/库位/库位组/库区 const changeWarehouse = (e) => { formData.value.configuration.WarehouseCode = '' From b22a0ebac9564db70ee3186735ef952f6d93206b Mon Sep 17 00:00:00 2001 From: zhaoxuebing <1291173720@qq.com> Date: Wed, 5 Jun 2024 19:28:04 +0800 Subject: [PATCH 06/40] =?UTF-8?q?=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wms/productreceiptRequestMain/index.ts | 6 +++ .../productreceiptRequestMain/index.vue | 30 ++++++------ .../productreceiptRequestMain.data.ts | 46 +++++++++++++++++-- 3 files changed, 65 insertions(+), 17 deletions(-) diff --git a/src/api/wms/productreceiptRequestMain/index.ts b/src/api/wms/productreceiptRequestMain/index.ts index 0d337b177..d809c5efa 100644 --- a/src/api/wms/productreceiptRequestMain/index.ts +++ b/src/api/wms/productreceiptRequestMain/index.ts @@ -137,4 +137,10 @@ export const agree = (id) => { // 处理 export const handle = (id) => { return request.put({ url: '/wms/productreceipt-request-main/handle?id=' + id }) +} + + +// 创建标签 +export const productCreateLabel = async (data: ProductreceiptRequestMainVO) => { + return await request.post({ url: `/wms/productreceipt-request-main/productCreateLabel`, data }) } \ No newline at end of file diff --git a/src/views/wms/productionManage/productreceipt/productreceiptRequestMain/index.vue b/src/views/wms/productionManage/productreceipt/productreceiptRequestMain/index.vue index c7fc1330c..20c11885a 100644 --- a/src/views/wms/productionManage/productreceipt/productreceiptRequestMain/index.vue +++ b/src/views/wms/productionManage/productreceipt/productreceiptRequestMain/index.vue @@ -124,7 +124,7 @@ - + + diff --git a/src/views/home/index.vue b/src/views/home/index.vue index 57e140dcb..39f28f658 100644 --- a/src/views/home/index.vue +++ b/src/views/home/index.vue @@ -5,10 +5,10 @@ --> - + - + + + diff --git a/src/views/eam/equipmentRepairJobMain/index.vue b/src/views/eam/equipmentRepairJobMain/index.vue index 2d5d60699..dbfbfb27e 100644 --- a/src/views/eam/equipmentRepairJobMain/index.vue +++ b/src/views/eam/equipmentRepairJobMain/index.vue @@ -50,6 +50,8 @@ :isBusiness="false" /> + + { handleReceive(row.id) } else if (val == 'execute') { // 执行 handleExecute(row.id) + } else if (val == 'finish') { // 完成 + handleFinish(row) } @@ -220,6 +230,16 @@ const openDetail = (row: any, titleName: any, titleValue: any) => { detailRef.value.openDetail(row, titleName, titleValue, 'basicEquipmentRepairJobMain') } +/** 完成按钮操作 */ +const finishForm2Ref = ref() +const handleFinish = async (row) => { + // 二次确认 + await message.delConfirm('是否完成所选中工单?'); + + //打开提交表单 + finishForm2Ref.value.open('update', row); +} + /** 接单按钮操作 */ const handleReceive = async (id: number) => { try { @@ -271,6 +291,32 @@ const handleDelete = async (id: number) => { } catch {} } + + +//finishForm2 关闭按钮回传 +const getClosed2=(val)=> { + nextTick?.(() => { + getList() + }) +} + +//finishForm2 提交按钮回传 +const getData2=(val)=> { + nextTick?.(async () => { + const params = ref({ + id: '', + status: '', + }) + params.value.id = val + params.value.status = '5' + // 发起 + await EquipmentRepairJobMainApi.executeEquipmentRepairJobMain(params.value) + message.success(t('工单已完成')) + // 刷新列表 + await getList() + }) +} + /** 导出按钮操作 */ const exportLoading = ref(false) // 导出的加载中 const handleExport = async () => { From 1e4de6e43360372319b0d706fae3939d68c339c6 Mon Sep 17 00:00:00 2001 From: lidm0086 Date: Thu, 6 Jun 2024 13:26:51 +0800 Subject: [PATCH 19/40] =?UTF-8?q?=E7=AD=9B=E9=80=89=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E6=9D=A1=E4=BB=B6=20business=5Ftype=20=20=3D=20ReturnToStore?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../productionreturnRequestMain/index.vue | 25 +++++++++++++------ 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/src/views/wms/issueManage/productionreturn/productionreturnRequestMain/index.vue b/src/views/wms/issueManage/productionreturn/productionreturnRequestMain/index.vue index ec46cb9df..410cf97f0 100644 --- a/src/views/wms/issueManage/productionreturn/productionreturnRequestMain/index.vue +++ b/src/views/wms/issueManage/productionreturn/productionreturnRequestMain/index.vue @@ -89,7 +89,7 @@ @searchTableSuccess="searchTableSuccess" @submitForm="submitFormLabel" /> - + @@ -123,7 +123,7 @@ const tableColumns = ref([...ProductionreturnRequestMain.allSchemas.tableColumns const detailListTableColumns = ProductionreturnRequestDetailLabel.allSchemas const isCreateLabel = ref(false) const formLabelRef = ref() -const labelType = ref('') // 标签类别 采购还是制造等 +const labelType = ref('') // 标签类别 采购还是制造等 const { tableObject: detatableData, tableMethods: detatableMethods } =useTable({ getListApi: ProductionreturnRequestDetailApi.getProductionreturnRequestDetailPage }) @@ -199,7 +199,7 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row ) => } else { row['batch'] = '000000' } - // 修改 tableform 属性 数量最大值设置为库存余额中数量 + // 修改 tableform 属性 数量最大值设置为库存余额中数量 // TODO: tableFormColumns 修改属性目前只限于整个列 并不满足行要求 例如: 第一条数据最大10 第二条数据最大20 那么第一条数据会变成最大20限制 ProductionreturnRequestDetail.allSchemas.tableFormColumns.map(item => { if(item.field == 'qty' && val[0]['qty'] > 0) { @@ -278,7 +278,7 @@ const HeadButttondata = [ defaultButtons.defaultFreshBtn(null), // 刷新 defaultButtons.defaultFilterBtn(null), // 筛选 defaultButtons.defaultSetBtn(null), // 设置 - + ] // 头部按钮事件 @@ -492,7 +492,7 @@ const buttonTableClick = async (val, row) => { tableObject.loading = false console.log(err) }) - } else if (val == 'edit') { // 编辑 + } else if (val == 'edit') { // 编辑 openForm('update', row) } else if (val == 'delete') { // 删除 handleDelete(row.masterId) @@ -750,10 +750,19 @@ const labelPrint = async (row) => { // 筛选提交 const searchFormClick = (searchData) => { - tableObject.params = { - isSearch: true, - filters: searchData.filters + tableObject.params.isSearch = true + if(!searchData.filters){//重置的时候应用 + searchData.filters = [] + } + let filters = [...searchData.filters] + if(!filters.find(item=>item.column=='business_type')) { + filters = [...filters,{ + action:'==', + column:'business_type', + value:'ReturnToStore', + }] } + tableObject.params.filters = filters getList() // 刷新当前列表 } From 4b121c2891ee0746feb7c314f75b68c1e8fe991c Mon Sep 17 00:00:00 2001 From: gaojs <757918719@qq.com> Date: Thu, 6 Jun 2024 13:39:43 +0800 Subject: [PATCH 20/40] =?UTF-8?q?EAM=20=E2=80=94=E2=80=94>=20=20=E7=BB=B4?= =?UTF-8?q?=E4=BF=AE=E5=B7=A5=E5=8D=95=20=E5=AD=90=E8=A1=A8=20=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E7=BB=B4=E4=BF=AE=E6=8E=AA=E6=96=BD=E6=98=8E=E7=BB=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../equipmentRepairJobMain.data.ts | 12 +++++-- .../eam/equipmentRepairJobMain/index.vue | 31 ++++++++++++++++--- 2 files changed, 35 insertions(+), 8 deletions(-) diff --git a/src/views/eam/equipmentRepairJobMain/equipmentRepairJobMain.data.ts b/src/views/eam/equipmentRepairJobMain/equipmentRepairJobMain.data.ts index 2b9c97950..f516ddd2a 100644 --- a/src/views/eam/equipmentRepairJobMain/equipmentRepairJobMain.data.ts +++ b/src/views/eam/equipmentRepairJobMain/equipmentRepairJobMain.data.ts @@ -484,7 +484,10 @@ export const EquipmentRepairJobMain = useCrudSchemas(reactive([ export const EquipmentRepairJobDetailRules = reactive({ number: [required], masterId: [required], - concurrencyStamp: [required], + describing:[required], + faultCause:[required], + workOut:[required], + maintenances:[required], }) export const EquipmentRepairJobDetail = useCrudSchemas(reactive([ @@ -555,7 +558,7 @@ export const EquipmentRepairJobDetail = useCrudSchemas(reactive([ isSearch: true, }, { - label: '维修人员字符串多个', + label: '维修人员', field: 'maintenances', sort: 'custom', isSearch: true, @@ -592,7 +595,10 @@ export const EquipmentRepairJobDetail = useCrudSchemas(reactive([ label: '备注', field: 'remark', sort: 'custom', - isSearch: true, + isSearch: false, + isTable: false, + isForm: false, + isDetail:false, }, { label: '地点ID', diff --git a/src/views/eam/equipmentRepairJobMain/index.vue b/src/views/eam/equipmentRepairJobMain/index.vue index dbfbfb27e..d341b418a 100644 --- a/src/views/eam/equipmentRepairJobMain/index.vue +++ b/src/views/eam/equipmentRepairJobMain/index.vue @@ -65,6 +65,9 @@ :detailButtonIsShowAdd=statusBtn :detailButtonIsShowEdit=statusBtn :detailButtonIsShowDelete=statusBtn + @handleMainFefresh="handleMainFefresh" + @searchTableSuccessDetail="searchTableSuccessDetail" + :key="count" /> @@ -81,11 +84,6 @@ import TableHead from '@/components/TableHead/src/TableHead.vue' import ImportForm from '@/components/ImportForm/src/ImportForm.vue' import Detail from '@/views/eam/equipmentRepairJobMain/EquipmentRepairJobDetail.vue' import FinishForm2 from '@/views/eam/equipmentRepairJobMain/finishForm2.vue' -import * as EquipmentMaintenanceMainApi from "@/api/eam/equipmentMaintenanceMain"; -import { - executeEquipmentRepairJobMain, - executEquipmentRepairJobMain -} from "@/api/eam/equipmentRepairJobMain"; defineOptions({ name: 'EquipmentRepairJobMain' }) @@ -230,6 +228,29 @@ const openDetail = (row: any, titleName: any, titleValue: any) => { detailRef.value.openDetail(row, titleName, titleValue, 'basicEquipmentRepairJobMain') } +/** 页面操作 */ +let count = ref(0) +const handleMainFefresh = async()=>{ + count.value++ + getList() +} + +// 子页面查询字典页面返回 +const searchTableSuccessDetail = (formField, searchField, val, formRef ) => { + nextTick(() => { + const setV = {} + let result = ''; + for (var i = 0; i < val.length; i++) { + result += val[i].code + ','; + } + if(result.endsWith(',')){ + result = result.substring(0,result.length -1) + } + setV[formField] = result; + formRef.setValues(setV) + }) +} + /** 完成按钮操作 */ const finishForm2Ref = ref() const handleFinish = async (row) => { From 9b1615769401e68686b04c0f0045c44b3ad999a4 Mon Sep 17 00:00:00 2001 From: yufei0306 <13417315+yufei0306@user.noreply.gitee.com> Date: Thu, 6 Jun 2024 13:41:04 +0800 Subject: [PATCH 21/40] =?UTF-8?q?=E5=8C=85=E8=A3=85=E8=A7=84=E6=A0=BC?= =?UTF-8?q?=E6=A0=A1=E9=AA=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/locales/en-US.ts | 1 + src/locales/zh-CN.ts | 1 + .../supplierdeliver/supplierdeliverRequestMain/index.vue | 4 ++++ 3 files changed, 6 insertions(+) diff --git a/src/locales/en-US.ts b/src/locales/en-US.ts index 3c66794e2..acb8c0307 100644 --- a/src/locales/en-US.ts +++ b/src/locales/en-US.ts @@ -775,6 +775,7 @@ export default { 系统提示:'System Prompt', 是否为此数据生成标签:'Do you generate labels for this data?', 是否修改物料包装标包数量:'Do you want to modify the quantity of material packaging?', + 包装规格1和包装规格2不能相同:'Package specification 1 and package specification 2 must be different', 是否处理所选中数据:'Do you process the selected data?', 发货:'shipments', 标签信息:'Label information', diff --git a/src/locales/zh-CN.ts b/src/locales/zh-CN.ts index d31022a59..3d30b4673 100644 --- a/src/locales/zh-CN.ts +++ b/src/locales/zh-CN.ts @@ -775,6 +775,7 @@ export default { 系统提示:'系统提示', 是否为此数据生成标签:'是否为此数据生成标签', 是否修改物料包装标包数量:'是否修改物料包装标包数量', + 包装规格1和包装规格2不能相同:'包装规格1和包装规格2不能相同', 是否处理所选中数据:'是否处理所选中数据', 发货:'发货', 标签信息:'标签信息', diff --git a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue index bda6f6835..acf40550b 100644 --- a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue +++ b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRequestMain/index.vue @@ -793,6 +793,10 @@ const submitFormLabel = async (formType, data) => { console.log("formType==",formType) console.log("data==",data) data.subList = detatableData.tableList + if(detatableData.tableList.find(item=>item.secondPackUnit==item.packUnit)){ + message.warning(t('ts.包装规格1和包装规格2不能相同')) + return + } // 校验物料包装规格数量是否修改 let flag = false; await SupplierdeliverRequestMainApi.checkPackQty(data).then(async res => { From dafe11e16da93db249d5d15dc64abaaefe373b41 Mon Sep 17 00:00:00 2001 From: lidm0086 Date: Thu, 6 Jun 2024 13:40:53 +0800 Subject: [PATCH 22/40] =?UTF-8?q?=E7=AD=9B=E9=80=89=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E6=9D=A1=E4=BB=B6=20business=5Ftype=20=3D=20?= =?UTF-8?q?=20ReturnToHold?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../productionreturnRequestMainNo/index.vue | 22 ++++++++++++++----- 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/src/views/wms/issueManage/productionreturn/productionreturnRequestMainNo/index.vue b/src/views/wms/issueManage/productionreturn/productionreturnRequestMainNo/index.vue index 94db7444d..6d581ac4a 100644 --- a/src/views/wms/issueManage/productionreturn/productionreturnRequestMainNo/index.vue +++ b/src/views/wms/issueManage/productionreturn/productionreturnRequestMainNo/index.vue @@ -120,7 +120,7 @@ const tableColumns = ref([...ProductionreturnRequestMain.allSchemas.tableColumns const detailListTableColumns = ProductionreturnRequestDetailNoLabel.allSchemas const isCreateLabel = ref(false) const formLabelRef = ref() -const labelType = ref('') // 标签类别 采购还是制造等 +const labelType = ref('') // 标签类别 采购还是制造等 const { tableObject: detatableData, tableMethods: detatableMethods } =useTable({ getListApi: ProductionreturnRequestDetailNoApi.getProductionreturnRequestDetailPage }) @@ -254,7 +254,7 @@ const HeadButttondata = [ defaultButtons.defaultFreshBtn(null), // 刷新 defaultButtons.defaultFilterBtn(null), // 筛选 defaultButtons.defaultSetBtn(null), // 设置 - + ] // 头部按钮事件 @@ -468,7 +468,7 @@ const buttonTableClick = async (val, row) => { tableObject.loading = false console.log(err) }) - } else if (val == 'edit') { // 编辑 + } else if (val == 'edit') { // 编辑 openForm('update', row) } else if (val == 'delete') { // 删除 handleDelete(row.masterId) @@ -659,13 +659,23 @@ const importFormRef = ref() // 筛选提交 const searchFormClick = (searchData) => { - tableObject.params = { - isSearch: true, - filters: searchData.filters + tableObject.params.isSearch = true + if(!searchData.filters){//重置的时候应用 + searchData.filters = [] + } + let filters = [...searchData.filters] + if(!filters.find(item=>item.column=='business_type')) { + filters = [...filters,{ + action:'==', + column:'business_type', + value:'ReturnToHold', + }] } + tableObject.params.filters = filters getList() // 刷新当前列表 } + /** 初始化 **/ onMounted(async () => { getList() From af14a654d43341513ceec5f1c50b4bd5b1e3f6d0 Mon Sep 17 00:00:00 2001 From: yufei0306 <13417315+yufei0306@user.noreply.gitee.com> Date: Thu, 6 Jun 2024 13:42:35 +0800 Subject: [PATCH 23/40] =?UTF-8?q?=E7=94=9F=E4=BA=A7=E9=80=80=E6=96=99?= =?UTF-8?q?=E7=94=B3=E8=AF=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../productionreturnRequestMain.data.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/views/wms/issueManage/productionreturn/productionreturnRequestMain/productionreturnRequestMain.data.ts b/src/views/wms/issueManage/productionreturn/productionreturnRequestMain/productionreturnRequestMain.data.ts index 2cda5fd8b..329608349 100644 --- a/src/views/wms/issueManage/productionreturn/productionreturnRequestMain/productionreturnRequestMain.data.ts +++ b/src/views/wms/issueManage/productionreturn/productionreturnRequestMain/productionreturnRequestMain.data.ts @@ -620,7 +620,7 @@ export const ProductionreturnRequestDetail = useCrudSchemas(reactive Date: Thu, 6 Jun 2024 13:46:39 +0800 Subject: [PATCH 24/40] =?UTF-8?q?=E8=AF=B7=E5=A1=AB=E5=86=99=E5=8E=9F?= =?UTF-8?q?=E6=96=99=E5=BA=93=E4=BD=8D=EF=BC=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../productionreturnRequestMain.data.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/views/wms/issueManage/productionreturn/productionreturnRequestMain/productionreturnRequestMain.data.ts b/src/views/wms/issueManage/productionreturn/productionreturnRequestMain/productionreturnRequestMain.data.ts index 329608349..322295d62 100644 --- a/src/views/wms/issueManage/productionreturn/productionreturnRequestMain/productionreturnRequestMain.data.ts +++ b/src/views/wms/issueManage/productionreturn/productionreturnRequestMain/productionreturnRequestMain.data.ts @@ -664,7 +664,7 @@ export const ProductionreturnRequestDetail = useCrudSchemas(reactive Date: Thu, 6 Jun 2024 13:58:20 +0800 Subject: [PATCH 25/40] =?UTF-8?q?=E7=9B=98=E7=82=B9=E8=AE=A1=E5=88=92?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../countManage/count/countPlanMain/index.vue | 32 +++++++++---------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/src/views/wms/countManage/count/countPlanMain/index.vue b/src/views/wms/countManage/count/countPlanMain/index.vue index e9ef37a85..726f91745 100644 --- a/src/views/wms/countManage/count/countPlanMain/index.vue +++ b/src/views/wms/countManage/count/countPlanMain/index.vue @@ -374,14 +374,14 @@ const openForm = async (type: string, row?: number) => { ] // 重置明细数据 formRef.value.open(type, row) - getOwnerAllList() - getSupplierAllList() - getCustomerAllList() - getItembasicAllList() - getWarehouseAllList() - getAreaAllList() - getLocationgroupAllList() - getLocationAllList() + Promise.all([getOwnerAllList(), + getSupplierAllList(), + getCustomerAllList(), + getItembasicAllList(), + getWarehouseAllList(), + getAreaAllList(), + getLocationgroupAllList(), + getLocationAllList()]) } /** 详情操作 */ @@ -718,7 +718,7 @@ const allList = ref({ }) // 获取货主列表 const getOwnerAllList = async () => { - await OwnerApi.getOwnerList().then((res) => { + OwnerApi.getOwnerList().then((res) => { allList.value.ownerAllList = res.map((element) => { return { value: element.code, @@ -729,7 +729,7 @@ const getOwnerAllList = async () => { } // 获取供应商列表 const getSupplierAllList = async () => { - await SupplierApi.getSupplierList().then((res) => { + SupplierApi.getSupplierList().then((res) => { allList.value.supplierAllList = res.map((element) => { return { value: element.code, @@ -740,7 +740,7 @@ const getSupplierAllList = async () => { } // 获取供应商列表 const getCustomerAllList = async () => { - await CustomerApi.getCustomerList().then((res) => { + CustomerApi.getCustomerList().then((res) => { allList.value.customerAllList = res.map((element) => { return { value: element.code, @@ -751,7 +751,7 @@ const getCustomerAllList = async () => { } // 获取物料代码列表 const getItembasicAllList = async () => { - await ItembasicApi.getItembasicList().then((res) => { + ItembasicApi.getItembasicList().then((res) => { allList.value.itembasicAllList = res.map((element) => { return { value: element.code, @@ -762,7 +762,7 @@ const getItembasicAllList = async () => { } // 获取仓库列表 const getWarehouseAllList = async () => { - await WarehouseApi.getWarehouseList({ available: 'TRUE' }).then((res) => { + WarehouseApi.getWarehouseList({ available: 'TRUE' }).then((res) => { allList.value.warehouseAllList = res.map((element) => { return { value: element.code, @@ -773,7 +773,7 @@ const getWarehouseAllList = async () => { } // 获取库区列表 const getAreaAllList = async () => { - await AreaApi.getAreaList({ available: 'TRUE' }).then((res) => { + AreaApi.getAreaList({ available: 'TRUE' }).then((res) => { allList.value.areaAllList = res.map((element) => { return { value: element.code, @@ -784,7 +784,7 @@ const getAreaAllList = async () => { } // 获取库位组列表 const getLocationgroupAllList = async () => { - await LocationgroupApi.getLocationgroupList({ available: 'TRUE' }).then((res) => { + LocationgroupApi.getLocationgroupList({ available: 'TRUE' }).then((res) => { allList.value.locationgroupAllList = res.map((element) => { return { value: element.code, @@ -795,7 +795,7 @@ const getLocationgroupAllList = async () => { } // 获取库位列表 const getLocationAllList = async () => { - await LocationpApi.getLocationList({ available: 'TRUE' }).then((res) => { + LocationpApi.getLocationList({ available: 'TRUE' }).then((res) => { allList.value.locationAllList = res.map((element) => { return { value: element.code, From b6eb073e335b834ede5cf68588d5d26e67823e44 Mon Sep 17 00:00:00 2001 From: chenfang Date: Thu, 6 Jun 2024 14:10:15 +0800 Subject: [PATCH 26/40] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=B8=9A=E5=8A=A1?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../inventorychangeRequestMain.data.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/views/wms/moveManage/inventorychange/inventorychangeRequestMain/inventorychangeRequestMain.data.ts b/src/views/wms/moveManage/inventorychange/inventorychangeRequestMain/inventorychangeRequestMain.data.ts index b105b47c0..22b67e16e 100644 --- a/src/views/wms/moveManage/inventorychange/inventorychangeRequestMain/inventorychangeRequestMain.data.ts +++ b/src/views/wms/moveManage/inventorychange/inventorychangeRequestMain/inventorychangeRequestMain.data.ts @@ -26,7 +26,7 @@ const businessTypeQueryParams = { const requestsettingData =data?.list[0]||{} const businessTypeValue = await getBusinessTypeApi.getBusinesstypePage(businessTypeQueryParams) const businessTypeData =businessTypeValue?.list[0]||{} - console.log(businessTypeData.code); + console.log(businessTypeValue); // 获取当前操作人的部门 import { useUserStore } from '@/store/modules/user' From a624b37159a26c8729f58ce57d114f3d8a2f4664 Mon Sep 17 00:00:00 2001 From: yufei0306 <13417315+yufei0306@user.noreply.gitee.com> Date: Thu, 6 Jun 2024 16:07:28 +0800 Subject: [PATCH 27/40] =?UTF-8?q?=E4=BE=9B=E5=BA=94=E5=95=86=E5=8F=91?= =?UTF-8?q?=E7=A5=A8=E7=94=B3=E8=AF=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wms/supplierinvoiceRecordMain/index.ts | 4 +- .../wms/supplierinvoiceRequestMain/index.ts | 16 +-- src/components/Detail/src/Detail.vue | 8 +- .../supplierinvoiceRecordMain/index.vue | 52 +++++++- .../supplierinvoiceRequestMain/index.vue | 113 +++++++++++++++--- .../supplierinvoiceRequestMain.data.ts | 36 +++++- 6 files changed, 196 insertions(+), 33 deletions(-) diff --git a/src/api/wms/supplierinvoiceRecordMain/index.ts b/src/api/wms/supplierinvoiceRecordMain/index.ts index 4f04bdeb2..9ffde26ba 100644 --- a/src/api/wms/supplierinvoiceRecordMain/index.ts +++ b/src/api/wms/supplierinvoiceRecordMain/index.ts @@ -53,8 +53,8 @@ export const deleteSupplierinvoiceRecordMain = async (id: number) => { } // 导出供应商发票记录主 Excel -export const exportSupplierinvoiceRecordMain = async (params) => { - return await request.download({ url: `/wms/supplierinvoice-record-main/export-excel`, params }) +export const exportSupplierinvoiceRecordMain = async (data) => { + return await request.downloadPost({ url: `/wms/supplierinvoice-record-main/export-excel`, data }) } // 下载用户导入模板 diff --git a/src/api/wms/supplierinvoiceRequestMain/index.ts b/src/api/wms/supplierinvoiceRequestMain/index.ts index 49298715f..9dd8e60e8 100644 --- a/src/api/wms/supplierinvoiceRequestMain/index.ts +++ b/src/api/wms/supplierinvoiceRequestMain/index.ts @@ -79,8 +79,8 @@ export const appSupplierinvoiceRequestMain = async (id: number) => { return await request.post({ url: `/wms/supplierinvoice-request-main/app?id=` + id }) } // 采购--驳回供应商发货申请主 -export const rejSupplierinvoiceRequestMain = async (id: number) => { - return await request.post({ url: `/wms/supplierinvoice-request-main/rej?id=` + id }) +export const rejSupplierinvoiceRequestMain = async (data) => { + return await request.post({ url: `/wms/supplierinvoice-request-main/rej`,data }) } // 供应商--发票寄出 @@ -93,8 +93,8 @@ export const financeappSupplierinvoiceRequestMain = async (id: number) => { return await request.post({ url: `/wms/supplierinvoice-request-main/financeApp?id=` + id }) } // 财务--驳回供应商发货申请主 -export const financerejSupplierinvoiceRequestMain = async (id: number) => { - return await request.post({ url: `/wms/supplierinvoice-request-main/financeRej?id=` + id }) +export const financerejSupplierinvoiceRequestMain = async (data) => { + return await request.post({ url: `/wms/supplierinvoice-request-main/financeRej`, data }) } // 作废--供应商发货申请主 @@ -118,11 +118,11 @@ export const printSupplierRecordByMasterId = async (masterId:number) => { } // 导出供应商发票申请主 Excel -export const exportSupplierinvoiceRequestMain = async (params) => { - if(params.isSearch){ - return await request.downloadPost({ url: `/wms/supplierinvoice-request-main/export-excel-senior`, params }) +export const exportSupplierinvoiceRequestMain = async (data) => { + if(data.isSearch){ + return await request.downloadPost({ url: `/wms/supplierinvoice-request-main/export-excel-senior`, data }) }else { - return await request.download({ url: `/wms/supplierinvoice-request-main/export-excel`, params }) + return await request.downloadPost({ url: `/wms/supplierinvoice-request-main/export-excel`, data }) } } diff --git a/src/components/Detail/src/Detail.vue b/src/components/Detail/src/Detail.vue index af528c603..77ba581a2 100644 --- a/src/components/Detail/src/Detail.vue +++ b/src/components/Detail/src/Detail.vue @@ -72,8 +72,12 @@ v-model:currentPage="tableObjectRef.currentPage" v-model:sort="tableObjectRef.sort" > - + + + \ No newline at end of file diff --git a/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue b/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue index 190f3d517..025c41c68 100644 --- a/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue +++ b/src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue @@ -1,7 +1,7 @@ @@ -361,7 +361,7 @@ const buttonTableClick = async (val, row) => { } else if (val == 'delete') { // 删除 handleDelete(row.masterId) } - + } /** 添加/修改操作 */ @@ -499,10 +499,19 @@ const importSuccess = () => { // 筛选提交 const searchFormClick = (searchData) => { - tableObject.params = { - isSearch: true, - filters: searchData.filters + tableObject.params.isSearch = true + if(!searchData.filters){//重置的时候应用 + searchData.filters = [] + } + let filters = [...searchData.filters] + if(!filters.find(item=>item.column=='plan_type')){ + filters = [...filters,{ + action:'==', + column:'plan_type', + value:'predict', + }] } + tableObject.params.filters = filters getList() // 刷新当前列表 } diff --git a/src/views/wms/productionManage/productionplan/productionMain/productionMain.data.ts b/src/views/wms/productionManage/productionplan/productionMain/productionMain.data.ts index e8b547ebc..63d0981a2 100644 --- a/src/views/wms/productionManage/productionplan/productionMain/productionMain.data.ts +++ b/src/views/wms/productionManage/productionplan/productionMain/productionMain.data.ts @@ -307,7 +307,7 @@ export const ProductionMain = useCrudSchemas(reactive([ }, isForm: false, }, - + { label: '备注', field: 'remark', @@ -651,7 +651,7 @@ export const ProductionDetail = useCrudSchemas(reactive([ key: 'available', value: 'TRUE', isMainValue: false - }], + }], }, }, { @@ -833,8 +833,8 @@ export const ProductionDetail = useCrudSchemas(reactive([ field: 'available', dictType: DICT_TYPE.TRUE_FALSE, dictClass: 'string', - isSearch: true, - isTable: true, + isSearch: false, + isTable: false, sort: 'custom', table: { width: 150 @@ -852,8 +852,8 @@ export const ProductionDetail = useCrudSchemas(reactive([ type: 'Select', default: 'TRUE' }, - // isTableForm: false, - // isForm: false + isTableForm: false, + isForm: false }, { label: '单据号', @@ -914,7 +914,7 @@ export const ProductionDetail = useCrudSchemas(reactive([ isTableForm: false, isForm: false, }, - + { label: '操作', hiddenInMain:true, diff --git a/src/views/wms/productionManage/productionplan/productionMainAssemble/index.vue b/src/views/wms/productionManage/productionplan/productionMainAssemble/index.vue index cb2e711bd..4c0d3956b 100644 --- a/src/views/wms/productionManage/productionplan/productionMainAssemble/index.vue +++ b/src/views/wms/productionManage/productionplan/productionMainAssemble/index.vue @@ -74,7 +74,7 @@ /> - @@ -349,7 +349,7 @@ const buttonTableClick = async (val, row) => { } else if (val == 'delete') { // 删除 handleDelete(row.masterId) } - + } /** 添加/修改操作 */ @@ -487,10 +487,20 @@ const importSuccess = () => { // 筛选提交 const searchFormClick = (searchData) => { - tableObject.params = { - isSearch: true, - filters: searchData.filters + tableObject.params.isSearch = true + if(!searchData.filters){//重置的时候应用 + searchData.filters = [] + } + let filters = [...searchData.filters] + console.log('searchData',routeName.value); + if(!filters.find(item=>item.column=='plan_type')){ + filters = [...filters,{ + action:'==', + column:'plan_type', + value:'assemble', + }] } + tableObject.params.filters = filters getList() // 刷新当前列表 } diff --git a/src/views/wms/productionManage/productionplan/productionMainAssemble/productionMainAssemble.data.ts b/src/views/wms/productionManage/productionplan/productionMainAssemble/productionMainAssemble.data.ts index 42815a1fb..f4489f8d2 100644 --- a/src/views/wms/productionManage/productionplan/productionMainAssemble/productionMainAssemble.data.ts +++ b/src/views/wms/productionManage/productionplan/productionMainAssemble/productionMainAssemble.data.ts @@ -298,7 +298,7 @@ export const ProductionMain = useCrudSchemas(reactive([ }, isForm: false, }, - + { label: '备注', field: 'remark', @@ -641,7 +641,7 @@ export const ProductionDetail = useCrudSchemas(reactive([ key: 'available', value: 'TRUE', isMainValue: false - }], + }], }, }, { @@ -820,8 +820,8 @@ export const ProductionDetail = useCrudSchemas(reactive([ field: 'available', dictType: DICT_TYPE.TRUE_FALSE, dictClass: 'string', - isSearch: true, - isTable: true, + isSearch: false, + isTable: false, sort: 'custom', table: { width: 150 diff --git a/src/views/wms/productionManage/productionplan/productionMainAssembleSparePart/index.vue b/src/views/wms/productionManage/productionplan/productionMainAssembleSparePart/index.vue index 71a77f15a..1e078b89c 100644 --- a/src/views/wms/productionManage/productionplan/productionMainAssembleSparePart/index.vue +++ b/src/views/wms/productionManage/productionplan/productionMainAssembleSparePart/index.vue @@ -74,7 +74,7 @@ /> - @@ -349,7 +349,7 @@ const buttonTableClick = async (val, row) => { } else if (val == 'delete') { // 删除 handleDelete(row.masterId) } - + } /** 添加/修改操作 */ @@ -486,10 +486,20 @@ const importSuccess = () => { // 筛选提交 const searchFormClick = (searchData) => { - tableObject.params = { - isSearch: true, - filters: searchData.filters + tableObject.params.isSearch = true + if(!searchData.filters){//重置的时候应用 + searchData.filters = [] + } + let filters = [...searchData.filters] + console.log('searchData',routeName.value); + if(!filters.find(item=>item.column=='plan_type')){ + filters = [...filters,{ + action:'==', + column:'plan_type', + value:'assembleSparePart', + }] } + tableObject.params.filters = filters getList() // 刷新当前列表 } diff --git a/src/views/wms/productionManage/productionplan/productionMainAssembleSparePart/productionMainAssembleSparePart.data.ts b/src/views/wms/productionManage/productionplan/productionMainAssembleSparePart/productionMainAssembleSparePart.data.ts index 08b6d9f17..670e4f9f0 100644 --- a/src/views/wms/productionManage/productionplan/productionMainAssembleSparePart/productionMainAssembleSparePart.data.ts +++ b/src/views/wms/productionManage/productionplan/productionMainAssembleSparePart/productionMainAssembleSparePart.data.ts @@ -298,7 +298,7 @@ export const ProductionMain = useCrudSchemas(reactive([ isTable: false, isForm: false, }, - + { label: '备注', field: 'remark', @@ -641,7 +641,7 @@ export const ProductionDetail = useCrudSchemas(reactive([ key: 'available', value: 'TRUE', isMainValue: false - }], + }], }, }, { @@ -820,8 +820,8 @@ export const ProductionDetail = useCrudSchemas(reactive([ field: 'available', dictType: DICT_TYPE.TRUE_FALSE, dictClass: 'string', - isSearch: true, - isTable: true, + isSearch: false, + isTable: false, sort: 'custom', table: { width: 150 @@ -901,7 +901,7 @@ export const ProductionDetail = useCrudSchemas(reactive([ isTableForm: false, isForm: false, }, - + { label: '操作', hiddenInMain:true, diff --git a/src/views/wms/productionManage/productionplan/productionMainPredictSparePart/index.vue b/src/views/wms/productionManage/productionplan/productionMainPredictSparePart/index.vue index e62017597..164a58c10 100644 --- a/src/views/wms/productionManage/productionplan/productionMainPredictSparePart/index.vue +++ b/src/views/wms/productionManage/productionplan/productionMainPredictSparePart/index.vue @@ -74,7 +74,7 @@ /> - @@ -349,7 +349,7 @@ const buttonTableClick = async (val, row) => { } else if (val == 'delete') { // 删除 handleDelete(row.masterId) } - + } /** 添加/修改操作 */ @@ -487,10 +487,19 @@ const importSuccess = () => { // 筛选提交 const searchFormClick = (searchData) => { - tableObject.params = { - isSearch: true, - filters: searchData.filters + tableObject.params.isSearch = true + if(!searchData.filters){//重置的时候应用 + searchData.filters = [] + } + let filters = [...searchData.filters] + if(!filters.find(item=>item.column=='plan_type')){ + filters = [...filters,{ + action:'==', + column:'plan_type', + value:'predictSparePart', + }] } + tableObject.params.filters = filters getList() // 刷新当前列表 } diff --git a/src/views/wms/productionManage/productionplan/productionMainPredictSparePart/productionMainPredictSparePart.data.ts b/src/views/wms/productionManage/productionplan/productionMainPredictSparePart/productionMainPredictSparePart.data.ts index a8d893c0a..d5bac9614 100644 --- a/src/views/wms/productionManage/productionplan/productionMainPredictSparePart/productionMainPredictSparePart.data.ts +++ b/src/views/wms/productionManage/productionplan/productionMainPredictSparePart/productionMainPredictSparePart.data.ts @@ -195,7 +195,7 @@ export const ProductionMain = useCrudSchemas(reactive([ } } }, - + { label: '物料代码', field: 'detailItemCode', @@ -299,7 +299,7 @@ export const ProductionMain = useCrudSchemas(reactive([ }, isForm: false, }, - + { label: '备注', field: 'remark', @@ -642,7 +642,7 @@ export const ProductionDetail = useCrudSchemas(reactive([ key: 'available', value: 'TRUE', isMainValue: false - }], + }], }, }, { @@ -792,7 +792,7 @@ export const ProductionDetail = useCrudSchemas(reactive([ isTableForm: false, isForm: false, }, - + { label: '创建时间', field: 'createTime', @@ -822,8 +822,8 @@ export const ProductionDetail = useCrudSchemas(reactive([ field: 'available', dictType: DICT_TYPE.TRUE_FALSE, dictClass: 'string', - isSearch: true, - isTable: true, + isSearch: false, + isTable: false, hiddenInMain: true, sort: 'custom', table: { From a10c47429cc9341113a4d45e3d7d5990a329ccca Mon Sep 17 00:00:00 2001 From: lidm0086 Date: Thu, 6 Jun 2024 17:28:04 +0800 Subject: [PATCH 32/40] =?UTF-8?q?=E7=94=9F=E4=BA=A7=E8=AE=A1=E5=88=92?= =?UTF-8?q?=E8=87=AA=E5=88=97=E8=A1=A8=20+=20=E7=AD=9B=E9=80=89=E6=96=B9?= =?UTF-8?q?=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/wms/productionDetail/index.ts | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/api/wms/productionDetail/index.ts b/src/api/wms/productionDetail/index.ts index 313ecbba9..b9c7674af 100644 --- a/src/api/wms/productionDetail/index.ts +++ b/src/api/wms/productionDetail/index.ts @@ -18,7 +18,13 @@ export interface ProductionDetailVO { // 查询生产计划子列表 export const getProductionDetailPage = async (params) => { - return await request.get({ url: `/wms/production-detail/page`, params }) + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/wms/production-detail/senior', data }) + } else { + return await request.get({ url: `/wms/production-detail/page`, params }) + } } // 查询生产计划子详情 From 93715be67138d2a37fbe6a4c5f730813fe31d5ff Mon Sep 17 00:00:00 2001 From: chenfang Date: Thu, 6 Jun 2024 20:00:02 +0800 Subject: [PATCH 33/40] =?UTF-8?q?=E5=A4=87=E8=B4=A7=E6=A8=A1=E5=9D=97?= =?UTF-8?q?=E6=90=9C=E7=B4=A2=E6=A1=86=E5=B1=95=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../stockupMainJob/stockupMainJob.data.ts | 19 ++----------------- .../stockupMainRecord.data.ts | 5 ----- .../stockupMainRequest.data.ts | 11 +---------- 3 files changed, 3 insertions(+), 32 deletions(-) diff --git a/src/views/wms/deliversettlementManage/stockup/stockupMainJob/stockupMainJob.data.ts b/src/views/wms/deliversettlementManage/stockup/stockupMainJob/stockupMainJob.data.ts index 6946ee9f8..b5d73acc3 100644 --- a/src/views/wms/deliversettlementManage/stockup/stockupMainJob/stockupMainJob.data.ts +++ b/src/views/wms/deliversettlementManage/stockup/stockupMainJob/stockupMainJob.data.ts @@ -437,8 +437,7 @@ export const StockupDetailJob = useCrudSchemas(reactive([ label: '单据号', field: 'number', sort: 'custom', - isSearch: true, - table: { + table: { width: 150 }, hiddenInMain:true @@ -447,7 +446,6 @@ export const StockupDetailJob = useCrudSchemas(reactive([ label: '包装号', field: 'packingNumber', sort: 'custom', - isSearch: true, table: { width: 150 }, @@ -457,7 +455,6 @@ export const StockupDetailJob = useCrudSchemas(reactive([ label: '批次', field: 'batch', sort: 'custom', - isSearch: true, table: { width: 150 }, @@ -467,7 +464,6 @@ export const StockupDetailJob = useCrudSchemas(reactive([ label: '库存状态', field: 'inventoryStatus', sort: 'custom', - isSearch: true, form: { component: 'Radio' }, @@ -480,7 +476,6 @@ export const StockupDetailJob = useCrudSchemas(reactive([ label: '货主代码', field: 'ownerCode', sort: 'custom', - isSearch: true, table: { width: 120 }, @@ -490,7 +485,6 @@ export const StockupDetailJob = useCrudSchemas(reactive([ label: '器具号', field: 'containerNumber', sort: 'custom', - isSearch: true, table: { width: 120 }, @@ -501,7 +495,6 @@ export const StockupDetailJob = useCrudSchemas(reactive([ label: '物料代码', field: 'itemCode', sort: 'custom', - isSearch: true, table: { width: 150 }, @@ -510,7 +503,6 @@ export const StockupDetailJob = useCrudSchemas(reactive([ label: '物品名称', field: 'itemName', sort: 'custom', - isSearch: true, table: { width: 150 }, @@ -519,7 +511,6 @@ export const StockupDetailJob = useCrudSchemas(reactive([ label: '物品描述1', field: 'itemDesc1', sort: 'custom', - isSearch: true, table: { width: 120 }, @@ -529,7 +520,6 @@ export const StockupDetailJob = useCrudSchemas(reactive([ label: '物品描述2', field: 'itemDesc2', sort: 'custom', - isSearch: true, table: { width: 120 }, @@ -539,7 +529,6 @@ export const StockupDetailJob = useCrudSchemas(reactive([ label: '项目代码', field: 'projectCode', sort: 'custom', - isSearch: true, table: { width: 120 }, @@ -549,7 +538,6 @@ export const StockupDetailJob = useCrudSchemas(reactive([ label: '数量', field: 'qty', sort: 'custom', - isSearch: true, }, { label: '计量单位', @@ -575,7 +563,6 @@ export const StockupDetailJob = useCrudSchemas(reactive([ label: '从库位', field: 'fromLocationCode', sort: 'custom', - isSearch: true, table: { width: 120 }, @@ -584,7 +571,6 @@ export const StockupDetailJob = useCrudSchemas(reactive([ label: '到库位', field: 'toLocationCode', sort: 'custom', - isSearch: true, table: { width: 120 }, @@ -593,7 +579,6 @@ export const StockupDetailJob = useCrudSchemas(reactive([ label: '备注', field: 'remark', sort: 'custom', - isSearch: true, hiddenInMain:true, }, { @@ -601,7 +586,6 @@ export const StockupDetailJob = useCrudSchemas(reactive([ field: 'createTime', sort: 'custom', formatter: dateFormatter, - isSearch: true, hiddenInMain:true, search: { component: 'DatePicker', @@ -620,6 +604,7 @@ export const StockupDetailJob = useCrudSchemas(reactive([ label: '操作', field: 'action', isForm: false, + hiddenInMain: true, table: { width: 150, fixed: 'right' diff --git a/src/views/wms/deliversettlementManage/stockup/stockupMainRecord/stockupMainRecord.data.ts b/src/views/wms/deliversettlementManage/stockup/stockupMainRecord/stockupMainRecord.data.ts index bd725f183..063de8810 100644 --- a/src/views/wms/deliversettlementManage/stockup/stockupMainRecord/stockupMainRecord.data.ts +++ b/src/views/wms/deliversettlementManage/stockup/stockupMainRecord/stockupMainRecord.data.ts @@ -323,7 +323,6 @@ export const StockupDetailRecord = useCrudSchemas(reactive([ label: '包装号', field: 'packingNumber', sort: 'custom', - isSearch: true, table: { width: 150 }, @@ -333,7 +332,6 @@ export const StockupDetailRecord = useCrudSchemas(reactive([ label: '批次', field: 'batch', sort: 'custom', - isSearch: true, table: { width: 150 }, @@ -353,7 +351,6 @@ export const StockupDetailRecord = useCrudSchemas(reactive([ label: '物料代码', field: 'itemCode', sort: 'custom', - isSearch: true, table: { width: 150 }, @@ -362,7 +359,6 @@ export const StockupDetailRecord = useCrudSchemas(reactive([ label: '物品名称', field: 'itemName', sort: 'custom', - isSearch: true, table: { width: 150 }, @@ -556,7 +552,6 @@ export const StockupDetailRecord = useCrudSchemas(reactive([ field: 'available', dictType: DICT_TYPE.TRUE_FALSE, dictClass: 'string', - isSearch: true, isTable: true, hiddenInMain: true, sort: 'custom', diff --git a/src/views/wms/deliversettlementManage/stockup/stockupMainRequest/stockupMainRequest.data.ts b/src/views/wms/deliversettlementManage/stockup/stockupMainRequest/stockupMainRequest.data.ts index 561429701..df9f84ce6 100644 --- a/src/views/wms/deliversettlementManage/stockup/stockupMainRequest/stockupMainRequest.data.ts +++ b/src/views/wms/deliversettlementManage/stockup/stockupMainRequest/stockupMainRequest.data.ts @@ -280,6 +280,7 @@ export const StockupMainRequest = useCrudSchemas(reactive([ formatter: (_: Recordable, __: TableColumn, cellValue: number) => { return userDeptArray.find((account) => account.id == cellValue)?.name }, + isForm:false, form: { value: userDept.id, component: 'Select', @@ -495,7 +496,6 @@ export const StockupDetailRequest = useCrudSchemas(reactive([ label: '单据号', field: 'number', sort: 'custom', - isSearch: true, isForm: false, isTableForm: false, table: { @@ -593,7 +593,6 @@ export const StockupDetailRequest = useCrudSchemas(reactive([ label: '物料代码', field: 'itemCode', sort: 'custom', - isSearch: true, table: { width: 150 }, @@ -630,7 +629,6 @@ export const StockupDetailRequest = useCrudSchemas(reactive([ label: '物品名称', field: 'itemName', sort: 'custom', - isSearch: true, isTableForm: false, table: { width: 150 @@ -640,7 +638,6 @@ export const StockupDetailRequest = useCrudSchemas(reactive([ label: '物品描述1', field: 'itemDesc1', sort: 'custom', - isSearch: true, isTableForm: false, table: { width: 120 @@ -651,7 +648,6 @@ export const StockupDetailRequest = useCrudSchemas(reactive([ label: '物品描述2', field: 'itemDesc2', sort: 'custom', - isSearch: true, isTableForm: false, table: { width: 120 @@ -662,7 +658,6 @@ export const StockupDetailRequest = useCrudSchemas(reactive([ label: '项目代码', field: 'projectCode', sort: 'custom', - isSearch: true, isTableForm: false, table: { width: 120 @@ -673,7 +668,6 @@ export const StockupDetailRequest = useCrudSchemas(reactive([ label: '数量', field: 'qty', sort: 'custom', - isSearch: true, tableForm: { type: 'InputNumber', min: 1, @@ -712,7 +706,6 @@ export const StockupDetailRequest = useCrudSchemas(reactive([ label: '到库位', field: 'toLocationCode', sort: 'custom', - isSearch: true, table: { width: 120 }, @@ -759,7 +752,6 @@ export const StockupDetailRequest = useCrudSchemas(reactive([ label: '备注', field: 'remark', sort: 'custom', - isSearch: true, hiddenInMain: true }, { @@ -767,7 +759,6 @@ export const StockupDetailRequest = useCrudSchemas(reactive([ field: 'createTime', sort: 'custom', formatter: dateFormatter, - isSearch: true, table: { width: 120 }, From 09586a0844f4e7dd60cd44a7e16e78194fd96515 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=B7=BB=E7=A0=96-JAVA=5CAdministrator?= <591141169@qq.com> Date: Fri, 7 Jun 2024 08:52:11 +0800 Subject: [PATCH 34/40] =?UTF-8?q?EAM=E6=96=B0=E4=BB=A3=E7=A0=81=E4=B8=8A?= =?UTF-8?q?=E4=BC=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/eam/adjustRecordDetail/index.ts | 46 ++ src/api/eam/adjustRecordMain/index.ts | 46 ++ src/api/eam/applicationRecordDetail/index.ts | 57 +++ src/api/eam/applicationRecordMain/index.ts | 67 +++ src/api/eam/countJobDetail/index.ts | 51 +++ src/api/eam/countJobMain/index.ts | 56 +++ src/api/eam/countRecordDetail/index.ts | 51 +++ src/api/eam/countRecordMain/index.ts | 61 +++ src/api/eam/countadjustPlan/index.ts | 51 +++ src/api/eam/itemAccounts/index.ts | 63 +++ src/api/eam/itemApplyDetail/index.ts | 57 +++ src/api/eam/itemInLocation/index.ts | 50 +++ src/api/eam/itemLocationReplace/index.ts | 49 +++ src/api/eam/itemMaintenance/index.ts | 52 +++ src/api/eam/itemOrderDetail/index.ts | 65 +++ src/api/eam/itemOrderMain/index.ts | 71 ++++ src/api/eam/itemOutLocation/index.ts | 50 +++ src/api/eam/sparePartsApplyDetail/index.ts | 63 +++ src/api/eam/sparePartsApplyMain/index.ts | 65 +++ src/api/eam/transaction/index.ts | 53 +++ .../eam/adjustRecord/adjustRecord.data.ts | 189 +++++++++ src/views/eam/adjustRecord/index.vue | 322 ++++++++++++++ .../applicationRecordMain.data.ts | 329 +++++++++++++++ src/views/eam/applicationRecord/index.vue | 309 ++++++++++++++ src/views/eam/countRecord/countRecord.data.ts | 242 +++++++++++ src/views/eam/countRecord/index.vue | 339 +++++++++++++++ .../countadjustPlan/countadjustPlan.data.ts | 78 ++++ src/views/eam/countadjustPlan/index.vue | 244 +++++++++++ .../countadjustWork/countadjustWork.data.ts | 156 +++++++ src/views/eam/countadjustWork/index.vue | 306 ++++++++++++++ src/views/eam/itemAccounts/index.vue | 399 ++++++++++++++++++ .../eam/itemAccounts/itemAccounts.data.ts | 349 +++++++++++++++ src/views/eam/itemInLocation/index.vue | 224 ++++++++++ .../eam/itemInLocation/itemInLocation.data.ts | 53 +++ src/views/eam/itemLocationReplace/index.vue | 244 +++++++++++ .../itemLocationReplace.data.ts | 55 +++ src/views/eam/itemMaintenance/index.vue | 243 +++++++++++ .../itemMaintenance/itemMaintenance.data.ts | 110 +++++ src/views/eam/itemOrderMain/index.vue | 304 +++++++++++++ .../eam/itemOrderMain/itemOrderMain.data.ts | 310 ++++++++++++++ src/views/eam/itemOutLocation/index.vue | 243 +++++++++++ .../itemOutLocation/itemOutLocation.data.ts | 53 +++ .../SparePartsApply.data.ts | 290 +++++++++++++ src/views/eam/sparePartsApplyMain/index.vue | 372 ++++++++++++++++ src/views/eam/transaction/index.vue | 241 +++++++++++ src/views/eam/transaction/transaction.data.ts | 94 +++++ 46 files changed, 7222 insertions(+) create mode 100644 src/api/eam/adjustRecordDetail/index.ts create mode 100644 src/api/eam/adjustRecordMain/index.ts create mode 100644 src/api/eam/applicationRecordDetail/index.ts create mode 100644 src/api/eam/applicationRecordMain/index.ts create mode 100644 src/api/eam/countJobDetail/index.ts create mode 100644 src/api/eam/countJobMain/index.ts create mode 100644 src/api/eam/countRecordDetail/index.ts create mode 100644 src/api/eam/countRecordMain/index.ts create mode 100644 src/api/eam/countadjustPlan/index.ts create mode 100644 src/api/eam/itemAccounts/index.ts create mode 100644 src/api/eam/itemApplyDetail/index.ts create mode 100644 src/api/eam/itemInLocation/index.ts create mode 100644 src/api/eam/itemLocationReplace/index.ts create mode 100644 src/api/eam/itemMaintenance/index.ts create mode 100644 src/api/eam/itemOrderDetail/index.ts create mode 100644 src/api/eam/itemOrderMain/index.ts create mode 100644 src/api/eam/itemOutLocation/index.ts create mode 100644 src/api/eam/sparePartsApplyDetail/index.ts create mode 100644 src/api/eam/sparePartsApplyMain/index.ts create mode 100644 src/api/eam/transaction/index.ts create mode 100644 src/views/eam/adjustRecord/adjustRecord.data.ts create mode 100644 src/views/eam/adjustRecord/index.vue create mode 100644 src/views/eam/applicationRecord/applicationRecordMain.data.ts create mode 100644 src/views/eam/applicationRecord/index.vue create mode 100644 src/views/eam/countRecord/countRecord.data.ts create mode 100644 src/views/eam/countRecord/index.vue create mode 100644 src/views/eam/countadjustPlan/countadjustPlan.data.ts create mode 100644 src/views/eam/countadjustPlan/index.vue create mode 100644 src/views/eam/countadjustWork/countadjustWork.data.ts create mode 100644 src/views/eam/countadjustWork/index.vue create mode 100644 src/views/eam/itemAccounts/index.vue create mode 100644 src/views/eam/itemAccounts/itemAccounts.data.ts create mode 100644 src/views/eam/itemInLocation/index.vue create mode 100644 src/views/eam/itemInLocation/itemInLocation.data.ts create mode 100644 src/views/eam/itemLocationReplace/index.vue create mode 100644 src/views/eam/itemLocationReplace/itemLocationReplace.data.ts create mode 100644 src/views/eam/itemMaintenance/index.vue create mode 100644 src/views/eam/itemMaintenance/itemMaintenance.data.ts create mode 100644 src/views/eam/itemOrderMain/index.vue create mode 100644 src/views/eam/itemOrderMain/itemOrderMain.data.ts create mode 100644 src/views/eam/itemOutLocation/index.vue create mode 100644 src/views/eam/itemOutLocation/itemOutLocation.data.ts create mode 100644 src/views/eam/sparePartsApplyMain/SparePartsApply.data.ts create mode 100644 src/views/eam/sparePartsApplyMain/index.vue create mode 100644 src/views/eam/transaction/index.vue create mode 100644 src/views/eam/transaction/transaction.data.ts diff --git a/src/api/eam/adjustRecordDetail/index.ts b/src/api/eam/adjustRecordDetail/index.ts new file mode 100644 index 000000000..d8f18cb8b --- /dev/null +++ b/src/api/eam/adjustRecordDetail/index.ts @@ -0,0 +1,46 @@ +import request from '@/config/axios' + +export interface AdjustRecordDetailVO { + number: string + planNumber: string + requestNumber: string + requestTime: Date + jobNumber: string + recordNumber: string +} + +// 查询备件盘点调整记录主列表 +export const getAdjustRecordDetailPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/eam/adjustRecordDetail/senior', data }) + } else { + return await request.get({ url: `/eam/adjustRecordDetail/page`, params }) + } +} + +// 查询备件盘点调整记录主详情 +export const getAdjustRecordDetail = async (id: number) => { + return await request.get({ url: `/eam/adjustRecordDetail/get?id=` + id }) +} + +// 新增备件盘点调整记录主 +export const createAdjustRecordDetail = async (data: AdjustRecordDetailVO) => { + return await request.post({ url: `/eam/adjustRecordDetail/create`, data }) +} + +// 修改备件盘点调整记录主 +export const updateAdjustRecordDetail = async (data: AdjustRecordDetailVO) => { + return await request.put({ url: `/eam/adjustRecordDetail/update`, data }) +} + +// 删除备件盘点调整记录主 +export const deleteAdjustRecordDetail = async (id: number) => { + return await request.delete({ url: `/eam/adjustRecordDetail/delete?id=` + id }) +} + +// 导出备件盘点调整记录主 Excel +export const exportAdjustRecordDetail = async (params) => { + return await request.download({ url: `/eam/adjustRecordDetail/export-excel`, params }) +} diff --git a/src/api/eam/adjustRecordMain/index.ts b/src/api/eam/adjustRecordMain/index.ts new file mode 100644 index 000000000..9eb4297b1 --- /dev/null +++ b/src/api/eam/adjustRecordMain/index.ts @@ -0,0 +1,46 @@ +import request from '@/config/axios' + +export interface AdjustRecordMainVO { + number: string + planNumber: string + requestNumber: string + requestTime: Date + jobNumber: string + recordNumber: string +} + +// 查询备件盘点调整记录主列表 +export const getAdjustRecordMainPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/eam/adjustRecordMain/senior', data }) + } else { + return await request.get({ url: `/eam/adjustRecordMain/page`, params }) + } +} + +// 查询备件盘点调整记录主详情 +export const getAdjustRecordMain = async (id: number) => { + return await request.get({ url: `/eam/adjustRecordMain/get?id=` + id }) +} + +// 新增备件盘点调整记录主 +export const createAdjustRecordMain = async (data: AdjustRecordMainVO) => { + return await request.post({ url: `/eam/adjustRecordMain/create`, data }) +} + +// 修改备件盘点调整记录主 +export const updateAdjustRecordMain = async (data: AdjustRecordMainVO) => { + return await request.put({ url: `/eam/adjustRecordMain/update`, data }) +} + +// 删除备件盘点调整记录主 +export const deleteAdjustRecordMain = async (id: number) => { + return await request.delete({ url: `/eam/adjustRecordMain/delete?id=` + id }) +} + +// 导出备件盘点调整记录主 Excel +export const exportAdjustRecordMain = async (params) => { + return await request.download({ url: `/eam/adjustRecordMain/export-excel`, params }) +} diff --git a/src/api/eam/applicationRecordDetail/index.ts b/src/api/eam/applicationRecordDetail/index.ts new file mode 100644 index 000000000..9a45b466a --- /dev/null +++ b/src/api/eam/applicationRecordDetail/index.ts @@ -0,0 +1,57 @@ +import request from '@/config/axios' + +export interface ItemApplyDetailVO { + number : string + name : string + type : string + applyId : number + applyDeptId : number + approveId : number + approveTime : Date + outId : number + outTime : Date + siteId : string + available : string + concurrencyStamp : number +} + +// 查询备件申领记录主列表 +export const getApplicationRecordDetailPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = { ...params } + return await request.post({ url: '/eam/item-apply-request-detail/senior', data }) + } else { + return await request.get({ url: `/eam/item-apply-request-detail/page`, params }) + } +} + +// 查询备件申领记录主详情 +export const getApplicationRecordDetail = async (id : number) => { + return await request.get({ url: `/eam/item-apply-request-detail/get?id=` + id }) +} + +// 新增备件申领记录主 +export const createApplicationRecordDetail = async (data : ItemApplyDetailVO) => { + return await request.post({ url: `/eam/item-apply-request-detail/create`, data }) +} + +// 修改备件申领记录主 +export const updateApplicationRecordDetail = async (data : ItemApplyDetailVO) => { + return await request.put({ url: `/eam/item-apply-request-detail/update`, data }) +} + +// 删除备件申领记录主 +export const deleteApplicationRecordDetail = async (id : number) => { + return await request.delete({ url: `/eam/item-apply-request-detail/delete?id=` + id }) +} + +// 导出备件申领记录主 Excel +export const exportApplicationRecordDetail = async (params) => { + return await request.download({ url: `/eam/item-apply-request-detail/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/item-apply-request-detail/get-import-template' }) +} diff --git a/src/api/eam/applicationRecordMain/index.ts b/src/api/eam/applicationRecordMain/index.ts new file mode 100644 index 000000000..207b15a2e --- /dev/null +++ b/src/api/eam/applicationRecordMain/index.ts @@ -0,0 +1,67 @@ +import request from '@/config/axios' + +export interface ItemApplyMainVO { + number: string + name: string + type: string + applyId: number + applyDeptId: number + approveId: number + approveTime: Date + outId: number + outTime: Date + siteId: string + available: string + concurrencyStamp: number +} + +// 查询备件申领记录主列表 +export const getApplicationRecordMainPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/eam/item-apply-request-main/senior', data }) + } else { + return await request.get({ url: `/eam/item-apply-request-main/page`, params }) + } +} + +// 查询备件申领记录主详情 +export const getApplicationRecordMain = async (id: number) => { + return await request.get({ url: `/eam/item-apply-request-main/get?id=` + id }) +} + +// 新增备件申领记录主 +export const createApplicationRecordMain = async (data: ItemApplyMainVO) => { + return await request.post({ url: `/eam/item-apply-request-main/create`, data }) +} + +// 修改备件申领记录主 +export const updateApplicationRecordMain = async (data: ItemApplyMainVO) => { + return await request.put({ url: `/eam/item-apply-request-main/update`, data }) +} + +// 删除备件申领记录主 +export const deleteApplicationRecordMain = async (id: number) => { + return await request.delete({ url: `/eam/item-apply-request-main/delete?id=` + id }) +} + +// 审批通过备件申领记录主 +export const agreeApplicationRecordMain = async (id: number) => { + return await request.get({ url: `/eam/item-apply-request-main/agree?id=` + id }) +} + +// 审批驳回备件申领记录主 +export const disAgreeApplicationRecordMain = async (id: number) => { + return await request.get({ url: `/eam/item-apply-request-main/disAgree?id=` + id }) +} + +// 导出备件申领记录主 Excel +export const exportApplicationRecordMain = async (params) => { + return await request.download({ url: `/eam/item-apply-request-main/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/item-apply-request-main/get-import-template' }) +} diff --git a/src/api/eam/countJobDetail/index.ts b/src/api/eam/countJobDetail/index.ts new file mode 100644 index 000000000..5f06e894f --- /dev/null +++ b/src/api/eam/countJobDetail/index.ts @@ -0,0 +1,51 @@ +import request from '@/config/axios' + +export interface CountJobDetailVO { + id : number + number : string + name : string + classification : string + isInAccount : string + status : string +} + +// 查询备件盘点计划列表 +export const getCountJobDetailPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = { ...params } + return await request.post({ url: '/eam/countJobDetail/senior', data }) + } else { + return await request.get({ url: `/eam/countJobDetail/page`, params }) + } +} + +// 查询备件盘点计划详情 +export const getCountJobDetail = async (id : number) => { + return await request.get({ url: `/eam/countJobDetail/get?id=` + id }) +} + +// 新增备件盘点计划 +export const createCountJobDetail = async (data : CountJobDetailVO) => { + return await request.post({ url: `/eam/countJobDetail/create`, data }) +} + +// 修改备件盘点计划 +export const updateCountJobDetail = async (data : CountJobDetailVO) => { + return await request.put({ url: `/eam/countJobDetail/update`, data }) +} + +// 删除备件盘点计划 +export const deleteCountJobDetail = async (id : number) => { + return await request.delete({ url: `/eam/countJobDetail/delete?id=` + id }) +} + +// 导出备件盘点计划 Excel +export const exportCountJobDetail = async (params) => { + return await request.download({ url: `/eam/countJobDetail/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/countJobDetail/get-import-template' }) +} diff --git a/src/api/eam/countJobMain/index.ts b/src/api/eam/countJobMain/index.ts new file mode 100644 index 000000000..2ead754e0 --- /dev/null +++ b/src/api/eam/countJobMain/index.ts @@ -0,0 +1,56 @@ +import request from '@/config/axios' + +export interface CountJobMainVO { + id : number + number : string + name : string + classification : string + isInAccount : string + status : string +} + +// 查询备件盘点计划列表 +export const getCountJobMainPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = { ...params } + return await request.post({ url: '/eam/countJobMain/senior', data }) + } else { + return await request.get({ url: `/eam/countJobMain/page`, params }) + } +} + +// 查询备件盘点计划详情 +export const getCountJobMain = async (id : number) => { + return await request.get({ url: `/eam/countJobMain/get?id=` + id }) +} + +// 新增备件盘点计划 +export const createCountJobMain = async (data : CountJobMainVO) => { + return await request.post({ url: `/eam/countJobMain/create`, data }) +} + +// 修改备件盘点计划 +export const updateCountJobMain = async (data : CountJobMainVO) => { + return await request.put({ url: `/eam/countJobMain/update`, data }) +} + +// 删除备件盘点计划 +export const deleteCountJobMain = async (id : number) => { + return await request.delete({ url: `/eam/countJobMain/delete?id=` + id }) +} + +// 导出备件盘点计划 Excel +export const handleMainExport = async (id : number) => { + return await request.download({ url: `/eam/countJobMain/handleMainExport?id=` + id }) +} + +// 导出备件盘点计划 Excel +export const exportCountJobMain = async (params) => { + return await request.download({ url: `/eam/countJobMain/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/countJobMain/get-import-template' }) +} diff --git a/src/api/eam/countRecordDetail/index.ts b/src/api/eam/countRecordDetail/index.ts new file mode 100644 index 000000000..0387608c3 --- /dev/null +++ b/src/api/eam/countRecordDetail/index.ts @@ -0,0 +1,51 @@ +import request from '@/config/axios' + +export interface CountRecordDetailVO { + id : number + number : string + name : string + classification : string + isInAccount : string + status : string +} + +// 查询备件盘点计划列表 +export const getCountRecordDetailPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = { ...params } + return await request.post({ url: '/eam/countRecordDetail/senior', data }) + } else { + return await request.get({ url: `/eam/countRecordDetail/page`, params }) + } +} + +// 查询备件盘点计划详情 +export const getCountRecordDetail = async (id : number) => { + return await request.get({ url: `/eam/countRecordDetail/get?id=` + id }) +} + +// 新增备件盘点计划 +export const createCountRecordDetail = async (data : CountRecordDetailVO) => { + return await request.post({ url: `/eam/countRecordDetail/create`, data }) +} + +// 修改备件盘点计划 +export const updateCountRecordDetail = async (data : CountRecordDetailVO) => { + return await request.put({ url: `/eam/countRecordDetail/update`, data }) +} + +// 删除备件盘点计划 +export const deleteCountRecordDetail = async (id : number) => { + return await request.delete({ url: `/eam/countRecordDetail/delete?id=` + id }) +} + +// 导出备件盘点计划 Excel +export const exportCountRecordDetail = async (params) => { + return await request.download({ url: `/eam/countRecordDetail/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/countRecordDetail/get-import-template' }) +} diff --git a/src/api/eam/countRecordMain/index.ts b/src/api/eam/countRecordMain/index.ts new file mode 100644 index 000000000..512ae4c4c --- /dev/null +++ b/src/api/eam/countRecordMain/index.ts @@ -0,0 +1,61 @@ +import request from '@/config/axios' + +export interface CountRecordMainVO { + id : number + number : string + name : string + classification : string + isInAccount : string + status : string +} + +// 查询备件盘点计划列表 +export const getCountRecordMainPage = async (params) => { + params.status="CANGENERATE" + if (params.isSearch) { + delete params.isSearch + const data = { ...params } + return await request.post({ url: '/eam/countRecordMain/senior', data }) + } else { + return await request.get({ url: `/eam/countRecordMain/page`, params }) + } +} + +// 查询备件盘点计划详情 +export const getCountRecordMain = async (id : number) => { + return await request.get({ url: `/eam/countRecordMain/get?id=` + id }) +} + +// 新增备件盘点计划 +export const createCountRecordMain = async (data : CountRecordMainVO) => { + return await request.post({ url: `/eam/countRecordMain/create`, data }) +} + +// 修改备件盘点计划 +export const updateCountRecordMain = async (data : CountRecordMainVO) => { + return await request.put({ url: `/eam/countRecordMain/update`, data }) +} + +// 删除备件盘点计划 +export const deleteCountRecordMain = async (id : number) => { + return await request.delete({ url: `/eam/countRecordMain/delete?id=` + id }) +} +// 盘点调整 +export const adjustCountRecordMain = async (id : number) => { + return await request.get({ url: `/eam/countRecordMain/adjust?number=` + id }) +} + +// 导出备件盘点计划 Excel +export const handleMainExport = async (id : number) => { + return await request.download({ url: `/eam/countRecordMain/handleMainExport?id=` + id }) +} + +// 导出备件盘点计划 Excel +export const exportCounRecordMain = async (params) => { + return await request.download({ url: `/eam/countRecordMain/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/countRecordMain/get-import-template' }) +} diff --git a/src/api/eam/countadjustPlan/index.ts b/src/api/eam/countadjustPlan/index.ts new file mode 100644 index 000000000..4a9470f1a --- /dev/null +++ b/src/api/eam/countadjustPlan/index.ts @@ -0,0 +1,51 @@ +import request from '@/config/axios' + +export interface CountadjustPlanVO { + id : number + number : string + name : string + classification : string + isInAccount : string + status : string +} + +// 查询备件盘点计划列表 +export const getCountadjustPlanPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = { ...params } + return await request.post({ url: '/eam/countadjust-plan/senior', data }) + } else { + return await request.get({ url: `/eam/countadjust-plan/page`, params }) + } +} + +// 查询备件盘点计划详情 +export const getCountadjustPlan = async (id : number) => { + return await request.get({ url: `/eam/countadjust-plan/get?id=` + id }) +} + +// 新增备件盘点计划 +export const createCountadjustPlan = async (data : CountadjustPlanVO) => { + return await request.post({ url: `/eam/countadjust-plan/create`, data }) +} + +// 修改备件盘点计划 +export const updateCountadjustPlan = async (data : CountadjustPlanVO) => { + return await request.put({ url: `/eam/countadjust-plan/update`, data }) +} + +// 删除备件盘点计划 +export const deleteCountadjustPlan = async (id : number) => { + return await request.delete({ url: `/eam/countadjust-plan/delete?id=` + id }) +} + +// 导出备件盘点计划 Excel +export const exportCountadjustPlan = async (params) => { + return await request.download({ url: `/eam/countadjust-plan/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/countadjust-plan/get-import-template' }) +} \ No newline at end of file diff --git a/src/api/eam/itemAccounts/index.ts b/src/api/eam/itemAccounts/index.ts new file mode 100644 index 000000000..88fb3d16f --- /dev/null +++ b/src/api/eam/itemAccounts/index.ts @@ -0,0 +1,63 @@ +import request from '@/config/axios' + +export interface ItemAccountsVO { + itemNumber: string + qty: number + areaNumber: string + isInAccount: string + siteId: string + available: string + concurrencyStamp: number +} + +// 查询备件台账列表 +export const getItemAccountsPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/eam/item-accounts/senior', data }) + } else { + return await request.get({ url: `/eam/item-accounts/page`, params }) + } +} + +// 查询备件台账详情 +export const getItemAccounts = async (id: number) => { + return await request.get({ url: `/eam/item-accounts/get?id=` + id }) +} + +// 新增备件台账 +export const createItemAccounts = async (data: ItemAccountsVO) => { + return await request.post({ url: `/eam/item-accounts/create`, data }) +} + +// 修改备件台账 +export const updateItemAccounts = async (data: ItemAccountsVO) => { + return await request.put({ url: `/eam/item-accounts/update`, data }) +} + +// 删除备件台账 +export const deleteItemAccounts = async (id: number) => { + return await request.delete({ url: `/eam/item-accounts/delete?id=` + id }) +} + +// 导出备件台账 Excel +export const exportItemAccounts = async (params) => { + return await request.download({ url: `/eam/item-accounts/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/item-accounts/get-import-template' }) +} + +// 更改备件库位 +export const replaceLocation = async (data: Array) => { + return await request.post({url: `/eam/item-accounts/replaceLocation `, data }); +}; + +// 备件不分页 + +export const getItemAccountsNoPage = async (params) => { + return await request.get({ url: `/eam/item-accounts/noPage`, params }) +} diff --git a/src/api/eam/itemApplyDetail/index.ts b/src/api/eam/itemApplyDetail/index.ts new file mode 100644 index 000000000..0941c11a3 --- /dev/null +++ b/src/api/eam/itemApplyDetail/index.ts @@ -0,0 +1,57 @@ +import request from '@/config/axios' + +export interface ItemApplyDetailVO { + number: string + name: string + type: string + applyId: number + applyDeptId: number + approveId: number + approveTime: Date + outId: number + outTime: Date + siteId: string + available: string + concurrencyStamp: number +} + +// 查询备件申领记录主列表 +export const getItemApplyDetailPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/eam/item-apply-request-detail/senior', data }) + } else { + return await request.get({ url: `/eam/item-apply-request-detail/page`, params }) + } +} + +// 查询备件申领记录主详情 +export const getItemApplyDetail = async (id: number) => { + return await request.get({ url: `/eam/item-apply-request-detail/get?id=` + id }) +} + +// 新增备件申领记录主 +export const createItemApplyDetail = async (data: ItemApplyDetailVO) => { + return await request.post({ url: `/eam/item-apply-request-detail/create`, data }) +} + +// 修改备件申领记录主 +export const updateItemApplyDetail = async (data: ItemApplyDetailVO) => { + return await request.put({ url: `/eam/item-apply-request-detail/update`, data }) +} + +// 删除备件申领记录主 +export const deleteItemApplyDetail = async (id: number) => { + return await request.delete({ url: `/eam/item-apply-request-detail/delete?id=` + id }) +} + +// 导出备件申领记录主 Excel +export const exportItemApplyDetail = async (params) => { + return await request.download({ url: `/eam/item-apply-request-detail/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/item-apply-request-detail/get-import-template' }) +} diff --git a/src/api/eam/itemInLocation/index.ts b/src/api/eam/itemInLocation/index.ts new file mode 100644 index 000000000..9589db346 --- /dev/null +++ b/src/api/eam/itemInLocation/index.ts @@ -0,0 +1,50 @@ +import request from '@/config/axios' + +export interface ItemInLocationVO { + number: string + itemNumber: string + locationNumber: string + type: string + qty: number +} + +// 查询备件入库记录列表 +export const getItemInLocationPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/eam/item-in-location/senior', data }) + } else { + return await request.get({ url: `/eam/item-in-location/page`, params }) + } +} + +// 查询备件入库记录详情 +export const getItemInLocation = async (id: number) => { + return await request.get({ url: `/eam/item-in-location/get?id=` + id }) +} + +// 新增备件入库记录 +export const createItemInLocation = async (data: ItemInLocationVO) => { + return await request.post({ url: `/eam/item-in-location/create`, data }) +} + +// 修改备件入库记录 +export const updateItemInLocation = async (data: ItemInLocationVO) => { + return await request.put({ url: `/eam/item-in-location/update`, data }) +} + +// 删除备件入库记录 +export const deleteItemInLocation = async (id: number) => { + return await request.delete({ url: `/eam/item-in-location/delete?id=` + id }) +} + +// 导出备件入库记录 Excel +export const exportItemInLocation = async (params) => { + return await request.download({ url: `/eam/item-in-location/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/item-in-location/get-import-template' }) +} \ No newline at end of file diff --git a/src/api/eam/itemLocationReplace/index.ts b/src/api/eam/itemLocationReplace/index.ts new file mode 100644 index 000000000..7bdab64df --- /dev/null +++ b/src/api/eam/itemLocationReplace/index.ts @@ -0,0 +1,49 @@ +import request from '@/config/axios' + +export interface ItemLocationReplaceVO { + locationNumber: string + describe: string + oldItemNumber: string + itemNumber: string +} + +// 查询备件库位变更记录列表 +export const getItemLocationReplacePage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/eam/item-location-replace/senior', data }) + } else { + return await request.get({ url: `/eam/item-location-replace/page`, params }) + } +} + +// 查询备件库位变更记录详情 +export const getItemLocationReplace = async (id: number) => { + return await request.get({ url: `/eam/item-location-replace/get?id=` + id }) +} + +// 新增备件库位变更记录 +export const createItemLocationReplace = async (data: ItemLocationReplaceVO) => { + return await request.post({ url: `/eam/item-location-replace/create`, data }) +} + +// 修改备件库位变更记录 +export const updateItemLocationReplace = async (data: ItemLocationReplaceVO) => { + return await request.put({ url: `/eam/item-location-replace/update`, data }) +} + +// 删除备件库位变更记录 +export const deleteItemLocationReplace = async (id: number) => { + return await request.delete({ url: `/eam/item-location-replace/delete?id=` + id }) +} + +// 导出备件库位变更记录 Excel +export const exportItemLocationReplace = async (params) => { + return await request.download({ url: `/eam/item-location-replace/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/item-location-replace/get-import-template' }) +} diff --git a/src/api/eam/itemMaintenance/index.ts b/src/api/eam/itemMaintenance/index.ts new file mode 100644 index 000000000..d6fe941c5 --- /dev/null +++ b/src/api/eam/itemMaintenance/index.ts @@ -0,0 +1,52 @@ +import request from '@/config/axios' + +export interface ItemMaintenanceVO { + number: string + itemNumber: string + qty: number + result: string + siteId: string + available: string + concurrencyStamp: number +} + +// 查询备件维修记录列表 +export const getItemMaintenancePage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/eam/item-maintenance-record/senior', data }) + } else { + return await request.get({ url: `/eam/item-maintenance-record/page`, params }) + } +} + +// 查询备件维修记录详情 +export const getItemMaintenance = async (id: number) => { + return await request.get({ url: `/eam/item-maintenance-record/get?id=` + id }) +} + +// 新增备件维修记录 +export const createItemMaintenance = async (data: ItemMaintenanceVO) => { + return await request.post({ url: `/eam/item-maintenance-record/create`, data }) +} + +// 修改备件维修记录 +export const updateItemMaintenance = async (data: ItemMaintenanceVO) => { + return await request.put({ url: `/eam/item-maintenance-record/update`, data }) +} + +// 删除备件维修记录 +export const deleteItemMaintenance = async (id: number) => { + return await request.delete({ url: `/eam/item-maintenance-record/delete?id=` + id }) +} + +// 导出备件维修记录 Excel +export const exportItemMaintenance = async (params) => { + return await request.download({ url: `/eam/item-maintenance-record/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/item-maintenance-record/get-import-template' }) +} diff --git a/src/api/eam/itemOrderDetail/index.ts b/src/api/eam/itemOrderDetail/index.ts new file mode 100644 index 000000000..339c3482c --- /dev/null +++ b/src/api/eam/itemOrderDetail/index.ts @@ -0,0 +1,65 @@ +import request from '@/config/axios' + +export interface ItemOrderDetailVO { + number: string + date: string + phone: string + fax: string + purchaser: string + supplierNumber: string + supplierName: string + supplierAddress: string + shipTo: string + invoiceTo: string + contacts: string + contactsPhone: string + paymentType: string + registLocation: string + bank: string + account: string + dutyParagraph: string + siteId: string + available: string + concurrencyStamp: number +} + +// 查询备件采购订单主列表 +export const getItemOrderDetailPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/eam/item-order-detail/senior', data }) + } else { + return await request.get({ url: `/eam/item-order-detail/page`, params }) + } +} + +// 查询备件采购订单主详情 +export const getItemOrderDetail = async (id: number) => { + return await request.get({ url: `/eam/item-order-detail/get?id=` + id }) +} + +// 新增备件采购订单主 +export const createItemOrderDetail = async (data: ItemOrderDetailVO) => { + return await request.post({ url: `/eam/item-order-detail/create`, data }) +} + +// 修改备件采购订单主 +export const updateItemOrderDetail = async (data: ItemOrderDetailVO) => { + return await request.put({ url: `/eam/item-order-detail/update`, data }) +} + +// 删除备件采购订单主 +export const deleteItemOrderDetail = async (id: number) => { + return await request.delete({ url: `/eam/item-order-detail/delete?id=` + id }) +} + +// 导出备件采购订单主 Excel +export const exportItemOrderDetail = async (params) => { + return await request.download({ url: `/eam/item-order-detail/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/item-order-detail/get-import-template' }) +} diff --git a/src/api/eam/itemOrderMain/index.ts b/src/api/eam/itemOrderMain/index.ts new file mode 100644 index 000000000..125851b14 --- /dev/null +++ b/src/api/eam/itemOrderMain/index.ts @@ -0,0 +1,71 @@ +import request from '@/config/axios' + +export interface ItemOrderMainVO { + number: string + date: string + phone: string + fax: string + purchaser: string + supplierNumber: string + supplierName: string + supplierAddress: string + shipTo: string + invoiceTo: string + contacts: string + contactsPhone: string + paymentType: string + registLocation: string + bank: string + account: string + dutyParagraph: string + siteId: string + available: string + concurrencyStamp: number +} + +// 查询备件采购订单主列表 +export const getItemOrderMainPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/eam/item-order-main/senior', data }) + } else { + return await request.get({ url: `/eam/item-order-main/page`, params }) + } +} + +// 查询备件采购订单主详情 +export const getItemOrderMain = async (id: number) => { + return await request.get({ url: `/eam/item-order-main/get?id=` + id }) +} + +// 新增备件采购订单主 +export const createItemOrderMain = async (data: ItemOrderMainVO) => { + return await request.post({ url: `/eam/item-order-main/create`, data }) +} + +// 修改备件采购订单主 +export const updateItemOrderMain = async (data: ItemOrderMainVO) => { + return await request.put({ url: `/eam/item-order-main/update`, data }) +} + +// 删除备件采购订单主 +export const deleteItemOrderMain = async (id: number) => { + return await request.delete({ url: `/eam/item-order-main/delete?id=` + id }) +} + +// 关闭采购订单主 +export const closeItemOrderMain = async (id: number) => { + return await request.post({ url: `/eam/item-order-main/close?id=` + id }) +} + + +// 导出备件采购订单主 Excel +export const exportItemOrderMain = async (params) => { + return await request.download({ url: `/eam/item-order-main/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/item-order-main/get-import-template' }) +} diff --git a/src/api/eam/itemOutLocation/index.ts b/src/api/eam/itemOutLocation/index.ts new file mode 100644 index 000000000..a6660ae38 --- /dev/null +++ b/src/api/eam/itemOutLocation/index.ts @@ -0,0 +1,50 @@ +import request from '@/config/axios' + +export interface ItemOutLocationVO { + number: string + itemNumber: string + locationNumber: string + type: string + qty: number +} + +// 查询备件出库记录列表 +export const getItemOutLocationPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/eam/item-out-location/senior', data }) + } else { + return await request.get({ url: `/eam/item-out-location/page`, params }) + } +} + +// 查询备件出库记录详情 +export const getItemOutLocation = async (id: number) => { + return await request.get({ url: `/eam/item-out-location/get?id=` + id }) +} + +// 新增备件出库记录 +export const createItemOutLocation = async (data: ItemOutLocationVO) => { + return await request.post({ url: `/eam/item-out-location/create`, data }) +} + +// 修改备件出库记录 +export const updateItemOutLocation = async (data: ItemOutLocationVO) => { + return await request.put({ url: `/eam/item-out-location/update`, data }) +} + +// 删除备件出库记录 +export const deleteItemOutLocation = async (id: number) => { + return await request.delete({ url: `/eam/item-out-location/delete?id=` + id }) +} + +// 导出备件出库记录 Excel +export const exportItemOutLocation = async (params) => { + return await request.download({ url: `/eam/item-out-location/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/item-out-location/get-import-template' }) +} \ No newline at end of file diff --git a/src/api/eam/sparePartsApplyDetail/index.ts b/src/api/eam/sparePartsApplyDetail/index.ts new file mode 100644 index 000000000..ae94831de --- /dev/null +++ b/src/api/eam/sparePartsApplyDetail/index.ts @@ -0,0 +1,63 @@ +import request from '@/config/axios' + +export interface SparePartsApplyDetailVO { + id: number + number: string + masterId: number + sparePartsCode: string + isRadeIn: string + applyQty: number + currentQty: number + type: string + currentSinglePrice: number + equipmentCode: byte[] + jobNumber: byte[] + departmentCode: string + remark: string + siteId: string + available: string + deletionTime: Date + deleterId: byte[] + concurrencyStamp: number +} + +// 查询备件领用申请子列表 +export const getSparePartsApplyDetailPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/eam/spare-parts-apply-detail/senior', data }) + } else { + return await request.get({ url: `/eam/spare-parts-apply-detail/page`, params }) + } +} + +// 查询备件领用申请子详情 +export const getSparePartsApplyDetail = async (id: number) => { + return await request.get({ url: `/eam/spare-parts-apply-detail/get?id=` + id }) +} + +// 新增备件领用申请子 +export const createSparePartsApplyDetail = async (data: SparePartsApplyDetailVO) => { + return await request.post({ url: `/eam/spare-parts-apply-detail/create`, data }) +} + +// 修改备件领用申请子 +export const updateSparePartsApplyDetail = async (data: SparePartsApplyDetailVO) => { + return await request.put({ url: `/eam/spare-parts-apply-detail/update`, data }) +} + +// 删除备件领用申请子 +export const deleteSparePartsApplyDetail = async (id: number) => { + return await request.delete({ url: `/eam/spare-parts-apply-detail/delete?id=` + id }) +} + +// 导出备件领用申请子 Excel +export const exportSparePartsApplyDetail = async (params) => { + return await request.download({ url: `/eam/spare-parts-apply-detail/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/spare-parts-apply-detail/get-import-template' }) +} \ No newline at end of file diff --git a/src/api/eam/sparePartsApplyMain/index.ts b/src/api/eam/sparePartsApplyMain/index.ts new file mode 100644 index 000000000..c69234979 --- /dev/null +++ b/src/api/eam/sparePartsApplyMain/index.ts @@ -0,0 +1,65 @@ +import request from '@/config/axios' + +export interface SparePartsApplyMainVO { + id: number + number: string + description: string + applyDeptId: string + sumVal: number + status: string + applyer: string + approver: number + approveContent: string + approveTime: Date + autoExamine: string + autoAgree: string + directCreateRecord: string + departmentCode: string + remark: string + siteId: string + available: string + deletionTime: Date + deleterId: byte[] + concurrencyStamp: number +} + +// 查询备件领用申请列表 +export const getSparePartsApplyMainPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/eam/spare-parts-apply-main/senior', data }) + } else { + return await request.get({ url: `/eam/spare-parts-apply-main/page`, params }) + } +} + +// 查询备件领用申请详情 +export const getSparePartsApplyMain = async (id: number) => { + return await request.get({ url: `/eam/spare-parts-apply-main/get?id=` + id }) +} + +// 新增备件领用申请 +export const createSparePartsApplyMain = async (data: SparePartsApplyMainVO) => { + return await request.post({ url: `/eam/spare-parts-apply-main/create`, data }) +} + +// 修改备件领用申请 +export const updateSparePartsApplyMain = async (data: SparePartsApplyMainVO) => { + return await request.put({ url: `/eam/spare-parts-apply-main/update`, data }) +} + +// 删除备件领用申请 +export const deleteSparePartsApplyMain = async (id: number) => { + return await request.delete({ url: `/eam/spare-parts-apply-main/delete?id=` + id }) +} + +// 导出备件领用申请 Excel +export const exportSparePartsApplyMain = async (params) => { + return await request.download({ url: `/eam/spare-parts-apply-main/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/spare-parts-apply-main/get-import-template' }) +} \ No newline at end of file diff --git a/src/api/eam/transaction/index.ts b/src/api/eam/transaction/index.ts new file mode 100644 index 000000000..c11588aec --- /dev/null +++ b/src/api/eam/transaction/index.ts @@ -0,0 +1,53 @@ +import request from '@/config/axios' + +export interface TransactionVO { + itemNumber: string + locationNumber: string + transactionType: string + inventoryAction: string + businessType: string + inventoryStatus: string + uom: string + qty: number +} + +// 查询库存事务列表 +export const getTransactionPage = async (params) => { + if (params.isSearch) { + delete params.isSearch + const data = {...params} + return await request.post({ url: '/eam/transaction/senior', data }) + } else { + return await request.get({ url: `/eam/transaction/page`, params }) + } +} + +// 查询库存事务详情 +export const getTransaction = async (id: number) => { + return await request.get({ url: `/eam/transaction/get?id=` + id }) +} + +// 新增库存事务 +export const createTransaction = async (data: TransactionVO) => { + return await request.post({ url: `/eam/transaction/create`, data }) +} + +// 修改库存事务 +export const updateTransaction = async (data: TransactionVO) => { + return await request.put({ url: `/eam/transaction/update`, data }) +} + +// 删除库存事务 +export const deleteTransaction = async (id: number) => { + return await request.delete({ url: `/eam/transaction/delete?id=` + id }) +} + +// 导出库存事务 Excel +export const exportTransaction = async (params) => { + return await request.download({ url: `/eam/transaction/export-excel`, params }) +} + +// 下载用户导入模板 +export const importTemplate = () => { + return request.download({ url: '/eam/transaction/get-import-template' }) +} diff --git a/src/views/eam/adjustRecord/adjustRecord.data.ts b/src/views/eam/adjustRecord/adjustRecord.data.ts new file mode 100644 index 000000000..e2f5bb39d --- /dev/null +++ b/src/views/eam/adjustRecord/adjustRecord.data.ts @@ -0,0 +1,189 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter } from '@/utils/formatTime' + +// 表单校验 +export const Rules = reactive({ + number: [required], + planNumber: [required], +}) + +export const AdjustRecordMain = useCrudSchemas(reactive([ + { + label: '调整编号', + field: 'number', + sort: 'custom', + isSearch: true, + }, + { + label: '计划编号', + field: 'planNumber', + sort: 'custom', + isSearch: true, + }, + { + label: '任务编号', + field: 'jobNumber', + sort: 'custom', + isSearch: true, + }, + { + label: '操作', + field: 'action', + isForm: false, + table: { + width: 150, + fixed: 'right' + } + } +])) + +//表单校验 +export const AdjustRecordMainRules = reactive({ + name: [ + { required: true, message: '请填写描述', trigger: 'change' } + ], + remark: [ + { max: 50, message: '不得超过50个字符', trigger: 'blur' } + ], + available: [ + { required: true, message: '请选择是否可用', trigger: 'change' } + ], +}) +/** + * @returns {Array} 备件申请子表 + */ +export const AdjustRecordDetail = useCrudSchemas(reactive([ + { + label: '任务编号', + field: 'number', + sort: 'custom', + isForm: false, + isSearch: true, + table: { + width: 180, + fixed: 'left' + }, + }, + + { + label: '备件编号', + field: 'itemNumber', + sort: 'custom', + isForm: false, + isSearch: true, + table: { + width: 180, + }, + }, + + { + label: '库位编号', + field: 'locationNumber', + sort: 'custom', + isForm: false, + isSearch: true, + table: { + width: 180, + }, + }, + + { + label: '库区编号', + field: 'areaNumber', + sort: 'custom', + isForm: false, + isSearch: true, + table: { + width: 180, + }, + }, + + { + label: '库存数量', + field: 'qty', + sort: 'custom', + isForm: false, + isSearch: true, + table: { + width: 180, + }, + form: { + component: 'InputNumber', + componentProps: { + min: 0, + precision: 2 + } + }, + tableForm: { + type: 'InputNumber', + min: 0, + precision: 2 + } + }, + { + label: '盘点数量', + field: 'countQty', + sort: 'custom', + isForm: false, + isSearch: true, + table: { + width: 180, + }, + form: { + component: 'InputNumber', + componentProps: { + min: 0, + precision: 2 + } + }, + tableForm: { + type: 'InputNumber', + min: 0, + precision: 2 + } + }, + { + label: '差异数量', + field: 'differenceQty', + sort: 'custom', + isForm: false, + isSearch: true, + table: { + width: 180, + }, + form: { + component: 'InputNumber', + componentProps: { + min: 0, + precision: 2 + } + }, + tableForm: { + type: 'InputNumber', + min: 0, + precision: 2 + } + }, + { + label: '操作', + field: 'action', + isDetail: false, + isForm: false, + table: { + width: 150, + fixed: 'right' + }, + isTableForm: false, + } +])) + +//表单校验 +export const AdjustRecordDetailRules = reactive({ + lineNumber: [ + { required: true, message: '请输入行号', trigger: 'blur' }, + { max: 50, message: '不得超过50个字符', trigger: 'blur' } + ], + stdPackQty: [ + { required: true, message: '请输入标包数量', trigger: 'blur' } + ], +}) diff --git a/src/views/eam/adjustRecord/index.vue b/src/views/eam/adjustRecord/index.vue new file mode 100644 index 000000000..e144d3276 --- /dev/null +++ b/src/views/eam/adjustRecord/index.vue @@ -0,0 +1,322 @@ + + + diff --git a/src/views/eam/applicationRecord/applicationRecordMain.data.ts b/src/views/eam/applicationRecord/applicationRecordMain.data.ts new file mode 100644 index 000000000..c7d233246 --- /dev/null +++ b/src/views/eam/applicationRecord/applicationRecordMain.data.ts @@ -0,0 +1,329 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter } from '@/utils/formatTime' +import { ItemAccounts } from '@/views/eam/itemAccounts/itemAccounts.data' +import * as ItemAccountsApi from '@/api/eam/itemAccounts' +// import * as DeviceMoldItemsApi from '@/api/eam/basic/deviceMaintenance' +import { validateHanset, validateEmail } from '@/utils/validator' +const { t } = useI18n() // 国际化 + +/** + * @returns {Array} 备件申请主表 + */ +export const ApplicationRecordMain = useCrudSchemas(reactive([ + { + label: '领用编号', + field: 'number', + sort: 'custom', + isForm: false, + isSearch: true, + table: { + width: 180, + fixed: 'left' + }, + }, + { + label: '申领人', + field: 'applyId', + sort: 'custom', + isForm: false, + isSearch: false, + }, + { + label: '审批人', + field: 'approveId', + sort: 'custom', + isForm: false, + isSearch: false, + }, + { + label: '出库人', + field: 'outId', + sort: 'custom', + isForm: false, + isSearch: false, + }, + { + label: '描述', + field: 'name', + sort: 'custom', + }, + { + label: '状态', + field: 'status', + sort: 'custom', + dictType: DICT_TYPE.ITEM_APPLY_STATUS, + dictClass: 'string', + isSearch: true, + isTable: true, + table: { + width: 150 + }, + tableForm: { + type: 'Select', + disabled: true + } + }, + { + label: '操作', + field: 'action', + isDetail: false, + isForm: false, + table: { + width: 200, + fixed: 'right' + } + } +])) + +//表单校验 +export const ApplicationRecordMainRules = reactive({ + name: [ + { required: true, message: '请填写描述', trigger: 'change' } + ], + remark: [ + { max: 50, message: '不得超过50个字符', trigger: 'blur' } + ], + available: [ + { required: true, message: '请选择是否可用', trigger: 'change' } + ], +}) + +export const DeviceMOLD = useCrudSchemas(reactive([ + { + label: '编号', + field: 'number', + sort: 'custom', + isForm: false, + table: { + width: 180, + fixed: 'left' + }, + }, + { + label: '名称', + field: 'name', + sort: 'custom', + }, + { + label: '规格型号', + field: 'specification', + sort: 'custom', + }, + +])) + +/** + * @returns {Array} 备件申请子表 + */ +export const ApplicationRecordDetail = useCrudSchemas(reactive([ + { + label: '备件编号', + field: 'itemNumber', + sort: 'custom', + isSearch: true, + tableForm: { + isInpuFocusShow: true, + searchListPlaceholder: '请选择备件编号', + searchField: 'number', + searchTitle: '库区信息', + searchAllSchemas: ItemAccounts.allSchemas, // 查询弹窗所需类 + searchPage: ItemAccountsApi.getItemAccountsPage, // 查询弹窗所需分页方法 + searchCondition: [{ + key: 'available', + value: 'TRUE', + isMainValue: false + } + ] + }, + }, + { + label: '类型', + field: 'type', + sort: 'custom', + dictType: DICT_TYPE.DEVICE_MOLD_TYPE, + dictClass: 'string', + isSearch: true, + isTable: true, + table: { + width: 150 + }, + tableForm: { + type: 'Select', + disabled: false + } + }, + + + // { + // label: '设备/模具编号', + // field: 'deviceNumber', + // sort: 'custom', + // isSearch: true, + // tableForm: { + // isInpuFocusShow: true, + // searchListPlaceholder: '请选择单号', + // searchField: 'number', + // searchTitle: '单号信息', + // searchAllSchemas: DeviceMOLD.allSchemas, // 查询弹窗所需类 + // searchPage: DeviceMoldItemsApi.getNumber, // 查询弹窗所需分页方法 + // searchCondition: [{ + // key: 'available', + // value: "TRUE", + // isMainValue: false + // }, { + // key: 'type', + // value: "type", + // isMainValue: true + // } + // ] + // }, + // }, + { + label: '申领数量', + field: 'qty', + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'InputNumber', + componentProps: { + min: 0, + precision: 2 + } + }, + tableForm: { + type: 'InputNumber', + min: 0, + precision: 2 + } + }, + { + label: '库存数量', + field: 'currentQty', + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'InputNumber', + componentProps: { + min: 0, + precision: 2 + } + }, + tableForm: { + type: 'InputNumber', + min: 0, + precision: 2 + } + }, + + + { + label: '是否可用', + field: 'available', + sort: 'custom', + dictType: DICT_TYPE.TRUE_FALSE, + dictClass: 'string', + isSearch: true, + isTable: true, + table: { + width: 150 + }, + tableForm: { + type: 'Select', + disabled: true + } + }, + + + { + label: '是否以旧换新', + field: 'isRadeIn', + sort: 'custom', + dictType: DICT_TYPE.TRUE_FALSE, + dictClass: 'string', + isSearch: true, + isTable: true, + table: { + width: 150 + }, + tableForm: { + type: 'Select', + disabled: true + } + }, + { + label: '备注', + field: 'remark', + table: { + width: 150 + }, + }, + + { + label: '操作', + field: 'action', + isDetail: false, + isForm: false, + table: { + width: 150, + fixed: 'right' + }, + isTableForm: false, + } +])) + +//表单校验 +export const ApplicationRecordDetailRules = reactive({ + lineNumber: [ + { required: true, message: '请输入行号', trigger: 'blur' }, + { max: 50, message: '不得超过50个字符', trigger: 'blur' } + ], + stdPackQty: [ + { required: true, message: '请输入标包数量', trigger: 'blur' } + ], + stdPackUnit: [ + { required: true, message: '请选择标包单位', trigger: 'change' } + ], + convertRate: [ + { required: true, message: '请输入转换率', trigger: 'blur' } + ], + taxRate: [ + { required: true, message: '请输入税率', trigger: 'blur' } + ], + shippedQty: [ + { required: true, message: '请输入已发货数量', trigger: 'blur' } + ], + receivedQty: [ + { required: true, message: '请输入已收货数量', trigger: 'blur' } + ], + returnedQty: [ + { required: true, message: '请输入已退货数量', trigger: 'blur' } + ], + putawayQty: [ + { required: true, message: '请输入已上架数量', trigger: 'blur' } + ], + overReceivingPercent: [ + { required: true, message: '请输入超收百分比', trigger: 'blur' } + ], + orderQty: [ + { required: true, message: '请输入订单数量', trigger: 'blur' } + ], + uom: [ + { required: true, message: '请选择计量单位', trigger: 'change' } + ], + available: [ + { required: true, message: '请选择是否可用', trigger: 'change' } + ], + nuumber: [ + { required: true, message: '请输入单据号', trigger: 'blur' } + ], + itemCode: [ + { required: true, message: '请选择物品代码', trigger: 'change' } + ], + remark: [ + { max: 50, message: '不得超过50个字符', trigger: 'blur' } + ], +}) diff --git a/src/views/eam/applicationRecord/index.vue b/src/views/eam/applicationRecord/index.vue new file mode 100644 index 000000000..46c6691d2 --- /dev/null +++ b/src/views/eam/applicationRecord/index.vue @@ -0,0 +1,309 @@ + + + diff --git a/src/views/eam/countRecord/countRecord.data.ts b/src/views/eam/countRecord/countRecord.data.ts new file mode 100644 index 000000000..c6d5c3112 --- /dev/null +++ b/src/views/eam/countRecord/countRecord.data.ts @@ -0,0 +1,242 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter } from '@/utils/formatTime' +import { validateHanset, validateEmail } from '@/utils/validator' +const { t } = useI18n() // 国际化 + +/** + * @returns {Array} 备件申领主表 + */ +export const CountRecordMain = useCrudSchemas(reactive([ + { + label: '任务编号', + field: 'number', + sort: 'custom', + isForm: false, + isSearch: true, + table: { + width: 180, + fixed: 'left' + }, + }, + { + label: '工单编号', + field: 'jobNumber', + sort: 'custom', + isForm: false, + isSearch: true, + table: { + width: 180, + fixed: 'left' + }, + }, + { + label: '计划编号', + field: 'requestNumber', + sort: 'custom', + isForm: false, + isSearch: true, + table: { + width: 180, + fixed: 'left' + }, + }, + { + label: '名称', + field: 'name', + sort: 'custom', + isForm: false, + isSearch: false, + }, + { + label: '状态', + field: 'status', + sort: 'custom', + dictType: DICT_TYPE.ADJUST_STATUS, + dictClass: 'string', + isTable: true, + isForm: true, + tableForm: { + type: 'Select' + } + }, + { + label: '创建时间', + field: 'createTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: 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')] + } + }, + isForm: false, + }, + { + label: '操作', + field: 'action', + isDetail: false, + isForm: false, + table: { + width: 200, + fixed: 'right' + } + } +])) + +//表单校验 +export const CountRecordMainRules = reactive({ + name: [ + { required: true, message: '请填写描述', trigger: 'change' } + ], + remark: [ + { max: 50, message: '不得超过50个字符', trigger: 'blur' } + ], + available: [ + { required: true, message: '请选择是否可用', trigger: 'change' } + ], +}) + +/** + * @returns {Array} 备件申请子表 + */ +export const CountRecordDetail = useCrudSchemas(reactive([ + { + label: '任务编号', + field: 'number', + sort: 'custom', + isForm: false, + isSearch: true, + table: { + width: 180, + fixed: 'left' + }, + }, + + { + label: '备件编号', + field: 'itemNumber', + sort: 'custom', + isForm: false, + isSearch: true, + table: { + width: 180, + }, + }, + + + + { + label: '库位编号', + field: 'locationNumber', + sort: 'custom', + isForm: false, + isSearch: true, + table: { + width: 180, + }, + }, + + { + label: '库区编号', + field: 'areaNumber', + sort: 'custom', + isForm: false, + isSearch: true, + table: { + width: 180, + }, + }, + + { + label: '库存数量', + field: 'qty', + sort: 'custom', + isForm: false, + isSearch: true, + table: { + width: 180, + }, + form: { + component: 'InputNumber', + componentProps: { + min: 0, + precision: 2 + } + }, + tableForm: { + type: 'InputNumber', + min: 0, + precision: 2 + } + }, + { + label: '盘点数量', + field: 'countQty', + sort: 'custom', + isForm: false, + isSearch: true, + table: { + width: 180, + }, + form: { + component: 'InputNumber', + componentProps: { + min: 0, + precision: 2 + } + }, + tableForm: { + type: 'InputNumber', + min: 0, + precision: 2 + } + }, + { + label: '差异数量', + field: 'differenceQty', + sort: 'custom', + isForm: false, + isSearch: true, + table: { + width: 180, + }, + form: { + component: 'InputNumber', + componentProps: { + min: 0, + precision: 2 + } + }, + tableForm: { + type: 'InputNumber', + min: 0, + precision: 2 + } + }, + { + label: '操作', + field: 'action', + isDetail: false, + isForm: false, + table: { + width: 150, + fixed: 'right' + }, + isTableForm: false, + } +])) + +//表单校验 +export const CountRecordDetailRules = reactive({ + lineNumber: [ + { required: true, message: '请输入行号', trigger: 'blur' }, + { max: 50, message: '不得超过50个字符', trigger: 'blur' } + ], + stdPackQty: [ + { required: true, message: '请输入标包数量', trigger: 'blur' } + ], +}) diff --git a/src/views/eam/countRecord/index.vue b/src/views/eam/countRecord/index.vue new file mode 100644 index 000000000..b8a269b1b --- /dev/null +++ b/src/views/eam/countRecord/index.vue @@ -0,0 +1,339 @@ + + + diff --git a/src/views/eam/countadjustPlan/countadjustPlan.data.ts b/src/views/eam/countadjustPlan/countadjustPlan.data.ts new file mode 100644 index 000000000..c1e5d3c95 --- /dev/null +++ b/src/views/eam/countadjustPlan/countadjustPlan.data.ts @@ -0,0 +1,78 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' + +// 表单校验 +export const CountadjustPlanRules = reactive({ + number: [required], + name: [required], + classification: [ + { required: true, message: '请选择盘点类型', trigger: 'blur' } + ], + +}) + +export const CountadjustPlan = useCrudSchemas(reactive([ + { + label: '计划编号', + field: 'number', + sort: 'custom', + isSearch: true, + isForm: false, + }, + { + label: '名称', + field: 'name', + sort: 'custom', + isSearch: true, + }, + { + label: '盘点类型', + field: 'classification', + sort: 'custom', + dictType: DICT_TYPE.CLASSIFICATION, + dictClass: 'string', + isSearch: false, + isTable: true, + isForm: true, + table: { + width: 150 + }, + tableForm: { + type: 'Select', + disabled: false + } + }, + { + label: '是否账内库', + field: 'isInAccount', + dictType: DICT_TYPE.TRUE_FALSE, + dictClass: 'string', + isSearch: false, + isTable: true, + sort: 'custom', + table: { + width: 140 + }, + tableForm: { + type: 'Select', + inactiveValue: 'FALSE', + disabled: true + }, + form: { + component: 'Switch', + value: 'TRUE', + componentProps: { + inactiveValue: 'FALSE', + activeValue: 'TRUE' + } + } + }, + { + label: '操作', + field: 'action', + isForm: false, + table: { + width: 150, + fixed: 'right' + } + } +])) diff --git a/src/views/eam/countadjustPlan/index.vue b/src/views/eam/countadjustPlan/index.vue new file mode 100644 index 000000000..efa6eb661 --- /dev/null +++ b/src/views/eam/countadjustPlan/index.vue @@ -0,0 +1,244 @@ + + + diff --git a/src/views/eam/countadjustWork/countadjustWork.data.ts b/src/views/eam/countadjustWork/countadjustWork.data.ts new file mode 100644 index 000000000..2453aa364 --- /dev/null +++ b/src/views/eam/countadjustWork/countadjustWork.data.ts @@ -0,0 +1,156 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter } from '@/utils/formatTime' +import { validateHanset, validateEmail } from '@/utils/validator' +const { t } = useI18n() // 国际化 + +/** + * @returns {Array} 备件申领主表 + */ +export const CountJobMain = useCrudSchemas(reactive([ + { + label: '计划编号', + field: 'number', + sort: 'custom', + isForm: false, + isSearch: true, + table: { + width: 180, + fixed: 'left' + }, + }, + { + label: '工单编号', + field: 'jobNumber', + sort: 'custom', + isForm: false, + isSearch: true, + table: { + width: 180, + }, + }, + { + label: '名称', + field: 'name', + sort: 'custom', + isForm: false, + isSearch: false, + }, + { + label: '操作', + field: 'action', + isDetail: false, + isForm: false, + table: { + width: 200, + fixed: 'right' + } + } +])) + +//表单校验 +export const CountJobMainRules = reactive({ + name: [ + { required: true, message: '请填写描述', trigger: 'change' } + ], + remark: [ + { max: 50, message: '不得超过50个字符', trigger: 'blur' } + ], + available: [ + { required: true, message: '请选择是否可用', trigger: 'change' } + ], +}) + +/** + * @returns {Array} 备件申请子表 + */ +export const CountJobDetail = useCrudSchemas(reactive([ + { + label: '工单编号', + field: 'number', + sort: 'custom', + isForm: false, + isSearch: true, + table: { + width: 180, + fixed: 'left' + }, + }, + + { + label: '备件编号', + field: 'itemNumber', + sort: 'custom', + isForm: false, + isSearch: true, + table: { + width: 180, + }, + }, + + { + label: '库位编号', + field: 'locationNumber', + sort: 'custom', + isForm: false, + isSearch: true, + table: { + width: 180, + }, + }, + + { + label: '库区编号', + field: 'areaNumber', + sort: 'custom', + isForm: false, + isSearch: true, + table: { + width: 180, + }, + }, + + { + label: '库存数量', + field: 'qty', + sort: 'custom', + isForm: false, + isSearch: true, + table: { + width: 180, + }, + form: { + component: 'InputNumber', + componentProps: { + min: 0, + precision: 2 + } + }, + tableForm: { + type: 'InputNumber', + min: 0, + precision: 2 + } + }, + { + label: '操作', + field: 'action', + isDetail: false, + isForm: false, + table: { + width: 150, + fixed: 'right' + }, + isTableForm: false, + } +])) + +//表单校验 +export const CountJobDetailRules = reactive({ + lineNumber: [ + { required: true, message: '请输入行号', trigger: 'blur' }, + { max: 50, message: '不得超过50个字符', trigger: 'blur' } + ], + stdPackQty: [ + { required: true, message: '请输入标包数量', trigger: 'blur' } + ], +}) diff --git a/src/views/eam/countadjustWork/index.vue b/src/views/eam/countadjustWork/index.vue new file mode 100644 index 000000000..65c87d3bc --- /dev/null +++ b/src/views/eam/countadjustWork/index.vue @@ -0,0 +1,306 @@ + + + diff --git a/src/views/eam/itemAccounts/index.vue b/src/views/eam/itemAccounts/index.vue new file mode 100644 index 000000000..d3b39e599 --- /dev/null +++ b/src/views/eam/itemAccounts/index.vue @@ -0,0 +1,399 @@ + + + diff --git a/src/views/eam/itemAccounts/itemAccounts.data.ts b/src/views/eam/itemAccounts/itemAccounts.data.ts new file mode 100644 index 000000000..f92091519 --- /dev/null +++ b/src/views/eam/itemAccounts/itemAccounts.data.ts @@ -0,0 +1,349 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' + +import * as LocationApi from '@/api/wms/location' +import { Location } from '@/views/wms/basicDataManage/factoryModeling/location/location.data' + +import * as SparePartApi from '@/api/eam/sparePart' +import { SparePart } from '@/views/eam/sparePart/sparePart.data' + +import { dateFormatter } from '@/utils/formatTime' + +// 表单校验 +export const ItemAccountsRules = reactive({ + itemNumber: [required], + singlePrice: [required], + locationNumber: [required], + qty: [required] +}) + +export const ItemAccounts = useCrudSchemas( + reactive([ + { + label: '备件编号', + field: 'itemNumber', + sort: 'custom', + table: { + width: 180, + fixed: 'left' + }, + isSearch: false, + form: { + // labelMessage: '信息提示说明!!!', + componentProps: { + isSearchList: true, // 开启查询弹窗 + searchListPlaceholder: '请选择备件编号', // 输入框占位文本 + searchField: 'code', // 查询弹窗赋值字段 + searchTitle: '编号信息', // 查询弹窗标题 + searchAllSchemas: SparePart.allSchemas, // 查询弹窗所需类 + searchPage: SparePartApi.getSparePartPage, // 查询弹窗所需分页方法 + searchCondition: [ + // { + // key: 'warehouseCode', + // value: 'warehouseCode', + // message: '请填写仓库代码!', + // isMainValue: true + // }, + { + key: 'available', + value: 'TRUE', + isMainValue: false + } + ] + } + } + }, + + { + label: '备件名称', + field: 'name', + sort: 'custom', + isSearch: true, + isForm: true, + table: { + width: 150 + }, + form: { + componentProps: { + disabled: true + } + } + }, + { + label: '单价', + field: 'singlePrice', + sort: 'custom', + isSearch: false, + form: { + component: 'InputNumber', + value: 0 + } + }, + { + label: '库存数量', + field: 'qty', + sort: 'custom', + isSearch: false, + form: { + component: 'InputNumber', + value: 0 + } + }, + { + label: '库位编号', + field: 'locationNumber', + sort: 'custom', + table: { + width: 150 + }, + isSearch: true, + form: { + // labelMessage: '信息提示说明!!!', + componentProps: { + isSearchList: true, // 开启查询弹窗 + searchListPlaceholder: '请选择库位编号', // 输入框占位文本 + searchField: 'code', // 查询弹窗赋值字段 + searchTitle: '库位信息', // 查询弹窗标题 + searchAllSchemas: Location.allSchemas, // 查询弹窗所需类 + searchPage: LocationApi.getLocationPage, // 查询弹窗所需分页方法 + searchCondition: [ + // { + // key: 'warehouseCode', + // value: 'warehouseCode', + // message: '请填写仓库代码!', + // isMainValue: true + // }, + { + key: 'available', + value: 'TRUE', + isMainValue: false + } + ] + } + } + }, + { + label: '库区编号', + field: 'areaNumber', + sort: 'custom', + isSearch: true, + table: { + width: 180 + }, + form: { + componentProps: { + disabled: true + } + } + }, + { + label: '品牌', + field: 'brand', + sort: 'custom', + isSearch: false, + form: { + componentProps: { + disabled: true + } + } + }, + { + label: '规格型号', + field: 'specifications', + sort: 'custom', + isSearch: false, + form: { + componentProps: { + disabled: true + } + } + }, + { + label: '是否全局', + field: 'isOverall', + sort: 'custom', + dictType: DICT_TYPE.TRUE_FALSE, + dictClass: 'string', // 默认都是字符串类型其他暂不考虑 + isSearch: false, + form: { + component: 'Switch', + value: 'TRUE', + componentProps: { + inactiveValue: 'FALSE', + activeValue: 'TRUE', + disabled: true + } + } + }, + { + label: '科目', + field: 'subject', + sort: 'custom', + dictType: DICT_TYPE.SUBJECT, + dictClass: 'string', // 默认都是字符串类型其他暂不考虑 + isSearch: false, + form: { + component: 'Select', + componentProps: { + disabled: true + } + } + }, + { + label: '科目代码', + field: 'subjectCode', + sort: 'custom', + isSearch: false, + form: { + componentProps: { + disabled: true + } + } + }, + { + label: '类别', + field: 'type', + sort: 'custom', + isSearch: false, + form: { + componentProps: { + disabled: true + } + } + }, + { + label: '区域', + field: 'region', + sort: 'custom', + dictType: DICT_TYPE.REGION, + dictClass: 'string', // 默认都是字符串类型其他暂不考虑 + isSearch: false, + form: { + component: 'Select', + componentProps: { + disabled: true + } + } + }, + { + label: '备件分类', + field: 'classification', + sort: 'custom', + dictType: DICT_TYPE.PART_CLASS, + dictClass: 'string', // 默认都是字符串类型其他暂不考虑 + isSearch: false, + form: { + component: 'Select', + componentProps: { + disabled: true + } + } + }, + { + label: '计量单位', + field: 'uom', + sort: 'custom', + dictType: DICT_TYPE.UOM, + dictClass: 'string', // 默认都是字符串类型其他暂不考虑 + isSearch: false, + form: { + componentProps: { + disabled: true + } + } + }, + + { + label: '生产厂家', + field: 'manufacturer', + sort: 'custom', + isSearch: false, + form: { + componentProps: { + disabled: true + } + } + }, + { + label: '库存下限', + field: 'minInventory', + sort: 'custom', + isSearch: false, + form: { + component: 'InputNumber', + value: 0, + componentProps: { + disabled: true + } + } + }, + { + label: '库存上限', + field: 'maxInventory', + sort: 'custom', + isSearch: false, + form: { + component: 'InputNumber', + value: 0, + componentProps: { + disabled: true + } + } + }, + { + label: '更换周期', + field: 'replacementCycle', + sort: 'custom', + isSearch: false, + form: { + component: 'InputNumber', + value: 0, + componentProps: { + disabled: true + } + } + }, + { + label: '存放位置描述', + field: 'storageLocation', + sort: 'custom', + isSearch: false, + form: { + componentProps: { + disabled: true + } + } + }, + { + label: '备注', + field: 'remark', + sort: 'custom', + isSearch: false, + componentProps: { + disabled: true + } + }, + + { + label: '是否可用', + field: 'available', + sort: 'custom', + isSearch: false, + isTable: false, + isForm: false, + isDetail: false, + componentProps: { + disabled: true + } + }, + + { + label: '操作', + field: 'action', + isForm: false, + table: { + width: 150, + fixed: 'right' + } + } + ]) +) diff --git a/src/views/eam/itemInLocation/index.vue b/src/views/eam/itemInLocation/index.vue new file mode 100644 index 000000000..725f78ec0 --- /dev/null +++ b/src/views/eam/itemInLocation/index.vue @@ -0,0 +1,224 @@ + + + diff --git a/src/views/eam/itemInLocation/itemInLocation.data.ts b/src/views/eam/itemInLocation/itemInLocation.data.ts new file mode 100644 index 000000000..4aef77dd6 --- /dev/null +++ b/src/views/eam/itemInLocation/itemInLocation.data.ts @@ -0,0 +1,53 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' + +// 表单校验 +export const ItemInLocationRules = reactive({ + number: [required], + itemNumber: [required], + locationNumber: [required], +}) + +export const ItemInLocation = useCrudSchemas(reactive([ + { + label: '入库编号', + field: 'number', + sort: 'custom', + isSearch: true, + }, + { + label: '备件编号', + field: 'itemNumber', + sort: 'custom', + isSearch: true, + }, + { + label: '库位编号', + field: 'locationNumber', + sort: 'custom', + isSearch: true, + }, + { + label: '入库类型', + field: 'type', + sort: 'custom', + isSearch: false, + form: { + component: 'Select' + }, + }, + { + label: '数量', + field: 'qty', + sort: 'custom', + isSearch: false, + }, + { + label: '操作', + field: 'action', + isForm: false, + table: { + width: 150, + fixed: 'right' + } + } +])) diff --git a/src/views/eam/itemLocationReplace/index.vue b/src/views/eam/itemLocationReplace/index.vue new file mode 100644 index 000000000..939d5693e --- /dev/null +++ b/src/views/eam/itemLocationReplace/index.vue @@ -0,0 +1,244 @@ + + + diff --git a/src/views/eam/itemLocationReplace/itemLocationReplace.data.ts b/src/views/eam/itemLocationReplace/itemLocationReplace.data.ts new file mode 100644 index 000000000..75ed8da3b --- /dev/null +++ b/src/views/eam/itemLocationReplace/itemLocationReplace.data.ts @@ -0,0 +1,55 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter } from '@/utils/formatTime' + +// 表单校验 +export const ItemLocationReplaceRules = reactive({ + locationNumber: [required], + oldItemNumber: [required], + itemNumber: [required], +}) + +export const ItemLocationReplace = useCrudSchemas(reactive([ + { + label: '库位编号', + field: 'locationNumber', + sort: 'custom', + isSearch: true, + }, + + { + label: '变更前备件编号', + field: 'oldItemNumber', + sort: 'custom', + isSearch: true, + }, + { + label: '变更后备件编号', + field: 'itemNumber', + sort: 'custom', + isSearch: true, + }, + { + label: '变更时间', + field: 'createTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: 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')] + } + }, + isForm: false, + }, + { + label: '操作', + field: 'action', + isForm: false, + table: { + fixed: 'right' + } + } +])) diff --git a/src/views/eam/itemMaintenance/index.vue b/src/views/eam/itemMaintenance/index.vue new file mode 100644 index 000000000..c21050d6c --- /dev/null +++ b/src/views/eam/itemMaintenance/index.vue @@ -0,0 +1,243 @@ + + + diff --git a/src/views/eam/itemMaintenance/itemMaintenance.data.ts b/src/views/eam/itemMaintenance/itemMaintenance.data.ts new file mode 100644 index 000000000..b72ca4d0e --- /dev/null +++ b/src/views/eam/itemMaintenance/itemMaintenance.data.ts @@ -0,0 +1,110 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter } from '@/utils/formatTime' + +// 表单校验 +export const ItemMaintenanceRules = reactive({ + number: [required], + itemNumber: [required], + qty: [required], + concurrencyStamp: [required], +}) + +export const ItemMaintenance = useCrudSchemas(reactive([ + { + label: '维修工单编号', + field: 'number', + sort: 'custom', + isSearch: true, + }, + { + label: '备件编号', + field: 'itemNumber', + sort: 'custom', + isSearch: true, + }, + { + label: '数量', + field: 'qty', + sort: 'custom', + }, + { + label: '事务类型', + field: 'result', + dictType: DICT_TYPE.RESULT, + dictClass: 'string', + isSearch: false, + isTable: true, + sort: 'custom', + table: { + width: 150 + }, + tableForm: { + type: 'Select', + inactiveValue: 'FALSE', + disabled: true + }, + form: { + component: 'Switch', + value: 'TRUE', + componentProps: { + inactiveValue: 'FALSE', + activeValue: 'TRUE' + } + } + }, + { + label: '创建时间', + field: 'createTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: 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')] + } + }, + isForm: false, + }, + { + label: '维修原因', + field: 'reasons', + sort: 'custom', + }, + { + label: '是否可用', + field: 'available', + dictType: DICT_TYPE.TRUE_FALSE, + dictClass: 'string', + isSearch: false, + isTable: true, + sort: 'custom', + table: { + width: 150 + }, + tableForm: { + type: 'Select', + inactiveValue: 'FALSE', + disabled: true + }, + form: { + component: 'Switch', + value: 'TRUE', + componentProps: { + inactiveValue: 'FALSE', + activeValue: 'TRUE' + } + } + }, + { + label: '操作', + field: 'action', + isForm: false, + table: { + width: 150, + fixed: 'right' + } + } +])) diff --git a/src/views/eam/itemOrderMain/index.vue b/src/views/eam/itemOrderMain/index.vue new file mode 100644 index 000000000..b37492d05 --- /dev/null +++ b/src/views/eam/itemOrderMain/index.vue @@ -0,0 +1,304 @@ + + + diff --git a/src/views/eam/itemOrderMain/itemOrderMain.data.ts b/src/views/eam/itemOrderMain/itemOrderMain.data.ts new file mode 100644 index 000000000..2c127f91c --- /dev/null +++ b/src/views/eam/itemOrderMain/itemOrderMain.data.ts @@ -0,0 +1,310 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' +import { dateFormatter2 } from '@/utils/formatTime' +import { SparePart } from '@/views/eam/sparePart/sparePart.data' +import * as ItemApi from '@/api/eam/sparePart' +import { validateHanset, validateEmail } from '@/utils/validator' +const { t } = useI18n() // 国际化 + +/** + * @returns {Array} 备件申请主表 + */ +export const ItemOrderMain = useCrudSchemas(reactive([ + { + label: '采购订单编号', + field: 'number', + sort: 'custom', + isForm: false, + isSearch: true, + table: { + width: 150, + fixed: 'left' + }, + }, + { + label: '电话', + field: 'phone', + sort: 'custom', + }, + { + label: '传真', + field: 'fax', + sort: 'custom', + }, + { + label: '采购员', + field: 'purchaser', + sort: 'custom', + }, + { + label: '供应商编号', + field: 'supplierNumber', + sort: 'custom', + }, + { + label: '供应商名称', + field: 'supplierName', + sort: 'custom', + }, + { + label: '供应商地址', + field: 'supplierAddress', + sort: 'custom', + }, + { + label: '发货至', + field: 'shipTo', + sort: 'custom', + }, + { + label: '开票至', + field: 'invoiceTo', + sort: 'custom', + }, + { + label: '联系人', + field: 'contacts', + sort: 'custom', + }, + { + label: '联系电话', + field: 'contactsPhone', + sort: 'custom', + }, + { + label: '付款方式', + field: 'paymentType', + sort: 'custom', + form: { + component: 'Select' + }, + }, + { + label: '注册地', + field: 'registLocation', + sort: 'custom', + }, + { + label: '开户行', + field: 'bank', + sort: 'custom', + }, + { + label: '账号', + field: 'account', + sort: 'custom', + }, + { + label: '税号', + field: 'dutyParagraph', + sort: 'custom', + }, + // { + // label: '是否关闭', + // field: 'available', + // dictType: DICT_TYPE.TRUE_FALSE, + // dictClass: 'string', + // isSearch: false, + // isTable: true, + // sort: 'custom', + // table: { + // width: 150 + // }, + // tableForm: { + // type: 'Select', + // inactiveValue: 'FALSE', + // disabled: true + // }, + // form: { + // component: 'Switch', + // value: 'FALSE', + // componentProps: { + // inactiveValue: 'FALSE', + // activeValue: 'TRUE' + // } + // } + // }, + { + label: '状态', + field: 'status', + sort: 'custom', + dictType: DICT_TYPE.IS_COMPLETE, + dictClass: 'string', + isTable: true, + isForm: true, + tableForm: { + type: 'Select' + }, + form: { + value: 'INCOMPLETE', + componentProps: { + disabled: true, + } + } + }, + { + label: '操作', + field: 'action', + isDetail: false, + isForm: false, + table: { + width: 200, + fixed: 'right' + } + } +])) + +//表单校验 +export const ItemOrderMainRules = reactive({ + available: [ + { required: true, message: '请选择是否关闭', trigger: 'change' } + ], +}) + +/** + * @returns {Array} 备件申请子表 + */ +export const ItemOrderDetail = useCrudSchemas(reactive([ + { + label: '备件编号', + field: 'itemNumber', + sort: 'custom', + isSearch: true, + tableForm: { + isInpuFocusShow: true, + searchListPlaceholder: '请选择备件编号', + searchField: 'number', + searchTitle: '备件信息', + searchAllSchemas: SparePart.allSchemas, // 查询弹窗所需类 + searchPage: ItemApi.getItemPage, // 查询弹窗所需分页方法 + searchCondition: [{ + key: 'available', + value: 'TRUE', + isMainValue: false + } + ] + }, + }, + { + label: '备件名称', + field: 'itemName', + sort: 'custom', + isSearch: true, + table: { + width: 110, + }, + tableForm: { + disabled: true + } + }, + { + label: '单位', + field: 'uom', + sort: 'custom', + dictType: DICT_TYPE.UOM, + dictClass: 'string', + isSearch: false, + isTable: true, + tableForm: { + type: 'Select', + disabled: true + } + }, + { + label: '单价', + field: 'singlePrice', + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'InputNumber', + componentProps: { + min: 1, + precision: 6 + } + }, + tableForm: { + type: 'InputNumber', + min: 1, + precision: 6 + } + }, + { + label: '是否可用', + field: 'available', + sort: 'custom', + dictType: DICT_TYPE.TRUE_FALSE, + dictClass: 'string', + isSearch: true, + isTable: true, + table: { + width: 150 + }, + tableForm: { + type: 'Select', + disabled: true + } + }, + { + label: '是否以旧换新', + field: 'isRadeIn', + sort: 'custom', + dictType: DICT_TYPE.TRUE_FALSE, + dictClass: 'string', + isSearch: true, + isTable: true, + table: { + width: 150 + }, + tableForm: { + type: 'Select', + disabled: true + } + }, + { + label: '库存数量', + field: 'qty', + sort: 'custom', + table: { + width: 150 + }, + form: { + component: 'InputNumber', + componentProps: { + min: 1, + precision: 6 + } + }, + tableForm: { + type: 'InputNumber', + min: 1, + precision: 6 + } + }, + { + label: '备注', + field: 'remark', + table: { + width: 150 + }, + }, + + { + label: '操作', + field: 'action', + isDetail: false, + isForm: false, + table: { + width: 150, + fixed: 'right' + }, + isTableForm: false, + } +])) + +//表单校验 +export const ItemOrderDetailRules = reactive({ + singlePrice: [ + { required: true, message: '请输入备件单价', trigger: 'blur' }, + ], +}) diff --git a/src/views/eam/itemOutLocation/index.vue b/src/views/eam/itemOutLocation/index.vue new file mode 100644 index 000000000..0773cbbbd --- /dev/null +++ b/src/views/eam/itemOutLocation/index.vue @@ -0,0 +1,243 @@ + + + diff --git a/src/views/eam/itemOutLocation/itemOutLocation.data.ts b/src/views/eam/itemOutLocation/itemOutLocation.data.ts new file mode 100644 index 000000000..ac2890387 --- /dev/null +++ b/src/views/eam/itemOutLocation/itemOutLocation.data.ts @@ -0,0 +1,53 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' + +// 表单校验 +export const ItemOutLocationRules = reactive({ + number: [required], + itemNumber: [required], + locationNumber: [required], +}) + +export const ItemOutLocation = useCrudSchemas(reactive([ + { + label: '出库编号', + field: 'number', + sort: 'custom', + isSearch: true, + }, + { + label: '备件编号', + field: 'itemNumber', + sort: 'custom', + isSearch: true, + }, + { + label: '库位编号', + field: 'locationNumber', + sort: 'custom', + isSearch: true, + }, + { + label: '出库类型', + field: 'type', + sort: 'custom', + isSearch: false, + form: { + component: 'Select' + }, + }, + { + label: '数量', + field: 'qty', + sort: 'custom', + isSearch: false, + }, + { + label: '操作', + field: 'action', + isForm: false, + table: { + width: 150, + fixed: 'right' + } + } +])) \ No newline at end of file diff --git a/src/views/eam/sparePartsApplyMain/SparePartsApply.data.ts b/src/views/eam/sparePartsApplyMain/SparePartsApply.data.ts new file mode 100644 index 000000000..b58324f71 --- /dev/null +++ b/src/views/eam/sparePartsApplyMain/SparePartsApply.data.ts @@ -0,0 +1,290 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' + +import * as ItemAccountsApi from '@/api/eam/itemAccounts' +import { ItemAccounts } from '@/views/eam/itemAccounts/itemAccounts.data' + +import { EquipmentAccounts } from '@/views/eam/equipmentAccounts/equipmentAccounts.data' +import * as EquipmentItemApi from '@/api/eam/equipmentAccounts' + +import { dateFormatter } from '@/utils/formatTime' + +export const SparePartsApplyMain = useCrudSchemas( + reactive([ + { + label: '申请编号', + field: 'number', + sort: 'custom', + isSearch: true, + isForm: false + }, + { + label: '描述', + field: 'description', + sort: 'custom', + isSearch: true + }, + { + label: '申领备件总价', + field: 'sumVal', + sort: 'custom', + isSearch: false, + isForm: false + }, + { + label: '流程状态', + field: 'status', + sort: 'custom', + isSearch: false, + isForm: false, + form: { + component: 'Radio' + } + }, + { + label: '申请人', + field: 'applyer', + sort: 'custom', + isSearch: false, + isForm: false + }, + { + label: '审核人', + field: 'approver', + sort: 'custom', + isSearch: false, + isForm: false, + form: { + component: 'InputNumber', + value: 0 + } + }, + { + label: '审核内容', + field: 'approveContent', + sort: 'custom', + isSearch: true, + isForm: false + }, + { + label: '审核时间', + field: 'approveTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: false, + isForm: 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')] + } + }, + form: { + component: 'DatePicker', + componentProps: { + type: 'datetime', + valueFormat: 'x' + } + } + }, + { + label: '自动审核', + field: 'autoExamine', + sort: 'custom', + isSearch: false, + isForm: false + }, + { + label: '自动通过', + field: 'autoAgree', + sort: 'custom', + isSearch: false, + isForm: false + }, + { + label: '直接生成记录', + field: 'directCreateRecord', + sort: 'custom', + isSearch: false, + isForm: false + }, + { + label: '创建时间', + field: 'createTime', + sort: 'custom', + formatter: dateFormatter, + isSearch: 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')] + } + }, + isForm: false + }, + { + label: '操作', + field: 'action', + isForm: false, + table: { + width: 150, + fixed: 'right' + } + } + ]) +) + +//表单校验 +export const SparePartsApplyMainRules = reactive({ + description: [{ required: true, message: '描述不能为空', trigger: 'change' }] +}) +/** + * @returns {Array} 备件申请子表 + */ +export const SparePartsApplyDetail = useCrudSchemas( + reactive([ + { + label: '备件编号', + field: 'sparePartsCode', + sort: 'custom', + table: { + width: 150 + }, + form: { + // labelMessage: '信息提示说明!!!', + componentProps: { + isSearchList: true, // 开启查询弹窗 + searchListPlaceholder: '请选择备件编号', // 输入框占位文本 + searchField: 'itemNumber', // 查询弹窗赋值字段 + searchTitle: '备件信息', // 查询弹窗标题 + searchAllSchemas: ItemAccounts.allSchemas, // 查询弹窗所需类 + searchPage: ItemAccountsApi.getItemAccountsPage, // 查询弹窗所需分页方法 + searchCondition: [ + { + key: 'available', + value: 'TRUE', + isMainValue: false + } + ] + } + }, + tableForm: { + isInpuFocusShow: true, + searchListPlaceholder: '请选择备件编号', // 输入框占位文本 + searchField: 'itemNumber', // 查询弹窗赋值字段 + searchTitle: '备件信息', // 查询弹窗标题 + searchAllSchemas: ItemAccounts.allSchemas, // 查询弹窗所需类 + searchPage: ItemAccountsApi.getItemAccountsPage, // 查询弹窗所需分页方法 + searchCondition: [ + { + key: 'available', + value: 'TRUE', + isMainValue: false + } + ] + } + }, + { + label: '设备类别', + field: 'type', + dictType: DICT_TYPE.DEVICE_TYPE, + dictClass: 'string', + isTable: true, + sort: 'custom', + isSearch: false, + table: { + width: 150 + }, + tableForm: { + type: 'Select' + } + }, + { + label: '设备工装编号', + field: 'equipmentCode', + sort: 'custom', + table: { + width: 150 + }, + form: { + // labelMessage: '信息提示说明!!!', + componentProps: { + isSearchList: true, // 开启查询弹窗 + searchTitle: '设备信息', // 查询弹窗标题 + searchListPlaceholder: '请选择 设备编号', // 输入框占位文本 + searchAllSchemas: EquipmentAccounts.allSchemas, // 查询弹窗所需类 + searchField: 'code', // 查询弹窗赋值字段 + searchPage: EquipmentItemApi.getEquipmentAccountsPage, // 查询弹窗所需分页方法 + multiple: true, + searchCondition: [ + { + key: 'status', + value: 'NORMAL', + action: '==', + isSearch: true, + isMainValue: false + } + ] + } + }, + tableForm: { + isInpuFocusShow: true, + searchListPlaceholder: '请选择备件编号', // 输入框占位文本 + searchField: 'code', // 查询弹窗赋值字段 + searchTitle: '备件信息', // 查询弹窗标题 + searchAllSchemas: EquipmentAccounts.allSchemas, // 查询弹窗所需类 + searchPage: EquipmentItemApi.getEquipmentAccountsPage, // 查询弹窗所需分页方法 + searchCondition: [ + { + key: 'status', + value: 'NORMAL', + action: '==', + isSearch: true, + isMainValue: false + } + ] + } + }, + + { + label: '库存数量', + field: 'currentQty', + sort: 'custom', + isSearch: false, + tableForm: { + disabled: true + } + }, + { + label: '申领数量', + field: 'applyQty', + sort: 'custom', + isSearch: false + }, + { + label: '备注', + field: 'remark', + sort: 'custom', + isSearch: false + }, + { + label: '操作', + field: 'action', + isDetail: false, + isForm: false, + table: { + width: 150, + fixed: 'right' + }, + isTableForm: false + } + ]) +) + +//表单校验 +export const SparePartsApplyDetailRules = reactive({ + applyQty: [{ required: true, message: '请输入标包数量', trigger: 'blur' }] +}) diff --git a/src/views/eam/sparePartsApplyMain/index.vue b/src/views/eam/sparePartsApplyMain/index.vue new file mode 100644 index 000000000..698503b35 --- /dev/null +++ b/src/views/eam/sparePartsApplyMain/index.vue @@ -0,0 +1,372 @@ + + + diff --git a/src/views/eam/transaction/index.vue b/src/views/eam/transaction/index.vue new file mode 100644 index 000000000..c9857a614 --- /dev/null +++ b/src/views/eam/transaction/index.vue @@ -0,0 +1,241 @@ + + + diff --git a/src/views/eam/transaction/transaction.data.ts b/src/views/eam/transaction/transaction.data.ts new file mode 100644 index 000000000..f75af8ac6 --- /dev/null +++ b/src/views/eam/transaction/transaction.data.ts @@ -0,0 +1,94 @@ +import type { CrudSchema } from '@/hooks/web/useCrudSchemas' + +// 表单校验 +export const Rules = reactive({ + itemNumber: [required], + locationNumber: [required], + inventoryAction: [required], + businessType: [required], + uom: [required], +}) + +export const Transaction = useCrudSchemas(reactive([ + { + label: '备件编号', + field: 'itemNumber', + sort: 'custom', + isSearch: true, + }, + { + label: '库位编码', + field: 'locationNumber', + sort: 'custom', + isSearch: true, + }, + { + label: '事务类型', + field: 'transactionType', + sort: 'custom', + dictType: DICT_TYPE.TRANSACTION_TYPE, + dictClass: 'string', + isSearch: false, + isTable: true, + table: { + width: 150 + }, + tableForm: { + type: 'Select' + } + }, + { + label: '库存动作', + field: 'inventoryAction', + sort: 'custom', + dictType: DICT_TYPE.INVENTORY_ACTION, + dictClass: 'string', + isSearch: false, + isTable: true, + table: { + width: 150 + }, + tableForm: { + type: 'Select' + } + }, + { + label: '库存状态', + field: 'inventoryStatus', + sort: 'custom', + isSearch: false, + form: { + component: 'Radio' + }, + }, + { + label: '关联单号', + field: 'associatedNumber', + sort: 'custom', + isSearch: false, + form: { + component: 'Radio' + }, + }, + { + label: '计量单位', + field: 'uom', + sort: 'custom', + isSearch: false, + }, + { + label: '数量', + field: 'qty', + sort: 'custom', + isSearch: false, + }, + { + label: '操作', + field: 'action', + isForm: false, + table: { + width: 150, + fixed: 'right' + } + } +])) From 6011f084407d98d407710d07e45393e95fb5b886 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=B7=BB=E7=A0=96-JAVA=5CAdministrator?= <591141169@qq.com> Date: Fri, 7 Jun 2024 11:25:09 +0800 Subject: [PATCH 35/40] =?UTF-8?q?BUG=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/eam/applicationRecord/index.vue | 540 ++++++++++++---------- 1 file changed, 301 insertions(+), 239 deletions(-) diff --git a/src/views/eam/applicationRecord/index.vue b/src/views/eam/applicationRecord/index.vue index 46c6691d2..f37e311d3 100644 --- a/src/views/eam/applicationRecord/index.vue +++ b/src/views/eam/applicationRecord/index.vue @@ -1,309 +1,371 @@ @@ -162,7 +162,7 @@ const searchTableSuccess = (formField, searchField, val, formRef, type, row ) => }) } // if(formField == 'itemCode') { - // row['uom'] = val[0]['customerUom'] + // row['uom'] = val[0]['customerUom'] // } // 明细查询页赋值 row[formField] = val[0][searchField] @@ -414,7 +414,7 @@ const handleExport = async () => { const data = await DeliverPlanMainApi.exportDeliverPlanMain(tableObject.params) download.excel(data, '发货计划主.xlsx') }else{ - const data = await DeliverRequestMainApi.exportZZBJDeliverPlanMain(tableObject.params) + const data = await DeliverPlanMainApi.exportZZBJDeliverPlanMain(tableObject.params) download.excel(data, '自制备件发货计划主.xlsx') } } catch { From ac146e24a86df6b927adf1cacf29131afc746513 Mon Sep 17 00:00:00 2001 From: TengXF <302828528@qq.com> Date: Fri, 7 Jun 2024 11:42:37 +0800 Subject: [PATCH 38/40] =?UTF-8?q?bug=E4=BF=AE=E5=A4=8D=20=E5=8E=BB?= =?UTF-8?q?=E6=8E=89=E5=B7=A5=E5=BA=8F=E4=BB=A3=E7=A0=81=E5=BF=85=E5=A1=AB?= =?UTF-8?q?=E9=A1=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../productscrapRequestMain.data.ts | 32 +++++++++---------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/src/views/wms/productionManage/productscrap/productscrapRequestMain/productscrapRequestMain.data.ts b/src/views/wms/productionManage/productscrap/productscrapRequestMain/productscrapRequestMain.data.ts index 06833299d..8b8359079 100644 --- a/src/views/wms/productionManage/productscrap/productscrapRequestMain/productscrapRequestMain.data.ts +++ b/src/views/wms/productionManage/productscrap/productscrapRequestMain/productscrapRequestMain.data.ts @@ -44,7 +44,7 @@ const queryParams = { // id 转str 否则form回显匹配不到 userDept.id = userDept.id.toString() const userDeptArray:any = [userDept] - + /** * @returns {Array} 制品报废申请主表 @@ -250,7 +250,7 @@ export const ProductscrapRequestMain = useCrudSchemas(reactive([ }, isForm: false, }, - + { label: '创建时间', field: 'createTime', @@ -539,7 +539,7 @@ export const ProductscrapRequestDetail = useCrudSchemas(reactive([ isForm: false, isTableForm: false, }, - + { label: '来源工位代码', field: 'workStationCode', @@ -837,7 +837,7 @@ export const ProductscrapRequestDetail = useCrudSchemas(reactive([ } } }, - + { label: '包装号', field: 'packingNumber', @@ -884,8 +884,8 @@ export const ProductscrapRequestDetail = useCrudSchemas(reactive([ disabled: true } }, - - + + { label: '库存状态', field: 'inventoryStatus', @@ -916,7 +916,7 @@ export const ProductscrapRequestDetail = useCrudSchemas(reactive([ isForm: false, isTableForm: false, }, - + { label: '物料描述1', field: 'itemDesc1', @@ -939,8 +939,8 @@ export const ProductscrapRequestDetail = useCrudSchemas(reactive([ isForm: false, isTableForm: false, }, - - + + { label: '项目代码', field: 'projectCode', @@ -952,7 +952,7 @@ export const ProductscrapRequestDetail = useCrudSchemas(reactive([ isForm: false, isTableForm: false, }, - + { label: '最后更新时间', field: 'updateTime', @@ -1047,7 +1047,7 @@ export const ProductscrapRequestDetail = useCrudSchemas(reactive([ isTableForm: false, isForm: false }, - + { label: '操作', field: 'action', @@ -1075,9 +1075,9 @@ export const ProductscrapRequestDetailRules = reactive({ workStationCode: [ { required: true, message: '请选择工位代码', trigger: 'change' } ], - processCode: [ - { required: true, message: '请选择工序代码', trigger: 'change' } - ], + // processCode: [ + // { required: true, message: '请选择工序代码', trigger: 'change' } + // ], itemCode: [ { required: true, message: '请选择物料代码', trigger: 'change' } ], @@ -1189,7 +1189,7 @@ export const ProdcutscrapBomScrap = useCrudSchemas(reactive([ disabled: true } }, - + { label: '从库位代码', field: 'fromLocationCode', @@ -1261,5 +1261,5 @@ export const ProdcutscrapBomScrap = useCrudSchemas(reactive([ //表单校验 export const ProdcutscrapBomScrapRules = reactive({ - + }) From 032ab53a24d339f0a822d84f379a001832695bed Mon Sep 17 00:00:00 2001 From: yufei0306 <13417315+yufei0306@user.noreply.gitee.com> Date: Fri, 7 Jun 2024 11:57:48 +0800 Subject: [PATCH 39/40] =?UTF-8?q?=E5=AE=A2=E6=88=B7=E6=9C=88=E5=8F=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env.wyf | 30 +++++++++---------- .../customerdock/customerdock.data.ts | 8 ++--- 2 files changed, 19 insertions(+), 19 deletions(-) diff --git a/.env.wyf b/.env.wyf index ae1a58502..5b2520335 100644 --- a/.env.wyf +++ b/.env.wyf @@ -3,16 +3,16 @@ NODE_ENV=test VITE_DEV=false -# 请求路径 -VITE_BASE_URL='http://192.168.0.108:12080' -# 上传路径 -VITE_UPLOAD_URL='http://192.168.0.108:12080/admin-api/infra/file/upload' +# # # 请求路径 +# VITE_BASE_URL='http://192.168.0.110:12080' +# # 上传路径 +# VITE_UPLOAD_URL='http://192.168.0.110:12080/admin-api/infra/file/upload' -# # 请求路径 -# VITE_BASE_URL='http://dev.ccwin-in.com:25300/api' +# 请求路径 +VITE_BASE_URL='http://dev.ccwin-in.com:25300/api' -# # 上传路径 -# VITE_UPLOAD_URL='http://dev.ccwin-in.com:25300/api/admin-api/infra/file/upload' +# 上传路径 +VITE_UPLOAD_URL='http://dev.ccwin-in.com:25300/api/admin-api/infra/file/upload' # 接口前缀 VITE_API_BASEPATH= @@ -35,17 +35,17 @@ VITE_BASE_PATH=/ # 输出路径 VITE_OUT_DIR=sfms3.0 +# # 自定义接口路径 +# VITE_INTERFACE_URL='http://192.168.0.108:12080/magic/web/index.html' + +# # 积木报表请求路径 +# VITE_JMREPORT_BASE_URL='http://192.168.0.108:12080' + # 自定义接口路径 -VITE_INTERFACE_URL='http://192.168.0.108:12080/magic/web/index.html' +VITE_INTERFACE_URL='http://dev.ccwin-in.com:25310/magic/web/index.html' # 积木报表请求路径 VITE_JMREPORT_BASE_URL='http://192.168.0.108:12080' -# # 自定义接口路径 -# VITE_INTERFACE_URL='http://dev.ccwin-in.com:25310/magic/web/index.html' - -# # 积木报表请求路径 -# VITE_JMREPORT_BASE_URL='http://dev.ccwin-in.com:25310' - # 租户配置 VITE_TENANT='["长春","成都"]' \ No newline at end of file diff --git a/src/views/wms/basicDataManage/customerManage/customerdock/customerdock.data.ts b/src/views/wms/basicDataManage/customerManage/customerdock/customerdock.data.ts index 3c0c61dd3..27a5f66e5 100644 --- a/src/views/wms/basicDataManage/customerManage/customerdock/customerdock.data.ts +++ b/src/views/wms/basicDataManage/customerManage/customerdock/customerdock.data.ts @@ -142,7 +142,7 @@ export const Customerdock = useCrudSchemas(reactive([ form: { // // labelMessage: '信息提示说明!!!', componentProps: { - disabled:true + // disabled:true // isSearchList: true, // 开启查询弹窗 // searchListPlaceholder: '请选择库位代码', // 输入框占位文本 // searchField: 'code', // 查询弹窗赋值字段 @@ -285,9 +285,9 @@ export const CustomerdockRules = reactive({ { max: 50, message: '不得超过50个字符', trigger: 'blur' }, { validator:validateYS, message: '请输入正确的代码', trigger: 'blur'} ], - defaultLocationCode:[ - { required: true, message: '请选择库位代码', trigger: 'blur' }, - ], + // defaultLocationCode:[ + // { required: true, message: '请选择库位代码', trigger: 'blur' }, + // ], name: [ { max: 50, message: '不得超过50个字符', trigger: 'blur' } ], From 4ec85a110aa66612346bf191f42dccb6dd943dbd Mon Sep 17 00:00:00 2001 From: yufei0306 <13417315+yufei0306@user.noreply.gitee.com> Date: Fri, 7 Jun 2024 12:01:27 +0800 Subject: [PATCH 40/40] =?UTF-8?q?=E8=AE=BE=E7=BD=AE=20bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/rowDrop/index.vue | 103 +++++++++--------- .../supplierdeliverRecordMain.data.ts | 1 + 2 files changed, 50 insertions(+), 54 deletions(-) diff --git a/src/components/rowDrop/index.vue b/src/components/rowDrop/index.vue index cfc21a0f5..f9e4b9a96 100644 --- a/src/components/rowDrop/index.vue +++ b/src/components/rowDrop/index.vue @@ -47,11 +47,14 @@ const allData = ref([]) // 字段设置列表展现字段 除操作外 const checkedDataList = ref([]) const checkAll = ref(true) const handlecheckallchange = (val: boolean) => { + console.log('handlecheckallchange全部',val) checkedDataList.value = val ? allData.value : [] isIndeterminate.value = false save() } const handlecheckedchange = (value: string[]) => { + console.log('handlecheckedchange',value) + console.log('allData',allData.value) const checkedCount = value.length checkAll.value = checkedCount === allData.value.length isIndeterminate.value = checkedCount > 0 && checkedCount < allData.value.length @@ -80,44 +83,43 @@ const closeRowDrop = () => { // 保存 const save = () => { - let saveDate:any[] = [] // 默认列表第一列(弹出详情用) let myTableColumns = props.allSchemas.tableColumns if(props.detailAllSchemas){ myTableColumns = [...props.allSchemas?.tableColumns,...props.detailAllSchemas?.tableMainColumns] } - let actionData = myTableColumns.find(item=>item.field=='action') - if(actionData){ - myTableColumns.splice(myTableColumns[actionData],1) - myTableColumns = [...myTableColumns,actionData] - } - if(props.allSchemas?.tableColumns[0].fixed=='left'&&!saveDate.find(item=>item.fixed=='left')){ - saveDate.push(props.allSchemas?.tableColumns[0]) - } - allData.value.forEach((item) => { - const _item:any = myTableColumns.find(itemColumns => (itemColumns.label == item )) - if(_item){ - _item.isTable = false - if (checkedDataList.value.indexOf(_item.label) > -1) { - _item.isTable = true - if(!saveDate.includes(_item)){ + console.log('myTableColumns',myTableColumns) + console.log('checkedDataList',checkedDataList) + console.log('allData',allData.value) + + let leftArr = [] + let rightArr = [] + myTableColumns.forEach(item=>{ + if(item.fixed=='left'){ + leftArr.push(item) + }else if(item.fixed=='right'){ + rightArr.push(item) + } + }) + let saveDate:any[] = [...leftArr] + allData.value.forEach(itemLabel=>{ + const _item:any = myTableColumns.find(itemColumns => (itemColumns.label == itemLabel )) + if(_item){ + _item.isTable = checkedDataList.value.find(checkedLabel => checkedLabel==itemLabel)?true:false + if(_item.isTable){ saveDate.push(_item) } } - } }) - // 默认操作列 - if(actionData&&!saveDate.includes(actionData)){ - saveDate.push(actionData) - } + saveDate = [...saveDate,...rightArr] updataTableColumns(saveDate) - console.log(99, saveDate) - let paramsData = saveDate.map(item=>({ label:item.label, fixed:item.fixed, - field:item.field + field:item.field, + isTable:item.isTable })) + console.log('paramsData',paramsData) RedisApi.addRedis({key: routeName.value,value: JSON.stringify(paramsData)}).then(() => { }).catch(err => { console.log(err) @@ -149,46 +151,41 @@ const dragover = (e) => { // 初始化当前全选状态 const initSelectSta = () => { RedisApi.getRedis(routeName.value).then(res => { - - let _myTableColumns = [...props.allSchemas?.tableColumns] + let myTableColumns = [...props.allSchemas?.tableColumns] if(props.detailAllSchemas){ - _myTableColumns = [...props.allSchemas?.tableColumns,...props.detailAllSchemas?.tableMainColumns] + myTableColumns = [...props.allSchemas?.tableColumns,...props.detailAllSchemas?.tableMainColumns] } - updateSort(_myTableColumns) + let leftArr = [] + let rightArr = [] + myTableColumns.forEach(item=>{ + if(item.fixed=='left'){ + leftArr.push(item) + }else if(item.fixed=='right'){ + rightArr.push(item) + } + }) + updateSort(myTableColumns) // 有缓存 if (res) { checkedDataList.value = [] allData.value = [] // 缓存回显临时变量 - const _showTableColumns = [] - _showTableColumns.push(_myTableColumns[0]) + const _showTableColumns = [...leftArr] // 显示缓存中的字段 JSON.parse(res).forEach((item, index) => { // 列表字段第一个不能参与排序及显隐操作(详情弹窗必备) // 列表字段操作列不能参与排序及显隐操作 if (!item.fixed) { - if (item.field != 'action') { + if (item.isTable) { checkedDataList.value.push(item.label) - _showTableColumns.push(_myTableColumns.find(myItem => (myItem.label == item.label))) - allData.value.push(t(`ts.${item.label}`).replace('ts.','')) } + let itemColumn = myTableColumns.find(myItem => (myItem.label == item.label)) + itemColumn.isTable = item.isTable + _showTableColumns.push(itemColumn) + allData.value.push(t(`ts.${item.label}`).replace('ts.','')) } }) - - // 字段设置 显示全部字段 - _myTableColumns?.forEach((myTableItem, index) => { - // 列表字段第一个不能参与排序及显隐操作(详情弹窗必备) - // 列表字段操作列不能参与排序及显隐操作 - if (!myTableItem.fixed) { - if (myTableItem.field != 'action') { - if (allData.value.indexOf(myTableItem.label) == -1) { - allData.value.push(t(`ts.${myTableItem.label}`).replace('ts.','')) - } - } - } - }) - - _showTableColumns.push(_myTableColumns[_myTableColumns.length-1]) + _showTableColumns = [..._showTableColumns,...rightArr] if(checkedDataList.value.length>0){ if(allData.value?.length != checkedDataList.value.length){ isIndeterminate.value = true @@ -206,18 +203,16 @@ const initSelectSta = () => { } else { // 无缓存 checkedDataList.value = [] allData.value = [] - _myTableColumns?.forEach((item, index) => { + myTableColumns?.forEach((item, index) => { // 列表字段第一个不能参与排序及显隐操作(详情弹窗必备) // 列表字段操作列不能参与排序及显隐操作 if (!item.fixed) { - if (item.field != 'action') { - checkedDataList.value.push(item.label) - allData.value.push(t(`ts.${item.label}`).replace('ts.','')) - } + checkedDataList.value.push(item.label) + allData.value.push(t(`ts.${item.label}`).replace('ts.','')) } }) checkAll.value = true - updataTableColumns(_myTableColumns) + updataTableColumns(myTableColumns) } }).catch(err => { console.log(err) diff --git a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRecordMain/supplierdeliverRecordMain.data.ts b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRecordMain/supplierdeliverRecordMain.data.ts index 20e9c604d..d4b7f0c34 100644 --- a/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRecordMain/supplierdeliverRecordMain.data.ts +++ b/src/views/wms/purchasereceiptManage/supplierdeliver/supplierdeliverRecordMain/supplierdeliverRecordMain.data.ts @@ -675,6 +675,7 @@ export const SupplierdeliverRecordDetail = useCrudSchemas(reactive label: '单据号', field: 'number', sort: 'custom', + hiddenInMain:true, table: { width: 180 },