zhongrj
2023-12-28 daef9edffb73d542ff1eba4beb215ffc7b306254
src/main/java/org/springblade/modules/task/service/impl/TaskServiceImpl.java
@@ -18,17 +18,24 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import org.apache.xmlbeans.impl.xb.xsdschema.Public;
import org.springblade.common.utils.SpringUtils;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.modules.house.service.IHouseRentalService;
import org.springblade.modules.house.service.IHouseholdService;
import org.springblade.modules.house.vo.HouseRentalTenantVO;
import org.springblade.modules.place.service.IPlaceExtService;
import org.springblade.modules.task.entity.TaskEntity;
import org.springblade.modules.task.mapper.TaskMapper;
import org.springblade.modules.task.service.ITaskReportForRepairsService;
import org.springblade.modules.task.service.ITaskService;
import org.springblade.modules.task.vo.TaskVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
@@ -40,11 +47,27 @@
@Service
public class TaskServiceImpl extends BaseServiceImpl<TaskMapper, TaskEntity> implements ITaskService {
   // @Autowired
   // private ITaskReportForRepairsService iTaskReportForRepairsService;
   @Autowired
   private IHouseholdService iHouseholdService;
   @Autowired
   private IHouseRentalService iHouseRentalService;
   @Override
   public IPage<TaskVO> selectTaskPage(IPage<TaskVO> page, TaskVO task) {
      task.setUserId(AuthUtil.getUserId());
      return page.setRecords(baseMapper.selectTaskPage(page, task));
      // 民警角色
      if (AuthUtil.getUserRole().equals("mj")) {
         task.setUserId(AuthUtil.getUserId());
         return page.setRecords(baseMapper.selectTaskPageBy(page, task));
      } else {
         // 非民警角色
         List<TaskVO> taskVOS = baseMapper.selectTaskPage(page, task);
         return page.setRecords(taskVOS);
      }
   }
   /**
@@ -58,7 +81,7 @@
    * @return
    */
   @Override
   public Long saveTask(Integer type, String name, Integer frequency, String remark, Long createUser, String houseCode) {
   public Long saveTask(Integer type, String name, Integer frequency, String remark, Long createUser, String houseCode,Integer reportType) {
      TaskEntity taskEntity = new TaskEntity();
      taskEntity.setType(type);
      taskEntity.setName(name);
@@ -67,6 +90,7 @@
      taskEntity.setCreateTime(new Date());
      taskEntity.setCreateUser(createUser);
      taskEntity.setHouseCode(houseCode);
      taskEntity.setReportType(reportType);
      return baseMapper.insert(taskEntity) > 0 ? taskEntity.getId() : 0;
   }
@@ -89,28 +113,64 @@
   public Object countNumber(String houseCode, Integer status) {
      Map<String, Object> objectObjectHashMap = new HashMap<>();
      // 总数
      Long all = baseMapper.selectCount(Wrappers.<TaskEntity>lambdaQuery().eq(TaskEntity::getCreateUser, AuthUtil.getUserId() ));
      Long all = baseMapper.selectCount(Wrappers.<TaskEntity>lambdaQuery()
         .eq(TaskEntity::getCreateUser, AuthUtil.getUserId())
         .in(TaskEntity::getReportType,2,3,4,5,6));
      // 已处理
      Long processed = baseMapper.selectCount(Wrappers.<TaskEntity>lambdaQuery().eq(TaskEntity::getCreateUser, AuthUtil.getUserId())
         .eq(TaskEntity::getStatus, 2));
      Long processed = baseMapper.selectCount(Wrappers.<TaskEntity>lambdaQuery()
         .eq(TaskEntity::getCreateUser, AuthUtil.getUserId())
         .eq(TaskEntity::getStatus, 2)
         .in(TaskEntity::getReportType,2,3,4,5,6));
      objectObjectHashMap.put("all", all);
      objectObjectHashMap.put("processed", processed);
      return objectObjectHashMap;
   }
   @Override
   public Object countTypeNumber() {
   public Object countTypeNumber(Integer roleType, String neiCode) {
      TaskVO taskVO = new TaskVO();
      Map<String, Object> objectObjectHashMap = new HashMap<>();
      // 已处理
      Long comprehensiveTask = baseMapper.selectCount(Wrappers.<TaskEntity>lambdaQuery().eq(TaskEntity::getType, 1)
         .eq(TaskEntity::getStatus, 1));
      Long residentialTask = baseMapper.selectCount(Wrappers.<TaskEntity>lambdaQuery().eq(TaskEntity::getType, 2)
         .eq(TaskEntity::getStatus, 1));
      Long publicTask = baseMapper.selectCount(Wrappers.<TaskEntity>lambdaQuery().eq(TaskEntity::getType, 3)
         .eq(TaskEntity::getStatus, 1));
      objectObjectHashMap.put("comprehensiveTask", comprehensiveTask);
      objectObjectHashMap.put("residentialTask", residentialTask);
      objectObjectHashMap.put("publicTask", publicTask);
      taskVO.setStatus(1);
      taskVO.setUserId(roleType > 0 ? AuthUtil.getUserId() : null);
      taskVO.setNeiCode(neiCode);
      taskVO.setReportType(2);
      // 标签事件
      Integer bqsj = baseMapper.selectTaskCount(taskVO);
      taskVO.setReportType(1);
      // 取保候审
      Integer qbhs = baseMapper.selectTaskCount(taskVO);
      // 报事报修
      Integer bsbx = SpringUtils.getBean(ITaskReportForRepairsService.class).getStatistics(roleType > 0 ? AuthUtil.getUserId() : null, neiCode);
      // 住房审核
      Integer zhsh = iHouseholdService.statistics(roleType > 0 ? AuthUtil.getUserId() : null, neiCode);
      // 出租审核
      HouseRentalTenantVO houseRentalTenantVO = new HouseRentalTenantVO();
      houseRentalTenantVO.setUserId(roleType > 0 ? AuthUtil.getUserId() : null);
      houseRentalTenantVO.setNeiCode(neiCode);
      Integer czsh = iHouseRentalService.getStatisticsCount(houseRentalTenantVO);
      // 场所审核
      Integer cssh = SpringUtils.getBean(IPlaceExtService.class).selectCount(roleType > 0 ? AuthUtil.getUserId() : null, neiCode, 1);
      objectObjectHashMap.put("qbhs", qbhs);
      objectObjectHashMap.put("bqsj", bqsj);
      objectObjectHashMap.put("bsbx", bsbx);
      objectObjectHashMap.put("zhsh", zhsh);
      objectObjectHashMap.put("czsh", czsh);
      objectObjectHashMap.put("cssh", cssh);
      return objectObjectHashMap;
   }
   @Override
   public Object countFrequencyNumber() {
      Map<String, Object> objectObjectHashMap = new HashMap<>();
      TaskVO taskVO = new TaskVO();
      taskVO.setUserId(AuthUtil.getUserId());
      taskVO.setFrequency(1);
      taskVO.setStatus(1);
      Integer disposable = baseMapper.selectTaskCount(taskVO);
      taskVO.setFrequency(2);
      Integer periodicity =  baseMapper.selectTaskCount(taskVO);
      objectObjectHashMap.put("disposable", disposable);
      objectObjectHashMap.put("periodicity", periodicity);
      return objectObjectHashMap;
   }
}