ReceiptService.java 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  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.ReceiptConvert;
  9. import com.dk.mdm.model.pojo.mac.Receipt;
  10. import com.dk.mdm.mapper.mac.ReceiptMapper;
  11. import com.dk.common.service.BaseService;
  12. import com.dk.common.mapper.BaseMapper;
  13. import com.dk.mdm.model.query.mac.ReceiptQuery;
  14. import com.dk.mdm.model.response.mac.ReceiptResponse;
  15. import com.dk.mdm.model.vo.mac.ReceiptVO;
  16. import com.dk.mdm.service.common.CommonService;
  17. import org.springframework.stereotype.Service;
  18. import org.springframework.beans.factory.annotation.Autowired;
  19. import org.springframework.transaction.annotation.Transactional;
  20. import java.util.Map;
  21. import java.util.UUID;
  22. @Service
  23. @Transactional
  24. public class ReceiptService extends BaseService<Receipt> {
  25. @Override
  26. public String getPrimaryKey() {
  27. return "receipt_id";
  28. }
  29. @Override
  30. public BaseMapper<Receipt> getRepository() {
  31. return receiptMapper;
  32. }
  33. @Autowired
  34. private ReceiptMapper receiptMapper;
  35. @Autowired
  36. private CommonService commonService;
  37. @Autowired
  38. private ReceiptConvert receiptConvert;
  39. /**
  40. * @desc : 条件查询
  41. * @author : 付斌
  42. * @date : 2023/1/9 10:40
  43. */
  44. @Pagination
  45. public ResponseResultVO<PageList<ReceiptResponse>> selectByCond(ReceiptQuery receiptQuery) {
  46. return super.mergeListWithCount(receiptQuery, receiptMapper.selectByCond(receiptQuery),
  47. receiptMapper.countByCond(receiptQuery));
  48. }
  49. /**
  50. * @desc : 新建方法
  51. * @author : 付斌
  52. * @date : 2023/1/9 10:49
  53. */
  54. @Transactional(
  55. rollbackFor = {Exception.class}
  56. )
  57. public ResponseResultVO<?> insert(ReceiptVO receiptVO) {
  58. // 获取单号
  59. Map<String, Object> codeMap = commonService.getUniqueNoteCode(Constant.docNameConstant.CUSRECEIPT.getName(), false);
  60. receiptVO.setReceiptId(codeMap.get("outId").toString()).setReceiptNo(codeMap.get("outNote").toString())
  61. .setReceiptType(Constant.DocumentType.ORDER.getName());
  62. // 转化实体
  63. Receipt receipt = receiptConvert.convertToPo(receiptVO);
  64. // Receipt总单保存
  65. super.insert(receipt);
  66. return ResponseResultUtil.success();
  67. }
  68. /**
  69. * @desc : 编辑方法
  70. * @author : 付斌
  71. * @date : 2023/1/9 10:49
  72. */
  73. @Transactional(
  74. rollbackFor = {Exception.class}
  75. )
  76. public ResponseResultVO<?> update(ReceiptVO receiptVO) {
  77. Receipt receipt = receiptConvert.convertToPo(receiptVO);
  78. return ResponseResultUtil.success(super.update(receipt, new UpdateWrapper<Receipt>().lambda().eq(Receipt::getReceiptId,
  79. UUID.fromString(receipt.getReceiptId()))));
  80. }
  81. }