Browse Source

发票打印相关

609324174@qq.com 4 years ago
parent
commit
fefac80de7

+ 4 - 3
smart-city-platform/src/main/java/com/bz/smart_city/controller/pay/PayPrintInvoiceController.java

@@ -46,8 +46,9 @@ public class PayPrintInvoiceController {
             @ApiParam(value = "站点ID", required = false) @RequestParam(required = false) String siteId,
             @ApiParam(value = "水司ID", required = false) @RequestParam(required = false) String customerId,
             @ApiParam(value = "用户编号", required = true) @RequestParam(required = true) String userCode,
-            @ApiParam(value = "缴费流水号", required = true) @RequestParam(required = true) String payseriesno) {
-        ReturnPrintResultDto returnPrintResultDto = issueElectronicInvoiceService.requestPrint(siteId,customerId,"1", userCode, payseriesno, null);
+            @ApiParam(value = "缴费流水号", required = true) @RequestParam(required = true) String payseriesno,
+            @ApiParam(value = "email", required = true) @RequestParam(required = true) String email) {
+        ReturnPrintResultDto returnPrintResultDto = issueElectronicInvoiceService.requestPrint(siteId,customerId,"1", userCode, payseriesno, null,email);
         return new AjaxMessage<>(ResultStatus.OK, returnPrintResultDto);
     }
 
@@ -58,7 +59,7 @@ public class PayPrintInvoiceController {
             @ApiParam(value = "水司ID", required = false) @RequestParam(required = false) String customerId,
             @ApiParam(value = "用户编号", required = true) @RequestParam(required = true) String userCode,
             @ApiParam(value = "票据ID", required = true) @RequestParam(required = true) String invoicePrintId) {
-        ReturnPrintResultDto returnPrintResultDto = issueElectronicInvoiceService.requestPrint(siteId,customerId,"2", null, null, invoicePrintId);
+        ReturnPrintResultDto returnPrintResultDto = issueElectronicInvoiceService.requestPrint(siteId, customerId, "2", null, null, invoicePrintId, null);
         return new AjaxMessage<>(ResultStatus.OK, returnPrintResultDto);
     }
     @ApiOperation(value = "发票列表")

+ 4 - 0
smart-city-platform/src/main/java/com/bz/smart_city/entity/pay/archives/PayBaseCustomerandmeterrela.java

@@ -2,6 +2,7 @@ package com.bz.smart_city.entity.pay.archives;
 
 import com.bz.smart_city.entity.ProgramItem;
 import com.fasterxml.jackson.annotation.JsonFormat;
+import com.fasterxml.jackson.annotation.JsonIgnore;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
@@ -84,6 +85,9 @@ public class PayBaseCustomerandmeterrela {
 
     @ApiModelProperty(value = "电话号码", position = 30)
     private String telephone;
+    @JsonIgnore
+    @ApiModelProperty(value = "邮箱地址", position = 33)
+    private String email;
     @ApiModelProperty(value = "用水性质名称", position = 31)
     private String propertyName;
 

+ 9 - 2
smart-city-platform/src/main/java/com/bz/smart_city/service/impl/pay/IssueElectronicInvoiceServiceImpl.java

@@ -109,7 +109,7 @@ public class IssueElectronicInvoiceServiceImpl implements IssueElectronicInvoice
      * @Author:
      * @Date: 2020/7/28
      */
-    public ReturnPrintResultDto requestPrint(String siteId, String customerId, String kpType, String userCode, String payseriesno, String invoicePrintId) {
+    public ReturnPrintResultDto requestPrint(String siteId, String customerId, String kpType, String userCode, String payseriesno, String invoicePrintId,String email) {
         LoginUser loginUser = UserUtil.getCurrentUser();
         ReturnPrintResultDto returnPrintResultDto = new ReturnPrintResultDto();//开票返回结果信息
         String name = loginUser.getName();//操作员姓名
@@ -250,7 +250,14 @@ public class IssueElectronicInvoiceServiceImpl implements IssueElectronicInvoice
             return returnPrintResultDto;
         }
         payInvoiceOrderDto.setDetail(orderDetailDtos);
-        payInvoiceOrderDto.setEmail(invoiceParam.get("saleEmail"));
+        if(email!=null&& email.length()>0)
+            payInvoiceOrderDto.setEmail(email);
+        else {
+            if (payBaseAccount.getEmail() != null)
+                payInvoiceOrderDto.setEmail(payBaseAccount.getEmail());
+            else
+                payInvoiceOrderDto.setEmail(invoiceParam.get("saleEmail"));
+        }
         payEleInvoiceDto.setOrder(payInvoiceOrderDto);
         //发送开票请求
         String jsonsString = DESDZFP.encrypt(JSON.toJSONString(payEleInvoiceDto));

+ 1 - 1
smart-city-platform/src/main/java/com/bz/smart_city/service/pay/IssueElectronicInvoiceService.java

@@ -10,5 +10,5 @@ import com.bz.smart_city.dto.pay.ReturnPrintResultDto;
  * @Version V1.0
  **/
 public interface IssueElectronicInvoiceService {
-    ReturnPrintResultDto requestPrint(String siteId, String customerId,String kpType, String userCode, String payseriesno, String invoicePrintId);
+    ReturnPrintResultDto requestPrint(String siteId, String customerId,String kpType, String userCode, String payseriesno, String invoicePrintId,String email);
 }

+ 2 - 1
smart-city-platform/src/main/resources/mapper/PayBaseCustomerandmeterrelaMapper.xml

@@ -617,7 +617,8 @@
         account.telephone as "telephone",
         account.address as "address",
         customer.vatno as "vatno",
-        customer.bankaccount as "bankaccount"
+        customer.bankaccount as "bankaccount",
+        account.email as "email"
         from pay_base_customerandmeterrela customer
         left join pay_base_account account on customer.account_id = account.id
         <where>