diff --git a/src/main/java/cn/lihongjie/coal/invoice/controller/InvoiceController.java b/src/main/java/cn/lihongjie/coal/invoice/controller/InvoiceController.java index d410b289..87aa31ce 100644 --- a/src/main/java/cn/lihongjie/coal/invoice/controller/InvoiceController.java +++ b/src/main/java/cn/lihongjie/coal/invoice/controller/InvoiceController.java @@ -69,7 +69,6 @@ public class InvoiceController { @PostMapping("/uploadNew") @Operation(summary = "上传新发票") public Object uploadNew(@RequestBody IdRequest request) { - this.service.uploadNew(request); - return true; + return this.service.uploadNew(request); } } diff --git a/src/main/java/cn/lihongjie/coal/invoice/dto/InvoiceDto.java b/src/main/java/cn/lihongjie/coal/invoice/dto/InvoiceDto.java index 11aad2a0..7f7d527f 100644 --- a/src/main/java/cn/lihongjie/coal/invoice/dto/InvoiceDto.java +++ b/src/main/java/cn/lihongjie/coal/invoice/dto/InvoiceDto.java @@ -98,6 +98,8 @@ public class InvoiceDto extends OrgCommonDto { private FileEntity file; + @Comment("发票详情数量") + private Integer detailsCount; private String archiveStatus; diff --git a/src/main/java/cn/lihongjie/coal/invoice/entity/InvoiceEntity.java b/src/main/java/cn/lihongjie/coal/invoice/entity/InvoiceEntity.java index 21d6893c..a5be850e 100644 --- a/src/main/java/cn/lihongjie/coal/invoice/entity/InvoiceEntity.java +++ b/src/main/java/cn/lihongjie/coal/invoice/entity/InvoiceEntity.java @@ -118,9 +118,13 @@ public class InvoiceEntity extends OrgCommonEntity { @Comment("特殊标识信息") private String specialTag; - @OneToMany(cascade = {CascadeType.PERSIST, CascadeType.REMOVE}) + @OneToMany(cascade = {CascadeType.PERSIST, CascadeType.REMOVE}, mappedBy = "invoice") private List invoiceDetails; + + @Comment("发票详情数量") + private Integer detailsCount; + @ManyToOne private FileEntity file; @Comment("归档状态") diff --git a/src/main/java/cn/lihongjie/coal/invoice/service/InvoiceService.java b/src/main/java/cn/lihongjie/coal/invoice/service/InvoiceService.java index e4cd7ae2..c4daa744 100644 --- a/src/main/java/cn/lihongjie/coal/invoice/service/InvoiceService.java +++ b/src/main/java/cn/lihongjie/coal/invoice/service/InvoiceService.java @@ -117,7 +117,27 @@ public class InvoiceService extends BaseService() { + @Override + public Predicate toPredicate( + Root root, + CriteriaQuery query, + CriteriaBuilder criteriaBuilder) { + + return criteriaBuilder.and( + criteriaBuilder.equal( + root.get("invoiceCode"), invoice.getInvoiceCode()), + criteriaBuilder.equal( + root.get("invoiceNumber"), invoice.getInvoiceNumber()), + criteriaBuilder.equal( + root.get("organizationId"), + Ctx.currentUser().getOrganizationId())); + } + }); } if (CollectionUtils.isNotEmpty(invoice.getInvoiceDetails())) { @@ -127,6 +147,8 @@ public class InvoiceService extends BaseService { detail.setInvoice(invoice); }); + + invoice.setDetailsCount(invoice.getInvoiceDetails().size()); } invoice.setFile(fileService.get(request.getId())); diff --git a/src/main/java/cn/lihongjie/coal/invoiceDetail/dto/InvoiceDetailDto.java b/src/main/java/cn/lihongjie/coal/invoiceDetail/dto/InvoiceDetailDto.java index 5c20c9e8..8da2663a 100644 --- a/src/main/java/cn/lihongjie/coal/invoiceDetail/dto/InvoiceDetailDto.java +++ b/src/main/java/cn/lihongjie/coal/invoiceDetail/dto/InvoiceDetailDto.java @@ -36,10 +36,10 @@ public class InvoiceDetailDto extends OrgCommonDto { private Double amount; @Comment("税率") - private Double taxRate; + private String taxRate; @Comment("税额") - private Double tax; + private String tax; private String archiveStatus; diff --git a/src/main/java/cn/lihongjie/coal/invoiceDetail/entity/InvoiceDetailEntity.java b/src/main/java/cn/lihongjie/coal/invoiceDetail/entity/InvoiceDetailEntity.java index 9745e08e..20f078b7 100644 --- a/src/main/java/cn/lihongjie/coal/invoiceDetail/entity/InvoiceDetailEntity.java +++ b/src/main/java/cn/lihongjie/coal/invoiceDetail/entity/InvoiceDetailEntity.java @@ -48,10 +48,10 @@ public class InvoiceDetailEntity extends OrgCommonEntity { private Double amount; @Comment("税率") - private Double taxRate; + private String taxRate; @Comment("税额") - private Double tax; + private String tax; @Comment("归档状态") @ColumnDefault("'0'")