diff --git a/service/pom.xml b/service/pom.xml index d47eef74..6287f4e7 100644 --- a/service/pom.xml +++ b/service/pom.xml @@ -51,6 +51,13 @@ system ${basedir}/src/main/resources/lib/DataApiSdk-jar-with-dependencies.jar + + com.hzya.openBasicSDK + openBasicSDK + 1 + system + ${basedir}/src/main/resources/lib/openBasicSDK-2.1.230630.jar + diff --git a/service/src/main/java/com/hzya/frame/ningboBankTreasury/entity/NingboBankTreasuryEntity.java b/service/src/main/java/com/hzya/frame/ningboBankTreasury/entity/NingboBankTreasuryEntity.java new file mode 100644 index 00000000..aa72daf7 --- /dev/null +++ b/service/src/main/java/com/hzya/frame/ningboBankTreasury/entity/NingboBankTreasuryEntity.java @@ -0,0 +1,9 @@ +package com.hzya.frame.ningboBankTreasury.entity; + +import com.hzya.frame.web.entity.BaseEntity; + + +public class NingboBankTreasuryEntity extends BaseEntity { + +} + diff --git a/service/src/main/java/com/hzya/frame/ningboBankTreasury/service/INingboBankTreasuryService.java b/service/src/main/java/com/hzya/frame/ningboBankTreasury/service/INingboBankTreasuryService.java new file mode 100644 index 00000000..3db014fa --- /dev/null +++ b/service/src/main/java/com/hzya/frame/ningboBankTreasury/service/INingboBankTreasuryService.java @@ -0,0 +1,28 @@ +package com.hzya.frame.ningboBankTreasury.service; + +import com.alibaba.fastjson.JSONObject; +import com.hzya.frame.sysnew.application.entity.SysExtensionApiEntity; +import com.hzya.frame.web.entity.JsonResultEntity; + +public interface INingboBankTreasuryService { + + + + /** + * @Author lvleigang + * @Description 单笔查证接口 + * @Date 4:45 下午 2024/7/9 + * @param jsonObject + * @return com.hzya.frame.web.entity.JsonResultEntity + **/ + JsonResultEntity sendNbBank(JSONObject jsonObject); + + /** + * + * @content 此方法获取初始化参数,拼接请求参数 + * @author laborer + * @date 2024/5/27 0027 11:38 + * + */ + SysExtensionApiEntity doChangeData(SysExtensionApiEntity entity); +} diff --git a/service/src/main/java/com/hzya/frame/ningboBankTreasury/service/impl/NingboBankTreasuryServiceImpl.java b/service/src/main/java/com/hzya/frame/ningboBankTreasury/service/impl/NingboBankTreasuryServiceImpl.java new file mode 100644 index 00000000..d90dc8f0 --- /dev/null +++ b/service/src/main/java/com/hzya/frame/ningboBankTreasury/service/impl/NingboBankTreasuryServiceImpl.java @@ -0,0 +1,142 @@ +package com.hzya.frame.ningboBankTreasury.service.impl; + +import com.alibaba.fastjson.JSONObject; +import com.hzya.frame.bip.v3.v2207.dps.service.impl.PayMentServiceImpl; +import com.hzya.frame.ningboBankTreasury.service.INingboBankTreasuryService; +import com.hzya.frame.sysnew.application.entity.SysExtensionApiEntity; +import com.hzya.frame.sysnew.application.plugin.entity.SysApplicationPluginEntity; +import com.hzya.frame.util.bipV3.SHA256Util; +import com.hzya.frame.web.entity.BaseResult; +import com.hzya.frame.web.entity.JsonResultEntity; +import com.nbcb.sdk.OpenSDK; +import com.nbcb.sdk.aes.exception.SDKException; +import com.nbcb.sdk.aes.param.ConfigParam; +import org.apache.commons.lang3.StringUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.stereotype.Service; + +import java.util.HashMap; +import java.util.Map; + + +@Service(value = "ningboBankTreasuryServiceImpl") +public class NingboBankTreasuryServiceImpl implements INingboBankTreasuryService { + private static final Logger logger = LoggerFactory.getLogger(NingboBankTreasuryServiceImpl.class); + + + /** + * @param jsonObject + * @return com.hzya.frame.web.entity.JsonResultEntity + * @Author lvleigang + * @Description 单笔查证接口 + * @Date 4:45 下午 2024/7/9 + **/ + @Override + public JsonResultEntity sendNbBank(JSONObject jsonObject) { + JSONObject entity = getstrObj("jsonStr", jsonObject); + String dataJson = entity.getString("Data"); + String appKey = entity.getString("appKey"); + String privateKey = entity.getString("privateKey"); + String publicUrl = entity.getString("publicUrl"); + String publicKey = entity.getString("publicKey"); + String productID = entity.getString("productID"); + String serviceID = entity.getString("serviceID"); + //初始化宁波银行OpenSDK + try { + ConfigParam configParam = new ConfigParam(privateKey,publicUrl,appKey,publicKey,10000,20000); + OpenSDK.dynamicInit(configParam,true); + } catch (SDKException e) { + logger.error("初始化宁波银行OpenSDK错误:{}",e.getMessage()); + return BaseResult.getFailureMessageEntity("初始化宁波银行OpenSDK错误"); + } + //发送数据 + try { + String returnData = OpenSDK.send(productID,serviceID,dataJson.replace(" ","")); + //String returnData = OpenSDK.send(productID,serviceID,dataJson); + if(returnData == null || "".equals(returnData)){ + return BaseResult.getFailureMessageEntity("发送宁波银行OpenSDK返回错误"); + } + try { + JSONObject returnJson = JSONObject.parseObject(returnData); + JSONObject retData = returnJson.getJSONObject("Data"); + String retCode = retData.getString("retCode"); + if(retCode != null && "0000".equals(retCode)){ + return BaseResult.getSuccessMessageEntity("发送宁波银行成功",returnJson); + }else { + return BaseResult.getFailureMessageEntity("发送宁波银行错误",returnJson); + } + } catch (Exception e) { + return BaseResult.getFailureMessageEntity("发送宁波银行OpenSDK返回转换Json错误"); + } + } catch (Exception e) { + logger.error("发送宁波银行OpenSDK错误:{}",e.getMessage()); + return BaseResult.getFailureMessageEntity("发送宁波银行OpenSDK错误"); + } + } + + /** + * @param entity + * @content 此方法获取初始化参数,拼接请求参数 + * @author laborer + * @date 2024/5/27 0027 11:38 + */ + @Override + public SysExtensionApiEntity doChangeData(SysExtensionApiEntity entity) { + try { + if(entity == null ){ + return entity; + } + Map returnHeaders = new HashMap<>(); + JSONObject returnDataData = new JSONObject(); + JSONObject returnData = new JSONObject(); + Map headers = entity.getHeaders(); + String bodys = entity.getBodys(); + JSONObject data = JSONObject.parseObject(bodys); + + //先处理转发请求header + returnHeaders.put("yatl",headers.get("yatl")); + returnHeaders.put("yadj",headers.get("yadj")); + + returnDataData.put("appKey",headers.get("appKey")); + returnDataData.put("privateKey",headers.get("privateKey")); + returnDataData.put("publicUrl",headers.get("publicUrl")); + returnDataData.put("publicKey",headers.get("publicKey")); + returnDataData.put("productID",headers.get("productID")); + returnDataData.put("serviceID",headers.get("serviceID")); + data.put("custId",headers.get("custId")); + returnData.put("Data",data); + returnDataData.put("Data",returnData); + entity.setHeaders(returnHeaders); + entity.setBodys(returnDataData.toJSONString()); + } catch (Exception e) { + //发送内部处理方法错误 + logger.error("宁波银行内部转换接口错误:{}",e.getMessage()); + } + return entity; + } + + + + + public JSONObject getstrObj(String key, JSONObject object) { + if (checkStr(object.getString(key)) ) { + return object.getJSONObject(key); + } + return new JSONObject(); + } + /** + * @param str + * @return void + * @Author lvleigang + * @Description 校验字符串 + * @Date 11:41 上午 2022/12/7 + **/ + protected Boolean checkStr(String str) { + Boolean flag = true; + if (str == null || "".equals(str)) { + flag = false; + } + return flag; + } +} diff --git a/service/src/main/java/com/hzya/frame/sysnew/application/service/impl/SysApplicationServiceImpl.java b/service/src/main/java/com/hzya/frame/sysnew/application/service/impl/SysApplicationServiceImpl.java index d6f85b69..dcbab68a 100644 --- a/service/src/main/java/com/hzya/frame/sysnew/application/service/impl/SysApplicationServiceImpl.java +++ b/service/src/main/java/com/hzya/frame/sysnew/application/service/impl/SysApplicationServiceImpl.java @@ -587,6 +587,7 @@ public class SysApplicationServiceImpl extends BaseService and a.id like concat('%',#{id},'%') - and a.organ_id like concat('%',#{organId},'%') + and a.organ_id = #{organId} and a.person_code like concat('%',#{personCode},'%') and a.person_name like concat('%',#{personName},'%') and a.sex like concat('%',#{sex},'%') diff --git a/service/src/main/resources/lib/openBasicSDK-2.1.230630.jar b/service/src/main/resources/lib/openBasicSDK-2.1.230630.jar new file mode 100644 index 00000000..e7e5ce1b Binary files /dev/null and b/service/src/main/resources/lib/openBasicSDK-2.1.230630.jar differ