From 24fc98301c0b38a76b7d5aa704fe79a2e385e584 Mon Sep 17 00:00:00 2001 From: 石广澎 <shiguangpeng@163.com> Date: 星期三, 29 十一月 2023 14:20:41 +0800 Subject: [PATCH] feat: 1、物品分发部门查询 2、分发新增数量校验 --- consum-base/src/main/java/com/consum/base/service/LWhFormInventoryServiceImpl.java | 62 +++++++++++++++++++----------- 1 files changed, 39 insertions(+), 23 deletions(-) diff --git a/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryServiceImpl.java index 45982fd..cb62402 100644 --- a/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryServiceImpl.java +++ b/consum-base/src/main/java/com/consum/base/service/LWhFormInventoryServiceImpl.java @@ -16,19 +16,22 @@ import com.consum.model.po.FinSysTenant; import com.consum.model.po.FinSysTenantUser; import com.consum.model.po.LWhFormInventory; +import com.iplatform.model.po.S_user_core; import com.walker.db.page.GenericPager; import com.walker.infrastructure.utils.DateUtils; import com.walker.infrastructure.utils.StringUtils; import com.walker.jdbc.service.BaseServiceImpl; -import java.util.HashMap; -import java.util.List; -import java.util.Map; import lombok.extern.slf4j.Slf4j; import org.apache.commons.compress.utils.Lists; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.context.annotation.Lazy; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; /** * @Description 鐩樼偣 @@ -44,15 +47,14 @@ @Autowired private BaseWarehouseServiceImpl baseWarehouseService; @Autowired - private FinSysTenantUserServiceImpl finSysTenantUserService; - @Autowired private LWhFormInventoryGoodsServiceImpl inventoryGoodsService; - @Autowired - private BaseGoodsTemplateServiceImpl baseGoodsTemplateService; @Autowired private LWhGoodsService lWhGoodsService; @Autowired private FinSysTenantServiceImpl finSysTenantService; + @Autowired + @Lazy + private LWhFormInventoryCoreService lWhFormInventoryCoreService; private static final String QUERY_LIST = "select * from l_wh_form_inventory where 1=1 "; @@ -180,20 +182,39 @@ } + /** * 淇濆瓨鐩樼偣淇℃伅 * * @author 鍗㈠簡闃� * @date 2023/10/31 */ - public int updateInventoryInfo(LWhFormInventoryParam dto, Integer state) { + public int updateInventoryInfo(LWhFormInventoryParam dto, Integer state, S_user_core currentUser, FinSysTenantUser sysInfo) { //1.鏍规嵁鐩樼偣鍗昳d鏌ヨ鐩樼偣鍗� LWhFormInventory lWhFormInventory = this.get(new LWhFormInventory(dto.getId())); if (lWhFormInventory == null) { log.error("鏍规嵁鐩樼偣鍗昳d鏌ヨ鐩樼偣鍗曞け璐�"); return 0; } - //2.淇敼鐩樼偣鍗� + //娣诲姞鐩樼偣鍗曠墿鍝� + List<FormInventoryGoodsVO> inventoryGoodsList = dto.getInventoryGoodsList(); + if (CollectionUtils.isEmpty(inventoryGoodsList)) { + log.error("鐩樼偣鍗曠墿鍝佷负绌�"); + return 0; + } + this.inventoryGoodsService.updateInventoryGoods(inventoryGoodsList); + //淇敼鐩樼偣鍗� + if (state == 2) { + //瀹屾垚鐩樼偣鏃惰缃畬鎴愮洏鐐规椂闂� + lWhFormInventory.setStopTime(DateUtils.getDateTimeNumber(System.currentTimeMillis())); + + //瀹屾垚鐩樼偣鏃惰缃畬鎴愮洏鐐规椂闂� + String inOutFormByInventoryId = lWhFormInventoryCoreService.createInOutFormByInventoryId(dto.getId(), currentUser, sysInfo); + if (!StringUtils.isEmpty(inOutFormByInventoryId)) { + log.error(inOutFormByInventoryId); + return 0; + } + } lWhFormInventory.setStates(state); lWhFormInventory.setInventoryDate(DateUtils.getDateTimeNumber(System.currentTimeMillis())); int flag1 = this.update(lWhFormInventory); @@ -201,13 +222,7 @@ log.error("淇敼鐩樼偣鍗曞け璐�"); return 0; } - //3.娣诲姞鐩樼偣鍗曠墿鍝� - List<FormInventoryGoodsVO> inventoryGoodsList = dto.getInventoryGoodsList(); - if (CollectionUtils.isEmpty(inventoryGoodsList)) { - log.error("鐩樼偣鍗曠墿鍝佷负绌�"); - return 0; - } - this.inventoryGoodsService.updateInventoryGoods(inventoryGoodsList); + return 1; } @@ -323,9 +338,10 @@ mapGenericPager.getDatas().forEach(item -> { FormInventoryDetailVO formInventoryDetailVO = MapUtils.convertMapToObj(item, FormInventoryDetailVO.class); formInventoryDetailVO.setInventoryResultType( - formInventoryDetailVO.getInventoryResult() == null ? null : (formInventoryDetailVO.getInventoryResult() == 2 ? "鐩樼泩" : "鐩樹簭")); + formInventoryDetailVO.getInventoryResult() == null ? null : (formInventoryDetailVO.getInventoryResult() == 2 ? "鐩樼泩" : "鐩樹簭")); formInventoryDetailVO.setInventoryType( - formInventoryDetailVO.getInventoryResult() == null ? null : (formInventoryDetailVO.getInventoryResult() == 2 ? "鐩樼泩鍏ュ簱" : "鐩樹簭鍑哄簱")); + formInventoryDetailVO.getInventoryResult() == null ? null : (formInventoryDetailVO.getInventoryResult() == 2 ? "鐩樼泩鍏ュ簱" : "鐩樹簭鍑哄簱")); + formInventoryDetailVO.setWarehouseFormCode(formInventoryDetailVO.getWarehouseFormCode()); result.add(formInventoryDetailVO); }); pageUtil.setDatas(result); @@ -335,8 +351,8 @@ public List<FormInventoryGoodsVO> selectDetailById(Long id) { String sql = "select fig.id, fig.BASE_GOODS_TEMPLATE_ID,fig.GOODS_TEMPLATE_NAME,fig.BASE_GOODS_MODELS_NAME," - + "fig.INIT_COUNTS inventoryCount,fig.INVENTORY_COUNTS realNum,fig.INVENTORY_RESULT status,fig.unit,bgt.CLASSIFICATION type from " - + "l_wh_form_inventory_goods fig left join base_goods_template bgt on bgt.id =fig.BASE_GOODS_TEMPLATE_ID where fig.WH_FORM_INVENTORY_ID = :id"; + + "fig.INIT_COUNTS inventoryCount,fig.INVENTORY_COUNTS realNum,fig.INVENTORY_RESULT status,fig.unit,bgt.CLASSIFICATION type from " + + "l_wh_form_inventory_goods fig left join base_goods_template bgt on bgt.id =fig.BASE_GOODS_TEMPLATE_ID where fig.WH_FORM_INVENTORY_ID = :id"; HashMap<String, Object> param = new HashMap<>(); param.put("id", id); List<Map<String, Object>> select = select(sql, param, new MapperUtil()); @@ -366,9 +382,9 @@ formInventoryVO.setWarehouseName(inventory.getWarehouseName()); String sql = - "select bgm.id,bgt.id baseGoodsTemplateId,bgt.GOODS_NAME goodsTemplateName,bgm.MODEL_NAME baseGoodsModelsName,bgt.CLASSIFICATION type,bgm.UNIT " - + "from base_goods_models bgm left join base_goods_template bgt on bgm.GOODS_TEMPLATES_ID = bgt.id " - + "where bgt.AGENCY_ID = :agencyId"; + "select bgm.id,bgt.id baseGoodsTemplateId,bgt.GOODS_NAME goodsTemplateName,bgm.MODEL_NAME baseGoodsModelsName,bgt.CLASSIFICATION type,bgm.UNIT " + + "from base_goods_models bgm left join base_goods_template bgt on bgm.GOODS_TEMPLATES_ID = bgt.id " + + "where bgt.AGENCY_ID = :agencyId"; HashMap<String, Object> param = new HashMap<>(); param.put("agencyId", inventory.getAgencyId()); List<Map<String, Object>> result = this.select(sql, param, new MapperUtil()); -- Gitblit v1.9.1