From bb3989ab0a7227991343f1625acca38f340d88be Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=96=9B=E5=AE=8F=E7=A5=A5?= <14281818+xue-hongxiang@user.noreply.gitee.com> Date: Tue, 7 Jan 2025 14:05:47 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8A=9F=E8=83=BD=E5=AE=8C=E5=96=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../entity/workorder/WorkOrderFillData.java | 2 ++ .../service/impl/WorkOrderServiceImpl.java | 15 ++++++++------- .../excel/WorkOrderServiceSheet.xlsx | Bin 11807 -> 11681 bytes 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/springblade/modules/business/pojo/entity/workorder/WorkOrderFillData.java b/src/main/java/org/springblade/modules/business/pojo/entity/workorder/WorkOrderFillData.java index 6f1cc33..1ffe4ad 100644 --- a/src/main/java/org/springblade/modules/business/pojo/entity/workorder/WorkOrderFillData.java +++ b/src/main/java/org/springblade/modules/business/pojo/entity/workorder/WorkOrderFillData.java @@ -18,4 +18,6 @@ public class WorkOrderFillData { private Double materialPrice; private Double price; + + private Integer no; } diff --git a/src/main/java/org/springblade/modules/business/service/impl/WorkOrderServiceImpl.java b/src/main/java/org/springblade/modules/business/service/impl/WorkOrderServiceImpl.java index 24ac9e6..6977ee5 100644 --- a/src/main/java/org/springblade/modules/business/service/impl/WorkOrderServiceImpl.java +++ b/src/main/java/org/springblade/modules/business/service/impl/WorkOrderServiceImpl.java @@ -572,19 +572,20 @@ public class WorkOrderServiceImpl extends BaseServiceImpl workOrderRepairMaterialList = workOrderRepairMaterialService.list(Wrappers.lambdaQuery(WorkOrderRepairMaterial.class).eq(WorkOrderRepairMaterial::getOrderId, workOrder.getId())); List workOrderFillDataList = new ArrayList<>(); - WorkOrderFillData workOrderFillData = new WorkOrderFillData(); + int no = 0; for (WorkOrderRepairMaterial workOrderRepairMaterial : workOrderRepairMaterialList) { + WorkOrderFillData workOrderFillData = new WorkOrderFillData(); + workOrderFillData.setNo(++no); workOrderFillData.setMaterialName(workOrderRepairMaterial.getMaterialName()); workOrderFillData.setMaterialCount(workOrderRepairMaterial.getMaterialCount()); workOrderFillData.setMaterialPrice(workOrderRepairMaterial.getMaterialPrice()); double price = workOrderRepairMaterial.getMaterialPrice() / workOrderRepairMaterial.getMaterialCount(); workOrderFillData.setPrice(price); workOrderFillDataList.add(workOrderFillData); - total += price; } ImageExcelData imageExcelData = new ImageExcelData(); imageExcelData.setUrl(new URL(workOrder.getSignatureUrl())); @@ -668,24 +669,24 @@ public class WorkOrderServiceImpl extends BaseServiceImpl workOrderList, HttpServletResponse response) throws IOException { - for (WorkOrder workOrder : workOrderList) { //数据获取 String templateFileName = "WorkOrderServiceSheet.xlsx"; InputStream fileInputStream = this.getClass().getClassLoader().getResourceAsStream("excel" + "/" + templateFileName); - double total = 0.0; + double total = workOrder.getTotalPrice(); FillConfig fillConfig = FillConfig.builder().forceNewRow(Boolean.TRUE).build(); List workOrderRepairMaterialList = workOrderRepairMaterialService.list(Wrappers.lambdaQuery(WorkOrderRepairMaterial.class).eq(WorkOrderRepairMaterial::getOrderId, workOrder.getId())); List workOrderFillDataList = new ArrayList<>(); - WorkOrderFillData workOrderFillData = new WorkOrderFillData(); + int no = 0; for (WorkOrderRepairMaterial workOrderRepairMaterial : workOrderRepairMaterialList) { + WorkOrderFillData workOrderFillData = new WorkOrderFillData(); + workOrderFillData.setNo(++no); workOrderFillData.setMaterialName(workOrderRepairMaterial.getMaterialName()); workOrderFillData.setMaterialCount(workOrderRepairMaterial.getMaterialCount()); workOrderFillData.setMaterialPrice(workOrderRepairMaterial.getMaterialPrice()); double price = workOrderRepairMaterial.getMaterialPrice() / workOrderRepairMaterial.getMaterialCount(); workOrderFillData.setPrice(price); workOrderFillDataList.add(workOrderFillData); - total += price; } ImageExcelData imageExcelData = new ImageExcelData(); imageExcelData.setUrl(new URL(workOrder.getSignatureUrl())); diff --git a/src/main/resources/excel/WorkOrderServiceSheet.xlsx b/src/main/resources/excel/WorkOrderServiceSheet.xlsx index 0f15501bccb436f667bb8b8c9ffe79183329ef49..100d6a7f383a6f91933d1899e0760ebecd885d2c 100644 GIT binary patch delta 7666 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

^oxXemR_J=ut`q>+FgJWcn@1=j# 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