guoshilong
2023-05-18 6cd2da8eb7d7aefecd96a19ebbfe9caba59ea88c
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/patrol/service/impl/PatrolRecordServiceImpl.java
@@ -1,23 +1,81 @@
package cn.gistack.sm.patrol.service.impl;
import cn.gistack.sm.patrol.entity.PatrolGroupItem;
import cn.gistack.sm.patrol.entity.PatrolRecord;
import cn.gistack.sm.patrol.entity.PatrolType;
import cn.gistack.sm.patrol.mapper.PatrolRecordMapper;
import cn.gistack.sm.patrol.service.IPatrolGroupItemService;
import cn.gistack.sm.patrol.service.IPatrolRecordService;
import cn.gistack.sm.patrol.vo.PatrolGroupItemVO;
import cn.gistack.sm.patrol.vo.PatrolRecordVO;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import lombok.AllArgsConstructor;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.tool.utils.Func;
import org.springblade.core.tool.utils.ObjectUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
@Service
@AllArgsConstructor
public class PatrolRecordServiceImpl extends BaseServiceImpl<PatrolRecordMapper, PatrolRecord> implements IPatrolRecordService {
   IPatrolGroupItemService patrolGroupItemService;
   @Override
   public IPage<PatrolRecord> selectPatrolRecord(IPage<PatrolRecord> page, PatrolRecord patrolRecord) {
      return page.setRecords(baseMapper.selectPatrolRecord(patrolRecord));
      return page.setRecords(baseMapper.selectPatrolRecord(page,patrolRecord));
   }
   @Override
   public PatrolRecordVO getDetail(String id) {
      return baseMapper.getDetail(id);
   }
   @Override
   public List<PatrolGroupItemVO> getPatrolRecordByTaskId(String taskId, String itemIds) {
      List<Long> longList = Func.toLongList(itemIds);
      List<PatrolGroupItemVO> patrolGroupItemVOList = new ArrayList<>();
      longList.forEach(e->{
         PatrolRecord patrolRecord = baseMapper.selectPatrolRecordByTaskIdAndItemId(taskId, e);
         if (ObjectUtil.isEmpty(patrolRecord)){
            PatrolGroupItemVO patrolGroupItemVO = patrolGroupItemService.getPatrolGroupItemVOById(e);
            patrolGroupItemVOList.add(patrolGroupItemVO);
         }
      });
      return patrolGroupItemVOList;
   }
   @Override
   public List<PatrolRecordVO> getByTaskIdAndItemId(String taskId, String itemIds) {
      return baseMapper.getByTaskIdAndItemId(taskId,itemIds);
   }
   @Override
   public List getItemByItemIds(String itemIds,String groupId,String taskId) {
      List<PatrolGroupItem> itemList = patrolGroupItemService.getItemByItemIds(itemIds, groupId);
      List<PatrolRecord> patrolRecordList = new ArrayList<>();
      itemList.forEach(item->{
         PatrolRecordVO one = baseMapper.getPatrolRecordVO(item.getId(),taskId);
         if (ObjectUtil.isNotEmpty(one)){
            patrolRecordList.add(one);
         }
      });
      if (patrolRecordList.size()>0){
         return patrolRecordList;
      }else {
         return itemList;
      }
   }
   @Override
   public List<PatrolRecord> getByTaskIdAndGroupId(String groupId, String taskId) {
      return baseMapper.getByTaskIdAndGroupId(groupId,taskId);
   }
}