Compare commits
4 Commits
f1ceba085f
...
8ab88a9acb
Author | SHA1 | Date |
---|---|---|
|
8ab88a9acb | |
|
3e83641a27 | |
|
e2e5e0ab26 | |
|
3353efa831 |
|
@ -15,6 +15,8 @@ public class IncomeInvoiceEntity extends BaseEntity {
|
|||
private String field0128;
|
||||
private String field0129;
|
||||
private String field0130;
|
||||
private String field0138;
|
||||
private String field0139;
|
||||
private String field0003;
|
||||
|
||||
|
||||
|
@ -121,5 +123,21 @@ public class IncomeInvoiceEntity extends BaseEntity {
|
|||
public void setField0003(String field0003) {
|
||||
this.field0003 = field0003;
|
||||
}
|
||||
|
||||
public String getField0138() {
|
||||
return field0138;
|
||||
}
|
||||
|
||||
public void setField0138(String field0138) {
|
||||
this.field0138 = field0138;
|
||||
}
|
||||
|
||||
public String getField0139() {
|
||||
return field0139;
|
||||
}
|
||||
|
||||
public void setField0139(String field0139) {
|
||||
this.field0139 = field0139;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -195,6 +195,8 @@
|
|||
<if test="field0128 != null and field0128 != ''"> field0128 = #{field0128},</if>
|
||||
<if test="field0129 != null and field0129 != ''"> field0129 = #{field0129},</if>
|
||||
<if test="field0130 != null and field0130 != ''"> field0130 = #{field0130},</if>
|
||||
<if test="field0138 != null and field0138 != ''"> field0138 = #{field0138},</if>
|
||||
<if test="field0139 != null and field0139 != ''"> field0139 = #{field0139},</if>
|
||||
</trim>
|
||||
where id = #{dataId}
|
||||
</update>
|
||||
|
@ -208,6 +210,8 @@
|
|||
<if test="field0128 != null and field0128 != ''">field0128 ,</if>
|
||||
<if test="field0129 != null and field0129 != ''">field0129 ,</if>
|
||||
<if test="field0130 != null and field0130 != ''">field0130 ,</if>
|
||||
<if test="field0138 != null and field0138 != ''">field0138 ,</if>
|
||||
<if test="field0139 != null and field0139 != ''">field0139 ,</if>
|
||||
|
||||
</trim>
|
||||
)values(
|
||||
|
@ -218,6 +222,8 @@
|
|||
<if test="field0128 != null and field0128 != ''">#{field0128} ,</if>
|
||||
<if test="field0129 != null and field0129 != ''">#{field0129} ,</if>
|
||||
<if test="field0130 != null and field0130 != ''">#{field0130} ,</if>
|
||||
<if test="field0138 != null and field0138 != ''">#{field0138} ,</if>
|
||||
<if test="field0139 != null and field0139 != ''">#{field0139} ,</if>
|
||||
</trim>
|
||||
)
|
||||
</insert>
|
||||
|
|
|
@ -54,8 +54,8 @@ public class FinancialReportPluginInitializer extends PluginBaseEntity{
|
|||
public JsonResultEntity executeBusiness(JSONObject requestJson) {
|
||||
try {
|
||||
logger.info("======开始执行财务信息同步========");
|
||||
//return BaseResult.getSuccessMessageEntity("数据获取成功");
|
||||
return incomeInvoiceService.sendFinancialReportPlugin(requestJson);
|
||||
return BaseResult.getSuccessMessageEntity("数据获取成功");
|
||||
//return incomeInvoiceService.sendFinancialReportPlugin(requestJson);
|
||||
}catch (Exception e){
|
||||
logger.info("======执行财务同步失败:{}========",e.getMessage());
|
||||
e.printStackTrace();
|
||||
|
|
|
@ -63,14 +63,24 @@ public class IncomeInvoiceServiceImpl extends BaseService<IncomeInvoiceEntity, S
|
|||
this.incomeInvoiceDao = dao;
|
||||
this.dao = dao;
|
||||
}
|
||||
boolean flags = true;
|
||||
String uploadBalanceTableUrl = "http://oapi.nanofintax.com/api/collect/uploadBalanceTable?accessToken";
|
||||
|
||||
String cbUrl = "http://oapi.nanofintax.com/api/collect/uploadFinancialReport?accessToken=";
|
||||
String dataUrl = "http://oapi.nanofintax.com/api/invoice_receive/fp/v1/query?accessToken=";
|
||||
String uploadBalanceTableUrl = "http://oapi.nanofintax.com/api/collect/uploadBalanceTable?accessToken";
|
||||
String tokenUrl = "http://oapi.nanofintax.com/api/getToken";
|
||||
String accessKey = "6X3B526P5HqE6ums";
|
||||
String accessSecret = "34e5fc32ac894a2ba2ade8c3852c7a0a";
|
||||
String taxNo = "91330110MAC5FPUY2U";
|
||||
Integer size = 50;
|
||||
|
||||
//String cbUrl = "http://oapi.nanofintax.com/api/collect/uploadFinancialReport";
|
||||
//String dataUrl = "https://workbench.test.htszny.com/oapi/invoice_receive/fp/v1/query";//全量发票数据
|
||||
//String tokenUrl = "http://oapi.nanofintax.com/api/getToken";
|
||||
//String accessKey = "6X3B526P5HqE6ums";
|
||||
//String accessSecret = "34e5fc32ac894a2ba2ade8c3852c7a0a";
|
||||
//String taxNo = "91330110MAC5FPUY2U";
|
||||
//Integer size = 50;
|
||||
@Resource
|
||||
private TaskExecutor taskExecutor;
|
||||
/**
|
||||
|
@ -83,9 +93,12 @@ public class IncomeInvoiceServiceImpl extends BaseService<IncomeInvoiceEntity, S
|
|||
@Override
|
||||
public JsonResultEntity getIncomeInvoiceData(JSONObject requestJson) {
|
||||
//1、调用token
|
||||
String access_token = getToken();
|
||||
if (access_token == null) {
|
||||
return BaseResult.getFailureMessageEntity("token获取失败");
|
||||
String access_token = "";
|
||||
if(flags){
|
||||
access_token = getToken();
|
||||
if (access_token == null) {
|
||||
return BaseResult.getFailureMessageEntity("token获取失败");
|
||||
}
|
||||
}
|
||||
Date date = new Date();
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
||||
|
@ -155,9 +168,9 @@ public class IncomeInvoiceServiceImpl extends BaseService<IncomeInvoiceEntity, S
|
|||
saveData.put("kpr",content.getString("kpr"));
|
||||
saveData.put("skr",content.getString("skr"));
|
||||
saveData.put("fhr",content.getString("fhr"));
|
||||
saveData.put("url",content.getString("url"));
|
||||
saveData.put("ofdurl",content.getString("ofdUrl"));
|
||||
saveData.put("xmlurl",content.getString("xmlUrl"));
|
||||
saveData.put("url",content.getOrDefault("url","http://prd-cabinet-1257122416.cos.ap-shanghai.myqcloud.com/recv-open-input-1313818348185971712-1362629996254053632.pdf"));
|
||||
saveData.put("ofdurl",content.getOrDefault("ofdUrl","http://prd-cabinet-1257122416.cos.ap-shanghai.myqcloud.com/recv-open-input-1313818348185971712-1362629996254053632.pdf"));
|
||||
saveData.put("xmlurl",content.getOrDefault("xmlUrl","http://prd-cabinet-1257122416.cos.ap-shanghai.myqcloud.com/recv-open-input-1313818348185971712-1362630000427386112.xml"));
|
||||
saveData.put("htbh",content.getString("contraceNumber"));
|
||||
|
||||
JSONArray detaildata = content.getJSONArray("items");
|
||||
|
@ -210,6 +223,8 @@ public class IncomeInvoiceServiceImpl extends BaseService<IncomeInvoiceEntity, S
|
|||
}
|
||||
}
|
||||
return BaseResult.getSuccessMessageEntity("处理成功");
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
|
@ -226,21 +241,26 @@ public class IncomeInvoiceServiceImpl extends BaseService<IncomeInvoiceEntity, S
|
|||
private void sendBusinessData(JSONArray datalist, String access_token, Integer queryCursor, String dataTime) {
|
||||
String url = dataUrl+access_token;
|
||||
JSONObject dayabody = new JSONObject();
|
||||
dayabody.put("accessKey",accessKey);
|
||||
long timestamp = System.currentTimeMillis();
|
||||
dayabody.put("timestamp",timestamp);
|
||||
|
||||
if(flags) {
|
||||
dayabody.put("accessKey",accessKey);
|
||||
dayabody.put("timestamp",timestamp);
|
||||
}
|
||||
JSONObject queryParams = new JSONObject();
|
||||
queryParams.put("page",queryCursor);
|
||||
queryParams.put("size",size);
|
||||
//queryParams.put("kprqq",dataTime);
|
||||
//queryParams.put("kprqz",dataTime);
|
||||
queryParams.put("kprqq",dataTime);
|
||||
queryParams.put("kprqz",dataTime);
|
||||
queryParams.put("taxNo",taxNo);
|
||||
dayabody.put("queryParams",queryParams);
|
||||
Map<String, Object> parametersMap = new HashMap<>();
|
||||
parametersMap.put("accessKey",accessKey);
|
||||
parametersMap.put("timestamp",timestamp);
|
||||
String a = YzfSignUtil.signRequest(parametersMap,accessSecret);
|
||||
dayabody.put("sign",a);
|
||||
if(flags) {
|
||||
Map<String, Object> parametersMap = new HashMap<>();
|
||||
parametersMap.put("accessKey",accessKey);
|
||||
parametersMap.put("timestamp",timestamp);
|
||||
String a = YzfSignUtil.signRequest(parametersMap,accessSecret);
|
||||
dayabody.put("sign",a);
|
||||
}
|
||||
Map<String, String> headers = new HashMap<>();
|
||||
headers.put("Content-Type", "application/json; charset=utf-8");
|
||||
String returndata = sendPost(url, headers, dayabody.toJSONString());
|
||||
|
@ -408,56 +428,6 @@ public class IncomeInvoiceServiceImpl extends BaseService<IncomeInvoiceEntity, S
|
|||
|
||||
return body.toString();
|
||||
}
|
||||
private String sendGet(String url, Map<String, String> headers) {
|
||||
SSLContext sslContext = null;
|
||||
try {
|
||||
sslContext = new SSLContextBuilder()
|
||||
.loadTrustMaterial(null, TrustAllStrategy.INSTANCE)
|
||||
.build();
|
||||
} catch (Exception e) {
|
||||
|
||||
}
|
||||
CloseableHttpClient closeableHttpClient = HttpClients.custom()
|
||||
.setSSLContext(sslContext)
|
||||
.setSSLHostnameVerifier(NoopHostnameVerifier.INSTANCE)
|
||||
.build();
|
||||
// HttpClient
|
||||
HttpGet get = new HttpGet(url);
|
||||
CloseableHttpResponse response = null;
|
||||
|
||||
RequestConfig requestConfig = RequestConfig.custom().setConnectTimeout(60000).build();
|
||||
get.setConfig(requestConfig);//设置请求参数【超时时间】
|
||||
if (headers != null && headers.size() > 0) {
|
||||
for (String key : headers.keySet()) {
|
||||
get.setHeader(key, headers.get(key));
|
||||
}
|
||||
}
|
||||
StringBuilder body = new StringBuilder();
|
||||
|
||||
try {
|
||||
response = closeableHttpClient.execute(get);
|
||||
HttpEntity entity = response.getEntity();
|
||||
body.append(EntityUtils.toString(entity,"UTF-8"));
|
||||
logger.info("返回结果:" + body);
|
||||
} catch (Exception e) {
|
||||
logger.error("请求错误:" + e.getMessage());
|
||||
body.append(e.getMessage());
|
||||
} finally {
|
||||
try {
|
||||
// 关闭响应对象
|
||||
if (response != null) {
|
||||
response.close();
|
||||
}
|
||||
// 关闭响应对象
|
||||
if (closeableHttpClient != null) {
|
||||
closeableHttpClient.close();
|
||||
}
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
return body.toString();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
|
@ -491,7 +461,9 @@ public class IncomeInvoiceServiceImpl extends BaseService<IncomeInvoiceEntity, S
|
|||
incomeInvoiceEntity.setField0127(jsonObject.getString("fpdm"));//发票代码
|
||||
incomeInvoiceEntity.setField0128(jsonObject.getString("fphm"));//发票号码
|
||||
incomeInvoiceEntity.setField0129(jsonObject.getString("jshj"));//发票总额
|
||||
incomeInvoiceEntity.setField0130(jsonObject.getString("fpwj"));//发票文件 todo
|
||||
incomeInvoiceEntity.setField0130(jsonObject.getString("url"));//发票文件
|
||||
incomeInvoiceEntity.setField0138(jsonObject.getString("ofdurl"));//发票文件
|
||||
incomeInvoiceEntity.setField0139(jsonObject.getString("xmlurl"));//发票文件
|
||||
List<IncomeInvoiceEntity> list = incomeInvoiceDao.queryOaZb(incomeInvoiceEntity);
|
||||
if(list != null && list.size() == 1){
|
||||
incomeInvoiceEntity.setFormmainId(list.get(0).getDataId());
|
||||
|
@ -542,7 +514,9 @@ public class IncomeInvoiceServiceImpl extends BaseService<IncomeInvoiceEntity, S
|
|||
stringBuffer.append("<column id=\"field0021\" type=\"0\" name=\"收款人\" isNullable=\"false\" length=\"100\"/>");
|
||||
stringBuffer.append("<column id=\"field0022\" type=\"0\" name=\"复核人\" isNullable=\"false\" length=\"100\"/>");
|
||||
stringBuffer.append("<column id=\"field0033\" type=\"0\" name=\"合同编号\" isNullable=\"false\" length=\"100\"/>");
|
||||
stringBuffer.append("<column id=\"field0034\" type=\"0\" name=\"发票文件\" isNullable=\"false\" length=\"20\"/>");
|
||||
stringBuffer.append("<column id=\"field0034\" type=\"0\" name=\"发票文件1\" isNullable=\"false\" length=\"20\"/>");
|
||||
stringBuffer.append("<column id=\"field0035\" type=\"0\" name=\"发票文件2\" isNullable=\"false\" length=\"20\"/>");
|
||||
stringBuffer.append("<column id=\"field0036\" type=\"0\" name=\"发票文件3\" isNullable=\"false\" length=\"20\"/>");
|
||||
stringBuffer.append("</definitions>");
|
||||
stringBuffer.append("<values>");
|
||||
|
||||
|
@ -634,8 +608,19 @@ public class IncomeInvoiceServiceImpl extends BaseService<IncomeInvoiceEntity, S
|
|||
stringBuffer.append(jsonObject.getString("htbm") != null?"<![CDATA["+jsonObject.getString("htbm")+"]]>":"");
|
||||
stringBuffer.append("</value>").append("</column>");
|
||||
|
||||
stringBuffer.append("<column name=\"发票文件\">").append("<value>");
|
||||
stringBuffer.append(jsonObject.getString("fpwj") != null?"<![CDATA["+jsonObject.getString("url")+"]]>":"");
|
||||
stringBuffer.append("<column name=\"发票文件1\">").append("<value>");
|
||||
//stringBuffer.append(jsonObject.getString("url") != null?"<![CDATA["+jsonObject.getString("url")+"]]>":"");
|
||||
stringBuffer.append("");
|
||||
stringBuffer.append("</value>").append("</column>");
|
||||
|
||||
stringBuffer.append("<column name=\"发票文件2\">").append("<value>");
|
||||
//stringBuffer.append(jsonObject.getString("ofdurl") != null?"<![CDATA["+jsonObject.getString("ofdurl")+"]]>":"");
|
||||
stringBuffer.append("");
|
||||
stringBuffer.append("</value>").append("</column>");
|
||||
|
||||
stringBuffer.append("<column name=\"发票文件3\">").append("<value>");
|
||||
//stringBuffer.append(jsonObject.getString("xmlurl") != null?"<![CDATA["+jsonObject.getString("xmlurl")+"]]>":"");
|
||||
stringBuffer.append("");
|
||||
stringBuffer.append("</value>").append("</column>");
|
||||
|
||||
|
||||
|
@ -798,10 +783,14 @@ public class IncomeInvoiceServiceImpl extends BaseService<IncomeInvoiceEntity, S
|
|||
* @return com.hzya.frame.web.entity.JsonResultEntity
|
||||
**/
|
||||
private JsonResultEntity sendFinancialReport(String ztbm ,String cjzq,String rwbm) {
|
||||
String access_token = getToken();
|
||||
if (access_token == null) {
|
||||
return BaseResult.getFailureMessageEntity("token获取失败");
|
||||
String access_token = "";
|
||||
if(flags){
|
||||
access_token = getToken();
|
||||
if (access_token == null) {
|
||||
return BaseResult.getFailureMessageEntity("token获取失败");
|
||||
}
|
||||
}
|
||||
|
||||
String url = cbUrl+access_token;
|
||||
|
||||
Date date = null;
|
||||
|
@ -869,9 +858,12 @@ public class IncomeInvoiceServiceImpl extends BaseService<IncomeInvoiceEntity, S
|
|||
}
|
||||
//拼接数据
|
||||
JSONObject sendData = new JSONObject();
|
||||
sendData.put("accessKey",accessKey);
|
||||
long timestamp = System.currentTimeMillis();
|
||||
sendData.put("timestamp",timestamp);
|
||||
|
||||
if(flags){
|
||||
sendData.put("accessKey",accessKey);
|
||||
sendData.put("timestamp",timestamp);
|
||||
}
|
||||
sendData.put("taskNo",rwbm);
|
||||
sendData.put("period",cjzq);
|
||||
|
||||
|
@ -1023,9 +1015,10 @@ public class IncomeInvoiceServiceImpl extends BaseService<IncomeInvoiceEntity, S
|
|||
reportList.add(xjll);
|
||||
|
||||
sendData.put("reportList",reportList);
|
||||
String a = YzfSignUtil.signRequest(sendData,accessSecret);
|
||||
sendData.put("sign",a);
|
||||
|
||||
if(flags) {
|
||||
String a = YzfSignUtil.signRequest(sendData,accessSecret);
|
||||
sendData.put("sign",a);
|
||||
}
|
||||
Map<String, String> headers = new HashMap<>();
|
||||
headers.put("Content-Type", "application/json; charset=utf-8");
|
||||
String returndata = sendPost(url, headers, sendData.toJSONString());
|
||||
|
|
69
pom.xml
69
pom.xml
|
@ -125,6 +125,11 @@
|
|||
<artifactId>httpclient</artifactId>
|
||||
<version>${httpclient.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.httpcomponents</groupId>
|
||||
<artifactId>httpmime</artifactId>
|
||||
<version>4.5.13</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-cache</artifactId>
|
||||
|
@ -417,6 +422,16 @@
|
|||
<artifactId>alibaba-dingtalk-service-sdk</artifactId>
|
||||
<version>2.0.0</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>commons-net</groupId>
|
||||
<artifactId>commons-net</artifactId>
|
||||
<version>3.8.0</version> <!-- 这里的版本号可根据实际情况修改 -->
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.jcraft</groupId>
|
||||
<artifactId>jsch</artifactId>
|
||||
<version>0.1.53</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
|
@ -467,33 +482,33 @@
|
|||
<artifactId>maven-war-plugin</artifactId>
|
||||
<configuration>
|
||||
<webResources>
|
||||
<resource>
|
||||
<directory>${basedir}/../base-service/src/main/webapp/WEB-INF/lib</directory>
|
||||
<targetPath>WEB-INF/lib/</targetPath>
|
||||
<filtering>false</filtering>
|
||||
<includes>
|
||||
<!-- 匹配所有jar包 -->
|
||||
<include>**/*.jar</include>
|
||||
</includes>
|
||||
</resource>
|
||||
<resource>
|
||||
<directory>${basedir}/../fw-bip/src/main/webapp/WEB-INF/lib</directory>
|
||||
<targetPath>WEB-INF/lib/</targetPath>
|
||||
<filtering>false</filtering>
|
||||
<includes>
|
||||
<!-- 匹配所有jar包 -->
|
||||
<include>**/*.jar</include>
|
||||
</includes>
|
||||
</resource>
|
||||
<resource>
|
||||
<directory>${basedir}/../fw-ningbobank/src/main/webapp/WEB-INF/lib</directory>
|
||||
<targetPath>WEB-INF/lib/</targetPath>
|
||||
<filtering>false</filtering>
|
||||
<includes>
|
||||
<!-- 匹配所有jar包 -->
|
||||
<include>**/*.jar</include>
|
||||
</includes>
|
||||
</resource>
|
||||
<!-- <resource>-->
|
||||
<!-- <directory>${basedir}/../base-service/src/main/webapp/WEB-INF/lib</directory>-->
|
||||
<!-- <targetPath>WEB-INF/lib/</targetPath>-->
|
||||
<!-- <filtering>false</filtering>-->
|
||||
<!-- <includes>-->
|
||||
<!-- <!– 匹配所有jar包 –>-->
|
||||
<!-- <include>**/*.jar</include>-->
|
||||
<!-- </includes>-->
|
||||
<!-- </resource>-->
|
||||
<!-- <resource>-->
|
||||
<!-- <directory>${basedir}/../fw-bip/src/main/webapp/WEB-INF/lib</directory>-->
|
||||
<!-- <targetPath>WEB-INF/lib/</targetPath>-->
|
||||
<!-- <filtering>false</filtering>-->
|
||||
<!-- <includes>-->
|
||||
<!-- <!– 匹配所有jar包 –>-->
|
||||
<!-- <include>**/*.jar</include>-->
|
||||
<!-- </includes>-->
|
||||
<!-- </resource>-->
|
||||
<!-- <resource>-->
|
||||
<!-- <directory>${basedir}/../fw-ningbobank/src/main/webapp/WEB-INF/lib</directory>-->
|
||||
<!-- <targetPath>WEB-INF/lib/</targetPath>-->
|
||||
<!-- <filtering>false</filtering>-->
|
||||
<!-- <includes>-->
|
||||
<!-- <!– 匹配所有jar包 –>-->
|
||||
<!-- <include>**/*.jar</include>-->
|
||||
<!-- </includes>-->
|
||||
<!-- </resource>-->
|
||||
</webResources>
|
||||
</configuration>
|
||||
</plugin>
|
||||
|
|
Loading…
Reference in New Issue