From ce51fc3d50930f5a0b8d68d4f0459b117a6f34e7 Mon Sep 17 00:00:00 2001 From: Gauthier LO Date: Fri, 29 Mar 2024 17:21:06 +0100 Subject: [PATCH 1/4] fix : prices on product order page and allow to invoice sku with 0 qty --- .../domain/purchase/invoice/PurchaseInvoiceEntry.java | 2 +- .../java/org/jeecg/modules/business/mapper/xml/SkuMapper.xml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/domain/purchase/invoice/PurchaseInvoiceEntry.java b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/domain/purchase/invoice/PurchaseInvoiceEntry.java index fb9bc6af5..623b383a6 100644 --- a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/domain/purchase/invoice/PurchaseInvoiceEntry.java +++ b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/domain/purchase/invoice/PurchaseInvoiceEntry.java @@ -25,7 +25,7 @@ public class PurchaseInvoiceEntry { } public BigDecimal unitPrice() { - return totalAmount.divide(BigDecimal.valueOf(quantity)); + return quantity == 0 ? BigDecimal.ZERO : totalAmount.divide(BigDecimal.valueOf(quantity)); } diff --git a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/mapper/xml/SkuMapper.xml b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/mapper/xml/SkuMapper.xml index d8bb686d7..20fb07b47 100644 --- a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/mapper/xml/SkuMapper.xml +++ b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/mapper/xml/SkuMapper.xml @@ -171,7 +171,7 @@ s.purchasing_amount, s.available_amount, qtyInOrdersNotShipped.quantity as qtyInOrdersNotShipped, - IF(s.available_amount IS NULL, 0, s.available_amount) + IF(s.purchasing_amount IS NULL, 0, s.purchasing_amount) - IF(qtyInOrdersNotShipped.quantity IS NULL, 0, qtyInOrdersNotShipped.quantity) as stock, + s.available_amount + s.purchasing_amount - IF(qtyInOrdersNotShipped.quantity IS NULL, 0, qtyInOrdersNotShipped.quantity) as stock, s.image_source, s.service_fee, IF(sp.price_rmb IS NULL, sp.price, @@ -203,7 +203,7 @@ FROM sku s JOIN client_sku cs ON s.id = cs.sku_id JOIN product p ON s.product_id = p.id - LEFT JOIN sku_price sp ON s.id = sp.sku_id + LEFT JOIN sku_current_price sp ON s.id = sp.sku_id LEFT JOIN sales_28 s28 ON s.id = s28.sku_id LEFT JOIN sales_42 s42 ON s.id = s42.sku_id LEFT JOIN sales_7 s7 ON s.id = s7.sku_id From 31ed1821d4226cbbf91c5801e545fb2f009661b1 Mon Sep 17 00:00:00 2001 From: Qiuyi LI Date: Wed, 3 Apr 2024 12:27:12 +0200 Subject: [PATCH 2/4] Code cleanup --- .../jeecg/modules/business/domain/job/MabangSkuJob.java | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/domain/job/MabangSkuJob.java b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/domain/job/MabangSkuJob.java index dc3cc1f86..d512957e1 100644 --- a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/domain/job/MabangSkuJob.java +++ b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/domain/job/MabangSkuJob.java @@ -106,7 +106,7 @@ public class MabangSkuJob implements Job { log.info("{} skus from {} to {} ({})to be inserted.", skusFromMabang.size(), dayBeforeEndDateTime, endDateTime, dateType); - if (skusFromMabang.size() > 0) { + if (!skusFromMabang.isEmpty()) { // we save the skuDatas in DB newSkusMap.putAll(skuListMabangService.saveSkuFromMabang(skusFromMabang)); } @@ -120,7 +120,7 @@ public class MabangSkuJob implements Job { log.info("SKU codes replaced by new created SKU IDs"); // here we send system notification with the number and list of new skus saved in DB - if (newSkusMap.size() == 0) { + if (newSkusMap.isEmpty()) { return; } List messageContentList = new ArrayList<>(); @@ -177,13 +177,11 @@ public class MabangSkuJob implements Job { Map param = new HashMap<>(); param.put("nb_of_entries", String.valueOf(newSkusMap.size())); param.put("sku_list", msg); - param.put("need_treatment", needTreatmentSkuMap.size() > 0 ? needTreatmentSku : "None"); + param.put("need_treatment", !needTreatmentSkuMap.isEmpty() ? needTreatmentSku : "None"); param.put("current_page", String.valueOf(page)); param.put("total_page", String.valueOf(messageContentList.size())); TemplateMessageDTO message = new TemplateMessageDTO("admin", "admin", "SKU导入任务", param, "sku_mabang_job_result"); ISysBaseApi.sendTemplateAnnouncement(message); -// message = new TemplateMessageDTO("admin", "Alice", "SKU导入任务", param, "sku_mabang_job_result"); - ISysBaseApi.sendTemplateAnnouncement(message); message = new TemplateMessageDTO("admin", "Jessyca", "SKU导入任务", param, "sku_mabang_job_result"); ISysBaseApi.sendTemplateAnnouncement(message); log.info("Page {} of recap sent through system announcement", page); From 92b310f4d03c5dcbddc9f3684521cfaf45cab810 Mon Sep 17 00:00:00 2001 From: Qiuyi LI Date: Wed, 3 Apr 2024 12:29:21 +0200 Subject: [PATCH 3/4] Bugfix: nullify optional parameters when retrieving SKUs from Mabang --- .../SkuListRequestBody.java | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/domain/api/mabang/doSearchSkuListNew/SkuListRequestBody.java b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/domain/api/mabang/doSearchSkuListNew/SkuListRequestBody.java index 42e3ade5c..52c486243 100644 --- a/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/domain/api/mabang/doSearchSkuListNew/SkuListRequestBody.java +++ b/jeecg-module-system/jeecg-system-biz/src/main/java/org/jeecg/modules/business/domain/api/mabang/doSearchSkuListNew/SkuListRequestBody.java @@ -15,22 +15,22 @@ public class SkuListRequestBody implements RequestBody { private static final DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); - private String stockSku = ""; + private String stockSku = null; // 50 skus max - private String stockSkuList = ""; + private String stockSkuList = null; private DateType datetimeType; private LocalDateTime startDate; private LocalDateTime endDate; private Integer page = 1; private Integer total; - private String cursor = ""; - private Integer maxRows = 10; - private Integer showVirtualSku = 0; - private Integer showProvider = 0; - private Integer showWarehouse = 0; - private Integer showLabel = 0; - private Integer showAttributes = 0; - private Integer showMachining = 0; + private String cursor = "1"; + private Integer maxRows = null; + private Integer showVirtualSku = null; + private Integer showProvider = null; + private Integer showWarehouse = null; + private Integer showLabel = null; + private Integer showAttributes = null; + private Integer showMachining = null; @Override public String api() { From c2ba2e6c059ae37d9d554ec05c4a72c4b62b5f3a Mon Sep 17 00:00:00 2001 From: Qiuyi LI Date: Wed, 3 Apr 2024 16:50:22 +0200 Subject: [PATCH 4/4] Release 1.11.1 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index d2d951b3f..5c3e25530 100644 --- a/pom.xml +++ b/pom.xml @@ -2,7 +2,7 @@ 4.0.0 org.jeecgframework.boot jeecg-boot-parent - 1.11.0 + 1.11.1 pom WIA APP ${project.version}