From 86fdf3673cd8b3f34ed57a80556512cdcabdb202 Mon Sep 17 00:00:00 2001 From: futian.liu <liufutianyoo@163.com> Date: 星期四, 30 十一月 2023 20:10:39 +0800 Subject: [PATCH] 报废单导出 --- consum-base/src/main/java/com/consum/base/pojo/excel/ScrappedInfoExcelTemplate.java | 44 ++++ consum-base/src/main/java/com/consum/base/controller/LWhFormInventoryController.java | 57 ++++++ consum-base/src/main/java/com/consum/base/service/LWhFormScrappedServiceImpl.java | 72 ++++--- consum-base/src/main/java/com/consum/base/service/LWhFormTransferServiceImpl.java | 4 consum-base/src/main/java/com/consum/base/service/impl/BaseWarehouseManagerServiceImpl.java | 33 +++ deploy-jar-single/src/main/resources/import/调拨入库单.xls | 0 consum-base/src/main/java/com/consum/base/pojo/excel/InventoryExcelTemplate.java | 48 +++++ deploy-jar-single/src/main/resources/import/低值易耗品盘点表.xls | 0 consum-base/src/main/java/com/consum/base/controller/LWhFormOutputController.java | 1 deploy-jar-single/src/main/resources/import/报废登记单.xlsx | 0 consum-base/src/main/java/com/consum/base/controller/BaseWarehouseController.java | 17 + consum-base/src/main/java/com/consum/base/controller/LWhFormScrappedController.java | 79 +++++--- /dev/null | 32 --- consum-base/src/main/java/com/consum/base/controller/BaseWarehouseManagerController.java | 25 + consum-base/src/main/java/com/consum/base/service/BaseWarehouseManagerService.java | 15 + consum-base/src/main/java/com/consum/base/controller/BaseGoodsTemplateController.java | 19 + consum-base/src/main/java/com/consum/base/controller/BaseCategoryController.java | 11 consum-base/src/main/java/com/consum/base/pojo/response/LWhFormOutputExtendVO.java | 2 consum-base/src/main/java/com/consum/base/service/LWhFormInventoryServiceImpl.java | 34 +++ 19 files changed, 373 insertions(+), 120 deletions(-) diff --git a/consum-base/src/main/java/com/consum/base/controller/BaseCategoryController.java b/consum-base/src/main/java/com/consum/base/controller/BaseCategoryController.java index 44f8030..965d462 100644 --- a/consum-base/src/main/java/com/consum/base/controller/BaseCategoryController.java +++ b/consum-base/src/main/java/com/consum/base/controller/BaseCategoryController.java @@ -13,13 +13,16 @@ import com.walker.infrastructure.utils.StringUtils; import com.walker.web.ResponseValue; import io.swagger.annotations.Api; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.util.CollectionUtils; -import org.springframework.web.bind.annotation.*; - import java.util.List; import java.util.Map; import java.util.TreeMap; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.util.CollectionUtils; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; /** * @Description 鐗╁搧鍒嗙被 diff --git a/consum-base/src/main/java/com/consum/base/controller/BaseGoodsTemplateController.java b/consum-base/src/main/java/com/consum/base/controller/BaseGoodsTemplateController.java index f4ede5c..4b6bed5 100644 --- a/consum-base/src/main/java/com/consum/base/controller/BaseGoodsTemplateController.java +++ b/consum-base/src/main/java/com/consum/base/controller/BaseGoodsTemplateController.java @@ -9,7 +9,11 @@ import com.consum.base.service.BaseGoodsTemplateServiceImpl; import com.consum.base.service.BaseWarehouseServiceImpl; import com.consum.base.service.LWhGoodsService; -import com.consum.model.po.*; +import com.consum.model.po.BaseGoodsModels; +import com.consum.model.po.BaseGoodsTemplate; +import com.consum.model.po.BaseWarehouse; +import com.consum.model.po.FinSysTenantUser; +import com.consum.model.po.SDictData; import com.consum.model.vo.BaseGoodsTemplateVo; import com.walker.db.page.GenericPager; import com.walker.infrastructure.utils.StringUtils; @@ -17,14 +21,17 @@ import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; -import org.apache.commons.compress.utils.Lists; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.util.CollectionUtils; -import org.springframework.web.bind.annotation.*; - import java.util.HashMap; import java.util.List; import java.util.Map; +import org.apache.commons.compress.utils.Lists; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.util.CollectionUtils; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; /** * @Description 鐗╁搧妯℃澘 diff --git a/consum-base/src/main/java/com/consum/base/controller/BaseWarehouseController.java b/consum-base/src/main/java/com/consum/base/controller/BaseWarehouseController.java index 9c1bb36..54fca16 100644 --- a/consum-base/src/main/java/com/consum/base/controller/BaseWarehouseController.java +++ b/consum-base/src/main/java/com/consum/base/controller/BaseWarehouseController.java @@ -14,10 +14,14 @@ import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; - +import java.util.ArrayList; import java.util.List; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.DeleteMapping; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; /** * @Description 浠撳簱绠$悊 @@ -162,10 +166,9 @@ */ @GetMapping("/select/tenant_warehouse") public ResponseValue getByAgencyId(Long agencyId) { - // TODO 鏆傛棤鏈烘瀯 -// if (agencyId == null) { -// return ResponseValue.error("鏈烘瀯id涓虹┖"); -// } + if (agencyId == null) { + return ResponseValue.success(new ArrayList<>()); + } List<BaseWarehouse> list = this.baseWarehouseService.getByAgencyId(agencyId, null, null); if (list == null) { return ResponseValue.error("鏌ヨ澶辫触锛�"); diff --git a/consum-base/src/main/java/com/consum/base/controller/BaseWarehouseManagerController.java b/consum-base/src/main/java/com/consum/base/controller/BaseWarehouseManagerController.java index 3ff82a0..2d72106 100644 --- a/consum-base/src/main/java/com/consum/base/controller/BaseWarehouseManagerController.java +++ b/consum-base/src/main/java/com/consum/base/controller/BaseWarehouseManagerController.java @@ -3,12 +3,13 @@ import com.consum.base.BaseController; import com.consum.base.core.utils.CommonUtil; import com.consum.base.pojo.request.WarehouseManagerParam; -import com.consum.base.service.BaseWarehouseManagerServiceImpl; +import com.consum.base.service.BaseWarehouseManagerService; import com.consum.model.po.BaseWarehouseManager; import com.consum.model.po.FinSysTenantUser; import com.walker.web.ResponseValue; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import java.util.List; import org.springframework.beans.factory.annotation.Autowired; @@ -29,7 +30,7 @@ public class BaseWarehouseManagerController extends BaseController { @Autowired - private BaseWarehouseManagerServiceImpl baseWarehouseManagerService; + private BaseWarehouseManagerService baseWarehouseManagerService; /** * @Description 鏂板 @@ -49,20 +50,28 @@ if (sysInfo == null) { return ResponseValue.error("璇峰厛鐧诲綍"); } - this.baseWarehouseManagerService.add(param); + baseWarehouseManagerService.add(param); return ResponseValue.success(); } - @ApiOperation(value = "鏌ヨ", notes = "鏌ヨ") + @ApiOperation(value = "鏍规嵁浠撳簱id鏌ヨ搴撶鍛�", notes = "鏍规嵁浠撳簱id鏌ヨ搴撶鍛�") @ApiImplicitParam(name = "warehouseId", value = "浠撳簱id", required = true, dataType = "Long") @GetMapping("/list") public ResponseValue select(Long warehouseId) { - BaseWarehouseManager baseWarehouseManager = new BaseWarehouseManager(); - baseWarehouseManager.setBaseWarehouseId(warehouseId); - List<BaseWarehouseManager> select = this.baseWarehouseManagerService.select(baseWarehouseManager); - return ResponseValue.success(select); + List<BaseWarehouseManager> baseWarehouseManagerList = baseWarehouseManagerService.selectWarehouseManager(warehouseId); + return ResponseValue.success(baseWarehouseManagerList); } + @ApiOperation(value = "鏍规嵁浠撳簱,鏈烘瀯id鏌ヨ搴撶鍛�", notes = "鏍规嵁浠撳簱,鏈烘瀯id鏌ヨ搴撶鍛�") + @ApiImplicitParams({ + @ApiImplicitParam(name = "warehouseId", value = "浠撳簱id", required = true, dataType = "Long"), + @ApiImplicitParam(name = "agencyId", value = "鏈烘瀯id", required = true, dataType = "Long") + }) + @GetMapping("/query") + public ResponseValue selectManagerList(Long warehouseId, Long agencyId) { + List<BaseWarehouseManager> baseWarehouseManagerList = baseWarehouseManagerService.selectManagerList(warehouseId, agencyId); + return ResponseValue.success(baseWarehouseManagerList); + } } diff --git a/consum-base/src/main/java/com/consum/base/controller/LWhFormInventoryController.java b/consum-base/src/main/java/com/consum/base/controller/LWhFormInventoryController.java index a7f8bab..710f2f3 100644 --- a/consum-base/src/main/java/com/consum/base/controller/LWhFormInventoryController.java +++ b/consum-base/src/main/java/com/consum/base/controller/LWhFormInventoryController.java @@ -1,8 +1,11 @@ package com.consum.base.controller; +import cn.afterturn.easypoi.excel.ExcelExportUtil; +import cn.afterturn.easypoi.excel.entity.TemplateExportParams; import com.consum.base.BaseController; import com.consum.base.core.utils.CommonUtil; import com.consum.base.core.utils.PageUtil; +import com.consum.base.pojo.excel.InventoryExcelTemplate; import com.consum.base.pojo.query.LWhFormInventoryQry; import com.consum.base.pojo.request.FormInventoryParam; import com.consum.base.pojo.request.LWhFormInventoryParam; @@ -15,14 +18,25 @@ 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.CollectionUtils; +import com.walker.infrastructure.utils.DateUtils; import com.walker.web.ResponseValue; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiResponse; +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.io.OutputStream; +import java.net.URLEncoder; +import java.util.HashMap; import java.util.List; +import java.util.Map; import java.util.Objects; +import java.util.Optional; +import javax.servlet.http.HttpServletResponse; +import org.apache.poi.ss.usermodel.Workbook; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.DeleteMapping; @@ -302,6 +316,49 @@ return ResponseValue.success(formInventoryVO); } + @ApiOperation(value = "鐩樼偣鍗曞鍑�", notes = "鐩樼偣鍗曞鍑�") + @GetMapping("/list/export") + public void export(Long id, HttpServletResponse response) throws IOException { + + List<InventoryExcelTemplate> exportList = lWhFormInventoryService.getExportList(id); + if (CollectionUtils.isEmpty(exportList)) { + throw new RuntimeException("鏁版嵁涓虹┖"); + } + TemplateExportParams params = new TemplateExportParams("import/浣庡�兼槗鑰楀搧鐩樼偣琛�.xls"); + params.setHeadingStartRow(2); + + Optional<InventoryExcelTemplate> first = exportList.stream().findFirst(); + InventoryExcelTemplate inventoryExcelTemplate = first.get(); + Long createTime = inventoryExcelTemplate.getCreateTime(); + String operatorName = inventoryExcelTemplate.getOperatorName(); + String monitorName = inventoryExcelTemplate.getMonitorName(); + Long endTime = inventoryExcelTemplate.getEndTime(); + + Map<String, Object> map = new HashMap<>(); + map.put("date", DateUtils.toShowDate(createTime)); + map.put("endDate", DateUtils.toShowDate(endTime)); + map.put("monitorName", monitorName); + map.put("name", operatorName); + Workbook workbook = ExcelExportUtil.exportExcel(params, InventoryExcelTemplate.class, + exportList, map); + + downLoadExcel("浣庡�兼槗鑰楀搧鐩樼偣琛�", response, workbook); + } + + private void downLoadExcel(String fileName, HttpServletResponse response, Workbook workbook) { + try (OutputStream out = response.getOutputStream()) { + response.setCharacterEncoding("UTF-8"); + response.setHeader("content-Type", "application/vnd.ms-excel"); + response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode(fileName + ".xls", "UTF-8")); + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + workbook.write(baos); + response.setHeader("Content-Length", String.valueOf(baos.size())); + out.write(baos.toByteArray()); + } catch (Exception e) { + logger.error("瀵煎嚭鏂囦欢澶辫触", e); + } + } + } diff --git a/consum-base/src/main/java/com/consum/base/controller/LWhFormOutputController.java b/consum-base/src/main/java/com/consum/base/controller/LWhFormOutputController.java index 0143c76..0640508 100644 --- a/consum-base/src/main/java/com/consum/base/controller/LWhFormOutputController.java +++ b/consum-base/src/main/java/com/consum/base/controller/LWhFormOutputController.java @@ -161,6 +161,7 @@ LWhFormOutput lWhFormOutput = lWhFormOutputService.get(new LWhFormOutput(id)); LWhFormOutputExtendVO lWhFormOutputExtendVO = new LWhFormOutputExtendVO(); BeanUtils.copyProperties(lWhFormOutput, lWhFormOutputExtendVO); + lWhFormOutputExtendVO.setDoc(lWhFormOutput.getOutputDoc()); String sql = "SELECT bgt.id, CATEGORY_ID, CATEGORY_NAME, GOODS_NAME " + "FROM l_wh_procure_model pm LEFT JOIN base_goods_models bgm ON bgm.id = pm.BASE_GOODS_MODELS_ID " diff --git a/consum-base/src/main/java/com/consum/base/controller/LWhFormScrappedController.java b/consum-base/src/main/java/com/consum/base/controller/LWhFormScrappedController.java index 6d2c4d5..df5e542 100644 --- a/consum-base/src/main/java/com/consum/base/controller/LWhFormScrappedController.java +++ b/consum-base/src/main/java/com/consum/base/controller/LWhFormScrappedController.java @@ -1,14 +1,14 @@ package com.consum.base.controller; import cn.afterturn.easypoi.excel.ExcelExportUtil; -import cn.afterturn.easypoi.excel.entity.ExportParams; +import cn.afterturn.easypoi.excel.entity.TemplateExportParams; import com.consum.base.BaseController; import com.consum.base.core.utils.CommonUtil; import com.consum.base.core.utils.MapUtils; import com.consum.base.core.utils.MapperUtil; import com.consum.base.core.utils.PageUtil; import com.consum.base.pojo.LWhFormScrappedParam; -import com.consum.base.pojo.excel.ScrappedInfoExport; +import com.consum.base.pojo.excel.ScrappedInfoExcelTemplate; import com.consum.base.pojo.query.LWhFormScrappedQry; import com.consum.base.pojo.response.FromTransferTemplateInfoVO; import com.consum.base.pojo.response.LWhFormScrappedExtendVO; @@ -17,25 +17,28 @@ import com.consum.model.po.FinSysTenantUser; import com.consum.model.po.LWhFormScrapped; import com.walker.infrastructure.utils.CollectionUtils; +import com.walker.infrastructure.utils.DateUtils; import com.walker.web.ResponseValue; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; -import org.apache.commons.compress.utils.Lists; -import org.apache.poi.ss.usermodel.Workbook; -import org.springframework.beans.BeanUtils; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.*; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.OutputStream; import java.net.URLEncoder; import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.Optional; +import javax.servlet.http.HttpServletResponse; +import org.apache.commons.compress.utils.Lists; +import org.apache.poi.ss.usermodel.Workbook; +import org.springframework.beans.BeanUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; /** * @Description 鎶ュ簾鍗� @@ -58,7 +61,7 @@ */ @ApiOperation(value = "鏂板鎶ュ簾鍗�", notes = "鏂板鎶ュ簾鍗�") @ApiImplicitParams({ - @ApiImplicitParam(name = "param") + @ApiImplicitParam(name = "param") }) @PostMapping("/add") public ResponseValue add() { @@ -67,7 +70,7 @@ CommonUtil.copyProperties(param, query); param = query; FinSysTenantUser sysInfo = this.getSysInfo(); - int result = this.lWhFormScrappedService.add(param,0, this.getCurrentUser(), sysInfo); + int result = this.lWhFormScrappedService.add(param, 0, this.getCurrentUser(), sysInfo); if (result > 0) { return ResponseValue.success(1); } @@ -76,7 +79,7 @@ @ApiOperation(value = "鏂板鎶ュ簾鍗�", notes = "鏂板鎶ュ簾鍗�") @ApiImplicitParams({ - @ApiImplicitParam(name = "param") + @ApiImplicitParam(name = "param") }) @PostMapping("/deprAdd") public ResponseValue deprAdd() { @@ -86,7 +89,7 @@ param = query; FinSysTenantUser sysInfo = this.getSysInfo(); - int result = this.lWhFormScrappedService.add(param,1, this.getCurrentUser(), sysInfo); + int result = this.lWhFormScrappedService.add(param, 1, this.getCurrentUser(), sysInfo); if (result > 0) { return ResponseValue.success(1); } @@ -100,7 +103,7 @@ */ @ApiOperation(value = "鍒楄〃鏌ヨ", notes = "鍒楄〃鏌ヨ") @ApiImplicitParams({ - @ApiImplicitParam(name = "param", value = "鏌ヨ鏉′欢", dataType = "LWhFormScrappedQry", paramType = "query") + @ApiImplicitParam(name = "param", value = "鏌ヨ鏉′欢", dataType = "LWhFormScrappedQry", paramType = "query") }) @GetMapping("/list") public ResponseValue queryList() { @@ -123,8 +126,8 @@ List<FromTransferTemplateInfoVO> list = Lists.newArrayList(); // 鏌ヨ鍨嬪彿鏁伴噺 String sql = - "SELECT fsg.id,fsg.BASE_GOODS_TEMPLATE_ID goodsTemplatesId,fsg.GOODS_TEMPLATE_NAME goodsName,sum(counts) count FROM l_wh_form_scrapped fs left join l_wh_form_scrapped_goods fsg on fs.id = fsg.FORM_SCRAPPED_ID " - + "where fsg.FORM_SCRAPPED_ID =:id group by fsg.BASE_GOODS_TEMPLATE_ID"; + "SELECT fsg.id,fsg.BASE_GOODS_TEMPLATE_ID goodsTemplatesId,fsg.GOODS_TEMPLATE_NAME goodsName,sum(counts) count FROM l_wh_form_scrapped fs left join l_wh_form_scrapped_goods fsg on fs.id = fsg.FORM_SCRAPPED_ID " + + "where fsg.FORM_SCRAPPED_ID =:id group by fsg.BASE_GOODS_TEMPLATE_ID"; Map<String, Object> paramMap = new HashMap<>(); paramMap.put("id", item.getId()); List<Map<String, Object>> procureModelList = lWhFormScrappedService.select(sql, paramMap, new MapperUtil()); @@ -147,7 +150,7 @@ */ @ApiOperation(value = "鏍规嵁id鏌ヨ璇︽儏", notes = "鏍规嵁id鏌ヨ璇︽儏") @ApiImplicitParams({ - @ApiImplicitParam(name = "id", value = "鎶ュ簾鍗昳d", dataType = "Long", paramType = "query") + @ApiImplicitParam(name = "id", value = "鎶ュ簾鍗昳d", dataType = "Long", paramType = "query") }) @GetMapping("/detail") public ResponseValue getById(Long id) { @@ -166,10 +169,10 @@ */ @ApiOperation(value = "鎶ュ簾鏄庣粏", notes = "鎶ュ簾鏄庣粏") @ApiImplicitParams({ - @ApiImplicitParam(name = "param", value = "鏌ヨ鏉′欢", dataType = "LWhFormScrappedQry", paramType = "query") + @ApiImplicitParam(name = "param", value = "鏌ヨ鏉′欢", dataType = "LWhFormScrappedQry", paramType = "query") }) @GetMapping("/list/detailList") - public ResponseValue queryDetailList( ) { + public ResponseValue queryDetailList() { LWhFormScrappedQry param = CommonUtil.getObjFromReq(LWhFormScrappedQry.class); LWhFormScrappedQry query = new LWhFormScrappedQry(); CommonUtil.copyProperties(param, query); @@ -188,16 +191,37 @@ * @Author 鍗㈠簡闃� * @Date 2023/11/2 */ - @GetMapping("/export") - public ResponseValue export(Long id, HttpServletRequest request, HttpServletResponse response) { + @GetMapping("/list/export") + public void export(Long id, HttpServletResponse response) { if (id == null) { - return ResponseValue.error("鎶ュ簾鍗昳d涓虹┖"); + throw new RuntimeException("鎶ュ簾鍗昳d涓虹┖"); } try { OutputStream outputStream = response.getOutputStream(); - List<Map<String, Object>> export = lWhFormScrappedService.export(id); - ExportParams exportParams = new ExportParams("鎶ュ簾鍗曠櫥璁�", "鎶ュ簾鍗曠櫥璁�"); - Workbook sheets = ExcelExportUtil.exportExcel(exportParams, ScrappedInfoExport.class, export); + List<ScrappedInfoExcelTemplate> export = lWhFormScrappedService.export(id); + if (CollectionUtils.isEmpty(export)) { + throw new RuntimeException("鏁版嵁涓虹┖"); + } + TemplateExportParams exportParams = new TemplateExportParams("import/鎶ュ簾鐧昏鍗�.xlsx"); + exportParams.setHeadingStartRow(2); + + Optional<ScrappedInfoExcelTemplate> first = export.stream().findFirst(); + ScrappedInfoExcelTemplate scrappedInfoExcelTemplate = first.get(); + Long dealTime = scrappedInfoExcelTemplate.getDealTime(); + String operatorName = scrappedInfoExcelTemplate.getOperatorName(); + String businessFormCode = scrappedInfoExcelTemplate.getBusinessFormCode(); + + int countNum = export.stream().filter(item -> item.getNum() != null).mapToInt(ScrappedInfoExcelTemplate::getNum).sum(); + int totalAmount = export.stream().filter(item -> item.getTotalAmount() != null).mapToInt(ScrappedInfoExcelTemplate::getTotalAmount).sum(); + + Map<String, Object> map = new HashMap<>(); + map.put("code", businessFormCode); + map.put("date", DateUtils.toShowDate(dealTime)); + map.put("name", operatorName); + map.put("countNum", countNum); + map.put("totalAmount", totalAmount); + + Workbook sheets = ExcelExportUtil.exportExcel(exportParams, ScrappedInfoExcelTemplate.class, export, map); // 璁剧疆鍝嶅簲澶� response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8"); response.setHeader("Content-disposition", "attachment;filename=" + URLEncoder.encode("鎶ュ簾鍗曠櫥璁�.xlsx", "utf-8")); @@ -206,7 +230,8 @@ } catch (IOException e) { throw new RuntimeException(e); } - return ResponseValue.success(); + + } diff --git a/consum-base/src/main/java/com/consum/base/pojo/excel/InventoryExcelTemplate.java b/consum-base/src/main/java/com/consum/base/pojo/excel/InventoryExcelTemplate.java new file mode 100644 index 0000000..69d7f95 --- /dev/null +++ b/consum-base/src/main/java/com/consum/base/pojo/excel/InventoryExcelTemplate.java @@ -0,0 +1,48 @@ +package com.consum.base.pojo.excel; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import cn.afterturn.easypoi.excel.annotation.ExcelIgnore; +import java.io.Serializable; +import lombok.Data; + +/** + * @author asus + * @version 1.0 + * @description: 鐩樼偣鍗曞鍑篹xcel + * @date 2023/11/30 16:41 + */ +@Data +public class InventoryExcelTemplate implements Serializable { + + + @Excel(name = "鍗曚綅") + private String tenantName; + @Excel(name = "鐗╁搧鍚嶇О") + private String templateName; + @Excel(name = "鐗╁搧鍨嬪彿/瑙勬牸") + private String baseModelName; + @Excel(name = "搴撳瓨鏁伴噺") + private Integer stockNum; + @Excel(name = "鐩樼偣鏁伴噺") + private Integer num; + @Excel(name = "閲戦") + private Integer totalAmount; + @Excel(name = "鐩樼偣鏄惁涓�鑷�(鏄�/鍚�)") + private String inventoryDeception; + @Excel(name = "鐩樼偣宸紓鎻忚堪") + private String deception; + @Excel(name = "澶囨敞") + private String remark; + @ExcelIgnore + private String operatorName; + @ExcelIgnore + private Long createTime; + @ExcelIgnore + private Long endTime; + @ExcelIgnore + private String monitorName; + @ExcelIgnore + private Integer inventoryResult; + + +} diff --git a/consum-base/src/main/java/com/consum/base/pojo/excel/ScrappedInfoExcelTemplate.java b/consum-base/src/main/java/com/consum/base/pojo/excel/ScrappedInfoExcelTemplate.java new file mode 100644 index 0000000..f2ef174 --- /dev/null +++ b/consum-base/src/main/java/com/consum/base/pojo/excel/ScrappedInfoExcelTemplate.java @@ -0,0 +1,44 @@ +package com.consum.base.pojo.excel; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import cn.afterturn.easypoi.excel.annotation.ExcelIgnore; +import java.io.Serializable; +import lombok.Data; + + +/** + * @author asus + * @version 1.0 + * @description: 鎶ュ簾鍗曞鍑篹xcel + * @date 2023/11/30 16:41 + */ +@Data +public class ScrappedInfoExcelTemplate implements Serializable { + + + @Excel(name = "鍗曚綅") + private String tenantName; + @Excel(name = "鐗╁搧鍚嶇О") + private String templateName; + @Excel(name = "鐗╁搧鍨嬪彿/瑙勬牸") + private String baseModelName; + + @Excel(name = "鏁伴噺") + private Integer num; + @Excel(name = "閲戦") + private Integer totalAmount; + + @Excel(name = "鎶ュ簾鍘熷洜") + private String deception; + @Excel(name = "澶囨敞") + private String remark; + + @ExcelIgnore + private String businessFormCode; + @ExcelIgnore + private Long dealTime; + @ExcelIgnore + private String operatorName; + + +} diff --git a/consum-base/src/main/java/com/consum/base/pojo/excel/ScrappedInfoExport.java b/consum-base/src/main/java/com/consum/base/pojo/excel/ScrappedInfoExport.java deleted file mode 100644 index 7fc6b63..0000000 --- a/consum-base/src/main/java/com/consum/base/pojo/excel/ScrappedInfoExport.java +++ /dev/null @@ -1,39 +0,0 @@ -package com.consum.base.pojo.excel; - -import cn.afterturn.easypoi.excel.annotation.ExcelEntity; -import com.fasterxml.jackson.annotation.JsonProperty; -import lombok.Data; -import lombok.NoArgsConstructor; - -/** - * @author asus - * @version 1.0 - * @description: 鎶ュ簾鍗曞鍑轰俊鎭� - * @date 2023/11/23 10:10 - */ -@NoArgsConstructor -@Data -public class ScrappedInfoExport { - - @JsonProperty("departmentName") - @ExcelEntity(name = "閮ㄩ棬") - private String departmentName; - @JsonProperty("dealTime") - private Long dealTime; - @JsonProperty("scrappedName") - private String scrappedName; - @JsonProperty("businessFormCode") - private String businessFormCode; - @JsonProperty("counts") - private Integer counts; - @JsonProperty("baseGoodsModelsName") - private String baseGoodsModelsName; - @JsonProperty("beiz") - private Object beiz; - @JsonProperty("operatorName") - private String operatorName; - @JsonProperty("agencyName") - private String agencyName; - @JsonProperty("goodsTemplateName") - private String goodsTemplateName; -} diff --git a/consum-base/src/main/java/com/consum/base/pojo/excel/TemplateExcelExport1.java b/consum-base/src/main/java/com/consum/base/pojo/excel/TemplateExcelExport1.java deleted file mode 100644 index 21ff8a6..0000000 --- a/consum-base/src/main/java/com/consum/base/pojo/excel/TemplateExcelExport1.java +++ /dev/null @@ -1,32 +0,0 @@ -package com.consum.base.pojo.excel; - -import lombok.Data; - -/** - * @author asus - * @version 1.0 - * @description: 瀵煎嚭杞崲瀵硅薄 - * @date 2023/11/27 15:31 - */ -@Data -public class TemplateExcelExport1 { - - - private String businessFormCode; - - private String tenantName; - - private String goodsName; - - private String goodsModeName; - - private Integer num; - - private Integer totalAmount; - - private String remark; - - private int price; - - private String warehouseName; -} diff --git a/consum-base/src/main/java/com/consum/base/pojo/response/LWhFormOutputExtendVO.java b/consum-base/src/main/java/com/consum/base/pojo/response/LWhFormOutputExtendVO.java index 5c03d48..ddefa8d 100644 --- a/consum-base/src/main/java/com/consum/base/pojo/response/LWhFormOutputExtendVO.java +++ b/consum-base/src/main/java/com/consum/base/pojo/response/LWhFormOutputExtendVO.java @@ -44,7 +44,7 @@ private Long dealTime; // 鍑哄簱鎵嬬画 - private Long doc; + private String doc; private List<FormOutputGoodsVO> fromOutputGoods; } diff --git a/consum-base/src/main/java/com/consum/base/service/BaseWarehouseManagerService.java b/consum-base/src/main/java/com/consum/base/service/BaseWarehouseManagerService.java new file mode 100644 index 0000000..809d450 --- /dev/null +++ b/consum-base/src/main/java/com/consum/base/service/BaseWarehouseManagerService.java @@ -0,0 +1,15 @@ +package com.consum.base.service; + +import com.consum.base.pojo.request.WarehouseManagerParam; +import com.consum.model.po.BaseWarehouseManager; +import com.walker.jdbc.service.BaseService; +import java.util.List; + +public interface BaseWarehouseManagerService extends BaseService { + + void add(WarehouseManagerParam list) throws Exception; + + List<BaseWarehouseManager> selectWarehouseManager(Long warehouseId); + + List<BaseWarehouseManager> selectManagerList(Long warehouseId, Long agencyId); +} 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 bb7ee4f..f0eb6f9 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 @@ -6,6 +6,7 @@ import com.consum.base.core.utils.MapUtils; import com.consum.base.core.utils.MapperUtil; import com.consum.base.core.utils.PageUtil; +import com.consum.base.pojo.excel.InventoryExcelTemplate; import com.consum.base.pojo.query.LWhFormInventoryQry; import com.consum.base.pojo.request.FormInventoryParam; import com.consum.base.pojo.request.LWhFormInventoryParam; @@ -352,4 +353,37 @@ formInventoryVO.setFormInventoryGoodsList(goodsVOList); return formInventoryVO; } + + public List<InventoryExcelTemplate> getExportList(Long id) { + String sql = "SELECT\n" + + "\tfi.INVENTORY_DATE createTime,\n" + + "\tfi.STOP_TIME endTime,\n" + + "\tfi.OPERATOR_NAME,\n" + + "\tfi.OPERATOR_NAME2 monitorName,\n" + + "\tfi.AGENCY_NAME tenantName,\n" + + "\tfig.GOODS_TEMPLATE_NAME templateName,\n" + + "\tfig.BASE_GOODS_MODELS_NAME baseModelName,\n" + + "\tfig.INVENTORY_COUNTS num,\n" + + "\tfig.INIT_COUNTS stockNum,\n" + + "\tfig.INVENTORY_RESULT,\n" + + "\tBEIZ1 remark\n" + + "FROM\n" + + "\tl_wh_form_inventory fi\n" + + "\tLEFT JOIN l_wh_form_inventory_goods fig ON fi.ID = fig.WH_FORM_INVENTORY_ID\n" + + "WHERE\n" + + "\tfi.ID = :id"; + HashMap<String, Object> param = new HashMap<>(); + param.put("id", id); + List<Map<String, Object>> select = this.select(sql, param, new MapperUtil()); + if (CollectionUtils.isEmpty(select)) { + return null; + } + List<InventoryExcelTemplate> list = Lists.newArrayList(); + select.forEach(item -> { + InventoryExcelTemplate inventoryExcelTemplate = MapUtils.convertMapToObj(item, InventoryExcelTemplate.class); + list.add(inventoryExcelTemplate); + }); + return list; + + } } diff --git a/consum-base/src/main/java/com/consum/base/service/LWhFormScrappedServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/LWhFormScrappedServiceImpl.java index 30e84e6..29710be 100644 --- a/consum-base/src/main/java/com/consum/base/service/LWhFormScrappedServiceImpl.java +++ b/consum-base/src/main/java/com/consum/base/service/LWhFormScrappedServiceImpl.java @@ -9,25 +9,36 @@ import com.consum.base.pojo.LWhFormScrappedGoodsInfoParam; import com.consum.base.pojo.LWhFormScrappedGoodsModelParams; import com.consum.base.pojo.LWhFormScrappedParam; +import com.consum.base.pojo.excel.ScrappedInfoExcelTemplate; import com.consum.base.pojo.query.LWhFormScrappedQry; import com.consum.base.pojo.response.FormScrappedGoodsDetailVO; 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.*; +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.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.Optional; +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 鎶ュ簾鍗� @@ -353,38 +364,37 @@ return pageUtil; } - public List<Map<String, Object>> export(Long id) { - + public List<ScrappedInfoExcelTemplate> export(Long id) { String sql = - "SELECT BUSINESS_FORM_CODE, fs.DEAL_TIME, OPERATOR_NAME, AGENCY_NAME, GOODS_TEMPLATE_NAME, BASE_GOODS_MODELS_NAME, DEPARTMENT_NAME, COUNTS, SCRAPPED_NAME, BEIZ " - + "FROM l_wh_form_scrapped_goods fsg LEFT JOIN l_wh_form_scrapped fs ON fs.id = fsg.FORM_SCRAPPED_ID WHERE " - + "fs.ID = :id and STATES = 1"; + "SELECT\n" + + "\tBUSINESS_FORM_CODE,\n" + + "\tfs.DEAL_TIME,\n" + + "\tOPERATOR_NAME,\n" + + "\tAGENCY_NAME tenantName,\n" + + "\tGOODS_TEMPLATE_NAME templateName,\n" + + "\tBASE_GOODS_MODELS_NAME baseModelName,\n" + + "\tCOUNTS num,\n" + + "\tSCRAPPED_NAME deception,\n" + + "\tBEIZ remark\n" + + "FROM\n" + + "\tl_wh_form_scrapped_goods fsg\n" + + "\tLEFT JOIN l_wh_form_scrapped fs ON fs.id = fsg.FORM_SCRAPPED_ID\n" + + "WHERE\n" + + "\tfs.ID = :id\n" + + "\tAND STATES = 1"; Map<String, Object> param = new HashMap<>(); param.put("id", id); List<Map<String, Object>> select = this.select(sql, param, new MapperUtil()); - return select; + if (CollectionUtils.isEmpty(select)) { + return null; + } + List<ScrappedInfoExcelTemplate> list = Lists.newArrayList(); + select.forEach(item -> { + ScrappedInfoExcelTemplate inventoryExcelTemplate = MapUtils.convertMapToObj(item, ScrappedInfoExcelTemplate.class); + list.add(inventoryExcelTemplate); + }); + return list; } - /** - * @Description 瀵煎嚭鎶ュ簾鐧昏鍗� - * @Author 鍗㈠簡闃� - * @Date 2023/11/2 - */ -// public LWhFormScrappedExtendVO export(Long id, FinSysTenantUser sysInfo) { -// LWhFormScrappedExtendVO scrappedExtend = new LWhFormScrappedExtendVO(); -// //1.鏌ヨ鎶ュ簾鍗� -// LWhFormScrapped lWhFormScrapped = this.get(new LWhFormScrapped(id)); -// if (lWhFormScrapped != null) { -// lWhFormScrapped.setDealTime(DateUtils.getDateTimeNumber(System.currentTimeMillis())); -// lWhFormScrapped.setOperatorName(sysInfo.getUserName()); -// BeanUtils.copyProperties(lWhFormScrapped, scrappedExtend); -// } -// //2.鏌ヨ鎶ュ簾鍗曠墿鍝� -// List<LWhFormScrappedGoods> scrappedGoodsList = this.scrappedGoodsService.getByFormScrappedId(id); -// if (!CollectionUtils.isEmpty(scrappedGoodsList)) { -// scrappedExtend.setScrappedGoodsList(scrappedGoodsList); -// } -// return scrappedExtend; -// } } diff --git a/consum-base/src/main/java/com/consum/base/service/LWhFormTransferServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/LWhFormTransferServiceImpl.java index bd531dd..0d11dcc 100644 --- a/consum-base/src/main/java/com/consum/base/service/LWhFormTransferServiceImpl.java +++ b/consum-base/src/main/java/com/consum/base/service/LWhFormTransferServiceImpl.java @@ -70,7 +70,7 @@ @Autowired private LWhProcureModelUserRecordServiceImpl lWhProcureModelUserRecordService; @Autowired - private BaseWarehouseManagerServiceImpl baseWarehouseManagerService; + private BaseWarehouseManagerService baseWarehouseManagerService; @Autowired private BaseGoodsTemplateServiceImpl baseGoodsTemplateService; @@ -132,7 +132,7 @@ Long id = sysInfo.getId(); BaseWarehouseManager manager = new BaseWarehouseManager(); manager.setManagerId(id); - List<BaseWarehouseManager> managerList = baseWarehouseManagerService.select(manager); + List<BaseWarehouseManager> managerList = baseWarehouseManagerService.selectAll(manager); if (CollectionUtils.isEmpty(managerList)) { log.error("璇ョ敤鎴蜂笉鏄簱绠″憳"); throw new Exception("璇ョ敤鎴蜂笉鏄簱绠″憳"); diff --git a/consum-base/src/main/java/com/consum/base/service/BaseWarehouseManagerServiceImpl.java b/consum-base/src/main/java/com/consum/base/service/impl/BaseWarehouseManagerServiceImpl.java similarity index 75% rename from consum-base/src/main/java/com/consum/base/service/BaseWarehouseManagerServiceImpl.java rename to consum-base/src/main/java/com/consum/base/service/impl/BaseWarehouseManagerServiceImpl.java index 8f39a6c..601ff84 100644 --- a/consum-base/src/main/java/com/consum/base/service/BaseWarehouseManagerServiceImpl.java +++ b/consum-base/src/main/java/com/consum/base/service/impl/BaseWarehouseManagerServiceImpl.java @@ -1,8 +1,10 @@ -package com.consum.base.service; +package com.consum.base.service.impl; import com.consum.base.core.utils.IdUtil; import com.consum.base.pojo.WarehouseManagerInfo; import com.consum.base.pojo.request.WarehouseManagerParam; +import com.consum.base.service.BaseWarehouseManagerService; +import com.consum.base.service.FinSysTenantUserServiceImpl; import com.consum.model.po.BaseWarehouseManager; import com.consum.model.po.FinSysTenantUser; import com.iplatform.model.po.S_role; @@ -21,16 +23,18 @@ * @Date 2023/10/23 */ @Service -public class BaseWarehouseManagerServiceImpl extends BaseServiceImpl { +public class BaseWarehouseManagerServiceImpl extends BaseServiceImpl implements BaseWarehouseManagerService { @Autowired private FinSysTenantUserServiceImpl finSysTenantUserService; + /** * @Description 鏂板 * @Author 鍗㈠簡闃� * @Date 2023/10/26 */ + @Override @Transactional(rollbackFor = Exception.class) public void add(WarehouseManagerParam list) throws Exception { @@ -97,5 +101,30 @@ } + @Override + public List<BaseWarehouseManager> selectWarehouseManager(Long warehouseId) { + BaseWarehouseManager baseWarehouseManager = new BaseWarehouseManager(); + baseWarehouseManager.setBaseWarehouseId(warehouseId); + List<BaseWarehouseManager> select = this.select(baseWarehouseManager); + return select; + } + + @Override + public List<BaseWarehouseManager> selectManagerList(Long warehouseId, Long agencyId) { + StringBuilder sql = new StringBuilder("select * from base_warehouse_manager bwm left join base_warehouse bw on bwm.base_warehouse_id = bw.id " + + "where 1=1 "); + Map<String, Object> param = new HashMap<>(); + if (warehouseId != null) { + param.put("warehouseId", warehouseId); + sql.append("and bwm.BASE_WAREHOUSE_ID =:warehouseId "); + } + if (agencyId != null) { + param.put("agencyId", agencyId); + sql.append("and bw.agency_id =:agencyId "); + } + List<BaseWarehouseManager> select = this.select(sql.toString(), param, new BaseWarehouseManager()); + return select; + } + } diff --git "a/deploy-jar-single/src/main/resources/import/\344\275\216\345\200\274\346\230\223\350\200\227\345\223\201\347\233\230\347\202\271\350\241\250.xls" "b/deploy-jar-single/src/main/resources/import/\344\275\216\345\200\274\346\230\223\350\200\227\345\223\201\347\233\230\347\202\271\350\241\250.xls" new file mode 100644 index 0000000..88681f1 --- /dev/null +++ "b/deploy-jar-single/src/main/resources/import/\344\275\216\345\200\274\346\230\223\350\200\227\345\223\201\347\233\230\347\202\271\350\241\250.xls" Binary files differ diff --git "a/deploy-jar-single/src/main/resources/import/\346\212\245\345\272\237\347\231\273\350\256\260\345\215\225.xlsx" "b/deploy-jar-single/src/main/resources/import/\346\212\245\345\272\237\347\231\273\350\256\260\345\215\225.xlsx" new file mode 100644 index 0000000..42a33c3 --- /dev/null +++ "b/deploy-jar-single/src/main/resources/import/\346\212\245\345\272\237\347\231\273\350\256\260\345\215\225.xlsx" Binary files differ diff --git "a/deploy-jar-single/src/main/resources/import/\350\260\203\346\213\250\345\205\245\345\272\223\345\215\225.xls" "b/deploy-jar-single/src/main/resources/import/\350\260\203\346\213\250\345\205\245\345\272\223\345\215\225.xls" index 728f90a..6a0175c 100644 --- "a/deploy-jar-single/src/main/resources/import/\350\260\203\346\213\250\345\205\245\345\272\223\345\215\225.xls" +++ "b/deploy-jar-single/src/main/resources/import/\350\260\203\346\213\250\345\205\245\345\272\223\345\215\225.xls" Binary files differ -- Gitblit v1.9.1