From 2ac772b03ecc56547e727b772049a07dcc6735f1 Mon Sep 17 00:00:00 2001
From: linwe <872216996@qq.com>
Date: Fri, 05 Jul 2024 11:16:09 +0800
Subject: [PATCH] 代码优化

---
 src/main/java/org/springblade/modules/eCallEventTwo/service/impl/EcOrderServiceImpl.java     |   20 ++++++++-
 src/main/java/org/springblade/common/param/CommonParamSet.java                               |   18 +++++----
 src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.java            |    3 +
 src/main/java/org/springblade/modules/task/service/impl/TaskReportForRepairsServiceImpl.java |    5 +-
 src/main/java/org/springblade/modules/backblast/mapper/BackblastPubRecordMapper.xml          |    6 +-
 src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.xml             |   20 +++++++--
 6 files changed, 50 insertions(+), 22 deletions(-)

diff --git a/src/main/java/org/springblade/common/param/CommonParamSet.java b/src/main/java/org/springblade/common/param/CommonParamSet.java
index 775ea1b..4e60b1e 100644
--- a/src/main/java/org/springblade/common/param/CommonParamSet.java
+++ b/src/main/java/org/springblade/common/param/CommonParamSet.java
@@ -2,23 +2,16 @@
 
 import org.apache.commons.lang3.StringUtils;
 import org.apache.logging.log4j.util.Strings;
-import org.apache.poi.hssf.record.DVALRecord;
 import org.springblade.common.cache.SysCache;
 import org.springblade.common.utils.AuthUtils;
 import org.springblade.common.utils.SpringUtils;
 import org.springblade.core.secure.utils.AuthUtil;
-import org.springblade.core.tool.utils.SpringUtil;
-import org.springblade.core.tool.utils.StringUtil;
-import org.springblade.modules.grid.service.IGridService;
-import org.springblade.modules.police.service.IPoliceAffairsGridService;
 import org.springblade.modules.system.service.IRegionService;
 
 import java.lang.reflect.Field;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
-
-import static org.springblade.core.secure.utils.AuthUtil.getUserRole;
 
 public class CommonParamSet<T> {
 	/**
@@ -29,6 +22,11 @@
 	 * 是否为超级管理员
 	 */
 	private Integer isAdministrator;
+
+	/**
+	 * 社区编号
+	 */
+	private String communityCode;
 	/**
 	 * 网格编号集合
 	 */
@@ -55,6 +53,10 @@
 		return str;
 	}
 
