JSRedMzInvoiceInfo.java 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. package cn.hnthyy.thmz.entity.mzdzfp;
  2. import cn.hnthyy.thmz.enums.InsutypeEnum;
  3. import com.alibaba.druid.util.StringUtils;
  4. import lombok.AllArgsConstructor;
  5. import lombok.Builder;
  6. import lombok.Data;
  7. import lombok.NoArgsConstructor;
  8. import java.io.Serializable;
  9. import java.math.BigDecimal;
  10. import java.util.List;
  11. import java.util.stream.Collectors;
  12. /**
  13. * @Description:
  14. * @Author:chenzhilei
  15. * @Date: 2025/7/20
  16. */
  17. @Data
  18. @Builder
  19. @AllArgsConstructor
  20. @NoArgsConstructor
  21. public class JSRedMzInvoiceInfo implements Serializable {
  22. private static final long serialVersionUID = 1L;
  23. private String relatedInvoiceNumber; // 票务号码
  24. private String relatedInvoiceCode; // 票务编码
  25. private String busseqno; // 流水号
  26. private String bustype = "02"; // 业务类型
  27. private BigDecimal totalAmount; // 总金额
  28. private String payerPartyType = "1"; // 交款人类型 1:个人2:单位
  29. private String payerPartyName; // 交款人姓名
  30. private String handlingPerson; // 开票人
  31. private String checker; // 复核人
  32. private List<DetailItemList> detail_item_list;
  33. public JSRedMzInvoiceInfo transformFromMzInvoiceInfo(MzInvoiceInfo mzInvoiceInfo,String biztype){
  34. JSRedMzInvoiceInfo jsRedMzInvoiceInfo = new JSRedMzInvoiceInfo();
  35. jsRedMzInvoiceInfo.setBusseqno(mzInvoiceInfo.getSpecialAttrDTO().getMedicalSerialNo());
  36. jsRedMzInvoiceInfo.setTotalAmount(mzInvoiceInfo.getTotalAmount());
  37. jsRedMzInvoiceInfo.setPayerPartyName(mzInvoiceInfo.getBuyerUsciName());
  38. jsRedMzInvoiceInfo.setHandlingPerson(mzInvoiceInfo.getIssuer());
  39. jsRedMzInvoiceInfo.setChecker(mzInvoiceInfo.getIssuer());
  40. jsRedMzInvoiceInfo.setBusseqno(mzInvoiceInfo.getSpecialAttrDTO().getMedicalSerialNo());
  41. jsRedMzInvoiceInfo.setRelatedInvoiceCode(mzInvoiceInfo.getRelatedInvoiceCode());
  42. jsRedMzInvoiceInfo.setRelatedInvoiceNumber(mzInvoiceInfo.getRelatedInvoiceNumber());
  43. List<InvoiceDetail> invoiceDetailList = mzInvoiceInfo.getInvoiceDetailList();
  44. List<DetailItemList> DetailItemList = invoiceDetailList.stream().map(e->{
  45. DetailItemList detailItemList = new DetailItemList();
  46. detailItemList.setItem_name(e.getItemName());
  47. detailItemList.setItem_code(e.getItemCode());
  48. detailItemList.setItem_amount(e.getAmount());
  49. // detailItemList.setNum();
  50. return detailItemList;
  51. }).collect(Collectors.toList());
  52. jsRedMzInvoiceInfo.setDetail_item_list(DetailItemList);
  53. return jsRedMzInvoiceInfo;
  54. }
  55. }