From 51c246044f68756d66c7ee458decf569b33cda0d Mon Sep 17 00:00:00 2001 From: cwchen <1048842385@qq.com> Date: Fri, 17 Jan 2025 19:35:40 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A6=96=E9=A1=B5=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/HomeIndexController.java | 44 ++++++++++++++++--- .../backstage/entity/BackParamsDto.java | 2 + .../entity/HomeDispatchDetailVo.java | 2 +- .../backstage/entity/HomeProPlanDetailVo.java | 44 +++++++++++++++++++ .../backstage/mapper/HomeIndexMapper.java | 14 +++++- .../backstage/service/HomeIndexService.java | 16 +++++-- .../service/HomeIndexServiceImpl.java | 26 ++++++++--- .../business/backstage/HomeIndexMapper.xml | 39 ++++++++++++++-- 8 files changed, 165 insertions(+), 22 deletions(-) create mode 100644 src/main/java/com/bonus/gzcar/business/backstage/entity/HomeProPlanDetailVo.java diff --git a/src/main/java/com/bonus/gzcar/business/backstage/controller/HomeIndexController.java b/src/main/java/com/bonus/gzcar/business/backstage/controller/HomeIndexController.java index 4155a19..9972ce2 100644 --- a/src/main/java/com/bonus/gzcar/business/backstage/controller/HomeIndexController.java +++ b/src/main/java/com/bonus/gzcar/business/backstage/controller/HomeIndexController.java @@ -11,10 +11,7 @@ package com.bonus.gzcar.business.backstage.controller; import cn.afterturn.easypoi.excel.ExcelExportUtil; import cn.afterturn.easypoi.excel.entity.ExportParams; import cn.afterturn.easypoi.excel.entity.enmus.ExcelType; -import com.bonus.gzcar.business.backstage.entity.BackParamsDto; -import com.bonus.gzcar.business.backstage.entity.HomeDispatchDetailVo; -import com.bonus.gzcar.business.backstage.entity.HomePlanDetailVo; -import com.bonus.gzcar.business.backstage.entity.HomeProDetailVo; +import com.bonus.gzcar.business.backstage.entity.*; import com.bonus.gzcar.business.backstage.service.HomeIndexService; import com.bonus.gzcar.manager.annotation.DecryptAndVerify; import com.bonus.gzcar.manager.core.entity.EncryptedReq; @@ -131,6 +128,43 @@ public class HomeIndexController { } } + @ApiOperation(value = "首页-二级页面-工程详情-需求计划详情") + @GetMapping("getProPlanDetails") + @DecryptAndVerify(decryptedClass = BackParamsDto.class) + public PageInfo getProPlanDetails(EncryptedReq dto) { + PageHelper.startPage(dto.getPageNum(),dto.getPageSize()); + List list = service.getProPlanDetails(dto.getData()); + return new PageInfo<>(list); + } + + @ApiOperation(value = "首页-二级页面-工程详情-需求计划详情导出") + @PostMapping("exportProPlanDetails") + public void exportProPlanDetails(HttpServletResponse response, @RequestBody BackParamsDto dto) { + try { + List list = service.getProPlanDetails(dto); + final int[] num = {1}; + list.forEach(vo -> { + vo.setSerialNum(num[0]); + if(Objects.equals(vo.getDispatchStatus(),"1")){ + vo.setDispatchStatus("待派车"); + }else if(Objects.equals(vo.getDispatchStatus(),"2")){ + vo.setDispatchStatus("已派车"); + } + num[0]++; + }); + ExportParams exportParams = new ExportParams("需求计划详情", "需求计划详情", ExcelType.XSSF); + Workbook workbook = ExcelExportUtil.exportExcel(exportParams, HomeProPlanDetailVo.class, list); + response.setContentType("application/vnd.ms-excel"); + response.setHeader("content-disposition", "attachment;fileName=" + URLEncoder.encode("需求计划详情" + ".xlsx", "UTF-8")); + ServletOutputStream outputStream = response.getOutputStream(); + workbook.write(outputStream); + outputStream.close(); + workbook.close(); + } catch (Exception e) { + log.error(e.toString(), e); + } + } + @ApiOperation(value = "首页-二级页面-需求计划详情") @GetMapping("getPlanDetails") @DecryptAndVerify(decryptedClass = BackParamsDto.class) @@ -149,7 +183,7 @@ public class HomeIndexController { list.forEach(vo -> { vo.setSerialNum(num[0]); if(Objects.equals(vo.getDispatchStatus(),"1")){ - vo.setDispatchStatus("未派车"); + vo.setDispatchStatus("待派车"); }else if(Objects.equals(vo.getDispatchStatus(),"2")){ vo.setDispatchStatus("已派车"); } diff --git a/src/main/java/com/bonus/gzcar/business/backstage/entity/BackParamsDto.java b/src/main/java/com/bonus/gzcar/business/backstage/entity/BackParamsDto.java index 4501378..96e4141 100644 --- a/src/main/java/com/bonus/gzcar/business/backstage/entity/BackParamsDto.java +++ b/src/main/java/com/bonus/gzcar/business/backstage/entity/BackParamsDto.java @@ -40,5 +40,7 @@ public class BackParamsDto { private String startTime; /**结束日期*/ private String endTime; + /**工程ID*/ + private String proId; } diff --git a/src/main/java/com/bonus/gzcar/business/backstage/entity/HomeDispatchDetailVo.java b/src/main/java/com/bonus/gzcar/business/backstage/entity/HomeDispatchDetailVo.java index 285c7a0..5c80f3d 100644 --- a/src/main/java/com/bonus/gzcar/business/backstage/entity/HomeDispatchDetailVo.java +++ b/src/main/java/com/bonus/gzcar/business/backstage/entity/HomeDispatchDetailVo.java @@ -17,7 +17,7 @@ public class HomeDispatchDetailVo { @Excel(name = "序号", width = 10.0, orderNum = "0") private int serialNum; /**车辆类型 1.车辆 2.吊车*/ - private int type; + private int typeName; /**名称*/ @Excel(name = "名称", width = 20.0, orderNum = "1") private String name; diff --git a/src/main/java/com/bonus/gzcar/business/backstage/entity/HomeProPlanDetailVo.java b/src/main/java/com/bonus/gzcar/business/backstage/entity/HomeProPlanDetailVo.java new file mode 100644 index 0000000..b81569b --- /dev/null +++ b/src/main/java/com/bonus/gzcar/business/backstage/entity/HomeProPlanDetailVo.java @@ -0,0 +1,44 @@ +package com.bonus.gzcar.business.backstage.entity; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.Data; + +/** + * @className:HomeProDetailVo + * @author:cwchen + * @date:2025-01-16-16:34 + * @version:1.0 + * @description:首页-工程详情-需求计划详情-vo + */ +@Data +public class HomeProPlanDetailVo { + + /**序号*/ + @Excel(name = "序号", width = 10.0, orderNum = "0") + private int serialNum; + /**车辆类型 1.车辆 2.吊车*/ + private int typeName; + /**计划id*/ + private Long planId; + /**需求计划编号*/ + @Excel(name = "需求计划编号", width = 20.0, orderNum = "1") + private String code; + /**申请人*/ + @Excel(name = "申请人", width = 20.0, orderNum = "2") + private String userName; + /**申请时间*/ + @Excel(name = "申请时间", width = 20.0, orderNum = "3") + private String applyTime; + /**备注*/ + @Excel(name = "备注", width = 20.0, orderNum = "4") + private String remark; + /**派车状态*/ + @Excel(name = "派车状态", width = 20.0, orderNum = "5") + private String dispatchStatus; + /**派车数量*/ + @Excel(name = "派车数量", width = 20.0, orderNum = "6") + private String dispatchNum; + /**采购金额*/ + @Excel(name = "采购金额", width = 20.0, orderNum = "7") + private double money; +} diff --git a/src/main/java/com/bonus/gzcar/business/backstage/mapper/HomeIndexMapper.java b/src/main/java/com/bonus/gzcar/business/backstage/mapper/HomeIndexMapper.java index 1dc99f8..8c1c081 100644 --- a/src/main/java/com/bonus/gzcar/business/backstage/mapper/HomeIndexMapper.java +++ b/src/main/java/com/bonus/gzcar/business/backstage/mapper/HomeIndexMapper.java @@ -107,6 +107,15 @@ public interface HomeIndexMapper { */ List getProDetails(BackParamsDto dto); + /** + * 首页-二级页面-工程详情-需求计划详情 + * @param dto + * @return List + * @author cwchen + * @date 2025/1/17 18:51 + */ + List getProPlanDetails(BackParamsDto dto); + /** * 首页-二级页面-需求计划详情 * @param dto @@ -125,7 +134,8 @@ public interface HomeIndexMapper { */ List getDispatchDetails(BackParamsDto dto); - IndexVo getPayMoney(@Param("params") BackParamsDto dto); + IndexVo getPayMoney(BackParamsDto dto); + + IndexVo getNoPayMoney(BackParamsDto dto); - IndexVo getNoPayMoney(@Param("params") BackParamsDto dto); } diff --git a/src/main/java/com/bonus/gzcar/business/backstage/service/HomeIndexService.java b/src/main/java/com/bonus/gzcar/business/backstage/service/HomeIndexService.java index f392025..2765bae 100644 --- a/src/main/java/com/bonus/gzcar/business/backstage/service/HomeIndexService.java +++ b/src/main/java/com/bonus/gzcar/business/backstage/service/HomeIndexService.java @@ -1,9 +1,6 @@ package com.bonus.gzcar.business.backstage.service; -import com.bonus.gzcar.business.backstage.entity.BackParamsDto; -import com.bonus.gzcar.business.backstage.entity.HomeDispatchDetailVo; -import com.bonus.gzcar.business.backstage.entity.HomePlanDetailVo; -import com.bonus.gzcar.business.backstage.entity.HomeProDetailVo; +import com.bonus.gzcar.business.backstage.entity.*; import com.bonus.gzcar.manager.webResult.ServerResponse; import java.util.List; @@ -89,6 +86,16 @@ public interface HomeIndexService { */ List getProDetails(BackParamsDto data); + + /** + * 首页-二级页面-工程详情-需求计划详情 + * @param data + * @return List + * @author cwchen + * @date 2025/1/17 18:49 + */ + List getProPlanDetails(BackParamsDto data); + /** * 首页-二级页面-需求计划详情 * @param data @@ -106,4 +113,5 @@ public interface HomeIndexService { * @date 2025/1/17 14:17 */ List getDispatchDetails(BackParamsDto data); + } diff --git a/src/main/java/com/bonus/gzcar/business/backstage/service/HomeIndexServiceImpl.java b/src/main/java/com/bonus/gzcar/business/backstage/service/HomeIndexServiceImpl.java index 3cd8535..4a80abc 100644 --- a/src/main/java/com/bonus/gzcar/business/backstage/service/HomeIndexServiceImpl.java +++ b/src/main/java/com/bonus/gzcar/business/backstage/service/HomeIndexServiceImpl.java @@ -100,17 +100,17 @@ public class HomeIndexServiceImpl implements HomeIndexService { Future> future5 = testTaskExecutor.submit(() -> { log.info("数据概览-已付款金额{}", Thread.currentThread().getName()); List dataList = new ArrayList<>(2); - IndexVo indexVo = mapper.getPayMoney(dto); - dataList.add(0, indexVo.getMoney()); - dataList.add(1, indexVo.getNum()); + IndexVo indexVo = mapper.getPayMoney(dto); + dataList.add(0, indexVo != null ? Double.parseDouble(indexVo.getMoney()) : 0); + dataList.add(1, indexVo != null ? Integer.parseInt(indexVo.getNum()) : 0); return dataList; }); Future> future6 = testTaskExecutor.submit(() -> { log.info("数据概览-应付款金额{}", Thread.currentThread().getName()); - IndexVo indexVo = mapper.getNoPayMoney(dto); + IndexVo indexVo = mapper.getNoPayMoney(dto); List dataList = new ArrayList<>(2); - dataList.add(0, indexVo.getMoney()); - dataList.add(1, indexVo.getNum()); + dataList.add(0, indexVo != null ? Double.parseDouble(indexVo.getMoney()) : 0); + dataList.add(1, indexVo != null ? Integer.parseInt(indexVo.getNum()) : 0); return dataList; }); fList = future.get(); @@ -351,6 +351,20 @@ public class HomeIndexServiceImpl implements HomeIndexService { return list; } + @Override + public List getProPlanDetails(BackParamsDto dto) { + List list = new ArrayList<>(); + try { + list = mapper.getProPlanDetails(dto); + for (HomeProPlanDetailVo vo : list) { + // 金额待计算 + } + } catch (Exception e) { + log.error(e.toString(), e); + } + return list; + } + @Override public List getPlanDetails(BackParamsDto dto) { List list = new ArrayList<>(); diff --git a/src/main/resources/mappers/business/backstage/HomeIndexMapper.xml b/src/main/resources/mappers/business/backstage/HomeIndexMapper.xml index 14ed22e..2b8d2fa 100644 --- a/src/main/resources/mappers/business/backstage/HomeIndexMapper.xml +++ b/src/main/resources/mappers/business/backstage/HomeIndexMapper.xml @@ -152,6 +152,35 @@ ELSE '1' END = #{dispatchStatus}) + + + \ No newline at end of file