diff --git a/mes-module-majoys/mes-module-majoys-biz/src/main/java/com/chanko/yunxi/mes/module/biz/dal/dataobject/material/MaterialDO.java b/mes-module-majoys/mes-module-majoys-biz/src/main/java/com/chanko/yunxi/mes/module/biz/dal/dataobject/material/MaterialDO.java index 57191025..1d9ad342 100644 --- a/mes-module-majoys/mes-module-majoys-biz/src/main/java/com/chanko/yunxi/mes/module/biz/dal/dataobject/material/MaterialDO.java +++ b/mes-module-majoys/mes-module-majoys-biz/src/main/java/com/chanko/yunxi/mes/module/biz/dal/dataobject/material/MaterialDO.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.*; import com.chanko.yunxi.mes.framework.tenant.core.db.TenantBaseDO; import io.swagger.v3.oas.annotations.media.Schema; import lombok.*; +import org.apache.poi.hpsf.Decimal; import java.math.BigDecimal; @@ -181,4 +182,43 @@ public class MaterialDO extends TenantBaseDO { */ private String ts; + @TableField(exist = false) + private String matName; + + @TableField(exist = false) + private String matCode; + + @TableField(exist = false) + private String matSpec; + + @TableField(exist = false) + private String matBrand; + + @TableField(exist = false) + private String matType; + + @TableField(exist = false) + private String matUnit; + + @TableField(exist = false) + private String whId; + + @TableField(exist = false) + private String whName; + + @TableField(exist = false) + private String pnId; + + @TableField(exist = false) + private String pnName; + + @TableField(exist = false) + private String rgId; + + @TableField(exist = false) + private String rgName; + + @TableField(exist = false) + private Decimal storageOkQty; + } diff --git a/mes-module-majoys/mes-module-majoys-biz/src/main/java/com/chanko/yunxi/mes/module/biz/dal/mysql/material/MaterialMapper.java b/mes-module-majoys/mes-module-majoys-biz/src/main/java/com/chanko/yunxi/mes/module/biz/dal/mysql/material/MaterialMapper.java index 85d499d0..dc202dd6 100644 --- a/mes-module-majoys/mes-module-majoys-biz/src/main/java/com/chanko/yunxi/mes/module/biz/dal/mysql/material/MaterialMapper.java +++ b/mes-module-majoys/mes-module-majoys-biz/src/main/java/com/chanko/yunxi/mes/module/biz/dal/mysql/material/MaterialMapper.java @@ -5,9 +5,11 @@ import com.chanko.yunxi.mes.framework.common.pojo.PageResult; import com.chanko.yunxi.mes.framework.mybatis.core.mapper.BaseMapperX; import com.chanko.yunxi.mes.framework.mybatis.core.query.MPJLambdaWrapperX; import com.chanko.yunxi.mes.module.biz.controller.admin.material.vo.MaterialPageReqVO; +import com.chanko.yunxi.mes.module.biz.controller.admin.storagelog.vo.StorageNowAllReqVO; import com.chanko.yunxi.mes.module.biz.controller.admin.tplusstorageout.vo.TplusStorageOutPageReqVO; import com.chanko.yunxi.mes.module.biz.dal.dataobject.material.MaterialDO; import com.chanko.yunxi.mes.module.biz.dal.dataobject.procedure.ProcedureDO; +import com.chanko.yunxi.mes.module.biz.dal.dataobject.storage.StorageDO; import com.chanko.yunxi.mes.module.biz.dal.dataobject.supplier.SupplierDO; import com.chanko.yunxi.mes.module.biz.dal.dataobject.tpluslasteststock.TplusLastestStockDO; import com.chanko.yunxi.mes.module.biz.dal.dataobject.tplusstorageout.TplusStorageOutDO; @@ -94,4 +96,36 @@ public interface MaterialMapper extends BaseMapperX { return selectPage(reqVO, query); } + + default PageResult selectStorageCheckMatAllData(StorageNowAllReqVO queryReqVO){ + MPJLambdaWrapper query = new MPJLambdaWrapper<>(); + query.selectAll(MaterialDO.class) + .select("t.code as mat_code,t.name as mat_name") + .select("t.spec as mat_spec,t.brand as mat_brand") + .select("ifNull(a.lot_no,'') as lot_no,t.short_name") +// .select("material_type as mat_type") +// .select("unit as mat_unit") + .select("b.label as mat_type") + .select("c.label as mat_unit") + .select("ifNull(a.wh_id,'') as wh_id") + .select("ifNull(a.wh_name,'') as wh_name") + .select("ifNull(a.rg_id,'') as rg_id") + .select("ifNull(a.rg_name,'') as rg_name") + .select("ifNull(a.pn_id,'') as pn_id") + .select("ifNull(a.pn_name,'') as pn_name") + .select("ifNull(a.storage_ok_qty,0) as storage_ok_qty") + .leftJoin("(select * from v_storage_material_now where wh_id="+queryReqVO.getWhId()+") as a on a.id=t.id") + .leftJoin("system_dict_data as b on b.value=t.material_type and b.dict_type='biz_material_type'") + .leftJoin("system_dict_data as c on c.value=t.material_type and c.dict_type='biz_material_unit'") + .orderByDesc(MaterialDO::getCode); + query.like(!StringUtils.isEmpty(queryReqVO.getMatSpec()),MaterialDO::getSpec,queryReqVO.getMatSpec()) + .eq(queryReqVO.getMatType()!=null,MaterialDO::getMaterialType,queryReqVO.getMatType()) + .apply(!StringUtils.isEmpty(queryReqVO.getMatCode()),"(t.name like {0} or t.name like {0})","%"+queryReqVO.getMatCode()+"%") + ; + + + return selectPage(queryReqVO,query); + } + + } diff --git a/mes-module-majoys/mes-module-majoys-biz/src/main/java/com/chanko/yunxi/mes/module/biz/dal/mysql/storage/StorageMapper.java b/mes-module-majoys/mes-module-majoys-biz/src/main/java/com/chanko/yunxi/mes/module/biz/dal/mysql/storage/StorageMapper.java index 66003bab..27037f18 100644 --- a/mes-module-majoys/mes-module-majoys-biz/src/main/java/com/chanko/yunxi/mes/module/biz/dal/mysql/storage/StorageMapper.java +++ b/mes-module-majoys/mes-module-majoys-biz/src/main/java/com/chanko/yunxi/mes/module/biz/dal/mysql/storage/StorageMapper.java @@ -3,6 +3,7 @@ package com.chanko.yunxi.mes.module.biz.dal.mysql.storage; import com.chanko.yunxi.mes.framework.common.pojo.PageResult; import com.chanko.yunxi.mes.framework.mybatis.core.mapper.BaseMapperX; import com.chanko.yunxi.mes.module.biz.controller.admin.storage.vo.StoragePageReqVO; +import com.chanko.yunxi.mes.module.biz.controller.admin.storagelog.vo.StorageNowAllReqVO; import com.chanko.yunxi.mes.module.biz.dal.dataobject.material.MaterialDO; import com.chanko.yunxi.mes.module.biz.dal.dataobject.projectorder.ProjectOrderDO; import com.chanko.yunxi.mes.module.biz.dal.dataobject.projectorder.ProjectOrderSubDO; @@ -68,4 +69,6 @@ public interface StorageMapper extends BaseMapperX { void updateMatTenantId(); + + } diff --git a/mes-module-majoys/mes-module-majoys-biz/src/main/java/com/chanko/yunxi/mes/module/biz/dal/mysql/storagelog/StorageLogNowMapper.java b/mes-module-majoys/mes-module-majoys-biz/src/main/java/com/chanko/yunxi/mes/module/biz/dal/mysql/storagelog/StorageLogNowMapper.java index 38b47685..0e625d14 100644 --- a/mes-module-majoys/mes-module-majoys-biz/src/main/java/com/chanko/yunxi/mes/module/biz/dal/mysql/storagelog/StorageLogNowMapper.java +++ b/mes-module-majoys/mes-module-majoys-biz/src/main/java/com/chanko/yunxi/mes/module/biz/dal/mysql/storagelog/StorageLogNowMapper.java @@ -61,7 +61,21 @@ public interface StorageLogNowMapper extends BaseMapperX { PageResult selectAllPage(StorageLogPageReqVO reqVO); - PageResult selectNoZero(StorageNowAllReqVO reqVO); + default PageResult selectNoZero(StorageNowAllReqVO reqVO){ + MPJLambdaWrapper query = new MPJLambdaWrapper<>(); + + query.selectAll(StorageLogNowDO.class) + .orderByDesc(StorageLogNowDO::getMatCode); + + query.gt(true,StorageLogNowDO::getStorageOkQty,0) + .eq(reqVO.getWhId()!=null,StorageLogNowDO::getWhId,reqVO.getWhId()) + .like(reqVO.getMatSpec()!=null && !reqVO.getMatSpec().isEmpty(),StorageLogNowDO::getMatSpec,reqVO.getMatSpec()) + .eq(reqVO.getMatType()!=null && !reqVO.getMatType().isEmpty(),StorageLogNowDO::getMatType,reqVO.getMatType()) + .apply(reqVO.getMatCode()!=null && !reqVO.getMatCode().isEmpty(),"(t.name like {0} or t.name like {0})","%"+reqVO.getMatCode()+"%") + ; + + return selectPage(reqVO,query); + } PageResult selectNowList(StorageNowAllReqVO reqVO); diff --git a/mes-module-majoys/mes-module-majoys-biz/src/main/java/com/chanko/yunxi/mes/module/biz/service/storagelog/StorageLogServiceImpl.java b/mes-module-majoys/mes-module-majoys-biz/src/main/java/com/chanko/yunxi/mes/module/biz/service/storagelog/StorageLogServiceImpl.java index 2cc5ebf4..f36a1a59 100644 --- a/mes-module-majoys/mes-module-majoys-biz/src/main/java/com/chanko/yunxi/mes/module/biz/service/storagelog/StorageLogServiceImpl.java +++ b/mes-module-majoys/mes-module-majoys-biz/src/main/java/com/chanko/yunxi/mes/module/biz/service/storagelog/StorageLogServiceImpl.java @@ -3,6 +3,7 @@ package com.chanko.yunxi.mes.module.biz.service.storagelog; import com.chanko.yunxi.mes.module.biz.controller.admin.storagelog.vo.StorageLogPageReqVO; import com.chanko.yunxi.mes.module.biz.controller.admin.storagelog.vo.StorageLogSaveReqVO; import com.chanko.yunxi.mes.module.biz.controller.admin.storagelog.vo.StorageNowAllReqVO; +import com.chanko.yunxi.mes.module.biz.dal.mysql.material.MaterialMapper; import com.chanko.yunxi.mes.module.biz.dal.mysql.storagelog.StorageLogAllMapper; import com.chanko.yunxi.mes.module.biz.dal.mysql.storagelog.StorageLogMapper; import com.chanko.yunxi.mes.module.biz.dal.mysql.storagelog.StorageLogNowMapper; @@ -44,6 +45,9 @@ public class StorageLogServiceImpl implements StorageLogService { @Resource private StorageMaterialMapper storageMaterialMapper; + @Resource + private MaterialMapper materialMapper; + @Override public Long createStorageLog(StorageLogSaveReqVO createReqVO) { // 插入 @@ -113,7 +117,8 @@ public class StorageLogServiceImpl implements StorageLogService { return storageLogNowMapper.selectNoZero(queryReqVO); }else{ // 筛选全部的实时库存数据,包含未分配仓库的物料信息和已分配仓库的物料信息 - return storageLogNowMapper.selectNowList(queryReqVO); +// return storageLogNowMapper.selectNowList(queryReqVO); + return BeanUtils.toBean(materialMapper.selectStorageCheckMatAllData(queryReqVO),StorageLogNowDO.class); } // } diff --git a/mes-module-majoys/mes-module-majoys-biz/src/main/resources/mapper/storagelog/StorageLogNowMapper.xml b/mes-module-majoys/mes-module-majoys-biz/src/main/resources/mapper/storagelog/StorageLogNowMapper.xml index b69c03f1..3b892b79 100644 --- a/mes-module-majoys/mes-module-majoys-biz/src/main/resources/mapper/storagelog/StorageLogNowMapper.xml +++ b/mes-module-majoys/mes-module-majoys-biz/src/main/resources/mapper/storagelog/StorageLogNowMapper.xml @@ -46,7 +46,7 @@