Browse Source

saas 1.3: 生成发票和发送发票邮件编写,但是未完全完成:缺少发票模板和邮件模板

wangPH 1 year ago
parent
commit
f737fa419f

+ 25 - 0
background-user/src/main/java/cn/kdan/compdf/controller/v1/UserBillingController.java

@@ -1,9 +1,12 @@
 package cn.kdan.compdf.controller.v1;
 
 import cn.kdan.compdf.base.R;
+import cn.kdan.compdf.dto.ApplyInvoiceDTO;
+import cn.kdan.compdf.dto.BillSendEmailDTO;
 import cn.kdan.compdf.dto.UserBillingUpInfoDTO;
 import cn.kdan.compdf.service.UserBillingInformationService;
 import cn.kdan.compdf.utils.TokenUtil;
+import cn.kdan.compdf.vo.ApplyInvoiceVO;
 import cn.kdan.compdf.vo.UserBillingInfoVO;
 import lombok.RequiredArgsConstructor;
 import org.springframework.web.bind.annotation.*;
@@ -53,5 +56,27 @@ public class UserBillingController {
         return R.ok();
     }
 
+    /**
+     * 申请开发票
+     *
+     * @param applyInvoiceDTO applyInvoiceDTO
+     * @return ApplyInvoiceVO
+     */
+    @PostMapping("/applyInvoice")
+    public R<ApplyInvoiceVO> applyInvoice(@RequestBody ApplyInvoiceDTO applyInvoiceDTO) {
+        return R.ok(billingInformationService.applyInvoice(TokenUtil.getRequestHeader().getUsersId(), applyInvoiceDTO));
+    }
+
+    /**
+     * bill发票邮件发送
+     *
+     * @param sendEmailDTO billSendEmailDTO
+     */
+    @PostMapping("/billSendEmail")
+    public R<Void> billSendEmail(@RequestBody BillSendEmailDTO sendEmailDTO) {
+        billingInformationService.billSendEmail(sendEmailDTO);
+        return R.ok();
+    }
+
 
 }

+ 8 - 0
background-user/src/main/java/cn/kdan/compdf/service/UserBillingInformationService.java

@@ -1,6 +1,7 @@
 package cn.kdan.compdf.service;
 
 import cn.kdan.compdf.dto.ApplyInvoiceDTO;
+import cn.kdan.compdf.dto.BillSendEmailDTO;
 import cn.kdan.compdf.dto.UserBillingUpInfoDTO;
 import cn.kdan.compdf.entity.UserBillingInformation;
 import cn.kdan.compdf.vo.ApplyInvoiceVO;
@@ -45,4 +46,11 @@ public interface UserBillingInformationService extends IService<UserBillingInfor
      * @return ApplyInvoiceVO
      */
     ApplyInvoiceVO applyInvoice(Integer compdfkitId, ApplyInvoiceDTO applyInvoiceDTO);
+
+    /**
+     * bill发票邮件发送
+     *
+     * @param billSendEmailDTO billSendEmailDTO
+     */
+    void billSendEmail(BillSendEmailDTO billSendEmailDTO);
 }

+ 2 - 2
background-user/src/main/java/cn/kdan/compdf/service/impl/UserBillingInformationServiceImpl.java

@@ -186,7 +186,7 @@ public class UserBillingInformationServiceImpl extends ServiceImpl<UserBillingIn
         return applyInvoiceVO;
     }
 
-
+    @Override
     public void billSendEmail(BillSendEmailDTO billSendEmailDTO) {
         OrderBillVo orderBillVo = ordersService.getSaaSOrderByOrderId(billSendEmailDTO.getOrderId());
         try {
@@ -205,7 +205,7 @@ public class UserBillingInformationServiceImpl extends ServiceImpl<UserBillingIn
             helper.addAttachment("invoice.pdf", file);
             javaMailSender.send(message);
         } catch (MessagingException | IOException e) {
-            log.error(e.getMessage(),e);
+            log.error(e.getMessage(), e);
             throw new BusinessException("发票发送失败");
         }
     }