From 9217ec61bae4e02be35f26c84b4993d3d9f97d86 Mon Sep 17 00:00:00 2001
From: linwei <872216696@qq.com>
Date: Mon, 05 Feb 2024 17:34:24 +0800
Subject: [PATCH] 消防自查优化
---
src/main/java/org/springblade/modules/taskPlaceRectification/service/impl/TaskPlaceRectificationServiceImpl.java | 159 ++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 156 insertions(+), 3 deletions(-)
diff --git a/src/main/java/org/springblade/modules/taskPlaceRectification/service/impl/TaskPlaceRectificationServiceImpl.java b/src/main/java/org/springblade/modules/taskPlaceRectification/service/impl/TaskPlaceRectificationServiceImpl.java
index dcc4d94..675e795 100644
--- a/src/main/java/org/springblade/modules/taskPlaceRectification/service/impl/TaskPlaceRectificationServiceImpl.java
+++ b/src/main/java/org/springblade/modules/taskPlaceRectification/service/impl/TaskPlaceRectificationServiceImpl.java
@@ -16,28 +16,39 @@
*/
package org.springblade.modules.taskPlaceRectification.service.impl;
+import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import io.lettuce.core.ScriptOutputType;
import liquibase.repackaged.org.apache.commons.lang3.StringUtils;
import org.springblade.common.cache.SysCache;
import org.springblade.common.utils.SpringUtils;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.utils.BeanUtil;
+import org.springblade.modules.doorplateAddress.entity.DoorplateAddressEntity;
+import org.springblade.modules.doorplateAddress.service.IDoorplateAddressService;
import org.springblade.modules.house.excel.HouseExcel;
import org.springblade.modules.patrol.entity.PatrolRecord;
import org.springblade.modules.patrol.service.IPatrolRecordService;
import org.springblade.modules.patrol.vo.PatrolRecordVO;
+import org.springblade.modules.place.entity.PlaceCheckEntity;
+import org.springblade.modules.place.entity.PlaceEntity;
import org.springblade.modules.place.excel.NinePlaceExcel;
+import org.springblade.modules.place.service.IPlaceCheckService;
+import org.springblade.modules.place.service.IPlaceService;
import org.springblade.modules.system.entity.DictBiz;
import org.springblade.modules.system.entity.Region;
+import org.springblade.modules.system.entity.User;
import org.springblade.modules.system.service.IDeptService;
import org.springblade.modules.system.service.IDictBizService;
import org.springblade.modules.system.service.IRegionService;
+import org.springblade.modules.system.service.IUserService;
import org.springblade.modules.system.vo.RegionVO;
import org.springblade.modules.task.entity.TaskEntity;
import org.springblade.modules.task.service.ITaskService;
import org.springblade.modules.taskPlaceRectification.dto.TaskPlaceRectificationDTO;
import org.springblade.modules.taskPlaceRectification.entity.TaskPlaceRectificationEntity;
+import org.springblade.modules.taskPlaceRectification.excel.PlaceRectificationsExcel;
import org.springblade.modules.taskPlaceRectification.excel.TaskPlaceRectificationExcel;
import org.springblade.modules.taskPlaceRectification.vo.TaskPlaceRectificationVO;
import org.springblade.modules.taskPlaceRectification.mapper.TaskPlaceRectificationMapper;
@@ -50,6 +61,8 @@
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
/**
* 场所整改任务表 服务实现类
@@ -93,7 +106,7 @@
StringBuilder builder = new StringBuilder("");
List<PatrolRecordVO> patrolRecordVOList = taskPlaceRectificationVO.getPatrolRecordVOList();
for (int i = 0; i < patrolRecordVOList.size(); i++) {
- if(patrolRecordVOList.get(i).getState().equals(0)){
+ if (patrolRecordVOList.get(i).getState().equals(0)) {
builder.append(i + 1).append(" : ").append(patrolRecordVOList.get(i).getItemsName()).append("; ");
}
}
@@ -130,7 +143,7 @@
.set(TaskEntity::getRemark, taskPlaceRectification.getReasonFailure())
.eq(TaskEntity::getId, taskPlaceRectification.getTaskId()));
// 更新任务详情状态
- if(taskPlaceRectification.getStatus().equals(2)){
+ if (taskPlaceRectification.getStatus().equals(2)) {
taskPlaceRectification.setRectificationFlag(2);
}
boolean b1 = updateById(taskPlaceRectification);
@@ -188,7 +201,7 @@
StringBuilder builder = new StringBuilder("");
List<PatrolRecordVO> patrolRecordVOList = taskPlaceRectificationExcel.getPatrolRecordVOList();
for (int i = 0; i < patrolRecordVOList.size(); i++) {
- if(patrolRecordVOList.get(i).getState().equals(0)){
+ if (patrolRecordVOList.get(i).getState().equals(0)) {
builder.append(i + 1).append(" : ").append(patrolRecordVOList.get(i).getItemsName()).append("; ");
}
}
@@ -196,4 +209,144 @@
}
return export;
}
+
+
+ @Override
+ public void importPlaceRectifications(List<PlaceRectificationsExcel> data, Boolean isCovered) {
+ IPlaceService bean = SpringUtils.getBean(IPlaceService.class);
+ IUserService bean1 = SpringUtils.getBean(IUserService.class);
+ IPlaceCheckService bean2 = SpringUtils.getBean(IPlaceCheckService.class);
+ IDoorplateAddressService bean3 = SpringUtils.getBean(IDoorplateAddressService.class);
+ List<String> objects = new ArrayList<>();
+ for (PlaceRectificationsExcel datum : data) {
+ String phone1 = getPhone(datum.getPrincipals());
+ String name = getName(datum.getPrincipals());
+ datum.setPrincipalPhone(phone1);
+ datum.setPrincipal(name);
+ // 1.判断场所是否存在
+ PlaceEntity one = bean.getOne(Wrappers.<PlaceEntity>lambdaQuery()
+ .eq(PlaceEntity::getHouseCode, datum.getHouseCode())
+ .eq(PlaceEntity::getIsDeleted, 0));
+ if (one == null) {
+ // 新增场所
+ DoorplateAddressEntity one1 = bean3.getOne(Wrappers.<DoorplateAddressEntity>lambdaQuery()
+ .eq(DoorplateAddressEntity::getAddressCode, datum.getHouseCode()));
+ if (one1 == null) {
+ objects.add(datum.getHouseCode());
+ }
+ PlaceCheckEntity placeCheckEntity = new PlaceCheckEntity();
+ String police = datum.getPolice();
+ String phone = getPhone(police);
+ if (StringUtils.isNotBlank(phone)) {
+ User one3 = bean1.getOne(Wrappers.<User>lambdaQuery()
+ .eq(User::getPhone, phone)
+ .eq(User::getIsDeleted, 0));
+ if (one3 != null) {
+ placeCheckEntity.setCreateUser(one3.getId());
+ }
+ }
+ // 4.保存检查表
+ placeCheckEntity.setHouseCode(datum.getHouseCode());
+ bean2.save(placeCheckEntity);
+ continue;
+ }
+ // 2.判断负责人电话是否存在
+ if (StringUtils.isBlank(datum.getPrincipalPhone())) {
+ one.setLocation(datum.getAddressName());
+ one.setPlaceName(datum.getPlaceName());
+ bean.updateById(one);
+
+ PlaceCheckEntity placeCheckEntity = new PlaceCheckEntity();
+ String police = datum.getPolice();
+ String phone = getPhone(police);
+ if (StringUtils.isNotBlank(phone)) {
+ User one3 = bean1.getOne(Wrappers.<User>lambdaQuery()
+ .eq(User::getPhone, phone)
+ .eq(User::getIsDeleted, 0));
+ if (one3 != null) {
+ placeCheckEntity.setCreateUser(one3.getId());
+ }
+ }
+ // 4.保存检查表
+ placeCheckEntity.setHouseCode(datum.getHouseCode());
+ bean2.save(placeCheckEntity);
+ continue;
+ }
+ // 2.判断负责人是否存在
+ User one1 = bean1.getOne(Wrappers.<User>lambdaQuery()
+ .eq(User::getPhone, datum.getPrincipalPhone())
+ .eq(User::getIsDeleted, 0));
+ if (one1 == null) {
+ // 创建
+ User newUser = new User();
+ //如果用户不存在,则新增一个用户
+ newUser.setAccount(datum.getPrincipalPhone().trim());
+ newUser.setPhone(datum.getPrincipalPhone().trim());
+ newUser.setName(datum.getPrincipal().trim());
+ newUser.setRealName(datum.getPrincipal().trim());
+ // 社区群众部门
+ newUser.setDeptId("1727979636479037441");
+ // 目前暂定居民角色,
+ newUser.setRoleId("1717429059648606209");
+ //默认密码为 123456
+ newUser.setPassword("123456");
+ // 设置机构
+ // 用户新增
+ boolean submit = bean1.submit(newUser);
+
+ // 3.更新场所负责人
+ one.setPrincipal(newUser.getRealName());
+ one.setPrincipalUserId(newUser.getId());
+ one.setPrincipalPhone(newUser.getPhone());
+ one.setLocation(datum.getAddressName());
+ one.setPlaceName(datum.getPlaceName());
+ bean.updateById(one);
+ } else {
+ // 3.更新场所负责人
+ one.setPrincipal(one1.getRealName());
+ one.setPrincipalUserId(one1.getId());
+ one.setPrincipalPhone(one1.getPhone());
+ one.setLocation(datum.getAddressName());
+ one.setPlaceName(datum.getPlaceName());
+ bean.updateById(one);
+ }
+ PlaceCheckEntity placeCheckEntity = new PlaceCheckEntity();
+ String police = datum.getPolice();
+ String phone = getPhone(police);
+ if (StringUtils.isNotBlank(phone)) {
+ User one3 = bean1.getOne(Wrappers.<User>lambdaQuery()
+ .eq(User::getPhone, phone)
+ .eq(User::getIsDeleted, 0));
+ if (one3 != null) {
+ placeCheckEntity.setCreateUser(one3.getId());
+ }
+ }
+ // 4.保存检查表
+ placeCheckEntity.setHouseCode(datum.getHouseCode());
+ bean2.save(placeCheckEntity);
+ }
+ System.out.println("没有数据:" + JSON.toJSONString(objects));
+ }
+
+
+ private String getPhone(String text) {
+ Pattern pattern = Pattern.compile("1[3-9]\\d{9}");
+ Matcher matcher = pattern.matcher(text);
+
+ while (matcher.find()) {
+ return matcher.group();
+ }
+ return "";
+ }
+
+ private String getName(String text) {
+ // Pattern pattern = Pattern.compile("[\\\\u4e00-\\\\u9fa5]+");
+ // Matcher matcher = pattern.matcher(text);
+
+ String result = text.replaceAll("[^\\u4e00-\\u9fa5]", "");
+ // while (matcher.find()) {
+ // return matcher.group();
+ // }
+ return result;
+ }
}
--
Gitblit v1.9.3