diff --git a/code/cpicxim-XMNHSA-repeater/pom.xml b/code/cpicxim-XMNHSA-repeater/pom.xml index cc4b111..1f905ce 100644 --- a/code/cpicxim-XMNHSA-repeater/pom.xml +++ b/code/cpicxim-XMNHSA-repeater/pom.xml @@ -14,6 +14,8 @@ UTF-8 + 18 + 18 18 @@ -134,18 +136,31 @@ - compile - + - - - + + + maven-surefire-plugin + 3.3.0 + + true + + + + maven-compiler-plugin + 3.13.0 + + + ${project.basedir}/lib + + + + + maven-resources-plugin 3.3.1 @@ -159,13 +174,6 @@ - - maven-surefire-plugin - 3.3.0 - - true - - maven-install-plugin 3.1.2 @@ -174,8 +182,7 @@ maven-deploy-plugin 3.1.2 - + maven-site-plugin 3.12.1 @@ -206,8 +213,48 @@ + --> + + org.apache.maven.plugins + maven-assembly-plugin + 3.3.0 + + + jar-with-dependencies + + + + com.cpic.xim.huixiabao.AppMain + + + + + + make-assembly + package + + single + + + + + + org.springframework.boot + spring-boot-maven-plugin + 3.4.3 + + com.cpic.xim.huixiabao.AppMain + true + + + + repackage + + repackage + + + - - + \ No newline at end of file diff --git a/code/cpicxim-XMNHSA-repeater/src/main/java/com/cpic/xim/huixiabao/AppMain.java b/code/cpicxim-XMNHSA-repeater/src/main/java/com/cpic/xim/huixiabao/AppMain.java index 472ff2a..9eb5296 100644 --- a/code/cpicxim-XMNHSA-repeater/src/main/java/com/cpic/xim/huixiabao/AppMain.java +++ b/code/cpicxim-XMNHSA-repeater/src/main/java/com/cpic/xim/huixiabao/AppMain.java @@ -13,17 +13,59 @@ */ package com.cpic.xim.huixiabao; +import com.alibaba.fastjson.JSONObject; import com.cpic.xim.huixiabao.data.config.HuixiabaoConfig; + +import cn.hsa.zephyr.apisdk.DefaultZephyrClient; +import cn.hsa.zephyr.apisdk.internal.exception.ZephyrApiException; import cn.hsa.zephyr.apisdk.internal.util.encrypt.EncryptionModeEnum; import cn.hsa.zephyr.apisdk.internal.util.encrypt.SignTypeEnum; +import cn.hsa.zephyr.apisdk.request.DefaultZephyrRequest; +import cn.hsa.zephyr.apisdk.response.DefaultZephyrResponse; public class AppMain { public static void main( String[] args ) { + String url = HuixiabaoConfig.getUrl(); + String appId = HuixiabaoConfig.getAppid(); + String appSecret = HuixiabaoConfig.getAppSecret(); + String funId = "xxx"; + String encKey = HuixiabaoConfig.getEncKey(); + String signKey = HuixiabaoConfig.getSignKey(); + EncryptionModeEnum encType = EncryptionModeEnum.SM4; SignTypeEnum signType = SignTypeEnum.SM3; + try + { + DefaultZephyrClient client = new DefaultZephyrClient( url, + funId, + appId, + appSecret, + signType, + signKey, + encType, + encKey ); + + DefaultZephyrRequest req = new DefaultZephyrRequest(); + JSONObject jsonObject1 = new JSONObject(); + DefaultZephyrResponse resp = null; + + jsonObject1.put( "code", "XXXXXXXXXXXXXXXXXX" ); + jsonObject1.put( "scene_code", "XXX" ); + + req.setData( jsonObject1 ); + // resp = client.execute( req ); + + System.out.println( req.toString() ); + } + catch ( Exception e ) + { + System.out.println( "Fuck World!" ); + e.printStackTrace(); + } + System.out.println( "Hello World!" ); } } diff --git a/code/cpicxim-XMNHSA-repeater/src/main/java/com/cpic/xim/huixiabao/data/pojo/HmbXyxInfo.java b/code/cpicxim-XMNHSA-repeater/src/main/java/com/cpic/xim/huixiabao/data/pojo/HmbXyxInfo.java index ea7c943..ee5ea05 100644 --- a/code/cpicxim-XMNHSA-repeater/src/main/java/com/cpic/xim/huixiabao/data/pojo/HmbXyxInfo.java +++ b/code/cpicxim-XMNHSA-repeater/src/main/java/com/cpic/xim/huixiabao/data/pojo/HmbXyxInfo.java @@ -1,11 +1,15 @@ /* * @Author: Kane + * * @Date: 2025-03-06 14:33:27 + * * @LastEditors: Kane - * @FilePath: /Cpicxim-XMNHSA-Repeater/src/main/java/com/cpicxim/huixiabao/data/pojo/HmbListItem.java + * + * @FilePath: /cpicxim-XMNHSA-repeater/src/main/java/com/cpic/xim/huixiabao/data/pojo/HmbXyxInfo.java + * * @Description: 小药箱接口参数描述 * - * Copyright (c) ${2023} by Kane, All Rights Reserved. + * Copyright (c) ${2023} by Kane, All Rights Reserved. */ package com.cpic.xim.huixiabao.data.pojo; @@ -17,7 +21,20 @@ import com.fasterxml.jackson.annotation.JsonPropertyOrder; @JsonPropertyOrder( alphabetic = true ) public class HmbXyxInfo { - + + public HmbXyxInfo( String psnName, + String certNo, + String serviceId, + String status, + String xyxNo ) + { + this.psnName = psnName; + this.certNo = certNo; + this.serviceId = serviceId; + this.status = status; + this.xyxNo = xyxNo; + } + public String getPsnName() { return psnName; @@ -68,19 +85,25 @@ public class HmbXyxInfo this.xyxNo = xyxNo; } - @JsonProperty("psnName") + @Override + public String toString() + { + return "HmbXyxInfo [psnName=" + psnName + ", certNo=" + certNo + ", serviceId=" + serviceId + ", status=" + status + ", xyxNo=" + xyxNo + "]"; + } + + @JsonProperty( "psnName" ) private String psnName; - @JsonProperty("certno") + @JsonProperty( "certno" ) private String certNo; - @JsonProperty("serviceId") + @JsonProperty( "serviceId" ) private String serviceId; - @JsonProperty("status") + @JsonProperty( "status" ) private String status; - @JsonProperty("xyxNo") + @JsonProperty( "xyxNo" ) private String xyxNo; } \ No newline at end of file diff --git a/code/cpicxim-XMNHSA-repeater/src/main/java/com/cpic/xim/huixiabao/nhs/CpicximToXMNHS.java b/code/cpicxim-XMNHSA-repeater/src/main/java/com/cpic/xim/huixiabao/nhs/CpicximToXMNHS.java index d47d81c..3dccb45 100644 --- a/code/cpicxim-XMNHSA-repeater/src/main/java/com/cpic/xim/huixiabao/nhs/CpicximToXMNHS.java +++ b/code/cpicxim-XMNHSA-repeater/src/main/java/com/cpic/xim/huixiabao/nhs/CpicximToXMNHS.java @@ -13,6 +13,11 @@ */ package com.cpic.xim.huixiabao.nhs; +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.ResultSet; +import java.sql.Statement; +import java.sql.SQLException; import java.util.Vector; import com.cpic.xim.huixiabao.data.pojo.*; import org.slf4j.Logger; @@ -31,22 +36,85 @@ public class CpicximToXMNHS { private static Logger logger = LoggerFactory.getLogger( CpicximToXMNHS.class ); + private static String driverName = "com.mysql.cj.jdbc.Driver"; + private static String url = "jdbc:mysql://10.39.0.85:3306/huixiabao?useUnicode=true&characterEncoding=utf8&useSSL=true"; + private static String userName = "huixiabao"; + private static String password = "Kane@1981"; + /** * 从数据库中获取未发送过的小药箱数据。 * * @return */ - public Vector getNeverTransHmbList() + public static Vector getNeverTransHmbList() { Vector items = new Vector(); + HmbXyxInfo item = null; - + Connection connection = null; + Statement statement = null; + ResultSet result = null; + + try + { + Class.forName( "com.mysql.cj.jdbc.Driver" ); + + String url = CpicximToXMNHS.url; + String userName = CpicximToXMNHS.userName; + String password = CpicximToXMNHS.password; + String sql = """ + select info.psnName, info.certNo, info.serviceId, info.status, info.xyxNo + from HmbXyxInfo info, + HmbXyxInfo_Update u + where info.xyxNo = u.xyxNo """; + + connection = DriverManager.getConnection( url, userName, password ); + statement = connection.createStatement(); + result = statement.executeQuery( sql.trim() ); + + while ( result.next() ) + { + item = new HmbXyxInfo( result.getString( "psnName" ), + result.getString( "certno" ), + result.getString( "serviceId" ), + result.getString( "status" ), + result.getString( "xyxNo" ) ); + + items.add( item ); + } + } + catch ( SQLException error ) + { + error.printStackTrace(); + } + catch ( ClassNotFoundException error ) + { + + } + finally + { + try + { + result.close(); + statement.close(); + connection.close(); + } + catch ( SQLException error ) + { + + } + } return items; } - public void postHmbList( Vector items ) + public static void removePostedHmbXyxInfo( Vector postedItems ) + { + + } + + public static void postHmbList( Vector items ) { String url = HuixiabaoConfig.getUrl(); String appId = HuixiabaoConfig.getAppid(); diff --git a/code/cpicxim-XMNHSA-repeater/src/test/java/com/cpic/xim/huixiabao/AppTest.java b/code/cpicxim-XMNHSA-repeater/src/test/java/com/cpic/xim/huixiabao/AppTest.java index 318ebf7..56e0426 100644 --- a/code/cpicxim-XMNHSA-repeater/src/test/java/com/cpic/xim/huixiabao/AppTest.java +++ b/code/cpicxim-XMNHSA-repeater/src/test/java/com/cpic/xim/huixiabao/AppTest.java @@ -15,11 +15,17 @@ package com.cpic.xim.huixiabao; import static org.junit.jupiter.api.Assertions.assertTrue; +import java.sql.*; +import java.util.Vector; + import org.junit.jupiter.api.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; +import com.cpic.xim.huixiabao.data.pojo.HmbXyxInfo; +import com.cpic.xim.huixiabao.nhs.CpicximToXMNHS; + import cn.hsa.zephyr.apisdk.DefaultZephyrClient; import cn.hsa.zephyr.apisdk.internal.exception.ZephyrApiException; import cn.hsa.zephyr.apisdk.internal.util.encrypt.EncryptionModeEnum; @@ -47,7 +53,9 @@ public class AppTest public void testLog() { for ( - int i = 0; i < 10000; i++ + int i = 0; + i < 10000; + i++ ) { // System.out.print("test!"); @@ -119,4 +127,14 @@ public class AppTest System.out.println( json ); } + + @Test + public void testMysql() + { + Vector items = CpicximToXMNHS.getNeverTransHmbList(); + + System.out.println( items.toString() ); + + assert( items.size() > 0 ); + } } diff --git a/文档/地址.xlsx b/文档/地址.xlsx index bb3c568..fa5da50 100644 Binary files a/文档/地址.xlsx and b/文档/地址.xlsx differ