4 Commits

Author SHA1 Message Date
dddf8520a1 保存进度! 2025-03-14 12:57:16 +08:00
2fe8043791 保存进度! 2025-03-14 11:37:33 +08:00
5d117f7b51 保存进度 2025-03-13 22:42:26 +08:00
bec378be36 保存进度 2025-03-13 22:15:51 +08:00
7 changed files with 107 additions and 67 deletions

View File

@@ -14,9 +14,9 @@
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compile.source>18</maven.compile.source>
<maven.compile.target>18</maven.compile.target>
<maven.compiler.release>18</maven.compiler.release>
<maven.compile.source>1.8</maven.compile.source>
<maven.compile.target>1.8</maven.compile.target>
<!-- <maven.compiler.release>1.8</maven.compiler.release> -->
</properties>
<dependencyManagement>
@@ -45,23 +45,23 @@
</dependency>
<!--jackson-->
<dependency>
<!-- <dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.14.2</version>
</dependency>
</dependency> -->
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-core -->
<dependency>
<!-- <dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>2.13.4</version>
</dependency>
</dependency> -->
<!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-annotations -->
<dependency>
<!-- <dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>2.13.4</version>
</dependency>
</dependency> -->
<!-- log-4j -->
<dependency>
@@ -81,7 +81,7 @@
</dependency>
<!-- POI -->
<dependency>
<!-- <dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>5.2.3</version>
@@ -90,28 +90,21 @@
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>5.2.3</version>
</dependency>
</dependency> -->
<!-- mybatis -->
<dependency>
<!-- <dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.5.19</version>
</dependency>
</dependency> -->
<dependency>
<groupId> cn.hsa.zephyr</groupId>
<artifactId>zephyr-api-sdk</artifactId>
<version>2.0.1</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/zephyr-api-sdk.jar</systemPath>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<!-- <version>1.2.83</version> -->
<version>2.0.56</version>
<systemPath>${project.basedir}/lib/zephyr-api-sdk-cx.jar</systemPath>
</dependency>
<dependency>
@@ -125,12 +118,16 @@
<artifactId>bcprov-jdk18on</artifactId>
<version>1.80</version>
</dependency>
<!-- https://mvnrepository.com/artifact/commons-logging/commons-logging -->
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.3.5</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.83</version>
<!-- <version>2.0.56</version> -->
</dependency>
</dependencies>
@@ -149,6 +146,9 @@
<artifactId>maven-compiler-plugin</artifactId>
<version>3.14.0</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
<compilerArguments>
<extdirs>${project.basedir}/lib</extdirs>
</compilerArguments>
@@ -181,7 +181,7 @@
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>3.4.3</version>
<version>2.6.0</version>
<configuration>
<mainClass>com.cpic.xim.huixiabao.AppMain</mainClass>
<includeSystemScope>true</includeSystemScope>

View File

@@ -13,12 +13,12 @@
*/
package com.cpic.xim.huixiabao.data.pojo;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
// import com.fasterxml.jackson.annotation.JsonInclude;
// import com.fasterxml.jackson.annotation.JsonProperty;
// import com.fasterxml.jackson.annotation.JsonPropertyOrder;
@JsonInclude( JsonInclude.Include.NON_EMPTY )
@JsonPropertyOrder( alphabetic = true )
//@JsonInclude( JsonInclude.Include.NON_EMPTY )
//@JsonPropertyOrder( alphabetic = true )
public class HmbXyxInfo
{
@@ -91,19 +91,19 @@ public class HmbXyxInfo
return "HmbXyxInfo [psnName=" + psnName + ", certNo=" + certNo + ", serviceId=" + serviceId + ", status=" + status + ", xyxNo=" + xyxNo + "]";
}
@JsonProperty( "psnName" )
//@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;
}

View File

@@ -10,12 +10,12 @@
package com.cpic.xim.huixiabao.data.pojo;
import java.util.Vector;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.annotation.JsonPropertyOrder;
// import com.fasterxml.jackson.annotation.JsonInclude;
// import com.fasterxml.jackson.annotation.JsonProperty;
// import com.fasterxml.jackson.annotation.JsonPropertyOrder;
@JsonInclude( JsonInclude.Include.NON_EMPTY )
@JsonPropertyOrder( alphabetic = true )
// @JsonInclude( JsonInclude.Include.NON_EMPTY )
// @JsonPropertyOrder( alphabetic = true )
public class HmbXyxInfoRequest
{
public HmbXyxInfoRequest()
@@ -51,9 +51,9 @@ public class HmbXyxInfoRequest
this.hmbList = hmbList;
}
@JsonProperty("topic")
//@JsonProperty("topic")
private String topic; // 业务类型
@JsonProperty("hmbList")
//@JsonProperty("hmbList")
private Vector<HmbXyxInfo> hmbList;
}

View File

