RepairRegisterServiceImpl.java 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. package com.fdkankan.sale.service.impl;
  2. import com.alibaba.fastjson.JSONArray;
  3. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  4. import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
  5. import com.fdkankan.sale.entity.Part;
  6. import com.fdkankan.sale.entity.RepairRegister;
  7. import com.fdkankan.sale.entity.RepairRegisterPart;
  8. import com.fdkankan.sale.mapper.IRepairRegisterMapper;
  9. import com.fdkankan.sale.service.IPartService;
  10. import com.fdkankan.sale.service.IRepairRegisterPartService;
  11. import com.fdkankan.sale.service.IRepairRegisterService;
  12. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  13. import com.fdkankan.sale.util.DateUtil;
  14. import com.fdkankan.sale.vo.response.CheckRegisterVo;
  15. import com.fdkankan.sale.vo.response.RepairRegisterPartVo;
  16. import com.fdkankan.sale.vo.response.RepairRegisterVo;
  17. import org.apache.commons.lang3.StringUtils;
  18. import org.springframework.beans.BeanUtils;
  19. import org.springframework.beans.factory.annotation.Autowired;
  20. import org.springframework.stereotype.Service;
  21. import java.util.ArrayList;
  22. import java.util.List;
  23. /**
  24. * <p>
  25. * 服务实现类
  26. * </p>
  27. *
  28. * @author
  29. * @since 2023-02-16
  30. */
  31. @Service
  32. public class RepairRegisterServiceImpl extends ServiceImpl<IRepairRegisterMapper, RepairRegister> implements IRepairRegisterService {
  33. @Autowired
  34. IRepairRegisterPartService repairRegisterPartService;
  35. @Autowired
  36. IPartService partService;
  37. @Override
  38. public void repairOver(String repairId, String remark,Long userId) {
  39. LambdaUpdateWrapper<RepairRegister> wrapper = new LambdaUpdateWrapper<>();
  40. wrapper.eq(RepairRegister::getRepairId,repairId);
  41. wrapper.eq(RepairRegister::getStatus,1);
  42. wrapper.set(RepairRegister::getRemark,remark);
  43. wrapper.set(RepairRegister::getOverTime, DateUtil.getDate());
  44. this.update(wrapper);
  45. }
  46. @Override
  47. public RepairRegister getByRepairId(String repairId) {
  48. LambdaQueryWrapper<RepairRegister> wrapper = new LambdaQueryWrapper<>();
  49. wrapper.eq(RepairRegister::getRepairId,repairId);
  50. return this.getOne(wrapper);
  51. }
  52. @Override
  53. public RepairRegisterVo getVoByRepairId(String repairId) {
  54. RepairRegisterVo vo = this.getBaseMapper().getVoByRepairId(repairId);
  55. if(vo == null){
  56. return null;
  57. }
  58. List<RepairRegisterPart> partList = repairRegisterPartService.getByRepairId(vo.getRepairRegisterId());
  59. StringBuilder partNamesList = new StringBuilder();
  60. for (RepairRegisterPart repairRegisterPart : partList) {
  61. Integer partId = repairRegisterPart.getPartId();
  62. Part part = partService.getById(partId);
  63. if(part == null){
  64. continue;
  65. }
  66. partNamesList.append(part.getPartName()).append("x").append(repairRegisterPart.getPartCount()).append(",");
  67. }
  68. if(StringUtils.isNotBlank(partNamesList.toString()) && partNamesList.toString().contains(",")){
  69. partNamesList.deleteCharAt(partNamesList.lastIndexOf(","));
  70. }
  71. vo.setPartNamesStr(partNamesList.toString());
  72. return vo;
  73. }
  74. @Override
  75. public List<RepairRegisterVo> getVoListByRepairId(String repairId) {
  76. List<RepairRegisterVo> voList = this.getBaseMapper().getVoListByRepairId(repairId);
  77. for (RepairRegisterVo vo : voList) {
  78. List<RepairRegisterPart> partList = repairRegisterPartService.getByRegisterId(vo.getRegisterLogId());
  79. StringBuilder partNamesList = new StringBuilder();
  80. for (RepairRegisterPart repairRegisterPart : partList) {
  81. Integer partId = repairRegisterPart.getPartId();
  82. Part part = partService.getById(partId);
  83. if(part == null){
  84. continue;
  85. }
  86. partNamesList.append(part.getPartName()).append("x").append(repairRegisterPart.getPartCount()).append(",");
  87. }
  88. if(StringUtils.isNotBlank(partNamesList.toString()) && partNamesList.toString().contains(",")){
  89. partNamesList.deleteCharAt(partNamesList.lastIndexOf(","));
  90. }
  91. vo.setPartNamesStr(partNamesList.toString());
  92. }
  93. return voList;
  94. }
  95. }