BaseWashoutPointServiceImpl.java 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162
  1. package com.huimv.receive.service.impl;
  2. import cn.hutool.core.util.ObjectUtil;
  3. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  4. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  5. import com.huimv.receive.common.token.TokenSign;
  6. import com.huimv.receive.common.utils.Result;
  7. import com.huimv.receive.common.utils.ResultCode;
  8. import com.huimv.receive.entity.BaseProcess;
  9. import com.huimv.receive.entity.BaseVisiting;
  10. import com.huimv.receive.entity.BaseWashoutPoint;
  11. import com.huimv.receive.entity.dto.GetWashoutPointDto;
  12. import com.huimv.receive.entity.dto.WashListDto;
  13. import com.huimv.receive.entity.vo.DestVo;
  14. import com.huimv.receive.entity.vo.WashOutVo;
  15. import com.huimv.receive.mapper.BaseProcessMapper;
  16. import com.huimv.receive.mapper.BaseVisitingMapper;
  17. import com.huimv.receive.mapper.BaseWashoutPointMapper;
  18. import com.huimv.receive.mapper.SysAccountMultilevelMapper;
  19. import com.huimv.receive.service.IBaseWashoutPointService;
  20. import org.springframework.beans.factory.annotation.Autowired;
  21. import org.springframework.stereotype.Service;
  22. import javax.servlet.http.HttpServletRequest;
  23. import java.util.ArrayList;
  24. import java.util.Date;
  25. import java.util.List;
  26. import java.util.Map;
  27. /**
  28. * <p>
  29. * 服务实现类
  30. * </p>
  31. *
  32. * @author author
  33. * @since 2024-03-06
  34. */
  35. @Service
  36. public class BaseWashoutPointServiceImpl extends ServiceImpl<BaseWashoutPointMapper, BaseWashoutPoint> implements IBaseWashoutPointService {
  37. @Autowired
  38. private BaseWashoutPointMapper washoutPointMapper;
  39. @Autowired
  40. private BaseVisitingMapper visitingMapper;
  41. @Autowired
  42. private SysAccountMultilevelMapper accountMultilevelMapper;
  43. @Autowired
  44. private BaseProcessMapper processMapper;
  45. @Override
  46. public Result list(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
  47. String farmId = paramsMap.get("farmId");
  48. List<BaseVisiting> visitings = visitingMapper.selectList(new QueryWrapper<>());
  49. List<GetWashoutPointDto> washoutPointDtos = new ArrayList<>();
  50. if (ObjectUtil.isEmpty(visitings)) {
  51. return new Result(ResultCode.SUCCESS, washoutPointDtos);
  52. } else {
  53. for (BaseVisiting visiting : visitings) {
  54. Integer type = visiting.getId();
  55. List<BaseWashoutPoint> list = washoutPointMapper.selectList(new QueryWrapper<BaseWashoutPoint>()
  56. .eq("farm_ids", farmId).eq("visiting_type", type));
  57. List<WashListDto> washListDtos = new ArrayList<>();
  58. if (list.size() != 0) {
  59. for (BaseWashoutPoint point : list) {
  60. WashListDto washListDto = new WashListDto();
  61. washListDto.setAddressId(point.getLocationId());
  62. washListDto.setFlowLists(point.getFlowList());
  63. washListDto.setNextName(point.getTailLocationName());
  64. washListDto.setPcrTime(point.getPcrTime());
  65. washListDtos.add(washListDto);
  66. }
  67. GetWashoutPointDto getWashoutPointDto = new GetWashoutPointDto();
  68. getWashoutPointDto.setFarmIds(farmId);
  69. getWashoutPointDto.setNumber(list.size());
  70. getWashoutPointDto.setVisitingType(type);
  71. getWashoutPointDto.setWashListDtos(washListDtos);
  72. washoutPointDtos.add(getWashoutPointDto);
  73. }
  74. }
  75. }
  76. return new Result(ResultCode.SUCCESS, washoutPointDtos);
  77. }
  78. @Override
  79. public Result add(HttpServletRequest httpServletRequest, WashOutVo washOutVo) {
  80. List<GetWashoutPointDto> washoutPointDtos = washOutVo.getWashoutPointDtos();
  81. String farmId = washOutVo.getFarmId();
  82. //如果当前存在进行中流程,则初始化流程配置不能修改或删除
  83. QueryWrapper<BaseProcess> processQueryWrapper = new QueryWrapper<>();
  84. processQueryWrapper.eq("farm_id", farmId).eq("process_type",0);
  85. List<BaseProcess> processes = processMapper.selectList(processQueryWrapper);
  86. if (processes.size() > 0) {
  87. return new Result(10001, "当前存在进行中流程,无法修改", true);
  88. }
  89. //访问类型集合
  90. QueryWrapper<BaseWashoutPoint> queryWrapper = new QueryWrapper<>();
  91. queryWrapper.eq("farm_ids",farmId);
  92. washoutPointMapper.delete(queryWrapper);
  93. for (GetWashoutPointDto washoutPointDto : washoutPointDtos) {
  94. //流程集合
  95. List<WashListDto> washListDtos = washoutPointDto.getWashListDtos();
  96. int i = 1;
  97. for (WashListDto washListDto : washListDtos) {
  98. BaseWashoutPoint washoutPoint = new BaseWashoutPoint();
  99. washoutPoint.setCreateTime(new Date());
  100. washoutPoint.setCreateUser(TokenSign.getMemberIdByJwtToken(httpServletRequest));
  101. washoutPoint.setFlowList(washListDto.getFlowLists());
  102. washoutPoint.setLocationId(washListDto.getAddressId());
  103. washoutPoint.setPcrTime(washListDto.getPcrTime());
  104. washoutPoint.setVisitingType(washoutPointDto.getVisitingType());
  105. washoutPoint.setTailLocationName(washListDto.getNextName());
  106. washoutPoint.setFarmIds(farmId);
  107. washoutPoint.setPointLevel(i);
  108. washoutPointMapper.insert(washoutPoint);
  109. i++;
  110. }
  111. }
  112. return new Result(10000, "添加成功!", true);
  113. }
  114. @Override
  115. public Result delete(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
  116. String farmId = paramsMap.get("farmId");
  117. String type = paramsMap.get("type");//访问类型
  118. String level = paramsMap.get("level");//洗消站等级
  119. washoutPointMapper.delete(new QueryWrapper<BaseWashoutPoint>().like("farm_ids", farmId)
  120. .eq("visiting_type", type).eq("point_level", level));
  121. return new Result(10000, "删除成功!", true);
  122. }
  123. @Override
  124. public Result listDest(Map<String, String> paramsMap) {
  125. String farmId = paramsMap.get("farmId");
  126. String vistitType = paramsMap.get("vistitType");
  127. List<BaseWashoutPoint> baseWashoutPointList = washoutPointMapper.listDest(farmId,vistitType);
  128. List<DestVo> destVoList = new ArrayList<>();
  129. for (BaseWashoutPoint baseWashoutPoint : baseWashoutPointList) {
  130. DestVo destVo2 = new DestVo();
  131. destVo2.setId(baseWashoutPoint.getLocationId());
  132. destVo2.setLocationName(baseWashoutPoint.getTailLocationName());
  133. destVoList.add(destVo2);
  134. }
  135. return new Result(ResultCode.SUCCESS,destVoList);
  136. }
  137. @Override
  138. public Result listWash(Map<String, String> paramsMap) {
  139. String farmId = paramsMap.get("farmId");
  140. String vistitType = paramsMap.get("vistitType");
  141. List<BaseWashoutPoint> points = washoutPointMapper.listWash(farmId, vistitType);
  142. List<DestVo> destVoList = new ArrayList<>();
  143. for (BaseWashoutPoint baseWashoutPoint : points) {
  144. DestVo destVo = new DestVo();
  145. destVo.setId(baseWashoutPoint.getLocationId());
  146. destVo.setLocationName(baseWashoutPoint.getLocationName());
  147. destVoList.add(destVo);
  148. }
  149. return new Result(ResultCode.SUCCESS,destVoList);
  150. }
  151. }