Forráskód Böngészése

feature 代码提交

xiahan 8 hónapja
szülő
commit
1eb28d226e

+ 9 - 0
jxkh-common/src/main/java/com/rongwei/bscommon/sys/service/impl/SynchronizationDataServiceImpl.java

@@ -17,6 +17,11 @@ import org.springframework.stereotype.Service;
 import java.io.File;
 import java.util.Map;
 
+import java.math.BigDecimal;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.function.BiConsumer;
+
 /**
  * @author :sc
  * @since :2024/12/2
@@ -39,6 +44,7 @@ public class SynchronizationDataServiceImpl implements SynchronizationDataServic
      */
     @Override
     public R dataSync(String id, String code) {
+
         return null;
     }
 
@@ -59,4 +65,7 @@ public class SynchronizationDataServiceImpl implements SynchronizationDataServic
         R r = attendanceAssessmentSdk.fileUploadApiCall(req);
         return r;
     }
+
+
+
 }

+ 73 - 0
jxkh-common/src/main/java/com/rongwei/bscommon/sys/utils/ApiDattaOrgUtil.java

@@ -0,0 +1,73 @@
+package com.rongwei.bscommon.sys.utils;
+
+import com.rongwei.bsentity.dto.OrgApiDataConfigDTO;
+import com.rongwei.rwcommon.utils.StringUtils;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+import org.springframework.stereotype.Component;
+
+import java.text.SimpleDateFormat;
+import java.util.Arrays;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+import static com.rongwei.bscommon.sys.utils.JXKHConstant.DatePattern.DATE_PATTERN_YMD;
+
+
+/**
+ * ApiDattaOrgUtil class
+ *
+ * @author XH
+ * @date 2024/12/02
+ */
+@Component
+public class ApiDattaOrgUtil {
+
+    public static final String IMG_SPLIT_SIGN = "\\^_\\^";
+    private static final Logger log = LoggerFactory.getLogger(ApiDattaOrgUtil.class.getName());
+
+    public static <T> Map<String, Object> assembleApiData(T infos,
+                                                          List<OrgApiDataConfigDTO> orgApiDataConfigDTOS) {
+        Map<String, Object> apiData = new HashMap();
+
+        orgApiDataConfigDTOS.forEach(configDTO -> {
+            String key = configDTO.getKey();
+            Object apply = configDTO.getGetDataFunction().apply(infos);
+            apiData.put(key, ObjConver(apply, configDTO));
+        });
+        return apiData;
+    }
+
+    private static Object ObjConver(Object obj, OrgApiDataConfigDTO configDTO) {
+        log.info("开始进行数据转换:{}", obj);
+        Object renturnObj = obj;
+        if (obj == null) {
+            log.debug("数据为空");
+            return renturnObj;
+        }
+        if (configDTO.getDateFlag()) {
+            log.debug("开始进行时间格式转换");
+            if (obj instanceof java.util.Date) {
+                SimpleDateFormat simpleDateFormat = new SimpleDateFormat(StringUtils.isBlank(configDTO.getDatePattern()) ? DATE_PATTERN_YMD : configDTO.getDatePattern());
+                renturnObj = simpleDateFormat.format(obj);
+                return renturnObj;
+            }
+        }
+        if (configDTO.getFileFlag()) {
+            log.debug("图片数据处理");
+            String filesInfo = obj.toString();
+            if (StringUtils.isBlank(filesInfo)) {
+                return renturnObj;
+            }
+            return Arrays.asList(filesInfo.split(IMG_SPLIT_SIGN)).stream().map(data -> {
+                String fileId = data.split("-;-")[1];
+                // 执行附件上传方法 返回真实的id
+                return "";
+            }).collect(Collectors.joining(","));
+        }
+        log.debug("其他格式的数据");
+        return renturnObj;
+    }
+}

+ 10 - 0
jxkh-common/src/main/java/com/rongwei/bscommon/sys/utils/JXKHUtils.java

