From 494fbb222f0ec270f764f84f13987984fad09b82 Mon Sep 17 00:00:00 2001 From: futian.liu <liufutianyoo@163.com> Date: 星期三, 13 十二月 2023 11:22:08 +0800 Subject: [PATCH] 规格型号管理 --- consum-base/src/main/java/com/consum/base/controller/LWhFormTransferController.java | 106 +++++++++++++++++++++++++++++------------------------ 1 files changed, 58 insertions(+), 48 deletions(-) diff --git a/consum-base/src/main/java/com/consum/base/controller/LWhFormTransferController.java b/consum-base/src/main/java/com/consum/base/controller/LWhFormTransferController.java index 8ba6b3d..e5fa35c 100644 --- a/consum-base/src/main/java/com/consum/base/controller/LWhFormTransferController.java +++ b/consum-base/src/main/java/com/consum/base/controller/LWhFormTransferController.java @@ -131,7 +131,7 @@ lWhFormTransferService.update(lWhFormTransfer); lWhFormTransferCoreService.doTransferOutPut(id, getCurrentUser()); - lWhFormTransferCoreService.doTransferInPut(id, getCurrentUser()); + lWhFormTransferCoreService.doTransferInPut(id, getCurrentUser(), param.getOperatorName()); } return ResponseValue.success(); @@ -251,7 +251,7 @@ @ApiImplicitParams({@ApiImplicitParam(name = "id", value = "璋冩嫧鍗昳d", required = true, dataType = "Long"),}) @PostMapping("/income") public ResponseValue income(Long id) { - lWhFormTransferCoreService.doTransferInPut(id, getCurrentUser()); + lWhFormTransferCoreService.doTransferInPut(id, getCurrentUser(), null); return ResponseValue.success(); } @@ -279,7 +279,8 @@ lWhFormTransfer.setOutWarehouseId(wareHouseId); lWhFormTransfer.setOutWarehouseName(warehouseName); lWhFormTransferService.update(lWhFormTransfer); - lWhFormTransferCoreService.doTransferOutPut(id, getCurrentUser()); + // lWhFormTransferCoreService.doTransferOutPut(id, getCurrentUser()); + lWhFormTransferCoreService.doTransferOutPutNew(id, getCurrentUser()); return ResponseValue.success(); } @@ -287,7 +288,7 @@ @ApiImplicitParams({@ApiImplicitParam(name = "id", value = "璋冩嫧鍗昳d", required = true, dataType = "Long"), @ApiImplicitParam(name = "type", value = "瀵煎嚭绫诲瀷 1 鍏ュ簱 2 鍑哄簱", required = true, dataType = "Integer"),}) @GetMapping("/list/export") - public void export(Long id, Integer type, HttpServletResponse response) throws Exception { + public ResponseValue<String> export(Long id, Integer type, HttpServletResponse response) throws Exception { TemplateExportParams params; String fileName; @@ -321,7 +322,8 @@ map.put("totalAmount", totalAmount); Workbook workbook = ExcelExportUtil.exportExcel(params, TransferExcelTemplate.class, export, map); - downLoadExcel(fileName, response, workbook); + String filePath = downLoadExcel(fileName, response, workbook); + return ResponseValue.success("瀵煎嚭鎴愬姛", filePath); } @@ -340,9 +342,13 @@ CommonUtil.copyProperties(param, param2); param = param2; - S_user_core currentUser = this.getCurrentUser(); - if (currentUser == null) { + FinSysTenantUser sysInfo = this.getSysInfo(); + if (sysInfo == null) { return ResponseValue.error("鐧诲綍鐢ㄦ埛淇℃伅涓嶅瓨鍦�"); + } + String tenantId = sysInfo.getTenantId(); + if (param.getOutAgencyId() == null) { + param.setOutAgencyId(Long.valueOf(tenantId)); } GenericPager<Map<String, Object>> transferInfoDetailsVoGenericPager = this.lWhFormTransferService.queryTransferInfo(param); @@ -397,6 +403,12 @@ lWhProcureModelUser.setNowUserPhone(item.getPhone()); lWhProcureModelUser.setNowUserName(item.getUserName()); lWhProcureModelUser.setGoodsNum(item.getCount()); + + // 璁剧疆涓�涓嬪湪鐢ㄦ暟閲� + Long oldProcureModelId = item.getOldProcureModelId(); + LWhProcureModelUser oldInfo = + lWhProcureModelUserService.get(new LWhProcureModelUser(oldProcureModelId)); + lWhProcureModelUser.setUseCount(oldInfo.getUseCount()); procureModelUserList.add(lWhProcureModelUser); } @@ -419,59 +431,57 @@ @ApiImplicitParams({@ApiImplicitParam(name = "transferOrderId", value = "璋冩嫧鍗昳d", required = true)}) @GetMapping("/use/record") public ResponseValue useRecord(Long transferOrderId) { - S_user_core currentUser = this.getCurrentUser(); if (currentUser == null) { return ResponseValue.error("鐧诲綍鐢ㄦ埛淇℃伅涓嶅瓨鍦�"); } + List<UseRecordDTO> useRecordDTOList = lWhProcureModelUserService.selectUseRecord(transferOrderId); if (CollectionUtils.isEmpty(useRecordDTOList)) { return ResponseValue.error("鏈煡璇㈠埌浣跨敤璁板綍"); } - List<GoodsUseRecordVO> goodsUseRecordList = Lists.newArrayList(); - // 鍒嗙粍 - Map<Long, Map<Long, List<UseRecordDTO>>> collect = useRecordDTOList.stream().collect( - Collectors.groupingBy(UseRecordDTO::getId, Collectors.groupingBy(UseRecordDTO::getBaseGoodsModelsId))); - // 寮�濮嬪惊鐜痗ollect - for (Map.Entry<Long, Map<Long, List<UseRecordDTO>>> entry : collect.entrySet()) { - Long id = entry.getKey(); - Map<Long, List<UseRecordDTO>> value = entry.getValue(); - // 寮�濮嬪惊鐜痸alue - List<UseRecordSkuVO> useRecordSkuList = Lists.newArrayList(); - for (Map.Entry<Long, List<UseRecordDTO>> item : value.entrySet()) { - List<UseRecordDTO> list = item.getValue(); - List<RecordUserInfoVO> recordUserInfoList = Lists.newArrayList(); - for (UseRecordDTO useRecordDto : list) { - GoodsUseRecordVO goodsUseRecordVO = new GoodsUseRecordVO(); - goodsUseRecordVO.setId(id); - goodsUseRecordVO.setUpdateUserName(useRecordDto.getUpdateUserName()); - goodsUseRecordVO.setUpdateTime(useRecordDto.getUpdateTime()); + List<GoodsUseRecordVO> goodsUseRecordList = useRecordDTOList.stream() + .collect(Collectors.groupingBy(UseRecordDTO::getId)).entrySet().stream().map(entry -> { + Long id = entry.getKey(); + List<UseRecordDTO> useRecordList = entry.getValue(); + UseRecordDTO useRecordDto = useRecordList.get(0); - UseRecordSkuVO useRecordSkuVO = new UseRecordSkuVO(); - useRecordSkuVO.setBaseGoodModelId(useRecordDto.getBaseGoodsModelsId()); - useRecordSkuVO.setBaseGoodModelName(useRecordDto.getBaseGoodsModelsName()); - useRecordSkuVO.setUnit(useRecordDto.getUnit()); - useRecordSkuVO.setProcureModelId(useRecordDto.getProcureModelId()); + GoodsUseRecordVO goodsUseRecordVO = new GoodsUseRecordVO(); + goodsUseRecordVO.setId(id); + goodsUseRecordVO.setUpdateUserName(useRecordDto.getUpdateUserName()); + goodsUseRecordVO.setUpdateTime(useRecordDto.getUpdateTime()); - RecordUserInfoVO recordUserInfoVO = new RecordUserInfoVO(); - recordUserInfoVO.setUseName(useRecordDto.getUseName()); - recordUserInfoVO.setPhone(useRecordDto.getPhone()); - recordUserInfoVO.setNum(useRecordDto.getNum()); - recordUserInfoList.add(recordUserInfoVO); - useRecordSkuVO.setRecordUserInfos(recordUserInfoList); - useRecordSkuList.add(useRecordSkuVO); - goodsUseRecordVO.setRecordSkuDtoList(useRecordSkuList); - goodsUseRecordList.add(goodsUseRecordVO); - } - } - } - // 鍒嗙粍涔嬪悗閲嶆柊鎺掑簭 - List<GoodsUseRecordVO> result = goodsUseRecordList - .stream().sorted(Comparator - .comparing(GoodsUseRecordVO::getUpdateTime, Comparator.nullsFirst(Long::compareTo)).reversed()) + List<UseRecordSkuVO> useRecordSkuList = + useRecordList.stream().collect(Collectors.groupingBy(UseRecordDTO::getProcureModelId)).values() + .stream().map(recordList -> { + UseRecordDTO useRecordDTO = recordList.get(0); + UseRecordSkuVO useRecordSkuVO = new UseRecordSkuVO(); + useRecordSkuVO.setBaseGoodModelId(useRecordDTO.getBaseGoodsModelsId()); + useRecordSkuVO.setBaseGoodModelName(useRecordDTO.getBaseGoodsModelsName()); + useRecordSkuVO.setUnit(useRecordDTO.getUnit()); + useRecordSkuVO.setProcureModelId(useRecordDTO.getProcureModelId()); + + List<RecordUserInfoVO> recordUserInfoList = recordList.stream().map(userInfo -> { + RecordUserInfoVO recordUserInfoVO = new RecordUserInfoVO(); + recordUserInfoVO.setOldProcureModelId(userInfo.getOldProcureModelId()); + recordUserInfoVO.setUseName(userInfo.getUseName()); + recordUserInfoVO.setPhone(userInfo.getPhone()); + recordUserInfoVO.setNum(userInfo.getNum()); + return recordUserInfoVO; + }).collect(Collectors.toList()); + + useRecordSkuVO.setRecordUserInfos(recordUserInfoList); + return useRecordSkuVO; + }).collect(Collectors.toList()); + + goodsUseRecordVO.setRecordSkuDtoList(useRecordSkuList); + return goodsUseRecordVO; + }).sorted(Comparator.comparing(GoodsUseRecordVO::getUpdateTime, Comparator.nullsFirst(Long::compareTo)) + .reversed()) .collect(Collectors.toList()); - return ResponseValue.success(result); + + return ResponseValue.success(goodsUseRecordList); } @ApiOperation(value = "鏌ヨ閮ㄩ棬涓嬬殑鍒嗗彂鍗�", notes = "鏌ヨ閮ㄩ棬涓嬬殑鍒嗗彂鍗�") -- Gitblit v1.9.1