RecPayService.java 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. package com.dk.mdm.service.mac;
  2. import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
  3. import com.dk.common.infrastructure.annotaiton.Pagination;
  4. import com.dk.common.infrastructure.constant.Constant;
  5. import com.dk.common.model.pojo.PageList;
  6. import com.dk.common.response.ResponseResultUtil;
  7. import com.dk.common.response.ResponseResultVO;
  8. import com.dk.mdm.infrastructure.convert.mac.RecPayConvert;
  9. import com.dk.mdm.infrastructure.convert.mac.RecPayItemConvert;
  10. import com.dk.mdm.mapper.mac.AccountItemMapper;
  11. import com.dk.mdm.mapper.mac.AccountMapper;
  12. import com.dk.mdm.mapper.mac.RecPayItemMapper;
  13. import com.dk.mdm.model.pojo.mac.RecPay;
  14. import com.dk.mdm.mapper.mac.RecPayMapper;
  15. import com.dk.common.service.BaseService;
  16. import com.dk.common.mapper.BaseMapper;
  17. import com.dk.mdm.model.pojo.mac.RecPayItem;
  18. import com.dk.mdm.model.query.mac.RecPayItemQuery;
  19. import com.dk.mdm.model.query.mac.RecPayQuery;
  20. import com.dk.mdm.model.response.mac.RecPayItemResponse;
  21. import com.dk.mdm.model.response.mac.RecPayResponse;
  22. import com.dk.mdm.model.vo.mac.RecPayItemVO;
  23. import com.dk.mdm.model.vo.mac.RecPayVO;
  24. import com.dk.mdm.service.common.CommonService;
  25. import org.springframework.stereotype.Service;
  26. import org.springframework.beans.factory.annotation.Autowired;
  27. import org.springframework.transaction.annotation.Transactional;
  28. import java.util.HashMap;
  29. import java.util.List;
  30. import java.util.Map;
  31. import java.util.UUID;
  32. @Service
  33. @Transactional
  34. public class RecPayService extends BaseService<RecPay> {
  35. @Override
  36. public String getPrimaryKey() {
  37. return "rp_id";
  38. }
  39. @Override
  40. public BaseMapper<RecPay> getRepository() {
  41. return recPayMapper;
  42. }
  43. @Autowired
  44. private RecPayMapper recPayMapper;
  45. @Autowired
  46. private RecPayItemMapper recPayItemMapper;
  47. @Autowired
  48. private AccountService accountService;
  49. @Autowired
  50. private AccountMapper accountMapper;
  51. @Autowired
  52. private AccountItemService accountItemService;
  53. @Autowired
  54. private AccountItemMapper accountItemMapper;
  55. @Autowired
  56. private CommonService commonService;
  57. @Autowired
  58. private RecPayConvert recPayConvert;
  59. @Autowired
  60. private RecPayItemConvert recPayItemConvert;
  61. /**
  62. * @desc : 条件查询
  63. * @author : 付斌
  64. * @date : 2023/1/9 10:40
  65. */
  66. @Pagination
  67. public ResponseResultVO<PageList<RecPayResponse>> selectByCond(RecPayQuery recPayQuery) {
  68. return super.mergeListWithCount(recPayQuery, recPayMapper.selectByCond(recPayQuery),
  69. recPayMapper.countByCond(recPayQuery));
  70. }
  71. /**
  72. * @desc : 查询收款明细
  73. * @author : 付斌
  74. * @date : 2024-02-28 13:25
  75. */
  76. @Pagination
  77. public ResponseResultVO<Map<String, Object>> selectRpInfoById(String id) {
  78. Map<String, Object> result = new HashMap<>();
  79. // 收款明细
  80. List<RecPayItemResponse> recPayItem = recPayItemMapper.selectByCond(new RecPayItemQuery().setRpId(id));
  81. result.put("recPayItem", recPayItem);
  82. // 附件
  83. return ResponseResultUtil.success(result);
  84. }
  85. /**
  86. * @desc : 新建方法
  87. * @author : 付斌
  88. * @date : 2023/1/9 10:49
  89. */
  90. @Transactional(
  91. rollbackFor = {Exception.class}
  92. )
  93. public ResponseResultVO<?> insert(RecPayVO recPayVO) {
  94. // 获取单号
  95. Map<String, Object> codeMap = commonService.getUniqueNoteCode(Constant.docNameConstant.RECPAY.getName(), false);
  96. recPayVO.setRpId(codeMap.get("outId").toString()).setRpNo(codeMap.get("outNote").toString());
  97. // 转化实体
  98. RecPay recPay = recPayConvert.convertToPo(recPayVO);
  99. // 订单总单保存
  100. super.insert(recPay);
  101. // 订单明细保存
  102. if (recPayVO.getItemList() != null && recPayVO.getItemList().size() > 0) {
  103. for (RecPayItemVO recPayItemVO : recPayVO.getItemList()) {
  104. RecPayItem recPayItem = recPayItemConvert.convertToPo(recPayItemVO);
  105. recPayItem.setRpId(recPay.getRpId()).setCpId(recPay.getCpId()).setAccDate(recPay.getAccDate());
  106. recPayItemMapper.insert(recPayItem);
  107. }
  108. }
  109. return ResponseResultUtil.success();
  110. }
  111. /**
  112. * @desc : 编辑方法
  113. * @author : 付斌
  114. * @date : 2023/1/9 10:49
  115. */
  116. @Transactional(
  117. rollbackFor = {Exception.class}
  118. )
  119. public ResponseResultVO<?> update(RecPayVO recPayVO) {
  120. RecPay recPay = recPayConvert.convertToPo(recPayVO);
  121. return ResponseResultUtil.success(super.update(recPay, new UpdateWrapper<RecPay>().lambda().eq(RecPay::getRpId,
  122. UUID.fromString(recPay.getRpId()))));
  123. }
  124. }