From 8aad2e12c1ce5a8278130fb0d6c93224c7a3a66b Mon Sep 17 00:00:00 2001 From: z Date: Thu, 23 Oct 2025 18:38:30 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=A1=B9=E7=9B=AE=E7=AE=80?= =?UTF-8?q?=E7=A7=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../materialplan/MaterialPlanMapper.java | 8 +++- .../MaterialPlanBoomMapper.java | 22 +++++++--- .../heli/dal/mysql/matreq/MatReqMapper.java | 7 +++- .../processbom/ProcessBomDetailMapper.java | 6 ++- .../PurchaseOrderMakeDetailMapper.java | 23 ++++++++--- .../PurchaseOrderNoMapper.java | 8 +++- .../PurchaseOrderNoDetailMapper.java | 26 ++++++++---- .../dal/mysql/storagein/StorageInMapper.java | 8 +++- .../TaskDispatchDetailMapper.java | 6 ++- mes-ui/mes-ui-admin-vue3/.env.dev | 8 ++-- .../views/heli/materialplan/management.vue | 8 ++-- .../src/views/heli/materialplan/part.vue | 8 ++-- .../heli/materialplan/partmanagement.vue | 8 ++-- .../views/heli/materialplan/purchasemake.vue | 9 ++-- .../src/views/heli/materialplan/standard.vue | 8 ++-- .../views/heli/materialplan/standardbuy.vue | 9 ++-- .../src/views/heli/matreq/index.vue | 8 ++-- .../src/views/heli/matreq/standardParts.vue | 8 ++-- .../src/views/heli/partpurchase/index.vue | 15 +++---- .../views/heli/partpurchasecheck/indexs.vue | 8 ++-- .../views/heli/partpurchaseorder/index.vue | 8 ++-- .../src/views/heli/purchaseorderno/index.vue | 8 ++-- .../views/heli/purchaseorderno/management.vue | 8 ++-- .../heli/purchaseorderno/partReceived.vue | 8 ++-- .../views/heli/purchaseorderno/received.vue | 8 ++-- .../src/views/heli/storagein/index.vue | 8 ++-- mes-ui/mini-app/src/pages/index/index.vue | 20 ++++----- .../pages/receivingGoods/receivingGoods.vue | 39 ++++++++++++++++-- .../static/images/assembleReport-default.png | Bin 44694 -> 0 bytes 29 files changed, 203 insertions(+), 115 deletions(-) delete mode 100644 mes-ui/mini-app/src/static/images/assembleReport-default.png diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/materialplan/MaterialPlanMapper.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/materialplan/MaterialPlanMapper.java index 3260c042..a2a8c079 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/materialplan/MaterialPlanMapper.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/materialplan/MaterialPlanMapper.java @@ -13,6 +13,7 @@ import com.chanko.yunxi.mes.module.heli.dal.dataobject.plan.PlanDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.procedure.ProcedureDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.processbom.ProcessBomDetailDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.projectorder.ProjectOrderDO; +import com.chanko.yunxi.mes.module.heli.dal.dataobject.projectorder.ProjectOrderSubDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.taskreport.TaskReportDO; import com.chanko.yunxi.mes.module.system.dal.dataobject.user.AdminUserDO; import com.github.yulichang.wrapper.MPJLambdaWrapper; @@ -54,13 +55,16 @@ public interface MaterialPlanMapper extends BaseMapperX { .leftJoin(ProcessBomDetailDO.class,"p",ProcessBomDetailDO::getId, MaterialPlanBoomDO::getBoomDetailId) .leftJoin(ProjectOrderDO.class,"pro", ProjectOrderDO::getId, MaterialPlanDO::getProjectId) .leftJoin(ProcedureDO.class,"pd",ProcedureDO::getId, MaterialPlanBoomDO::getProcedureId) + .leftJoin(ProjectOrderSubDO.class,"sub",ProjectOrderSubDO::getId,MaterialPlanDO::getProjectPlanSubId) .groupBy(MaterialPlanDO::getId) .orderByDesc(MaterialPlanDO::getCreateTime); query.like(!StringUtils.isEmpty(pageReqVO.getProjectMaterialPlanNo()), MaterialPlanDO::getProjectMaterialPlanNo, pageReqVO.getProjectMaterialPlanNo()) - .like(!StringUtils.isEmpty(pageReqVO.getProjectName()),MaterialPlanDO::getProjectName, pageReqVO.getProjectName()) +// .like(!StringUtils.isEmpty(pageReqVO.getProjectName()),MaterialPlanDO::getProjectName, pageReqVO.getProjectName()) + .like(!StringUtils.isEmpty(pageReqVO.getProjectName()),ProjectOrderDO::getProjectNameSim, pageReqVO.getProjectName()) .like(!StringUtils.isEmpty(pageReqVO.getProjectCode()),ProjectOrderDO::getCode, pageReqVO.getProjectCode()) .like(!StringUtils.isEmpty(pageReqVO.getCustomerName()),MaterialPlanDO::getBrief, pageReqVO.getCustomerName()) - .like(!StringUtils.isEmpty(pageReqVO.getProjectSubName()), MaterialPlanDO::getName, pageReqVO.getProjectSubName()) +// .like(!StringUtils.isEmpty(pageReqVO.getProjectSubName()), MaterialPlanDO::getName, pageReqVO.getProjectSubName()) + .like(!StringUtils.isEmpty(pageReqVO.getProjectSubName()), ProjectOrderSubDO::getNameSim, pageReqVO.getProjectSubName()) .like(!StringUtils.isEmpty(pageReqVO.getMaterialName()), MaterialPlanBoomDO::getMatName, pageReqVO.getMaterialName()) .like(!StringUtils.isEmpty(pageReqVO.getBlueprintNo()), ProcessBomDetailDO::getBlueprintNo, pageReqVO.getBlueprintNo()) .like(!StringUtils.isEmpty(pageReqVO.getProcedureName()), ProcedureDO::getName, pageReqVO.getProcedureName()) diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/materialplanboom/MaterialPlanBoomMapper.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/materialplanboom/MaterialPlanBoomMapper.java index 3e1d78d8..b5dae243 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/materialplanboom/MaterialPlanBoomMapper.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/materialplanboom/MaterialPlanBoomMapper.java @@ -21,6 +21,7 @@ import com.chanko.yunxi.mes.module.heli.dal.dataobject.procedure.ProcedureDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.processbom.ProcessBomDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.processbom.ProcessBomDetailDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.projectorder.ProjectOrderDO; +import com.chanko.yunxi.mes.module.heli.dal.dataobject.projectorder.ProjectOrderSubDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.purchaseordermakedetail.PurchaseOrderMakeDetailDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.rg.RgDO; import com.chanko.yunxi.mes.module.heli.dal.dataobject.storageinventory.StorageInventoryDO; @@ -93,13 +94,16 @@ public interface MaterialPlanBoomMapper extends BaseMapperX .leftJoin(AdminUserDO.class,"u",AdminUserDO::getId, MaterialPlanBoomDO::getDuEmpId) .leftJoin(MaterialDO.class,"m",MaterialDO::getId, MaterialPlanBoomDO::getMaterialId) .leftJoin(SupplierDO.class, "f", SupplierDO::getId, MaterialPlanBoomDO::getSupplierId) + .leftJoin(ProjectOrderSubDO.class,"sub",ProjectOrderSubDO::getId,MaterialPlanBoomDO::getProjectPlanSubId) .eq(MaterialPlanDO::getMatType,0) .in(MaterialPlanBoomDO::getIsPurYard,Arrays.asList(0,5)) .disableSubLogicDel() .groupBy(MaterialPlanBoomDO::getId) .orderByDesc(MaterialPlanBoomDO::getCreateTime); - query.like(ObjectUtil.isNotEmpty(pageReqVO.getProjectName()),MaterialPlanDO::getProjectName, pageReqVO.getProjectName()); - query.like(ObjectUtil.isNotEmpty(pageReqVO.getProjectSubName()),MaterialPlanDO::getName, pageReqVO.getProjectSubName()); +// query.like(ObjectUtil.isNotEmpty(pageReqVO.getProjectName()),MaterialPlanDO::getProjectName, pageReqVO.getProjectName()); +// query.like(ObjectUtil.isNotEmpty(pageReqVO.getProjectSubName()),MaterialPlanDO::getName, pageReqVO.getProjectSubName()); + query.like(ObjectUtil.isNotEmpty(pageReqVO.getProjectName()),ProjectOrderDO::getProjectNameSim, pageReqVO.getProjectName()); + query.like(ObjectUtil.isNotEmpty(pageReqVO.getProjectSubName()),ProjectOrderSubDO::getNameSim, pageReqVO.getProjectSubName()); query.like(ObjectUtil.isNotEmpty(pageReqVO.getMaterialName()),MaterialPlanBoomDO::getMatName, pageReqVO.getMaterialName()); query.like(ObjectUtil.isNotEmpty(pageReqVO.getProjectCode()),ProjectOrderDO::getCode, pageReqVO.getProjectCode()); query.like(ObjectUtil.isNotEmpty(pageReqVO.getOwnerName()),AdminUserDO::getNickname, pageReqVO.getOwnerName()); @@ -200,6 +204,7 @@ public interface MaterialPlanBoomMapper extends BaseMapperX .select("d.spec as boomSpec","d.blueprint_no as blueprintNo","d.unit as boomUnit","DATE_FORMAT(t.boom_arrive_date, '%Y-%m-%d') AS boomArriveDates") .leftJoin(MaterialPlanDO.class, "p", MaterialPlanDO::getId,MaterialPlanBoomDO::getProjectMaterialPlanId) .leftJoin(ProjectOrderDO.class,"b",ProjectOrderDO::getId,MaterialPlanDO::getProjectId) + .leftJoin(ProjectOrderSubDO.class,"sub",ProjectOrderSubDO::getId,MaterialPlanBoomDO::getProjectPlanSubId) .leftJoin(ProcessBomDetailDO.class,"d",ProcessBomDetailDO::getId,MaterialPlanBoomDO::getBoomDetailId) .leftJoin("project_mat_req_detail mat on (t.id=mat.project_material_plan_detail_id and mat.deleted=0 and mat.tenant_id = 2)") .leftJoin("base_material m ON (m.id = mat.material_id and m.tenant_id = 2) ") @@ -211,8 +216,10 @@ public interface MaterialPlanBoomMapper extends BaseMapperX .groupBy(MaterialPlanBoomDO::getId) .orderByDesc(MaterialPlanBoomDO::getCreateTime); query - .like(!StringUtils.isEmpty(pageReqVO.getProjectName()),MaterialPlanDO::getProjectName, pageReqVO.getProjectName()) - .like(!StringUtils.isEmpty(pageReqVO.getProjectSubName()), MaterialPlanDO::getName, pageReqVO.getProjectSubName()) +// .like(!StringUtils.isEmpty(pageReqVO.getProjectName()),MaterialPlanDO::getProjectName, pageReqVO.getProjectName()) +// .like(!StringUtils.isEmpty(pageReqVO.getProjectSubName()), MaterialPlanDO::getName, pageReqVO.getProjectSubName()) + .like(!StringUtils.isEmpty(pageReqVO.getProjectName()),ProjectOrderDO::getProjectNameSim, pageReqVO.getProjectName()) + .like(!StringUtils.isEmpty(pageReqVO.getProjectSubName()), ProjectOrderSubDO::getNameSim, pageReqVO.getProjectSubName()) .like(!StringUtils.isEmpty(pageReqVO.getMaterialName()), MaterialPlanBoomDO::getMatName, pageReqVO.getMaterialName()) .like(!StringUtils.isEmpty(pageReqVO.getProjectCode()), ProjectOrderDO::getCode, pageReqVO.getProjectCode()) .eq(!StringUtils.isEmpty(pageReqVO.getMatType()), MaterialPlanDO::getMatType, pageReqVO.getMatType()) @@ -240,15 +247,18 @@ public interface MaterialPlanBoomMapper extends BaseMapperX .select(MaterialPlanDO::getBrief, MaterialPlanDO::getCustomerId, MaterialPlanDO::getProjectId, MaterialPlanDO::getProjectNameSim) .leftJoin(MaterialPlanDO.class, "p", MaterialPlanDO::getId,MaterialPlanBoomDO::getProjectMaterialPlanId) .leftJoin(ProcessBomDetailDO.class,"d",ProcessBomDetailDO::getId,MaterialPlanBoomDO::getBoomDetailId) + .leftJoin(ProjectOrderSubDO.class,"sub",ProjectOrderSubDO::getId,MaterialPlanBoomDO::getProjectPlanSubId) .leftJoin(AdminUserDO.class, "a", AdminUserDO::getId, MaterialPlanBoomDO::getDuEmpId) .leftJoin(ProcedureDO.class, "c", ProcedureDO::getId, MaterialPlanBoomDO::getProcedureId) .leftJoin(CompositionDO.class, "e", CompositionDO::getId, ProcessBomDetailDO::getCompositionId) .leftJoin(SupplierDO.class, "f", SupplierDO::getId, PurchaseOrderMakeDetailDO::getSupplierId) .disableSubLogicDel(); query - .like(!StringUtils.isEmpty(pageReqVO.getProjectName()),MaterialPlanDO::getProjectName, pageReqVO.getProjectName()) +// .like(!StringUtils.isEmpty(pageReqVO.getProjectName()),MaterialPlanDO::getProjectName, pageReqVO.getProjectName()) + .like(!StringUtils.isEmpty(pageReqVO.getProjectName()),ProjectOrderDO::getProjectNameSim, pageReqVO.getProjectName()) .like(!StringUtils.isEmpty(pageReqVO.getBlueprintNo()),ProcessBomDetailDO::getBlueprintNo, pageReqVO.getBlueprintNo()) - .like(!StringUtils.isEmpty(pageReqVO.getProjectSubName()), MaterialPlanDO::getName, pageReqVO.getProjectSubName()) +// .like(!StringUtils.isEmpty(pageReqVO.getProjectSubName()), MaterialPlanDO::getName, pageReqVO.getProjectSubName()) + .like(!StringUtils.isEmpty(pageReqVO.getProjectSubName()), ProjectOrderSubDO::getNameSim, pageReqVO.getProjectSubName()) .like(!StringUtils.isEmpty(pageReqVO.getMaterialName()), MaterialPlanBoomDO::getMatName, pageReqVO.getMaterialName()) .like(!StringUtils.isEmpty(pageReqVO.getMatName()), MaterialPlanBoomDO::getMatName, pageReqVO.getMatName()) .like(!StringUtils.isEmpty(pageReqVO.getProjectCode()), ProjectOrderDO::getCode, pageReqVO.getProjectCode()) diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/matreq/MatReqMapper.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/matreq/MatReqMapper.java index 4bf75afd..0e8a9afe 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/matreq/MatReqMapper.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/matreq/MatReqMapper.java @@ -33,13 +33,16 @@ public interface MatReqMapper extends BaseMapperX { .leftJoin(MatReqDetailDO.class, "d", MatReqDetailDO::getMatReqId, MatReqDO::getId) .leftJoin(MaterialDO.class, "m", MaterialDO::getId, MatReqDetailDO::getMaterialId) .leftJoin(ProjectOrderDO.class, "p", ProjectOrderDO::getId, MatReqDO::getProjectId) + .leftJoin(ProjectOrderSubDO.class, "ps", ProjectOrderSubDO::getId, MatReqDetailDO::getProjectPlanSubId) .leftJoin(CustomerDO.class, "c", CustomerDO::getId, MatReqDO::getCustomerId) .disableSubLogicDel() .groupBy(MatReqDO::getId) .orderByDesc(MatReqDO::getCreateTime); query.like(!StringUtils.isEmpty(reqVO.getMatReqNo()), MatReqDO::getMatReqNo, reqVO.getMatReqNo()) - .like(!StringUtils.isEmpty(reqVO.getProjectName()),MatReqDO::getProjectName, reqVO.getProjectName()) - .like(!StringUtils.isEmpty(reqVO.getProjectSubName()), MatReqDetailDO::getName,reqVO.getProjectSubName()) +// .like(!StringUtils.isEmpty(reqVO.getProjectName()),MatReqDO::getProjectName, reqVO.getProjectName()) +// .like(!StringUtils.isEmpty(reqVO.getProjectSubName()), MatReqDetailDO::getName,reqVO.getProjectSubName()) + .like(!StringUtils.isEmpty(reqVO.getProjectName()),ProjectOrderDO::getProjectNameSim, reqVO.getProjectName()) + .like(!StringUtils.isEmpty(reqVO.getProjectSubName()), ProjectOrderSubDO::getNameSim,reqVO.getProjectSubName()) .like(!StringUtils.isEmpty(reqVO.getMaterialName()), MaterialDO::getName, reqVO.getMaterialName()) .like(!StringUtils.isEmpty(reqVO.getProjectCode()), ProjectOrderDO::getCode, reqVO.getProjectCode()) .like(!StringUtils.isEmpty(reqVO.getCustomerName()), CustomerDO::getBrief, reqVO.getCustomerName()) diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/processbom/ProcessBomDetailMapper.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/processbom/ProcessBomDetailMapper.java index 08961d0e..6bb1b208 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/processbom/ProcessBomDetailMapper.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/processbom/ProcessBomDetailMapper.java @@ -222,8 +222,10 @@ public interface ProcessBomDetailMapper extends BaseMapperX query .like(!StringUtils.isEmpty(pageReqVO.getProjectCode()), ProjectOrderDO::getCode, pageReqVO.getProjectCode()) - .like(!StringUtils.isEmpty(pageReqVO.getProjectName()), ProjectOrderDO::getProjectName, pageReqVO.getProjectName()) - .like(!StringUtils.isEmpty(pageReqVO.getProjectSubName()), ProjectOrderSubDO::getName, pageReqVO.getProjectSubName()) +// .like(!StringUtils.isEmpty(pageReqVO.getProjectName()), ProjectOrderDO::getProjectName, pageReqVO.getProjectName()) +// .like(!StringUtils.isEmpty(pageReqVO.getProjectSubName()), ProjectOrderSubDO::getName, pageReqVO.getProjectSubName()) + .like(!StringUtils.isEmpty(pageReqVO.getProjectName()), ProjectOrderDO::getProjectNameSim, pageReqVO.getProjectName()) + .like(!StringUtils.isEmpty(pageReqVO.getProjectSubName()), ProjectOrderSubDO::getNameSim, pageReqVO.getProjectSubName()) .like(!StringUtils.isEmpty(pageReqVO.getMaterialName()), ProcessBomDetailDO::getMaterialName, pageReqVO.getMaterialName()) .like(!StringUtils.isEmpty(pageReqVO.getOwnerName()), AdminUserDO::getNickname, pageReqVO.getOwnerName()) .like(!StringUtils.isEmpty(pageReqVO.getProjectMaterialPlanNo()), MaterialPlanDO::getProjectMaterialPlanNo, pageReqVO.getProjectMaterialPlanNo()) diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/purchaseordermakedetail/PurchaseOrderMakeDetailMapper.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/purchaseordermakedetail/PurchaseOrderMakeDetailMapper.java index 6f693c59..89a0c2f4 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/purchaseordermakedetail/PurchaseOrderMakeDetailMapper.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/purchaseordermakedetail/PurchaseOrderMakeDetailMapper.java @@ -58,8 +58,11 @@ public interface PurchaseOrderMakeDetailMapper extends BaseMapperX { .leftJoin(AdminUserDO.class,"u", AdminUserDO::getId, PurchaseOrderNoDetailDO::getDuEmpId) .leftJoin(AdminUserDO.class,"u1", AdminUserDO::getId, PurchaseOrderNoDO::getCreator) .leftJoin(ProjectOrderDO.class,"p", ProjectOrderDO::getId, PurchaseOrderNoDetailDO::getProjectId) + .leftJoin(ProjectOrderSubDO.class,"sub", ProjectOrderSubDO::getId, PurchaseOrderNoDetailDO::getProjectPlanSubId) .leftJoin(CustomerDO.class,"c", CustomerDO::getId, PurchaseOrderNoDetailDO::getCustomerId) .disableSubLogicDel() .groupBy(PurchaseOrderNoDO::getId) @@ -70,9 +72,11 @@ public interface PurchaseOrderNoMapper extends BaseMapperX { // .eq(reqVO.getReceivingStatus() != null, PurchaseOrderNoDO::getReceivingStatus, reqVO.getReceivingStatus()) .eq(reqVO.getPurchaseType() != null, PurchaseOrderNoDO::getPurchaseType, reqVO.getPurchaseType()) .eq(reqVO.getGoodsType() != null, PurchaseOrderNoDO::getGoodsType, reqVO.getGoodsType()) - .like(!StringUtils.isEmpty(reqVO.getProjectName()), PurchaseOrderNoDetailDO::getProjectName, reqVO.getProjectName()) +// .like(!StringUtils.isEmpty(reqVO.getProjectName()), PurchaseOrderNoDetailDO::getProjectName, reqVO.getProjectName()) + .like(!StringUtils.isEmpty(reqVO.getProjectName()), ProjectOrderDO::getProjectNameSim, reqVO.getProjectName()) .like(!StringUtils.isEmpty(reqVO.getProjectCode()), ProjectOrderDO::getCode, reqVO.getProjectCode()) - .like(!StringUtils.isEmpty(reqVO.getProjectSubName()), PurchaseOrderNoDetailDO::getName, reqVO.getProjectSubName()) +// .like(!StringUtils.isEmpty(reqVO.getProjectSubName()), PurchaseOrderNoDetailDO::getName, reqVO.getProjectSubName()) + .like(!StringUtils.isEmpty(reqVO.getProjectSubName()), ProjectOrderSubDO::getNameSim, reqVO.getProjectSubName()) .like(!StringUtils.isEmpty(reqVO.getUsername()), AdminUserDO::getNickname, reqVO.getUsername()) .like(!ObjectUtil.isEmpty(reqVO.getBoomName()), PurchaseOrderNoDetailDO::getBoomName, reqVO.getBoomName()) .like(!ObjectUtil.isEmpty(reqVO.getCustomerName()), CustomerDO::getBrief, reqVO.getCustomerName()) diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/purchaseordernodetail/PurchaseOrderNoDetailMapper.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/purchaseordernodetail/PurchaseOrderNoDetailMapper.java index 1cec9124..56d7140b 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/purchaseordernodetail/PurchaseOrderNoDetailMapper.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/purchaseordernodetail/PurchaseOrderNoDetailMapper.java @@ -106,6 +106,7 @@ public interface PurchaseOrderNoDetailMapper extends BaseMapperXe.like(PurchaseOrderNoDetailDO::getBoomName, pageReqVO.getSubOrDetailName()).or().like( +// ProcessBomDetailDO::getBlueprintNo, pageReqVO.getSubOrDetailName() +// ).or().like(ProcedureDO::getName, pageReqVO.getSubOrDetailName())); +// } if (pageReqVO.getSubOrDetailName() != null && !pageReqVO.getSubOrDetailName().trim().equals("")){ - query.and( e ->e.like(PurchaseOrderNoDetailDO::getBoomName, pageReqVO.getSubOrDetailName()).or().like( - ProcessBomDetailDO::getBlueprintNo, pageReqVO.getSubOrDetailName() - ).or().like(ProcedureDO::getName, pageReqVO.getSubOrDetailName())); + query.and( e ->e.eq(ProjectOrderDO::getProjectName, pageReqVO.getSubOrDetailName()).or().eq( + ProjectOrderSubDO::getName, pageReqVO.getSubOrDetailName() + ).or().eq(ProcessBomDetailDO::getMaterialName, pageReqVO.getSubOrDetailName()).or().eq(ProcessBomDetailDO::getBomBlueprintNo, pageReqVO.getSubOrDetailName())); + // query.eq(" (b.project_name like '%" + reqVO.getSubOrDetailName() + "%' or c.name like '%" + reqVO.getSubOrDetailName() + "%')"); } query .like(!StringUtils.isEmpty(pageReqVO.getProjectName()), PurchaseOrderNoDetailDO::getProjectName, pageReqVO.getProjectName()) @@ -271,10 +281,12 @@ public interface PurchaseOrderNoDetailMapper extends BaseMapperX { .leftJoin(StorageInDetailDO.class, "s", StorageInDetailDO::getStorageNoId, StorageInDO::getId) .leftJoin(SupplierDO.class,"sup", SupplierDO::getId, StorageInDetailDO::getSupplierId) .leftJoin(ProjectOrderDO.class, "p", ProjectOrderDO::getId, StorageInDetailDO::getProjectId) + .leftJoin(ProjectOrderSubDO.class,"sub",ProjectOrderSubDO::getId, StorageInDetailDO::getProjectPlanSubId) .disableSubLogicDel() .groupBy(StorageInDO::getId) .orderByDesc(PurchaseOrderDO::getCreateTime); query.like(!StringUtils.isEmpty(reqVO.getStorageNo()), StorageInDO::getStorageNo, reqVO.getStorageNo()); - query.like(!StringUtils.isEmpty(reqVO.getProjectName()), StorageInDetailDO::getProjectName, reqVO.getProjectName()); - query.like(!StringUtils.isEmpty(reqVO.getProjectSubName()), StorageInDetailDO::getName, reqVO.getProjectSubName()); +// query.like(!StringUtils.isEmpty(reqVO.getProjectName()), StorageInDetailDO::getProjectName, reqVO.getProjectName()); +// query.like(!StringUtils.isEmpty(reqVO.getProjectSubName()), StorageInDetailDO::getName, reqVO.getProjectSubName()); + query.like(!StringUtils.isEmpty(reqVO.getProjectName()), ProjectOrderDO::getProjectNameSim, reqVO.getProjectName()); + query.like(!StringUtils.isEmpty(reqVO.getProjectSubName()), ProjectOrderSubDO::getNameSim, reqVO.getProjectSubName()); query.like(!StringUtils.isEmpty(reqVO.getSupplierName()), SupplierDO::getBrief, reqVO.getSupplierName()); query.like(!StringUtils.isEmpty(reqVO.getBoomName()), StorageInDetailDO::getBoomName, reqVO.getBoomName()); query.like(!StringUtils.isEmpty(reqVO.getProjectCode()), ProjectOrderDO::getCode, reqVO.getProjectCode()); diff --git a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/taskdispatch/TaskDispatchDetailMapper.java b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/taskdispatch/TaskDispatchDetailMapper.java index f466224c..84394802 100644 --- a/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/taskdispatch/TaskDispatchDetailMapper.java +++ b/mes-module-heli/mes-module-heli-biz/src/main/java/com/chanko/yunxi/mes/module/heli/dal/mysql/taskdispatch/TaskDispatchDetailMapper.java @@ -765,9 +765,11 @@ public interface TaskDispatchDetailMapper extends BaseMapperX - + - - + + diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/part.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/part.vue index bfa940c7..d30c30cb 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/part.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/part.vue @@ -9,14 +9,14 @@ - - + + - - + + diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/partmanagement.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/partmanagement.vue index eebbe403..db7ce105 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/partmanagement.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/partmanagement.vue @@ -12,16 +12,16 @@ v-model="queryParams.projectCode" placeholder="请输入项目编码" clearable @keyup.enter="handleQuery" class="!w-240px" /> - + - - + + diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/purchasemake.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/purchasemake.vue index 04f58709..ddd083dd 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/purchasemake.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/purchasemake.vue @@ -9,14 +9,14 @@ - - + + - - + + @@ -205,6 +205,7 @@ const queryParams = reactive({ const queryParams1 = reactive({ pageNo: 1, pageSize: 999, + status:1, }) const queryFormRef = ref() // 搜索的表单 const exportLoading = ref(false) // 导出的加载中 diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/standard.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/standard.vue index b65b657a..a11313c5 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/standard.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/standard.vue @@ -9,14 +9,14 @@ - - + + - - + + diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/standardbuy.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/standardbuy.vue index 2a5e6b9d..f9d781e3 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/standardbuy.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/materialplan/standardbuy.vue @@ -9,14 +9,14 @@ - - + + - - + + @@ -221,6 +221,7 @@ const queryParams = reactive({ const queryParams1 = reactive({ pageNo: 1, pageSize: 999, + status:1 }) const queryFormRef = ref() // 搜索的表单 const exportLoading = ref(false) // 导出的加载中 diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/matreq/index.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/matreq/index.vue index 2babeb11..a9103267 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/matreq/index.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/matreq/index.vue @@ -17,10 +17,10 @@ class="!w-240px" /> - + - + - - + - - + + diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/partpurchase/index.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/partpurchase/index.vue index 02ec99b0..5a5d5eb6 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/partpurchase/index.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/partpurchase/index.vue @@ -9,8 +9,8 @@ - - + + - - + + @@ -292,6 +292,7 @@ const queryParams = reactive({ const queryParams1 = reactive({ pageNo: 1, pageSize: 999, + status:1 }) const queryFormRef = ref() // 搜索的表单 const exportLoading = ref(false) // 导出的加载中 @@ -326,9 +327,9 @@ const getList = async () => { history.state.idid=undefined list.value = data.list list.value.forEach(item=> { - if(item.unitPrice == null || item.unitPrice==''){ - item.unitPrice=0 - } + // if(item.unitPrice == null || item.unitPrice==''){ + // item.unitPrice=0 + // } if(item.estimatedPrices == null || item.estimatedPrices==''){ item.estimatedPrices=0 } diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/partpurchasecheck/indexs.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/partpurchasecheck/indexs.vue index 5fd781db..4b38dfce 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/partpurchasecheck/indexs.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/partpurchasecheck/indexs.vue @@ -11,16 +11,16 @@ v-model="queryParams.projectCode" placeholder="请输入项目编号" clearable @keyup.enter="handleQuery" class="!w-240px" /> - + - - + + - - + + - - + + diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/purchaseorderno/index.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/purchaseorderno/index.vue index adab4e98..8c220c82 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/purchaseorderno/index.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/purchaseorderno/index.vue @@ -11,9 +11,9 @@ v-model="queryParams.projectCode" placeholder="请输入项目编码" clearable @keyup.enter="handleQuery" class="!w-240px" /> - + @@ -26,9 +26,9 @@ /> - + diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/purchaseorderno/management.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/purchaseorderno/management.vue index e6a29dd7..59a6bfc8 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/purchaseorderno/management.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/purchaseorderno/management.vue @@ -11,17 +11,17 @@ v-model="queryParams.projectCode" placeholder="请输入项目编码" clearable @keyup.enter="handleQuery" class="!w-240px" /> - + - + diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/purchaseorderno/partReceived.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/purchaseorderno/partReceived.vue index bd875209..caf34dfa 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/purchaseorderno/partReceived.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/purchaseorderno/partReceived.vue @@ -17,9 +17,9 @@ v-model="queryParams.projectCode" placeholder="请输入项目编码" clearable @keyup.enter="handleQuery" class="!w-240px" /> - + @@ -31,9 +31,9 @@ class="!w-240px" /> - + diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/purchaseorderno/received.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/purchaseorderno/received.vue index 33045a0b..673c264b 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/purchaseorderno/received.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/purchaseorderno/received.vue @@ -11,17 +11,17 @@ v-model="queryParams.projectCode" placeholder="请输入项目编码" clearable @keyup.enter="handleQuery" class="!w-240px" /> - + - + diff --git a/mes-ui/mes-ui-admin-vue3/src/views/heli/storagein/index.vue b/mes-ui/mes-ui-admin-vue3/src/views/heli/storagein/index.vue index f2d3ee0e..89929515 100644 --- a/mes-ui/mes-ui-admin-vue3/src/views/heli/storagein/index.vue +++ b/mes-ui/mes-ui-admin-vue3/src/views/heli/storagein/index.vue @@ -11,17 +11,17 @@ v-model="queryParams.projectCode" placeholder="请输入项目编码" clearable @keyup.enter="handleQuery" class="!w-240px" /> - + - + diff --git a/mes-ui/mini-app/src/pages/index/index.vue b/mes-ui/mini-app/src/pages/index/index.vue index abd50f97..6fb997d8 100644 --- a/mes-ui/mini-app/src/pages/index/index.vue +++ b/mes-ui/mini-app/src/pages/index/index.vue @@ -28,56 +28,56 @@ const categoryList = ref([ name: "品质异常通知", auth: false, imgUrl: "/static/images/unqualifiedNotification.png", - defaultImgUrl: "/static/images/assembleReport-default.png", + defaultImgUrl: "/static/images/approveOrder-default.png", }, { path: "productionReport", name: "生产报工", auth: false, imgUrl: "/static/images/productionReport.png", - defaultImgUrl: "/static/images/productionReport-default.png", + defaultImgUrl: "/static/images/approveOrder-default.png", }, { path: "assembleReport", name: "装配报工", auth: false, imgUrl: "/static/images/assembleReport.png", - defaultImgUrl: "/static/images/assembleReport-default.png", + defaultImgUrl: "/static/images/approveOrder-default.png", }, { path: "pgMaster", name: "过程检报工", auth: false, imgUrl: "/static/images/guochengjian.png", - defaultImgUrl: "/static/images/assembleReport-default.png", + defaultImgUrl: "/static/images/approveOrder-default.png", }, { path: "zjPgMaster", name: "终检报工", auth: false, imgUrl: "/static/images/zhongjian.png", - defaultImgUrl: "/static/images/assembleReport-default.png", + defaultImgUrl: "/static/images/approveOrder-default.png", }, { path: "moJuSheJiReport", name: "进度上报", auth: false, imgUrl: "/static/images/mojusheji.png", - defaultImgUrl: "/static/images/assembleReport-default.png", + defaultImgUrl: "/static/images/approveOrder-default.png", }, { path: "cgdsp", name: "采购单审批", auth: false, imgUrl: "/static/images/pic_cgdsp.png", - defaultImgUrl: "/static/images/assembleReport-default.png", + defaultImgUrl: "/static/images/approveOrder-default.png", }, { path: "messageNotification", name: "消息通知", auth: false, imgUrl: "/static/images/pic_message.png", - defaultImgUrl: "/static/images/assembleReport-default.png", + defaultImgUrl: "/static/images/approveOrder-default.png", unReadCount: 0, // 未读消息数 }, { @@ -85,14 +85,14 @@ const categoryList = ref([ name: "品质异常确认", auth: false, imgUrl: "/static/images/unqualifiedNotificationConfirm.png", - defaultImgUrl: "/static/images/assembleReport-default.png", + defaultImgUrl: "/static/images/approveOrder-default.png", }, { path: "receivingGoods", name: "采购收货", auth: false, imgUrl: "/static/images/pic_cgsh.png", - defaultImgUrl: "/static/images/assembleReport-default.png", + defaultImgUrl: "/static/images/approveOrder-default.png", }, ]); const categoryList1 = ref([ diff --git a/mes-ui/mini-app/src/pages/receivingGoods/receivingGoods.vue b/mes-ui/mini-app/src/pages/receivingGoods/receivingGoods.vue index f846d2bc..0806e1c8 100644 --- a/mes-ui/mini-app/src/pages/receivingGoods/receivingGoods.vue +++ b/mes-ui/mini-app/src/pages/receivingGoods/receivingGoods.vue @@ -53,7 +53,8 @@ isFinish.value = true; } }; - const todayStr = ref(""); + const isScanning = ref(false) + const todayStr = ref(""); const searchVal = ref(""); onMounted(async () => { isFinish.value = false; @@ -62,7 +63,7 @@ await getListData(); }); - const isScanning = ref(false) + // 自定义下拉刷新被触发 const onRefresherrefresh = async () => { @@ -77,7 +78,24 @@ // 关闭动画 isTriggered.value = false; }; + const handleScan = async () => { + if (isScanning.value) return; + isScanning.value = true; + try { + console.log('触发扫码') + const res = await uni.scanCode(); + console.log(res.result) + searchVal.value = res.result; + // 使用 setTimeout 确保 UI 更新 + await new Promise(resolve => setTimeout(resolve, 0)); + await handleSearch({ inputValue: res.result }); + } catch (error) { + uni.showToast({ title: '扫码失败', icon: 'none' }); + } finally { + isScanning.value = false; + } + }; const handleSearch = async (e) => { // 重置状态 @@ -87,7 +105,7 @@ // 设置搜索词 queryParams.subOrDetailName = e.inputValue; - searchVal.value = e.inputaVlue; // 同步输入框值 + searchVal.value = e.inputValue; // 同步输入框值 try { await getListData(); } catch (error) { @@ -206,7 +224,22 @@ height: 50px; line-height: 50px; " @input="handleSearch({ inputValue: searchVal })" clearable /> + + + + + diff --git a/mes-ui/mini-app/src/static/images/assembleReport-default.png b/mes-ui/mini-app/src/static/images/assembleReport-default.png deleted file mode 100644 index f2f6860b7fbae519d40c7ea9db7dd68ba5680d59..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 44694 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