From e5bd305c222c808bef461ea907146140436761f1 Mon Sep 17 00:00:00 2001 From: starrysky <838252223@qq.com> Date: Sat, 4 Jan 2020 17:42:33 +0800 Subject: [PATCH] =?UTF-8?q?=E9=94=80=E5=94=AE=E5=8F=91=E8=B4=A7=E5=8D=95?= =?UTF-8?q?=E5=8D=95=E4=BB=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../wms/invoice/domain/InvoiceProduct.java | 6 ++++- .../service/impl/InvoiceServiceImpl.java | 26 +++++++++++++++++++ 2 files changed, 31 insertions(+), 1 deletion(-) diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/wms/invoice/domain/InvoiceProduct.java b/eladmin-system/src/main/java/me/zhengjie/modules/wms/invoice/domain/InvoiceProduct.java index c3918905..b368e9f3 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/wms/invoice/domain/InvoiceProduct.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/wms/invoice/domain/InvoiceProduct.java @@ -61,10 +61,14 @@ public class InvoiceProduct implements Serializable { @Column(name = "actual_invoice_number",nullable = false) private Long actualInvoiceNumber; - // 瘦瘦金额 + // 销售金额 @Column(name = "sale_price") private Long salePrice; + // 单价 + @Column(name = "unit_price") + private Long unitPrice; + // 备注 @Column(name = "remark") private String remark; diff --git a/eladmin-system/src/main/java/me/zhengjie/modules/wms/invoice/service/impl/InvoiceServiceImpl.java b/eladmin-system/src/main/java/me/zhengjie/modules/wms/invoice/service/impl/InvoiceServiceImpl.java index f67aaba9..c8ef059e 100644 --- a/eladmin-system/src/main/java/me/zhengjie/modules/wms/invoice/service/impl/InvoiceServiceImpl.java +++ b/eladmin-system/src/main/java/me/zhengjie/modules/wms/invoice/service/impl/InvoiceServiceImpl.java @@ -155,6 +155,19 @@ public class InvoiceServiceImpl implements InvoiceService { @Override @Transactional(rollbackFor = Exception.class) public InvoiceDetailDTO create(CreateInvoiceRequest createInvoiceRequest) { + List repeatProductCodeList =createInvoiceRequest.getInvoiceProductList().stream(). + collect(Collectors.groupingBy(dog->dog.getProductCode() ,Collectors.counting())) + .entrySet().stream() + .filter(entry->entry.getValue()>1) + .map(entry->entry.getKey()) + .collect(Collectors.toList()); + + if(!CollectionUtils.isEmpty(repeatProductCodeList)){ + String repeatProductCodeStr = me.zhengjie.utils.StringUtils.join(repeatProductCodeList.toArray(), ","); + throw new BadRequestException("产品" + repeatProductCodeStr + "请合并为一条记录"); + } + + Invoice invoice = new Invoice(); // 客户订单编号 String customerOrderCode = createInvoiceRequest.getCustomerOrderCode(); @@ -223,6 +236,19 @@ public class InvoiceServiceImpl implements InvoiceService { @Override @Transactional(rollbackFor = Exception.class) public void update(UpdateInvoiceRequest updateInvoiceRequest) { + + List repeatProductCodeList =updateInvoiceRequest.getInvoiceProductList().stream(). + collect(Collectors.groupingBy(dog->dog.getProductCode() ,Collectors.counting())) + .entrySet().stream() + .filter(entry->entry.getValue()>1) + .map(entry->entry.getKey()) + .collect(Collectors.toList()); + + if(!CollectionUtils.isEmpty(repeatProductCodeList)){ + String repeatProductCodeStr = me.zhengjie.utils.StringUtils.join(repeatProductCodeList.toArray(), ","); + throw new BadRequestException("产品" + repeatProductCodeStr + "请合并为一条记录"); + } + Invoice invoice = new Invoice(); BeanUtils.copyProperties(updateInvoiceRequest, invoice); // 修改发货单概要信息