@@ -9,8 +9,6 @@
*/
package com.cpic.xim.huixiabao.data.pojo;
import com.fasterxml.jackson.annotation.JsonProperty;
public class NHACommenRequestBody
{

View File

@@ -24,14 +24,18 @@ import java.util.Vector;
import com.cpic.xim.huixiabao.data.pojo.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
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;
import cn.hsa.zephyr.apisdk.request.ZephyrCommonRequest;
import cn.hsa.zephyr.apisdk.response.ZephyrCommonResponse;
import cn.hsa.zephyr.apisdk.ZephyrRequest;
import cn.hsa.zephyr.apisdk.ZephyrResponse;
import com.cpic.xim.huixiabao.data.config.HuixiabaoConfig;
@SuppressWarnings(
@@ -47,7 +51,7 @@ public class CpicximToXMNHS
private static String password = "Kane@1981";
/**
* 从数据库中获取未发送过的小药箱数据。
* 从HmbXyxInfo_Update中获取未发送过的小药箱数据。
*
* @return
*/
@@ -68,11 +72,16 @@ public class CpicximToXMNHS
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 """;
// String sql = """
// select info.psnName, info.certNo, info.serviceId, info.status, info.xyxNo
// from HmbXyxInfo info,
// HmbXyxInfo_Update u
// where info.xyxNo = u.xyxNo """;
String sql = "select info.psnName, info.certNo, info.serviceId, info.status, info.xyxNo \n" +
" from HmbXyxInfo info, \n" +
" HmbXyxInfo_Update u \n" +
" where info.xyxNo = u.xyxNo";
connection = DriverManager.getConnection( url, userName, password );
statement = connection.createStatement();
@@ -139,6 +148,11 @@ public class CpicximToXMNHS
return items;
}
/**
* 将 postedItems 中的小药箱数据冲HmbXyxInfo_update中清除。
*
* @param postedItems 已发送的小药箱数据
*/
public static void removePostedHmbXyxInfo( Vector<HmbXyxInfo> postedItems )
{
Vector<HmbXyxInfo> items = new Vector<HmbXyxInfo>();
@@ -155,8 +169,7 @@ public class CpicximToXMNHS
String url = CpicximToXMNHS.url;
String userName = CpicximToXMNHS.userName;
String password = CpicximToXMNHS.password;
String sql = """
delete from HmbXyxInfo_Update where xyxNo = ?""";
String sql = "delete from HmbXyxInfo_Update where xyxNo = ?";
connection = DriverManager.getConnection( url, userName, password );
statement = connection.prepareStatement( sql.trim() );
@@ -245,10 +258,11 @@ public class CpicximToXMNHS
signKey,
encType,
encKey );
DefaultZephyrRequest req = new DefaultZephyrRequest();
DefaultZephyrResponse resp = null;
ZephyrCommonRequest req = new ZephyrCommonRequest();
ZephyrCommonResponse resp = null;
// 数据
JSONObject data = new JSONObject();
JSONObject requestObject = new JSONObject();
JSONObject xyxInfo = null;
JSONArray xyxInfoList = new JSONArray();
@@ -285,20 +299,31 @@ public class CpicximToXMNHS
try
{
logger.info( "发送请求内容:" + requestObject.toJSONString() );
data.remove("data");
data.put( "data", requestObject );
req.setData( requestObject );
logger.info( "发送请求内容:" + data.toJSONString() );
logger.info( "请求地址:" + HuixiabaoConfig.getUrl() );
req.setData( data );
resp = client.execute( req );
logger.info( "发送成功,返回消息:" + resp.getData() );
if ( resp != null )
{
logger.info( "发送成功,返回消息:" + resp.getBody() );
// 将已发送的数据从update表中清理掉
removePostedHmbXyxInfo( postedInfo );
// 将已发送的数据从HmbXyxInfo_update表中清理掉
// removePostedHmbXyxInfo( postedInfo );
}
else
{
logger.info( "已发送请求但获取的DefaultZephyrResponse为null" );
}
}
catch ( ZephyrApiException error )
{
// 发送不成功,记录日志
// 失败的数据就留在update表中,待以后重新发送
// 不从HmbXyxInfo_update中清理当前这批数据,待以后重新发送
logger.error( "发送异常:" + error.getMessage() );
}
finally

View File

@@ -30,8 +30,9 @@ 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;
import cn.hsa.zephyr.apisdk.request.ZephyrCommonRequest;
import cn.hsa.zephyr.apisdk.response.ZephyrCommonResponse;
/**
* Unit test for simple App.
@@ -87,9 +88,9 @@ public class AppTest
encType,
encKey );
DefaultZephyrRequest req = new DefaultZephyrRequest();
ZephyrCommonRequest req = new ZephyrCommonRequest();
JSONObject jsonObject1 = new JSONObject();
DefaultZephyrResponse resp = null;
ZephyrCommonResponse resp = null;
jsonObject1.put( "code", "XXXXXXXXXXXXXXXXXX" );
jsonObject1.put( "scene_code", "XXX" );
@@ -97,7 +98,7 @@ public class AppTest
req.setData( jsonObject1 );
resp = client.execute( req );
System.out.println( resp.getData() );
System.out.println( resp.getBody() );
}
catch ( ZephyrApiException e )
{

16
code/sql/调试.sql Normal file
View File

@@ -0,0 +1,16 @@
/*
delete from HmbXyxInfo;
insert into HmbXyxInfo( psnName, certno, serviceid, status, xyxno)
values( '王炜', '350402198106130016', '100007', '1', '100001');
insert into HmbXyxInfo( psnName, certno, serviceid, status, xyxno)
values( '王炜', '350402198106130016', '100007', '1', '100002');
insert into HmbXyxInfo( psnName, certno, serviceid, status, xyxno)
values( '王炜', '350402198106130016', '100007', '1', '100003');
commit;
/*
select * from HmbXyxInfo_Update;
select a.*
from HmbXyxInfo a,
HmbXyxInfo_Update b
where a.xyxNo = b.xyxNo;