From 09b5dee19976afacdc7d234586bc543a8a14718e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com>
Date: Mon, 2 Dec 2024 15:01:06 +0800
Subject: [PATCH] =?UTF-8?q?=E6=A8=A1=E6=9D=BF=E6=9D=83=E9=99=90?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../salary/handle/LongListTypeHandler.java | 49 +++++++++++++++++++
.../mapper/setting/PageListTemplateMapper.xml | 2 +-
.../service/impl/SettingServiceImpl.java | 10 ++--
3 files changed, 53 insertions(+), 8 deletions(-)
create mode 100644 src/com/engine/salary/handle/LongListTypeHandler.java
diff --git a/src/com/engine/salary/handle/LongListTypeHandler.java b/src/com/engine/salary/handle/LongListTypeHandler.java
new file mode 100644
index 000000000..43b175a6f
--- /dev/null
+++ b/src/com/engine/salary/handle/LongListTypeHandler.java
@@ -0,0 +1,49 @@
+package com.engine.salary.handle;
+
+import com.alibaba.fastjson.JSON;
+import com.alibaba.fastjson.JSONArray;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.ibatis.type.BaseTypeHandler;
+import org.apache.ibatis.type.JdbcType;
+
+import java.sql.CallableStatement;
+import java.sql.PreparedStatement;
+import java.sql.ResultSet;
+import java.sql.SQLException;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * 集合的转换
+ *
Copyright: Copyright (c) 2022
+ * Company: 泛微软件
+ *
+ * @author qiantao
+ * @version 1.0
+ **/
+@Slf4j
+public class LongListTypeHandler extends BaseTypeHandler> {
+
+ @Override
+ public void setNonNullParameter(PreparedStatement preparedStatement, int i, List list, JdbcType jdbcType) throws SQLException {
+ preparedStatement.setString(i, JSON.toJSONString(list));
+ }
+
+ @Override
+ public List getNullableResult(ResultSet resultSet, String s) throws SQLException {
+ List jsonArray = JSONArray.parseArray(resultSet.getString(s), Long.class);
+ return jsonArray == null ? new ArrayList<>() : jsonArray;
+ }
+
+ @Override
+ public List getNullableResult(ResultSet resultSet, int i) throws SQLException {
+ List jsonArray = JSONArray.parseArray(resultSet.getString(i), Long.class);
+ return jsonArray == null ? new ArrayList<>() : jsonArray;
+ }
+
+ @Override
+ public List getNullableResult(CallableStatement callableStatement, int i) throws SQLException {
+ List jsonArray = JSONArray.parseArray(callableStatement.getString(i), Long.class);
+ return jsonArray == null ? new ArrayList<>() : jsonArray;
+ }
+}
diff --git a/src/com/engine/salary/mapper/setting/PageListTemplateMapper.xml b/src/com/engine/salary/mapper/setting/PageListTemplateMapper.xml
index 80704b199..3ba245afd 100644
--- a/src/com/engine/salary/mapper/setting/PageListTemplateMapper.xml
+++ b/src/com/engine/salary/mapper/setting/PageListTemplateMapper.xml
@@ -6,7 +6,7 @@
-
+
diff --git a/src/com/engine/salary/service/impl/SettingServiceImpl.java b/src/com/engine/salary/service/impl/SettingServiceImpl.java
index 5c27e25ea..203d36621 100644
--- a/src/com/engine/salary/service/impl/SettingServiceImpl.java
+++ b/src/com/engine/salary/service/impl/SettingServiceImpl.java
@@ -245,15 +245,11 @@ public class SettingServiceImpl extends Service implements SettingService {
PageLinkPO link = getPageLinkMapper().getLink((long) user.getUID(), SALARY_DETAILS_REPORT.getValue());
Collection taxAgentPOS = getTaxAgentService().listAllTaxAgents((long) user.getUID());
- List taxIds = SalaryEntityUtil.properties(taxAgentPOS, po -> po.getId().toString(), Collectors.toList());
+ List taxIds = SalaryEntityUtil.properties(taxAgentPOS, TaxAgentPO::getId, Collectors.toList());
pos = pos.stream().filter(po -> {
if (po.getSharedType() == 1) {
- List limitIds = po.getLimitIds();
- List collect = new ArrayList<>();
- for (int i = 0; i < limitIds.size(); i++) {
- collect.add(limitIds.get(i).toString());
- }
- return CollectionUtil.isNotEmpty(limitIds) && CollectionUtil.intersection(collect, taxIds).size() != 0;
+ List limitIds = po.getLimitIds();
+ return CollectionUtil.isNotEmpty(limitIds) && CollectionUtil.intersection(limitIds, taxIds).size() != 0;
}
return true;
}).peek(po -> {