| 
					
				 | 
			
			
				@ -11,8 +11,11 @@ import com.yihu.jw.util.common.QrcodeUtil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.jw.utils.ByteToInputStream; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.ylzinfo.onepay.sdk.HisOnepayClient; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.ylzinfo.onepay.sdk.OnepayClient; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.ylzinfo.onepay.sdk.OnepayDefaultClient; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.ylzinfo.onepay.sdk.domain.RequestParams; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.ylzinfo.onepay.sdk.domain.ResponseParams; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.ylzinfo.onepay.sdk.domain.ext.*; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.ylzinfo.onepay.sdk.utils.DateUtil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.apache.commons.collections.map.HashedMap; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.apache.commons.lang3.StringUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.beans.factory.annotation.Autowired; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -560,4 +563,91 @@ public class YlzPayService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//============================================预交金充值 end====================================================== 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 查看线上结算记录 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param cardNo 卡号,多个按逗号隔开 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param beginDate 开始时间(可空) yyyyMMdd:20200818 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param endDate 结束时间(可空) yyyyMMdd:20200818 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param queryType online:(不为空)记录明细一起返回,下面两个参数的合体;onlineRecord:查询结算记录 onlineRecordDetail:查询结算明细 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param billSn    当 queryType = onlineRecordDetail billsn和traceno必有值 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param traceNo 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param pageNo 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @param pageSize 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String querySettledRecord(String cardNo,String beginDate,String endDate,String queryType,String billSn,String traceNo,String pageNo,String pageSize ){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Boolean isSuccess = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String jsonObject = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String error = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        RequestParams requestParams = new RequestParams(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        OauthYlzConfigDO oauthYlzConfigDO = oauthYlzConfigDao.findById("ylz_pay_config"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if(oauthYlzConfigDO==null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            return "未找到支付配置文件"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String appId = oauthYlzConfigDO.getAppId(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String appSecret = oauthYlzConfigDO.getAppKey(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String onepayUrl = oauthYlzConfigDO.getUrl(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String signType=oauthYlzConfigDO.getSignType(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String encryptType = oauthYlzConfigDO.getEncType(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        requestParams.setAppId(appId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        requestParams.setTimestamp(DateUtil.getCurrentDateTime()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        requestParams.setSignType(signType); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        requestParams.setEncryptType(encryptType); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        requestParams.setTimestamp(DateUtil.getCurrentDateTime()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //分页参数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if(StringUtils.isNotBlank(queryType)&&"online".equalsIgnoreCase(queryType)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            JSONObject pageParam = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            pageParam.put("pageNo",pageNo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            pageParam.put("pageSize",pageSize); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            requestParams.setPageParam(pageParam); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        JSONObject params = new JSONObject(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isBlank(cardNo)||StringUtils.isBlank(queryType)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            return "cardNo或者queryType不能为空"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (queryType.equalsIgnoreCase("onlineRecordDetail")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if(StringUtils.isBlank(billSn)||StringUtils.isBlank(traceNo)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                return "billSn和traceNo不能为空"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        params.put("cardNo",cardNo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        params.put("queryType",queryType); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNotBlank(beginDate)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            params.put("beginDate",beginDate); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        }if (StringUtils.isNotBlank(endDate)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            params.put("endDate",endDate); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNotBlank(billSn)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            params.put("billSn",billSn); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (StringUtils.isNotBlank(traceNo)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            params.put("traceNo",traceNo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        requestParams.setParam(params); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        requestParams.setTransType("hop.query.settle"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        OnepayDefaultClient onepayClient = new OnepayDefaultClient(onepayUrl, appId, appSecret, signType, encryptType); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        ResponseParams<JSONObject> respnse = onepayClient.execute(requestParams); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if (respnse.getRespCode().equals("000000")){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            jsonObject = JSON.toJSONString(respnse); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        }else { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            isSuccess = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            jsonObject = JSON.toJSONString(respnse); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            error = "请求失败,返回结果:" + respnse.getRespCode() + "," + respnse.getRespMsg(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } catch (Exception e) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            e.printStackTrace(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            isSuccess = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            StringWriter sw = new StringWriter(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            PrintWriter pw = new PrintWriter(sw); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            e.printStackTrace(pw); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            error = sw.toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        logService.saveHttpLog(isSuccess, "hop.trade.query", "查看线上结算记录", "POST", null,JSON.toJSONString(requestParams), jsonObject, error,logService.shoppatType); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return jsonObject; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				} 
			 |