|
@@ -123,4 +123,166 @@ public class BankTransactionServiceImpl implements BankTransactionService {
|
|
|
InquiryOfWithholdingInstructionDetailsResp resp = (InquiryOfWithholdingInstructionDetailsResp) bankUtil.bankRequst(param, 0, InquiryOfWithholdingInstructionDetailsResp.class);
|
|
|
return resp;
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public CurrentAccountHistoricalBalanceQueryResp currentAccountHistoricalBalance(BankQueryBaseParam<CurrentAccountHistoricalBalanceQueryParam> param) {
|
|
|
+ CurrentAccountHistoricalBalanceQueryResp historicalBalanceQueryResp =(CurrentAccountHistoricalBalanceQueryResp) bankUtil.bankRequst(param, 1, CurrentAccountHistoricalBalanceQueryResp.class);
|
|
|
+ log.info("CurrentAccountHistoricalBalanceQueryResp {}",historicalBalanceQueryResp);
|
|
|
+ return historicalBalanceQueryResp;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public TransactionOrderStatusQueryResp transactionOrderStatus(BankQueryBaseParam<TransactionOrderStatusQueryParam> param) {
|
|
|
+ TransactionOrderStatusQueryResp transactionOrderStatus =(TransactionOrderStatusQueryResp) bankUtil.bankRequst(param, 0, TransactionOrderStatusQueryResp.class);
|
|
|
+ log.info("TransactionOrderStatusQueryResp {}",transactionOrderStatus);
|
|
|
+ return transactionOrderStatus;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public TransferTransactionInstructionQueryResp transferTransactionInstruction(BankQueryBaseParam<TransferTransactionInstructionQueryParam> param) {
|
|
|
+ TransferTransactionInstructionQueryResp transferTransactionInstruction =(TransferTransactionInstructionQueryResp) bankUtil.bankRequst(param, 0, TransferTransactionInstructionQueryResp.class);
|
|
|
+ log.info("TransferTransactionInstructionQueryResp {}",transferTransactionInstruction);
|
|
|
+ return transferTransactionInstruction;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public SingleTransferInstructionQueryResp singleTransferInstruction(BankQueryBaseParam<SingleTransferInstructionQueryParam> param) {
|
|
|
+ SingleTransferInstructionQueryResp resp =(SingleTransferInstructionQueryResp) bankUtil.bankRequst(param, 0, SingleTransferInstructionQueryResp.class);
|
|
|
+ log.info("SingleTransferInstructionQueryResp {}",resp);
|
|
|
+ return resp;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public ReimbursementInstructionResp reimbursementInstruction(BankQueryBaseParam<ReimbursementInstructionQureyParam> param) {
|
|
|
+ ReimbursementInstructionResp resp =(ReimbursementInstructionResp) bankUtil.bankRequst(param, 0, ReimbursementInstructionResp.class);
|
|
|
+ log.info("ReimbursementInstructionResp {}",resp);
|
|
|
+ return resp;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public InterbankNumberInformationResp interbankNumberInformation(BankQueryBaseParam<InterbankNumberInformationParam> param) {
|
|
|
+ InterbankNumberInformationResp resp =(InterbankNumberInformationResp) bankUtil.bankRequst(param, 0, InterbankNumberInformationResp.class);
|
|
|
+ return resp;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public BankUserAndParam getBankQueryBaseParam(RequestTransferForm form) {
|
|
|
+ String pwd = form.getPassword();
|
|
|
+ String account = form.getAccount();
|
|
|
+ BUser user = bUserService.getByAccount(account);
|
|
|
+
|
|
|
+ if (user == null){
|
|
|
+ throw new GlobalException("用户或密码错误");
|
|
|
+ }
|
|
|
+ if (!passwordEncoder.matches(pwd,user.getPassword())){
|
|
|
+ throw new GlobalException("用户或密码错误");
|
|
|
+ }
|
|
|
+
|
|
|
+ BankUserAndParam userAndParam = bankUserAndParam(user);
|
|
|
+ return userAndParam;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public BankUserAndParam getBankQueryBaseParam(Integer type, Long guid) {
|
|
|
+ if(type == null){
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+ Long userGuid = null;
|
|
|
+ String userId = null;
|
|
|
+ String serviceId = null;
|
|
|
+ String chaSerialNo = null;
|
|
|
+ String entSerialNo = null;
|
|
|
+ String reqTime = null;
|
|
|
+ String sessionId = null;
|
|
|
+ String opMethod = null;
|
|
|
+ if (type == 1){
|
|
|
+ BTransferDetailRequest detailRequest = getDetailRequest(guid);
|
|
|
+ userGuid = detailRequest.getFkUserId();
|
|
|
+ userId = detailRequest.getUserId();
|
|
|
+ serviceId = detailRequest.getServiceId();
|
|
|
+ chaSerialNo = detailRequest.getChaSerialNo();
|
|
|
+ entSerialNo = detailRequest.getEntSerialNo();
|
|
|
+ reqTime = detailRequest.getReqTime();
|
|
|
+ sessionId = detailRequest.getSessionId();
|
|
|
+ }else if (type == 2){
|
|
|
+ BTransferFarmerRequest request = getFarmerRequest(guid);
|
|
|
+ userGuid = request.getFkUserId();
|
|
|
+ userId = request.getUserId();
|
|
|
+ serviceId = request.getServiceId();
|
|
|
+ chaSerialNo = request.getChaSerialNo();
|
|
|
+ entSerialNo = request.getEntSerialNo();
|
|
|
+ reqTime = request.getReqTime();
|
|
|
+ sessionId = request.getSessionId();
|
|
|
+ opMethod = request.getOpMethod();
|
|
|
+ }else {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+ if (userGuid == null|| userId == null){
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+ BUser user = bUserService.get(userGuid);
|
|
|
+ BankUserAndParam userAndParam = bankUserAndParam(user);
|
|
|
+ userAndParam.setServiceId(serviceId);
|
|
|
+ userAndParam.setChaSerialNo(chaSerialNo);
|
|
|
+ userAndParam.setEntSerialNo(entSerialNo);
|
|
|
+ userAndParam.setReqTime(reqTime);
|
|
|
+ userAndParam.setSessionId(sessionId);
|
|
|
+ return userAndParam;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public BTransferFarmerRequest getFarmerRequest(Long guid) {
|
|
|
+ if (guid == null){
|
|
|
+ return new BTransferFarmerRequest();
|
|
|
+ }
|
|
|
+ BTransferFarmerRequestExample example = new BTransferFarmerRequestExample();
|
|
|
+ BTransferFarmerRequestExample.Criteria criteria = example.createCriteria();
|
|
|
+ criteria.andFkTransferIdEqualTo(guid);
|
|
|
+ List<BTransferFarmerRequest> requests = farmerRequestMapper.selectByExample(example);
|
|
|
+ if (requests != null&&requests.size()>0){
|
|
|
+ return requests.get(0);
|
|
|
+ }
|
|
|
+ return new BTransferFarmerRequest();
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public BTransferDetailRequest getDetailRequest(Long guid) {
|
|
|
+ if (guid == null){
|
|
|
+ return new BTransferDetailRequest();
|
|
|
+ }
|
|
|
+ BTransferDetailRequestExample example = new BTransferDetailRequestExample();
|
|
|
+ BTransferDetailRequestExample.Criteria criteria = example.createCriteria();
|
|
|
+ criteria.andFkTransferDetailIdEqualTo(guid);
|
|
|
+ List<BTransferDetailRequest> requests = detailRequestMapper.selectByExample(example);
|
|
|
+ if (requests != null && requests.size() >0){
|
|
|
+ return requests.get(0);
|
|
|
+ }
|
|
|
+ return new BTransferDetailRequest();
|
|
|
+ }
|
|
|
+
|
|
|
+ public BankUserAndParam bankUserAndParam(BUser user){
|
|
|
+
|
|
|
+ BankLoginUserRespBO userRespBO = bankUserService.getSessionId(user);
|
|
|
+ if (userRespBO == null || StringUtils.isEmpty(userRespBO.getSessionId())){
|
|
|
+ throw new GlobalException(ResultEnum.SYS_ERROR);
|
|
|
+ }
|
|
|
+ String num = BankNoUtial.NextOrderNo();
|
|
|
+ String time = bankUtil.getTime(new Date());
|
|
|
+ String sessionId = userRespBO.getSessionId();
|
|
|
+
|
|
|
+ BankQueryBaseParam paramReq = new BankQueryBaseParam();
|
|
|
+ paramReq.setReqTime(time);
|
|
|
+ paramReq.setSessionId(sessionId);
|
|
|
+ paramReq.setSerialNo(num);
|
|
|
+
|
|
|
+ BankUserAndParam userAndParam = new BankUserAndParam();
|
|
|
+ userAndParam.setUser(user);
|
|
|
+ userAndParam.setParam(paramReq);
|
|
|
+
|
|
|
+ return userAndParam;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
}
|