| | |
| | | import com.consum.base.pojo.response.FormScrappedGoodsVO; |
| | | import com.consum.base.pojo.response.GoodsModelVO; |
| | | import com.consum.base.pojo.response.LWhFormScrappedExtendVO; |
| | | import com.consum.model.po.BaseGoodsModels; |
| | | import com.consum.model.po.BaseGoodsTemplate; |
| | | import com.consum.model.po.BaseWarehouse; |
| | | import com.consum.model.po.FinSysTenantDepartment; |
| | | import com.consum.model.po.FinSysTenantUser; |
| | | import com.consum.model.po.LWhFormScrapped; |
| | | import com.consum.model.po.LWhFormScrappedGoods; |
| | | import com.consum.model.po.SDictData; |
| | | import com.consum.model.po.*; |
| | | import com.iplatform.model.po.S_user_core; |
| | | import com.walker.db.page.GenericPager; |
| | | import com.walker.infrastructure.utils.StringUtils; |
| | | import com.walker.jdbc.service.BaseServiceImpl; |
| | | import java.util.ArrayList; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | import java.util.stream.Collectors; |
| | | import org.apache.commons.compress.utils.Lists; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.interceptor.TransactionAspectSupport; |
| | | import org.springframework.util.CollectionUtils; |
| | | |
| | | import java.util.*; |
| | | import java.util.stream.Collectors; |
| | | |
| | | /** |
| | | * @Description 报废单 |
| | |
| | | @Autowired |
| | | private LWhFormScrappedCoreService lWhFormScrappedCoreService; |
| | | |
| | | private static String QUERY_LIST = "SELECT fs.* FROM l_wh_form_scrapped fs left join l_wh_form_scrapped_goods fsg on fs.id = fsg.FORM_SCRAPPED_ID WHERE 1 = 1 "; |
| | | private static String QUERY_LIST = "SELECT DISTINCT fs.* FROM l_wh_form_scrapped fs left join l_wh_form_scrapped_goods fsg on fs.id = fsg.FORM_SCRAPPED_ID WHERE 1 = 1 "; |
| | | |
| | | private static final String QUERY_BF_DETAIL_LIST = "select fs.id,fs.BUSINESS_FORM_CODE,fsg.GOODS_TEMPLATE_NAME,fsg.BASE_GOODS_MODELS_NAME,fsg.COUNTS," |
| | | + "fs.AGENCY_NAME,OPERATOR_NAME,DEAL_TIME from l_wh_form_scrapped fs " |
| | |
| | | * @return 1.新增报废单 2.新增报废单物品 |
| | | */ |
| | | |
| | | public int add(LWhFormScrappedParam param, S_user_core currentUser, FinSysTenantUser sysInfo) { |
| | | public int add(LWhFormScrappedParam param, int warehouseType, S_user_core currentUser, FinSysTenantUser sysInfo) { |
| | | //1.新增报废单记录 |
| | | LWhFormScrapped lWhFormScrapped = new LWhFormScrapped(); |
| | | //报废单id |
| | | long lWhFormScrappedId = IdUtil.generateId(); |
| | | lWhFormScrapped.setId(lWhFormScrappedId); |
| | | lWhFormScrapped.setBusinessFormCode(codeGeneratorService.createBusinessFormCode(CodeGeneratorEnum.Scrapped)); |
| | | lWhFormScrapped.setWarehouseType(0); |
| | | Long warehouseId = param.getWarehouseId(); |
| | | lWhFormScrapped.setWarehouseId(warehouseId); |
| | | //根据仓库id查询仓库 |
| | | BaseWarehouse warehouse = this.baseWarehouseService.getById(warehouseId); |
| | | if (warehouse == null) { |
| | | log.error("仓库不存在"); |
| | | return 0; |
| | | lWhFormScrapped.setWarehouseType(warehouseType); |
| | | |
| | | // 公用 |
| | | Long warehouseId = null; |
| | | //仓库名称 |
| | | String wareHouseName = null; |
| | | if (warehouseType == 0) { |
| | | warehouseId = param.getWarehouseId(); |
| | | //根据仓库id查询仓库 |
| | | BaseWarehouse warehouse = this.baseWarehouseService.getById(warehouseId); |
| | | if (warehouse == null) { |
| | | log.error("仓库不存在"); |
| | | return 0; |
| | | } |
| | | wareHouseName = warehouse.getWarehouseName(); |
| | | } else { |
| | | // 查询部门名称 |
| | | warehouseId = param.getDepartmentId(); |
| | | FinSysTenantDepartment sysTenantDepartment = departmentService.getById(warehouseId); |
| | | if (sysTenantDepartment == null) { |
| | | log.error("部门不存在"); |
| | | return 0; |
| | | } |
| | | wareHouseName = sysTenantDepartment.getName(); |
| | | } |
| | | lWhFormScrapped.setWarehouseName(warehouse.getWarehouseName()); |
| | | lWhFormScrapped.setWarehouseId(warehouseId); |
| | | lWhFormScrapped.setWarehouseName(wareHouseName); |
| | | lWhFormScrapped.setAgencyId(Long.valueOf(sysInfo.getTenantId())); |
| | | lWhFormScrapped.setAgencyName(sysInfo.getTenantName()); |
| | | lWhFormScrapped.setOperatorId(sysInfo.getSysUserId()); |
| | | lWhFormScrapped.setOperatorName(sysInfo.getUserName()); |
| | | lWhFormScrapped.setDealTime(param.getDealTime()); |
| | | lWhFormScrapped.setStates(0); |
| | | lWhFormScrapped.setUploadFiles(param.getUploadFiles()); |
| | | //根据部门id查询部门 |
| | | FinSysTenantDepartment department = this.departmentService.getById(sysInfo.getSysDeptId()); |
| | | if (department != null) { |
| | |
| | | LWhFormScrappedGoods scrappedGoods = new LWhFormScrappedGoods(); |
| | | scrappedGoods.setId(IdUtil.generateId()); |
| | | //根据物品型号查询物品库存 |
| | | int goodsNum = this.lWhGoodsService.queryGoodsModelNum(0, warehouseId, scrappedGoods.getBaseGoodsModelsId(), 1, null); |
| | | int goodsNum = this.lWhGoodsService.queryGoodsModelNum(warehouseType, warehouseId, scrappedGoods.getBaseGoodsModelsId(), 1, null); |
| | | if (params.getCounts() > goodsNum) { |
| | | log.error("报废数量大于库存数量"); |
| | | return 0; |
| | |
| | | |
| | | scrappedGoodsList.add(scrappedGoods); |
| | | } |
| | | int flag2 = this.scrappedGoodsService.insert(scrappedGoodsList); |
| | | int flag2 = this.scrappedGoodsService.insertBatch(scrappedGoodsList); |
| | | if (flag2 != scrappedGoodsList.size()) { |
| | | log.error("新增报废单物品记录 失败"); |
| | | TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); |
| | |
| | | FormScrappedGoodsVO formScrappedGoodsVO = new FormScrappedGoodsVO(); |
| | | formScrappedGoodsVO.setBaseGoodsTemplateId(baseGoodsTemplateId); |
| | | formScrappedGoodsVO.setGoodsName(lWhFormScrappedGoods.getGoodsTemplateName()); |
| | | |
| | | String sql = "select CATEGORY_NAME from base_goods_template where id = :id"; |
| | | Map<String, Object> param = new HashMap<>(); |
| | | param.put("id", baseGoodsTemplateId); |
| | | List<Map<String, Object>> goodTemplate = this.select(sql, param, new MapperUtil()); |
| | | if (!CollectionUtils.isEmpty(goodTemplate)) { |
| | | Optional<Map<String, Object>> first = goodTemplate.stream().findFirst(); |
| | | Map<String, Object> objectMap = first.get(); |
| | | formScrappedGoodsVO.setCategoryName(objectMap.get("categoryName").toString()); |
| | | } |
| | | |
| | | List<GoodsModelVO> goodsModelList = Lists.newArrayList(); |
| | | goodsList.forEach(item -> { |
| | |
| | | // } |
| | | // return scrappedExtend; |
| | | // } |
| | | |
| | | } |