@@ -0,0 +1,10 @@
+package com.rongwei.bscommon.sys.utils;
+
+/**
+ * JXKHUtils class
+ *
+ * @author XH
+ * @date 2024/12/02
+ */
+public class JXKHUtils {
+}

+ 56 - 0
jxkh-entity/src/main/java/com/rongwei/bsentity/dto/OrgApiDataConfigDTO.java

@@ -0,0 +1,56 @@
+package com.rongwei.bsentity.dto;
+
+import com.rongwei.rwcommon.utils.StringUtils;
+import lombok.Data;
+
+import java.util.function.Function;
+
+/**
+ * OrgApiDataDTO class
+ *
+ * @author XH
+ * @date 2024/12/02
+ */
+@Data
+public class OrgApiDataConfigDTO<T> {
+    private String key;
+
+    /**
+     * 字段描述
+     */
+    private Function<T, Object> getDataFunction;
+
+    /**
+     * 时间格式转化
+     */
+    private String datePattern;
+
+    private Boolean fileFlag = false;
+
+    private Boolean dateFlag = false;
+
+    private String realValue;
+
+    public OrgApiDataConfigDTO(String key, Function<T, Object> getDataFunction, String datePattern) {
+        this.key = key;
+        this.getDataFunction = getDataFunction;
+        this.datePattern = datePattern;
+        if (StringUtils.isNotBlank(datePattern)) {
+            this.dateFlag = true;
+        }
+    }
+
+
+    public OrgApiDataConfigDTO(String key, Function<T, Object> getDataFunction, Boolean fileFlag) {
+        this.key = key;
+        this.getDataFunction = getDataFunction;
+        this.fileFlag = fileFlag;
+    }
+
+    public OrgApiDataConfigDTO(String key, Function<T, Object> getDataFunction) {
+        this.key = key;
+        this.getDataFunction = getDataFunction;
+    }
+    private void setDateFlag(Boolean dateFlag) {
+    }
+}

+ 0 - 5
jxkh-server/pom.xml

@@ -28,11 +28,6 @@
             <artifactId>spring-boot-starter-actuator</artifactId>
         </dependency>
 
-        <dependency>
-            <groupId>org.springframework.boot</groupId>
-            <artifactId>spring-boot-starter-test</artifactId>
-            <scope>test</scope>
-        </dependency>
 
         <!-- Spring Cloud Begin -->
         <dependency>

+ 4 - 0
jxkh-server/src/main/java/com/rongwei/controller/SynchronizationDataController.java

@@ -12,6 +12,10 @@ import org.springframework.web.multipart.MultipartFile;
 
 import java.io.File;
 
+import org.springframework.web.bind.annotation.PathVariable;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.multipart.MultipartFile;
+
 /**
  * @author :sc
  * @since :2024/12/2

+ 4 - 6
jxkh-server/src/main/resources/bootstrap.yml

@@ -2,11 +2,11 @@ spring:
   profiles:
     active: dev
   application:
-    name: rw-business-server
+    name: rw-jxkh-server
   jta:
     atomikos:
       properties:
-        log-base-name: rwbusinesslog
+        log-base-name: rwjxkhlog
   servlet:
     multipart:
       max-file-size: 100MB
@@ -39,15 +39,13 @@ client:
   rsa-secret: x2318^^(*WRYQWR(QW&T
 mybatis-plus:
   configuration:
-    #    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
     log-impl: org.apache.ibatis.logging.slf4j.Slf4jImpl
     map-underscore-to-camel-case: false
-  #basepackage: com.rongwei.rwadmin.system.dao
-  xmlLocation: classpath:mybatis/**/*Dao.xml
+  xmlLocation: classpath:mybatis/*.xml
   mapperLocations: "classpath:mybatis/**/*Dao.xml"
   typeAliasesPackage: com.rongwei.bsentity.domain
   global-config:
     db-config:
       logic-delete-value: 1
       logic-not-delete-value: 0
-      column-like: true
+      column-like: true