| 
					
				 | 
			
			
				@ -1,18 +1,11 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				package com.yihu.wlyy.service.service.prescription; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.alibaba.fastjson.JSONObject; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.alibaba.fastjson.serializer.SerializerFeature; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.fasterxml.jackson.databind.ObjectMapper; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.wlyy.service.common.SystemConfig; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.wlyy.service.common.http.HttpApiException; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.wlyy.service.common.util.StringUtil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.wlyy.service.common.util.WebserviceUtil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.wlyy.service.service.LogService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.wlyy.service.service.ZysoftApi; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.yihu.wlyy.service.service.ZysoftBaseService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import com.zoe.phip.ssp.sdk.ApiException; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.beans.factory.annotation.Autowired; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import org.springframework.stereotype.Service; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import java.io.PrintWriter; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import java.io.StringWriter; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -20,48 +13,12 @@ import java.util.HashMap; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import java.util.Map; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				import java.util.UUID; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				/** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 * Created by hzp on 2017-07-31 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 * 长处方CA认证服务 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 * Created by ${liuwenbin} on 2017/8/28. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				@Service 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				public class PrescriptionCAService extends ZysoftBaseService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private String IS_APPLIED="XMCAF_SOFT_judgeRealNameSoftCertIsApplied"; //判断实名软证书是否已申请 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private String REQUEST_SIGN = "XMCAF_SOFT_requestRealNameSoftCertAndSign";//请求实名软证书并进行数字签名 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private String EXPIRED_DATETIME = "XMCAF_SOFT_getRealNameSoftCertExpiredDatetime"; //获取实名软证书的过期时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private String MODIFY_PASSWD = "XMCAF_SOFT_ModifyRealNameSoftCertCalledPasswd"; //修改实名软证书调用保护口令 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private String VERIFY_SIGN = "XMCA3_JMSVR_verifySignOnMultiServer"; //验证签名(带多服务器负载均衡) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private String unifiedCallInterface = "XMCA6_UnifiedCallInterface"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private LogService logService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    @Autowired 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private ObjectMapper objectMapper; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				public interface PrescriptionCAService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private String getHeaderXml(String api,String srcBusinessStreamNO,String srcRequestStreamNO) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            "<root>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            "   <serverName>"+api+"</serverName>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            "   <format>xml</format>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            "   <callOperator></callOperator>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            "   <certificate></certificate>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            "   <srcIP>10.95.22.10</srcIP >\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            "   <srcUserMac>00:50:56:85:39:82</srcUserMac>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            "   <srcSystemCode>1</srcSystemCode>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            "   <srcSystemName>厦门i健康</srcSystemName>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            "   <srcBusinessNodeCode>node01</srcBusinessNodeCode>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            "   <srcBusinessNodeName>审核</srcBusinessNodeName>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            "   <srcOperatorAccount>"+srcBusinessStreamNO+"</srcOperatorAccount>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            "   <srcBusinessStreamNO>"+srcBusinessStreamNO+"</srcBusinessStreamNO>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            "   <srcRequestStreamNO>"+srcRequestStreamNO+"</srcRequestStreamNO>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            "   <srcDataExtProperty></srcDataExtProperty>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            "</root>"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//    String getHeaderXml(String api,String srcBusinessStreamNO,String srcRequestStreamNO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 生产环境 智业CA接口二次封装 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@ -71,432 +28,36 @@ public class PrescriptionCAService extends ZysoftBaseService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * @throws Exception 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String postZyCaServer(String api, Map<String,String> params,String srcBusinessStreamNO,String content) throws Exception{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String msgBody = "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                "<root>\n"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if(params!=null && params.size()>0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for(String key : params.keySet()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                msgBody += "    <"+key+">"+params.get(key)+"</"+key+">\n"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        msgBody += "</root>"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String srcRequestStreamNO = UUID.randomUUID().toString().replace("-", ""); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String msgHeader = getHeaderXml(api,srcBusinessStreamNO,srcRequestStreamNO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        System.out.println("msgHerder:"+msgHeader); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        System.out.println("msgBody:"+msgBody); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String re = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String,String> paramsList = new HashMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        paramsList.put("msgHeader",msgHeader); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        paramsList.put("msgBody",msgBody); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //新增日志 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String method = "POST"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Boolean isSuccess = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String error = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        int times = 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            re = ZysoftApi.getSingleton().post(ca_url, paramsList, null,true); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            re = ZysoftApi.getSingleton().capost(paramsList, null,true); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            System.out.println("re=====>:"+re); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            Map<String,String> map = objectMapper.readValue(re,Map.class); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            String code = map.get("CODE"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				// 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            if(!code.equals("1")) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                throw new HttpApiException(Integer.valueOf(code),map.get("MESSAGE")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //保存http日志 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            logService.saveHttpLog(isSuccess,api,content,method,msgHeader,msgBody,re,error); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        catch (Exception ex) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            StringWriter sw = new StringWriter(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            PrintWriter pw = new PrintWriter(sw); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            ex.printStackTrace(pw); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            System.out.println("error1:"+ex.getMessage()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            error = sw.toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            System.out.println("error2:"+error); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //保存http日志 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            logService.saveHttpLog(isSuccess,api,content,method,msgHeader,msgBody,re,error); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if(ex instanceof ApiException) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                ApiException apiEx = (ApiException) ex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                System.out.println("error3:"+ex.getMessage()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                throw new HttpApiException(apiEx.errorCode(),ex.getMessage()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                System.out.println("error4:"+ex.getMessage()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                throw new HttpApiException(-1,ex.getMessage()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return re; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//    public String postZyCaServer(String api, Map<String,String> params, String srcBusinessStreamNO, String content) throws Exception; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 测试环境:CA认证服务二次封装 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    private String postCAServer(String api, Map<String,String> params,String srcBusinessStreamNO) throws Exception 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String urlString = SystemConfig.sysPropertiesSets.get("ca_url"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String namespace = SystemConfig.sysPropertiesSets.get("ca_namespace"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String msgBody = "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                         "<root>\n"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if(params!=null && params.size()>0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            for(String key : params.keySet()) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                msgBody += "    <"+key+">"+params.get(key)+"</"+key+">\n"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        msgBody += "</root>"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String srcRequestStreamNO = UUID.randomUUID().toString().replace("-", ""); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String msgHeader = getHeaderXml(api,srcBusinessStreamNO,srcRequestStreamNO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Map<String,String> p = new HashMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        p.put("msgHeader",msgHeader); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        p.put("msgBody",msgBody); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return WebserviceUtil.post(urlString,namespace,unifiedCallInterface,p); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 判断是否有实名证书 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     **/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String isApplied(String strUserIdcardNum,String srcBusinessStreamNO)  throws Exception 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Boolean isSuccess = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String re = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String body = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String error = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String action = IS_APPLIED; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Map<String,String> params = new HashMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            params.put("strUserIdcardNum",strUserIdcardNum); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            body = objectMapper.writeValueAsString(params); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            re = postCAServer(action, params,srcBusinessStreamNO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //生产环境,调用智业统一平台接口,rest接口 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            re = postZyCaServer(action, params,srcBusinessStreamNO,"判断是否有实名证书"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if(StringUtil.isEmpty(re)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                throw new Exception("返回为空!"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if(re.startsWith("error")) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    throw new Exception(re); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        catch (Exception ex) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            isSuccess = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            ex.printStackTrace(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            error = ex.getMessage(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //保存http日志 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        logService.saveHttpLog(isSuccess,action,"判断是否有实名证书","POST",null,body,re,error,logService.caType); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if(!StringUtil.isEmpty(error)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            throw new Exception(error); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return re; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//    public String postCAServer(String api, Map<String,String> params,String srcBusinessStreamNO) throws Exception; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 请求实名软证书并进行数字签名 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     **/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String requestRealNameSoftCertAndSign(String strUserIdcardNum,String strRealNameSoftCertCalledPasswd,String strOriginalData,String srcBusinessStreamNO) throws Exception 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Boolean isSuccess = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String re = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String body = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String error = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String action = REQUEST_SIGN; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Map<String,String> params = new HashMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            params.put("strUserIdcardNum",strUserIdcardNum); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            params.put("strRealNameSoftCertCalledPasswd",strRealNameSoftCertCalledPasswd); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            params.put("strOriginalData",strOriginalData); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            params.put("srcBusinessStreamNO",srcBusinessStreamNO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            body = objectMapper.writeValueAsString(params); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //测试环境开启下面这行代码,webservice接口 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            re = postCAServer(action, params,srcBusinessStreamNO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            //生产环境,调用智业统一平台接口,rest接口 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            re = postZyCaServer(action, params,srcBusinessStreamNO,"请求实名软证书并进行数字签名"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if(StringUtil.isEmpty(re)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                throw new Exception("返回为空!"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if(re.startsWith("error")) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    throw new Exception(re); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String requestRealNameSoftCertAndSign(String strUserIdcardNum,String strRealNameSoftCertCalledPasswd,String strOriginalData,String srcBusinessStreamNO)  throws Exception; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        catch (Exception ex) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            isSuccess = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            ex.printStackTrace(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            error = ex.getMessage(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //保存http日志 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        logService.saveHttpLog(isSuccess, action, "请求实名软证书并进行数字签名", "POST", null, body, re, error, logService.caType); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if(!StringUtil.isEmpty(error)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            throw new Exception(error); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return re; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 获取实名软证书的过期时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     **/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String getRealNameSoftCertExpiredDatetime(String strUserIdcardNum,String srcBusinessStreamNO)  throws Exception 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Boolean isSuccess = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String re = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String body = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String error = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String action = EXPIRED_DATETIME; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Map<String,String> params = new HashMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            params.put("strUserIdcardNum",strUserIdcardNum); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            body = objectMapper.writeValueAsString(params); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            re = postCAServer(action, params,srcBusinessStreamNO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            re = postZyCaServer(action, params,srcBusinessStreamNO,"获取实名软证书的过期时间"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if(StringUtil.isEmpty(re)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                throw new Exception("返回为空!"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if(re.startsWith("error")) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    throw new Exception(re); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        catch (Exception ex) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            isSuccess = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            ex.printStackTrace(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            error = ex.getMessage(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //保存http日志 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        logService.saveHttpLog(isSuccess,action,"获取实名软证书的过期时间","POST",null,body,re,error,logService.caType); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if(!StringUtil.isEmpty(error)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            throw new Exception(error); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return re; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String getRealNameSoftCertExpiredDatetime(String strUserIdcardNum,String srcBusinessStreamNO)  throws Exception; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 修改实名软证书调用保护口令 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     **/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String modifyRealNameSoftCertCalledPasswd(String strUserIdcardNum,String strOldCalledPasswd,String strNewCalledPasswd,String srcBusinessStreamNO) throws Exception 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Boolean isSuccess = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String re = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String body = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String error = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Throwable errorLog =null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String action = MODIFY_PASSWD; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Map<String,String> params = new HashMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            params.put("strUserIdcardNum",strUserIdcardNum); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            params.put("strOldCalledPasswd",strOldCalledPasswd); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            params.put("strNewCalledPasswd",strNewCalledPasswd); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            body = objectMapper.writeValueAsString(params); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            re = postCAServer(action, params,srcBusinessStreamNO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            re = postZyCaServer(action, params,srcBusinessStreamNO,"修改实名软证书调用保护口令"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if(StringUtil.isEmpty(re)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                throw new Exception("返回为空!"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if(re.startsWith("error")) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    throw new Exception(re); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        catch (Exception ex) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            isSuccess = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            ex.printStackTrace(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            error = ex.getMessage(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            errorLog = ex.getCause(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //保存http日志 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        logService.saveHttpLog(isSuccess,action,"修改实名软证书调用保护口令","POST",null,body,re,error,logService.caType); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if(!StringUtil.isEmpty(error)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            throw new Exception(error); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if(errorLog!=null) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            throw new Exception("CA服务器维护中。。。"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return re; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String modifyRealNameSoftCertCalledPasswd(String strUserIdcardNum,String strOldCalledPasswd,String strNewCalledPasswd,String srcBusinessStreamNO) throws Exception; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 验证签名(带多服务器负载均衡) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     **/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String verifySignOnMultiServer(String strSignData,String strCertData,String strOriginalData,String srcBusinessStreamNO) throws Exception 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        Boolean isSuccess = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String re = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String body = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String error = ""; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        String action = VERIFY_SIGN; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            Map<String,String> params = new HashMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            params.put("strSignData",strSignData); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            params.put("strCertData",strCertData); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            params.put("strOriginalData",strOriginalData); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            body = objectMapper.writeValueAsString(params); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            re = postCAServer(action, params,srcBusinessStreamNO); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            re = postZyCaServer(action, params,srcBusinessStreamNO,"验证签名(带多服务器负载均衡)"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            if(StringUtil.isEmpty(re)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                throw new Exception("返回为空!"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                if(re.startsWith("error")) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                    throw new Exception(re); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        catch (Exception ex) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            isSuccess = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            ex.printStackTrace(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            error = ex.getMessage(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String verifySignOnMultiServer(String strSignData,String strCertData,String strOriginalData,String srcBusinessStreamNO)  throws Exception; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        //保存http日志 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        logService.saveHttpLog(isSuccess,action,"验证签名","POST",null,body,re,error,logService.caType); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        if(!StringUtil.isEmpty(error)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				            throw new Exception(error); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				        return re; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//    public static void main(String args[]) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//        try { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            String caUrl = SystemConfig.getInstance().getCAUrl(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            String caNamespace = SystemConfig.getInstance().getCANamespace(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            /*//获取实名软证书的过期时间 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            String api = "XMCAF_SOFT_getRealNameSoftCertExpiredDatetime"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            String msgBody = "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "<root>\n"+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "    <strUserIdcardNum>123456</strUserIdcardNum>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "</root>";*/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				// 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            /*//判断实名软证书是否已申请 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            String api = "XMCAF_SOFT_judgeRealNameSoftCertIsApplied"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            String msgBody = "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "<root>\n"+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "    <strUserIdcardNum>123456</strUserIdcardNum>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "</root>";*/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				// 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            //修改实名软证书调用保护口令 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            String api = "XMCAF_SOFT_ModifyRealNameSoftCertCalledPasswd"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            String msgBody = "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "<root>\n"+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "    <strUserIdcardNum>123456</strUserIdcardNum>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "   <strOldCalledPasswd>12345678</strOldCalledPasswd>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "   <strNewCalledPasswd>11111111</strNewCalledPasswd>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "</root>"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				// 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				// 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            //请求实名软证书并进行数字签名 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            /*String orgData = "测试数据"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            String api = "XMCAF_SOFT_requestRealNameSoftCertAndSign"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            String msgBody = "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "<root>\n"+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "   <strUserIdcardNum>123456</strUserIdcardNum>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "   <strRealNameSoftCertCalledPasswd>11111111</strRealNameSoftCertCalledPasswd>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "   <strOriginalData>"+ MD5Util.GetMD5Code(orgData)+"</strOriginalData>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "</root>";*/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				// 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            String msgHeader = "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "<root>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "   <serverName>"+api+"</serverName>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "   <format>xml</format>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "   <callOperator></callOperator>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "   <certificate></certificate>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				// 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "   <srcIP>10.95.22.10</srcIP >\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "   <srcUserMac>60-D8-19-57-66-E3</srcUserMac>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "   <srcSystemCode>1</srcSystemCode>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "   <srcSystemName>厦门i健康</srcSystemName>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "   <srcBusinessNodeCode>node01</srcBusinessNodeCode>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "   <srcBusinessNodeName>审核</srcBusinessNodeName>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "   <srcOperatorAccount>Zhuangsd</srcOperatorAccount>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "   <srcBusinessStreamNO>11111</srcBusinessStreamNO>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "   <srcDataExtProperty></srcDataExtProperty>\n" + 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//                    "</root>"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				// 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				// 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				// 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            Map<String, String> params = new HashMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            params.put("msgBody", msgBody); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            params.put("msgHeader", msgHeader); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            System.out.print(WebserviceUtil.post(caUrl, caNamespace, "XMCA6_UnifiedCallInterface", params) + "\r\n"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				// 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				// 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				// 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//        catch (Exception ex) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//            ex.printStackTrace(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				//    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     * 判断是否有实名证书 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     **/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				    public String isApplied(String strUserIdcardNum,String srcBusinessStreamNO)  throws Exception; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				} 
			 |