linwei
2024-02-02 ce035e1c02f63b49d469534ba4ac5ba435022ea2
src/main/java/org/springblade/modules/place/service/impl/PlaceCheckServiceImpl.java
@@ -17,22 +17,32 @@
package org.springblade.modules.place.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.xxl.job.core.util.FileUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springblade.common.constant.CommonConstant;
import org.springblade.common.constant.DictConstant;
import org.springblade.common.utils.SpringUtils;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.core.tool.utils.SpringUtil;
import org.springblade.modules.patrol.entity.PatrolRecord;
import org.springblade.modules.patrol.service.IPatrolRecordService;
import org.springblade.modules.place.dto.PlaceCheckDTO;
import org.springblade.modules.place.entity.PlaceCheckEntity;
import org.springblade.modules.place.service.IPlaceService;
import org.springblade.modules.place.vo.PlaceCheckVO;
import org.springblade.modules.place.mapper.PlaceCheckMapper;
import org.springblade.modules.place.service.IPlaceCheckService;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.modules.task.service.ITaskService;
import org.springblade.modules.taskPlaceRectification.entity.TaskPlaceRectificationEntity;
import org.springblade.modules.taskPlaceRectification.service.ITaskPlaceRectificationService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
import java.util.stream.Collectors;
import java.util.concurrent.atomic.AtomicReference;
/**
 * 场所检查表 服务实现类
@@ -42,6 +52,8 @@
 */
@Service
public class PlaceCheckServiceImpl extends ServiceImpl<PlaceCheckMapper, PlaceCheckEntity> implements IPlaceCheckService {
   private static Logger logger = LoggerFactory.getLogger(PlaceCheckServiceImpl.class);
   @Override
   public IPage<PlaceCheckVO> selectPlaceCheckPage(IPage<PlaceCheckVO> page, PlaceCheckVO placeCheck) {
@@ -66,12 +78,37 @@
      if (save) {
         IPatrolRecordService bean = SpringUtil.getBean(IPatrolRecordService.class);
         List<PatrolRecord> patrolRecordVOList = placeCheck.getPatrolRecordVOList();
         AtomicReference<Integer> number = new AtomicReference<>(0);
         patrolRecordVOList.stream().forEach(item -> {
            item.setPlaceCheckId(placeCheck.getId());
            item.setCreateUser(AuthUtil.getUserId());
            if (item.getState().equals(0)) {
               number.getAndSet(number.get() + 1);
            }
         });
         boolean b = bean.saveBatch(placeCheck.getPatrolRecordVOList());
         boolean b = bean.saveBatch(patrolRecordVOList);
         if (b) {
            // 隐患问题大于0 则创建任务
            try {
               Integer integer = number.get();
               if (integer > 0) {
                  // 保存任务表
                  ITaskService bean2 = SpringUtils.getBean(ITaskService.class);
                  Long aLong = bean2.saveTask(CommonConstant.NUMBER_FOUR, DictConstant.FIRE_RECTIFICATION_NOTICE, 1,
                     "", AuthUtil.getUserId(), placeCheck.getHouseCode(), CommonConstant.NUMBER_EIGHT);
                  if (aLong > 0) {
                     // 保存任务详情表
                     ITaskPlaceRectificationService bean1 = SpringUtil.getBean(ITaskPlaceRectificationService.class);
                     TaskPlaceRectificationEntity copy = BeanUtil.copy(placeCheck, TaskPlaceRectificationEntity.class);
                     copy.setTaskId(aLong);
                     copy.setPlaceCheckId(placeCheck.getId());
                     copy.setId(null);
                     bean1.save(copy);
                  }
               }
            } catch (Exception e) {
               logger.error("任务保存失败!", e);
            }
            return b;
         }
         throw new Exception("保存失败!");