BaseWashoutPointServiceImpl.java 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. package com.huimv.receive.service.impl;
  2. import cn.hutool.core.bean.BeanUtil;
  3. import cn.hutool.core.util.ObjectUtil;
  4. import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  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.BaseVisiting;
  9. import com.huimv.receive.entity.BaseWashoutPoint;
  10. import com.huimv.receive.entity.dto.GetFlowListDto;
  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.mapper.BaseVisitingMapper;
  15. import com.huimv.receive.mapper.BaseWashoutPointMapper;
  16. import com.huimv.receive.service.IBaseWashoutPointService;
  17. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  18. import org.springframework.beans.factory.annotation.Autowired;
  19. import org.springframework.stereotype.Service;
  20. import javax.servlet.http.HttpServletRequest;
  21. import java.util.ArrayList;
  22. import java.util.Date;
  23. import java.util.List;
  24. import java.util.Map;
  25. /**
  26. * <p>
  27. * 服务实现类
  28. * </p>
  29. *
  30. * @author author
  31. * @since 2024-03-06
  32. */
  33. @Service
  34. public class BaseWashoutPointServiceImpl extends ServiceImpl<BaseWashoutPointMapper, BaseWashoutPoint> implements IBaseWashoutPointService {
  35. @Autowired
  36. private BaseWashoutPointMapper washoutPointMapper;
  37. @Autowired
  38. private BaseVisitingMapper visitingMapper;
  39. @Override
  40. public Result list(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
  41. String farmId = paramsMap.get("farmId");
  42. List<BaseVisiting> visitings = visitingMapper.selectList(new QueryWrapper<>());
  43. List<GetWashoutPointDto> washoutPointDtos = new ArrayList<>();
  44. if (ObjectUtil.isEmpty(visitings)) {
  45. return new Result(ResultCode.SUCCESS, washoutPointDtos);
  46. } else {
  47. for (BaseVisiting visiting : visitings) {
  48. Integer type = visiting.getId();
  49. List<BaseWashoutPoint> list = washoutPointMapper.selectList(new QueryWrapper<BaseWashoutPoint>()
  50. .like("farm_ids", farmId).eq("visiting_type", type));
  51. List<WashListDto> washListDtos = new ArrayList<>();
  52. if (list.size() != 0) {
  53. for (BaseWashoutPoint point : list) {
  54. WashListDto washListDto = new WashListDto();
  55. washListDto.setAddressId(point.getLocationId());
  56. washListDto.setFlowLists(point.getFlowList());
  57. washListDto.setNextName(point.getTailLocationName());
  58. washListDto.setPcrTime(point.getPcrTime());
  59. washListDtos.add(washListDto);
  60. }
  61. GetWashoutPointDto getWashoutPointDto = new GetWashoutPointDto();
  62. getWashoutPointDto.setFarmIds(farmId);
  63. getWashoutPointDto.setNumber(list.size());
  64. getWashoutPointDto.setVisitingType(type);
  65. getWashoutPointDto.setWashListDtos(washListDtos);
  66. washoutPointDtos.add(getWashoutPointDto);
  67. }
  68. }
  69. }
  70. return new Result(ResultCode.SUCCESS, washoutPointDtos);
  71. }
  72. @Override
  73. public Result add(HttpServletRequest httpServletRequest, List<GetWashoutPointDto> washoutPointDtos) {
  74. String farmIds = TokenSign.getFarmIds(httpServletRequest);
  75. //访问类型集合
  76. QueryWrapper<BaseWashoutPoint> queryWrapper = new QueryWrapper<>();
  77. queryWrapper.eq("farm_ids",farmIds);
  78. washoutPointMapper.delete(queryWrapper);
  79. for (GetWashoutPointDto washoutPointDto : washoutPointDtos) {
  80. //流程集合
  81. List<WashListDto> washListDtos = washoutPointDto.getWashListDtos();
  82. int i = 1;
  83. for (WashListDto washListDto : washListDtos) {
  84. BaseWashoutPoint washoutPoint = new BaseWashoutPoint();
  85. washoutPoint.setCreateTime(new Date());
  86. washoutPoint.setCreateUser(TokenSign.getMemberIdByJwtToken(httpServletRequest));
  87. washoutPoint.setFlowList(washListDto.getFlowLists());
  88. washoutPoint.setLocationId(washListDto.getAddressId());
  89. washoutPoint.setPcrTime(washListDto.getPcrTime());
  90. washoutPoint.setVisitingType(washoutPointDto.getVisitingType());
  91. washoutPoint.setTailLocationName(washListDto.getNextName());
  92. washoutPoint.setFarmIds(farmIds);
  93. washoutPoint.setPointLevel(i);
  94. washoutPointMapper.insert(washoutPoint);
  95. i++;
  96. }
  97. }
  98. return new Result(10000, "添加成功!", true);
  99. }
  100. @Override
  101. public Result delete(HttpServletRequest httpServletRequest, Map<String, String> paramsMap) {
  102. String farmId = paramsMap.get("farmId");
  103. String type = paramsMap.get("type");//访问类型
  104. String level = paramsMap.get("level");//洗消站等级
  105. washoutPointMapper.delete(new QueryWrapper<BaseWashoutPoint>().like("farm_ids", farmId)
  106. .eq("visiting_type", type).eq("point_level", level));
  107. return new Result(10000, "删除成功!", true);
  108. }
  109. @Override
  110. public Result listDest(Map<String, String> paramsMap) {
  111. String farmId = paramsMap.get("farmId");
  112. String vistitType = paramsMap.get("vistitType");
  113. List<BaseWashoutPoint> baseWashoutPointList = washoutPointMapper.listDest(farmId,vistitType);
  114. List<DestVo> destVoList = new ArrayList<>();
  115. for (BaseWashoutPoint baseWashoutPoint : baseWashoutPointList) {
  116. DestVo destVo = new DestVo();
  117. destVo.setId(baseWashoutPoint.getLocationId());
  118. destVo.setLocationName(baseWashoutPoint.getLocationName());
  119. destVoList.add(destVo);
  120. DestVo destVo2 = new DestVo();
  121. destVo2.setId(baseWashoutPoint.getLocationId());
  122. destVo2.setLocationName(baseWashoutPoint.getTailLocationName());
  123. destVoList.add(destVo2);
  124. }
  125. return new Result(ResultCode.SUCCESS,destVoList);
  126. }
  127. }