From 56931dc90c4e070d279a0cbf5822af010c481812 Mon Sep 17 00:00:00 2001
From: chengf <cgf12138@163.com>
Date: 星期三, 18 三月 2026 15:36:42 +0800
Subject: [PATCH] 导入测试
---
service-api/src/main/java/com/java110/api/importData/DefaultImportDataAdapt.java | 93 ++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 93 insertions(+), 0 deletions(-)
diff --git a/service-api/src/main/java/com/java110/api/importData/DefaultImportDataAdapt.java b/service-api/src/main/java/com/java110/api/importData/DefaultImportDataAdapt.java
index 3a68048..713fc0f 100644
--- a/service-api/src/main/java/com/java110/api/importData/DefaultImportDataAdapt.java
+++ b/service-api/src/main/java/com/java110/api/importData/DefaultImportDataAdapt.java
@@ -1,11 +1,77 @@
package com.java110.api.importData;
+import com.alibaba.fastjson.JSONObject;
+import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.dto.payFee.PayFeeBatchDto;
+import com.java110.dto.user.UserDto;
+import com.java110.intf.fee.IPayFeeBatchV1InnerServiceSMO;
+import com.java110.intf.user.IUserInnerServiceSMO;
+import com.java110.po.payFee.PayFeeBatchPo;
+import com.java110.utils.util.Assert;
+import org.springframework.beans.factory.annotation.Autowired;
+
+import java.text.ParseException;
import java.text.SimpleDateFormat;
+import java.util.Calendar;
import java.util.Date;
+import java.util.List;
public class DefaultImportDataAdapt {
+ @Autowired
+ private IPayFeeBatchV1InnerServiceSMO payFeeBatchV1InnerServiceSMOImpl;
+ private static final Date EXCEL_EPOCH;
+
+ static {
+ // 鍒濆鍖朎xcel璧峰鏃ユ湡锛�1899-12-30锛屽搴擡xcel鐨�0澶╋級
+ Calendar cal = Calendar.getInstance();
+ cal.set(1899, Calendar.DECEMBER, 30, 0, 0, 0);
+ cal.set(Calendar.MILLISECOND, 0);
+ EXCEL_EPOCH = cal.getTime();
+ }
+
+ /**
+ * 灏咵xcel鏃ユ湡鏁板�硷紙濡�45734.0锛夎浆鎹负Date瀵硅薄
+ * @param excelDate Excel鏃ユ湡鏁板��
+ * @return 瀵瑰簲鐨凞ate瀵硅薄
+ */
+ public static Date doubleToDate(double excelDate) {
+ // 澶勭悊Excel 1900骞撮棸骞撮敊璇紙Excel閿欒鍦板皢1900骞磋涓洪棸骞达級
+ long days = (long) Math.floor(excelDate);
+ if (days >= 60) { // 1900-03-01鍙婁箣鍚庣殑鏃ユ湡闇�瑕佸噺1澶�
+ days--;
+ }
+
+ // 璁$畻鎬绘绉掓暟锛堝ぉ鏁伴儴鍒� + 鏃堕棿閮ㄥ垎锛�
+ long totalMillis = (long)(days * 86400000L) // 1澶� = 86400000姣
+ + (long)((excelDate - days) * 86400000L);
+
+ // 浠庡熀鍑嗘棩鏈熷紑濮嬬疮鍔犳绉掓暟
+ return new Date(EXCEL_EPOCH.getTime() + totalMillis);
+ }
+
+ /**
+ * 澶勭悊Excel鏃ユ湡瀛楃涓诧紙濡�"45734.0"锛夛紝杞崲涓�"yyyy-MM-dd"鏍煎紡
+ * @param strDate Excel鏃ユ湡鏁板�煎瓧绗︿覆
+ * @return 鏍煎紡鍖栧悗鐨勬棩鏈熷瓧绗︿覆
+ * @throws ParseException 杞崲澶辫触鏃舵姏鍑�
+ */
+ public String handleExcelDateString(String strDate){
+ // 1. 灏嗗瓧绗︿覆杞崲涓篸ouble锛堝"45734.0" -> 45734.0锛�
+ double excelDateValue = Double.parseDouble(strDate);
+
+ // 2. 灏咵xcel鏁板�艰浆鎹负Date瀵硅薄
+ Date tDate = doubleToDate(excelDateValue);
+
+ // 3. 鏍煎紡鍖栦负"yyyy-MM-dd"
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+ return sdf.format(tDate);
+ }
+
+
+ @Autowired
+ private IUserInnerServiceSMO userInnerServiceSMOImpl;
protected boolean hasSpecialCharacters(String str) {
if (str.contains("-") || str.contains("#") || str.contains("?") || str.contains("&")) {
return true;
@@ -48,4 +114,31 @@
return tDate;
}
+ /**
+ * 鐢熸垚鎵规鍙�
+ *
+ * @param reqJson
+ */
+ public void generatorBatch(JSONObject reqJson) {
+ PayFeeBatchPo payFeeBatchPo = new PayFeeBatchPo();
+ payFeeBatchPo.setBatchId(GenerateCodeFactory.getGeneratorId("12"));
+ payFeeBatchPo.setCommunityId(reqJson.getString("communityId"));
+ payFeeBatchPo.setCreateUserId(reqJson.getString("userId"));
+ UserDto userDto = new UserDto();
+ userDto.setUserId(reqJson.getString("userId"));
+ List<UserDto> userDtos = userInnerServiceSMOImpl.getUsers(userDto);
+
+ Assert.listOnlyOne(userDtos, "鐢ㄦ埛涓嶅瓨鍦�");
+ payFeeBatchPo.setCreateUserName(userDtos.get(0).getUserName());
+ payFeeBatchPo.setState(PayFeeBatchDto.STATE_NORMAL);
+ payFeeBatchPo.setMsg("姝e父");
+ int flag = payFeeBatchV1InnerServiceSMOImpl.savePayFeeBatch(payFeeBatchPo);
+
+ if (flag < 1) {
+ throw new IllegalArgumentException("鐢熸垚鎵规澶辫触");
+ }
+
+ reqJson.put("batchId", payFeeBatchPo.getBatchId());
+ }
+
}
--
Gitblit v1.8.0