+	public String getCommunityCode() {
+		return communityCode;
+	}
+
 	public <U> CommonParamSet invoke(Class<U> clazz, T t) {
 		//获取传入对象信息
 		U u = clazz.cast(t);
@@ -64,7 +66,7 @@
 			// 获取请求头中的角色别名
 			String roleName = SpringUtils.getRequestParam("roleName");
 			// 获取请求头中的社区编号
-			String communityCode = SpringUtils.getRequestParam("communityCode");
+			communityCode = SpringUtils.getRequestParam("communityCode");
 			if (!Strings.isBlank(communityCode)) {
 				// 校验社区编号是否合规
 				if (null != SpringUtils.getBean(IRegionService.class).getById(communityCode)) {
diff --git a/src/main/java/org/springblade/modules/backblast/mapper/BackblastPubRecordMapper.xml b/src/main/java/org/springblade/modules/backblast/mapper/BackblastPubRecordMapper.xml
index 87d7359..8fc65cb 100644
--- a/src/main/java/org/springblade/modules/backblast/mapper/BackblastPubRecordMapper.xml
+++ b/src/main/java/org/springblade/modules/backblast/mapper/BackblastPubRecordMapper.xml
@@ -28,7 +28,7 @@
             and br.town_name like concat('%',#{backblastPubRecord.townName},'%')
         </if>
         <if test="backblastPubRecord.communityName != null and backblastPubRecord.communityName != ''">
-            and jbr.name like concat('%',#{backblastPubRecord.communityName},'%')
+            and br.name like concat('%',#{backblastPubRecord.communityName},'%')
         </if>
         <if test="backblastPubRecord.pcsName != null and backblastPubRecord.pcsName != ''">
             and jpag.pcs_name like concat('%',#{backblastPubRecord.pcsName},'%')
@@ -164,7 +164,7 @@
             and br.town_name like concat('%',#{backblastPubRecord.townName},'%')
         </if>
         <if test="backblastPubRecord.communityName != null and backblastPubRecord.communityName != ''">
-            and jbr.name like concat('%',#{backblastPubRecord.communityName},'%')
+            and br.name like concat('%',#{backblastPubRecord.communityName},'%')
         </if>
         <if test="backblastPubRecord.pcsName != null and backblastPubRecord.pcsName != ''">
             and jpag.pcs_name like concat('%',#{backblastPubRecord.pcsName},'%')
@@ -210,7 +210,7 @@
             and br.town_name like concat('%',#{backblastPubRecord.townName},'%')
         </if>
         <if test="backblastPubRecord.communityName != null and backblastPubRecord.communityName != ''">
-            and jbr.name like concat('%',#{backblastPubRecord.communityName},'%')
+            and br.name like concat('%',#{backblastPubRecord.communityName},'%')
         </if>
         <if test="backblastPubRecord.pcsName != null and backblastPubRecord.pcsName != ''">
             and jpag.pcs_name like concat('%',#{backblastPubRecord.pcsName},'%')
diff --git a/src/main/java/org/springblade/modules/eCallEventTwo/service/impl/EcOrderServiceImpl.java b/src/main/java/org/springblade/modules/eCallEventTwo/service/impl/EcOrderServiceImpl.java
index 6481e39..73c37b8 100644
--- a/src/main/java/org/springblade/modules/eCallEventTwo/service/impl/EcOrderServiceImpl.java
+++ b/src/main/java/org/springblade/modules/eCallEventTwo/service/impl/EcOrderServiceImpl.java
@@ -4,8 +4,10 @@
 import com.baomidou.dynamic.datasource.annotation.DS;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import liquibase.repackaged.org.apache.commons.lang3.StringUtils;
 import org.jetbrains.annotations.NotNull;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -23,10 +25,10 @@
 import org.springblade.modules.police.service.IPoliceAffairsGridService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
 
 import java.math.BigDecimal;
 import java.math.RoundingMode;
+import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
 import java.util.Map;
@@ -120,7 +122,7 @@
 
 	public void processPages(int pageSize, EcOrderParamDTO ecOrderParamDTO) {
 		QueryWrapper<EcOrder> ecOrderQueryWrapper = new QueryWrapper<>();
-		if (ecOrderParamDTO.getStartTime() != null) {
+		if (StringUtils.isNotBlank(ecOrderParamDTO.getStartTime()) && StringUtils.isNotEmpty(ecOrderParamDTO.getEndTime())) {
 			ecOrderQueryWrapper.between("import_time", ecOrderParamDTO.getStartTime(), ecOrderParamDTO.getEndTime());
 		}
 		long count = count(ecOrderQueryWrapper);
@@ -132,7 +134,19 @@
 			IPage<EcOrder> resultPage = baseMapper.selectPage(page, objectQueryWrapper);
 			List<EcOrder> records = resultPage.getRecords();
 			List<ECallEventTwoEntity> recordEntityList = BeanUtil.copy(records, ECallEventTwoEntity.class);
-			boolean b = ecOrderService.saveOrUpdateBatch(recordEntityList);
+			List<ECallEventTwoEntity> arrayList = new ArrayList<>();
+			// 过滤出已同步的订单
+			recordEntityList.forEach(record -> {
+				long count1 = ecOrderService.count(Wrappers.<ECallEventTwoEntity>lambdaQuery().eq(ECallEventTwoEntity::getOrderId, record.getOrderId()));
+				if (count1 == 0) {
+					arrayList.add(record);
+				}
+			});
+			// 同步订单
+			boolean b = false;
+			if (arrayList.size() > 0) {
+				b = ecOrderService.saveOrUpdateBatch(arrayList);
+			}
 			System.out.println("更新第" + pageNum + "页" + b);
 		}
 	}
diff --git a/src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.java b/src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.java
index 77c961d..0dde748 100644
--- a/src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.java
+++ b/src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.java
@@ -46,7 +46,8 @@
 																@Param("regionChildCodesList") List<String> regionChildCodesList,
 																@Param("isAdministrator") Integer isAdministrator,
 																@Param("aoiCodeList") List<String> aoiCodeList,
-																@Param("gridCodeList") List<String> gridCodeList);
+																@Param("gridCodeList") List<String> gridCodeList,
+																@Param("communityCode") String communityCode);
 
 
 	/**
diff --git a/src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.xml b/src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.xml
index ec82bde..ddd595c 100644
--- a/src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.xml
+++ b/src/main/java/org/springblade/modules/task/mapper/TaskReportForRepairsMapper.xml
@@ -160,15 +160,19 @@
         jda.aoi_name,
         br.village_name communityName,
         jda.address_name as addressName
-        from jczz_task_report_for_repairs jtrfr
-        left join jczz_doorplate_address jda on jda.address_code = jtrfr.address_code
+        FROM jczz_task_report_for_repairs jtrfr
+        LEFT JOIN jczz_doorplate_address jda on jda.address_code = jtrfr.address_code
         LEFT JOIN jczz_house jh on jh.house_code=jtrfr.address_code
-        left join jczz_grid jg on jg.grid_code = jh.grid_code and jg.is_deleted = 0
-        left join blade_region br on br.code = jg.community_code
         LEFT JOIN jczz_place jp on jtrfr.address_code = jp.house_code and jp.is_deleted = 0
-        where jtrfr.is_deleted = 0
+        LEFT JOIN jczz_grid jg on (jg.grid_code = jh.grid_code or jg.grid_code = jp.grid_code)  and jg.is_deleted = 0
+        LEFT JOIN blade_region br on br.code = jg.community_code
+        WHERE jtrfr.is_deleted = 0
         <if test="vo.createUser != null and vo.createUser != ''">
             AND jtrfr.create_user = #{vo.createUser}
+        </if>
+
+        <if test="communityCode !=null and communityCode !=''">
+            and jg.community_code = #{communityCode}
         </if>
 
         <if test="vo.houseCode != null and vo.houseCode != ''">
@@ -269,6 +273,12 @@
                             #{code}
                         </foreach>
                         )
+                        <if test="regionChildCodesList !=null and regionChildCodesList.size()>0">
+                            and jg.community_code in
+                            <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
+                                #{code}
+                            </foreach>
+                        </if>
                     </when>
                     <otherwise>
                         and jg.grid_code in ('')
diff --git a/src/main/java/org/springblade/modules/task/service/impl/TaskReportForRepairsServiceImpl.java b/src/main/java/org/springblade/modules/task/service/impl/TaskReportForRepairsServiceImpl.java
index 2db5a64..d81651c 100644
--- a/src/main/java/org/springblade/modules/task/service/impl/TaskReportForRepairsServiceImpl.java
+++ b/src/main/java/org/springblade/modules/task/service/impl/TaskReportForRepairsServiceImpl.java
@@ -114,8 +114,9 @@
 			aoiCodeList = districtEntityList.stream().map(i -> i.getAoiCode()).collect(Collectors.toList());
 		}
 
-		return page.setRecords(baseMapper.selectTaskReportForRepairsPage(page, taskReportForRepairs,
-			commonParamSet.getRegionChildCodesList(), commonParamSet.getIsAdministrator(), aoiCodeList, commonParamSet.getGridCodeList()));
+		List list = baseMapper.selectTaskReportForRepairsPage(page, taskReportForRepairs, commonParamSet.getRegionChildCodesList(),
+			commonParamSet.getIsAdministrator(), aoiCodeList, commonParamSet.getGridCodeList(),commonParamSet.getCommunityCode());
+		return page.setRecords(list);
 	}
 
 	/**

--
Gitblit v1.9.3