From 858ddcd71b737c1e2d9f9c1fb9d009209cb97b4e Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Thu, 22 Feb 2024 16:47:26 +0800
Subject: [PATCH] 场所检查新增场所类型查询,安全自查查询调整,新增安全自查导出
---
src/main/java/org/springblade/modules/taskPlaceSelfCheck/service/impl/TaskPlaceSelfCheckServiceImpl.java | 113 ++++++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 109 insertions(+), 4 deletions(-)
diff --git a/src/main/java/org/springblade/modules/taskPlaceSelfCheck/service/impl/TaskPlaceSelfCheckServiceImpl.java b/src/main/java/org/springblade/modules/taskPlaceSelfCheck/service/impl/TaskPlaceSelfCheckServiceImpl.java
index 3dd5119..be205af 100644
--- a/src/main/java/org/springblade/modules/taskPlaceSelfCheck/service/impl/TaskPlaceSelfCheckServiceImpl.java
+++ b/src/main/java/org/springblade/modules/taskPlaceSelfCheck/service/impl/TaskPlaceSelfCheckServiceImpl.java
@@ -16,16 +16,23 @@
*/
package org.springblade.modules.taskPlaceSelfCheck.service.impl;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import liquibase.repackaged.org.apache.commons.lang3.StringUtils;
import org.springblade.common.constant.CommonConstant;
import org.springblade.common.constant.DictConstant;
+import org.springblade.common.param.CommonParamSet;
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.excel.NinePlaceExcel;
import org.springblade.modules.place.vo.PlaceCheckVO;
+import org.springblade.modules.system.entity.DictBiz;
+import org.springblade.modules.system.service.IDictBizService;
import org.springblade.modules.task.service.ITaskService;
import org.springblade.modules.taskPlaceRecord.entity.TaskPlaceRecordEntity;
import org.springblade.modules.taskPlaceRecord.service.ITaskPlaceRecordService;
@@ -34,14 +41,17 @@
import org.springblade.modules.taskPlaceRectification.service.ITaskPlaceRectificationService;
import org.springblade.modules.taskPlaceSelfCheck.dto.TaskPlaceSelfCheckDTO;
import org.springblade.modules.taskPlaceSelfCheck.entity.TaskPlaceSelfCheckEntity;
+import org.springblade.modules.taskPlaceSelfCheck.excel.TaskPlaceSelfCheckExcel;
import org.springblade.modules.taskPlaceSelfCheck.vo.TaskPlaceSelfCheckVO;
import org.springblade.modules.taskPlaceSelfCheck.mapper.TaskPlaceSelfCheckMapper;
import org.springblade.modules.taskPlaceSelfCheck.service.ITaskPlaceSelfCheckService;
import org.springblade.core.mp.base.BaseServiceImpl;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springframework.transaction.annotation.Transactional;
+import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.atomic.AtomicReference;
import java.util.stream.Collectors;
@@ -55,9 +65,57 @@
@Service
public class TaskPlaceSelfCheckServiceImpl extends ServiceImpl<TaskPlaceSelfCheckMapper, TaskPlaceSelfCheckEntity> implements ITaskPlaceSelfCheckService {
+
+ @Autowired
+ private IDictBizService dictBizService;
+
@Override
public IPage<TaskPlaceSelfCheckVO> selectTaskPlaceSelfCheckPage(IPage<TaskPlaceSelfCheckVO> page, TaskPlaceSelfCheckVO taskPlaceSelfCheck) {
- return page.setRecords(baseMapper.selectTaskPlaceSelfCheckPage(page, taskPlaceSelfCheck));
+ List<String> strings = new ArrayList<>();
+ if (null!=taskPlaceSelfCheck.getNineType()){
+ QueryWrapper<DictBiz> queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("is_deleted",0).eq("dict_key",taskPlaceSelfCheck.getNineType()).eq("code","nineType");
+ // 先查询当前
+ DictBiz one = dictBizService.getOne(queryWrapper);
+ // 查询本身和子集的key
+ List<DictBiz> list = dictBizService.getList("nineType", one.getId());
+ if (list.size()==0){
+ strings.add(taskPlaceSelfCheck.getNineType().toString());
+ }else {
+ strings = list.stream().map(DictBiz::getDictKey).collect(Collectors.toList());
+ }
+ }
+ // 公共参数设置
+ CommonParamSet commonParamSet = new CommonParamSet().invoke(TaskPlaceSelfCheckVO.class,taskPlaceSelfCheck);
+ List<TaskPlaceSelfCheckVO> placeCheckVOS = baseMapper.selectTaskPlaceSelfCheckPage(page,
+ taskPlaceSelfCheck,
+ commonParamSet.getIsAdministrator(),
+ commonParamSet.getRegionChildCodesList(),
+ commonParamSet.getGridCodeList(),
+ strings);
+ List<DictBiz> nineType = dictBizService.list(Wrappers.<DictBiz>lambdaQuery().eq(DictBiz::getCode, "nineType").eq(DictBiz::getIsDeleted, 0));
+ for (TaskPlaceSelfCheckVO placeCheckVO : placeCheckVOS) {
+ int number = 0;
+ for (TaskPlaceRecordVO patrolRecord : placeCheckVO.getTaskPlaceRecordVOList()) {
+ if (patrolRecord.getState().equals(0)) {
+ number++;
+ }
+ }
+ placeCheckVO.setNumber(number);
+ for (DictBiz dictBiz : nineType) {
+ if (StringUtils.isNotBlank(placeCheckVO.getNineType()) && placeCheckVO.getNineType().equals(dictBiz.getDictKey())) {
+ if (placeCheckVO.getNineType().contains("10,11,12")) {
+ placeCheckVO.setNineType("小学校(幼儿园、校外培训机构)- " + dictBiz.getDictValue());
+ } else if (placeCheckVO.getNineType().contains("13,14,15")) {
+ placeCheckVO.setNineType("小医院(诊所、养老院)- " + dictBiz.getDictValue());
+ } else {
+ placeCheckVO.setNineType(dictBiz.getDictValue());
+ }
+ }
+ }
+ }
+ // 返回
+ return page.setRecords(placeCheckVOS);
}
/**
@@ -120,8 +178,8 @@
@Transactional(rollbackFor = Exception.class)
public Boolean updateTaskPlaceSelfCheck(TaskPlaceSelfCheckVO taskPlaceSelfCheck) throws Exception {
// 1.更新任务表
- ITaskService bean2 = SpringUtils.getBean(ITaskService.class);
- Long aLong = bean2.updateTask(null, null, null, taskPlaceSelfCheck.getReasonFailure(), AuthUtil.getUserId(), taskPlaceSelfCheck.getTaskId(), taskPlaceSelfCheck.getStatus());
+ ITaskService taskService = SpringUtils.getBean(ITaskService.class);
+ Long aLong = taskService.updateTask(null, null, null, taskPlaceSelfCheck.getReasonFailure(), AuthUtil.getUserId(), taskPlaceSelfCheck.getTaskId(), taskPlaceSelfCheck.getStatus());
if (aLong <= 0) {
return false;
}
@@ -133,7 +191,7 @@
if (taskPlaceRecordList != null && taskPlaceRecordList.size() > 0) {
ITaskPlaceRecordService bean = SpringUtil.getBean(ITaskPlaceRecordService.class);
List<TaskPlaceRecordEntity> copy = BeanUtil.copy(taskPlaceRecordList, TaskPlaceRecordEntity.class);
- boolean b = bean.updateBatchById(copy);
+ boolean b = bean.saveOrUpdateBatch(copy);
if (b) {
return b;
}
@@ -143,4 +201,51 @@
}
throw new Exception("保存失败!");
}
+
+ /**
+ * 导出消防自查信息
+ * @param taskPlaceSelfCheck
+ * @return
+ */
+ @Override
+ public List<TaskPlaceSelfCheckExcel> exportTaskPlaceSelfCheck(TaskPlaceSelfCheckVO taskPlaceSelfCheck) {
+ List<String> strings = new ArrayList<>();
+ if (null!=taskPlaceSelfCheck.getNineType()){
+ QueryWrapper<DictBiz> queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("is_deleted",0).eq("dict_key",taskPlaceSelfCheck.getNineType()).eq("code","nineType");
+ // 先查询当前
+ DictBiz one = dictBizService.getOne(queryWrapper);
+ // 查询本身和子集的key
+ List<DictBiz> list = dictBizService.getList("nineType", one.getId());
+ if (list.size()==0){
+ strings.add(taskPlaceSelfCheck.getNineType().toString());
+ }else {
+ strings = list.stream().map(DictBiz::getDictKey).collect(Collectors.toList());
+ }
+ }
+ // 公共参数设置
+ CommonParamSet commonParamSet = new CommonParamSet().invoke(TaskPlaceSelfCheckVO.class,taskPlaceSelfCheck);
+ List<TaskPlaceSelfCheckExcel> taskPlaceSelfCheckExcels = baseMapper.exportTaskPlaceSelfCheck(
+ strings,
+ taskPlaceSelfCheck,
+ commonParamSet.getIsAdministrator(),
+ commonParamSet.getRegionChildCodesList(),
+ commonParamSet.getGridCodeList());
+ // 返回
+ List<DictBiz> nineType = dictBizService.list(Wrappers.<DictBiz>lambdaQuery().eq(DictBiz::getCode, "nineType").eq(DictBiz::getIsDeleted, 0));
+ for (TaskPlaceSelfCheckExcel ninePlaceExcel : taskPlaceSelfCheckExcels) {
+ for (DictBiz dictBiz : nineType) {
+ if (StringUtils.isNotBlank(ninePlaceExcel.getNineType()) && ninePlaceExcel.getNineType().equals(dictBiz.getDictKey())) {
+ if (ninePlaceExcel.getNineType().contains("10,11,12")) {
+ ninePlaceExcel.setNineType("小学校(幼儿园、校外培训机构)- " + dictBiz.getDictValue());
+ } else if (ninePlaceExcel.getNineType().contains("13,14,15")) {
+ ninePlaceExcel.setNineType("小医院(诊所、养老院)- " + dictBiz.getDictValue());
+ } else {
+ ninePlaceExcel.setNineType(dictBiz.getDictValue());
+ }
+ }
+ }
+ }
+ return taskPlaceSelfCheckExcels;
+ }
}
--
Gitblit v1.9.3