BillNumServiceImpl.java 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. package jnpf.base.service.impl;
  2. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  3. import jnpf.base.entity.BillNumEntity;
  4. import jnpf.base.mapper.BillNumMapper;
  5. import jnpf.base.service.BillNumService;
  6. import jnpf.base.service.SuperServiceImpl;
  7. import jnpf.util.RandomUtil;
  8. import jnpf.util.StringUtil;
  9. import org.springframework.stereotype.Service;
  10. import java.util.List;
  11. /**
  12. * 单据递增序号
  13. *
  14. * @author JNPF开发平台组
  15. * @version v5.1.0
  16. * @copyright 引迈信息技术有限公司
  17. * @date 2024/9/4 9:28:31
  18. */
  19. @Service
  20. public class BillNumServiceImpl extends SuperServiceImpl<BillNumMapper, BillNumEntity> implements BillNumService {
  21. public void saveBillNum(BillNumEntity entity) {
  22. if (entity.getId() == null) {
  23. entity.setId(RandomUtil.uuId());
  24. }
  25. this.saveOrUpdate(entity);
  26. }
  27. public BillNumEntity getBillNum(String ruleId, String visualId, String flowId) {
  28. QueryWrapper<BillNumEntity> queryWrapper = new QueryWrapper<>();
  29. queryWrapper.lambda().eq(BillNumEntity::getRuleId, ruleId);
  30. queryWrapper.lambda().eq(BillNumEntity::getVisualId, visualId);
  31. if (StringUtil.isNotEmpty(flowId)) {
  32. queryWrapper.lambda().eq(BillNumEntity::getFlowId, flowId);
  33. } else {
  34. queryWrapper.lambda().isNull(BillNumEntity::getFlowId);
  35. }
  36. List<BillNumEntity> list = this.list(queryWrapper);
  37. if (list.size() > 0) {
  38. BillNumEntity billNumEntity = list.stream().findFirst().orElse(null);
  39. return billNumEntity;
  40. }
  41. return null;
  42. }
  43. @Override
  44. public void removeByRuleId(String ruleId, String visualId, String flowId) {
  45. QueryWrapper<BillNumEntity> queryWrapper = new QueryWrapper<>();
  46. queryWrapper.lambda().eq(BillNumEntity::getRuleId, ruleId);
  47. queryWrapper.lambda().eq(BillNumEntity::getVisualId, visualId);
  48. if (StringUtil.isNotEmpty(flowId)) {
  49. queryWrapper.lambda().eq(BillNumEntity::getFlowId, flowId);
  50. } else {
  51. queryWrapper.lambda().isNull(BillNumEntity::getFlowId);
  52. }
  53. this.remove(queryWrapper);
  54. }
  55. }