Search in sources :

Example 1 with EvidenceClientSignatureExample

use of com.itrus.portal.db.EvidenceClientSignatureExample in project portal by ixinportal.

the class BasicInformationController method show2.

/**
 * 查看详情
 *
 * @param id
 * @param uiModel
 * @return
 */
@RequestMapping(value = "show/{identification}", produces = "text/html")
public String show2(@PathVariable("identification") String id, Model uiModel) {
    List<EvidenceMainInformation> mlist = new ArrayList<EvidenceMainInformation>();
    List<EvidenceMainInformation> milist = new ArrayList<EvidenceMainInformation>();
    Map<Long, EvidenceCompaniesSubmit> companiesSubmit = new HashMap<Long, EvidenceCompaniesSubmit>();
    Map<Long, List<RealNameRecord>> realnameRecor = new HashMap<Long, List<RealNameRecord>>();
    Map<Long, List<PersonalName>> personalName = new HashMap<Long, List<PersonalName>>();
    Map<Long, EvidenceIndividual> denceid = new HashMap<Long, EvidenceIndividual>();
    // 事件对象认证
    Map<Long, EvidenceTrustedIdentity> trustedidentit = new HashMap<Long, EvidenceTrustedIdentity>();
    // 事件时间认证
    Map<Long, EvidenceEventTime> meventime = new HashMap<Long, EvidenceEventTime>();
    // 事件行为认证
    Map<Long, EvidenceEventBehavior> eventbehacior = new HashMap<Long, EvidenceEventBehavior>();
    // 事件意愿认证
    Map<Long, EvidenceEventDesire> meventdesire = new HashMap<Long, EvidenceEventDesire>();
    // 事件网络地址
    Map<Long, EvidenceEventNetworkAddress> networkaddress = new HashMap<Long, EvidenceEventNetworkAddress>();
    // 身份意愿信息
    Map<Long, EvidenceDesireIdentify> desire = new HashMap<Long, EvidenceDesireIdentify>();
    // 得到基本信息
    EvidenceBasicInformation basicinfor = sqlSession.selectOne("com.itrus.portal.db.EvidenceBasicInformationMapper.selectByPrimaryKey", basid);
    // 得到主体身份信息
    EvidenceMainInformationExample mainExample = new EvidenceMainInformationExample();
    EvidenceMainInformationExample.Criteria info = mainExample.createCriteria();
    info.andIdentificationEqualTo(id);
    // 得到主体信息
    List<EvidenceMainInformation> mainInfor = sqlSession.selectList("com.itrus.portal.db.EvidenceMainInformationMapper.selectByExample", mainExample);
    EvidenceMainInformation mainInfo = new EvidenceMainInformation();
    if (mainInfor.size() != 0) {
        mlist.add(mainInfor.get(0));
        mainInfo = mainInfor.get(0);
    }
    EvidenceSubjectIdentityExample subjectExample = new EvidenceSubjectIdentityExample();
    EvidenceSubjectIdentityExample.Criteria identity = subjectExample.createCriteria();
    identity.andBasicInformationEqualTo(basicinfor.getEvidenceSn());
    List<EvidenceSubjectIdentity> subjectIdentity = sqlSession.selectList("com.itrus.portal.db.EvidenceSubjectIdentityMapper.selectByExample", subjectExample);
    for (int i = 0; i < subjectIdentity.size(); i++) {
        // 得到主体信息
        EvidenceMainInformationExample infomationE = new EvidenceMainInformationExample();
        EvidenceMainInformationExample.Criteria tionE = infomationE.createCriteria();
        tionE.andIdentificationEqualTo(subjectIdentity.get(i).getMainInformation());
        if (subjectIdentity.get(i).getMainName() != null) {
            tionE.andSubjectNameEqualTo(subjectIdentity.get(i).getMainName());
        }
        List<EvidenceMainInformation> ainInfo = sqlSession.selectList("com.itrus.portal.db.EvidenceMainInformationMapper.selectByExample", infomationE);
        if (ainInfo.size() != 0) {
            milist.add(ainInfo.get(0));
        }
    /*EvidenceMainInformation ainInfo = sqlSession.selectOne(
					"com.itrus.portal.db.EvidenceMainInformationMapper.selectByPrimaryKey",
					subjectIdentity.get(i).getMainInformation());
			milist.add(ainInfo);*/
    }
    // 身份信息证据的map
    Map<Long, EvidenceBasicInformation> basi = new HashMap<Long, EvidenceBasicInformation>();
    // 得到身份可信标识
    EvidenceTrustedIdentityExample trusten = new EvidenceTrustedIdentityExample();
    EvidenceTrustedIdentityExample.Criteria identityex = trusten.createCriteria();
    // identityex.andMainInformationEqualTo(mainInfo.getId());
    identityex.andBasicInformationEqualTo(basicinfor.getEvidenceSn());
    identityex.andEventContentIsNull();
    Map<Long, EvidenceTrustedIdentity> trustedidentity = sqlSession.selectMap("com.itrus.portal.db.EvidenceTrustedIdentityMapper.selectByExample", trusten, "mainInformation");
    // String evidenceSn = null;
    if (trustedidentity != null && trustedidentity.get(mainInfo.getId()) != null) {
        if (trustedidentity.get(mainInfo.getId()).getEvidenceSn() != null) {
            String evidenceSn = trustedidentity.get(mainInfo.getId()).getEvidenceSn().toString();
            // 得到可信身份标识关联的证据身份信息
            EvidenceBasicInformationExample basicinforE = new EvidenceBasicInformationExample();
            EvidenceBasicInformationExample.Criteria critbasic = basicinforE.createCriteria();
            critbasic.andEvidenceSnEqualTo(evidenceSn);
            EvidenceBasicInformation basicinfor1 = sqlSession.selectOne("com.itrus.portal.db.EvidenceBasicInformationMapper.selectByExample", basicinforE);
            basi.put(mainInfo.getId(), basicinfor1);
            // 得到身份意愿信息
            EvidenceDesireIdentifyExample desireIdentify = new EvidenceDesireIdentifyExample();
            EvidenceDesireIdentifyExample.Criteria desireExample = desireIdentify.createCriteria();
            desireExample.andMainInformationEqualTo(mainInfo.getIdentification());
            desire = sqlSession.selectMap("com.itrus.portal.db.EvidenceDesireIdentifyMapper.selectByExample", desireIdentify, "mainInformation");
            // 得到实名认证信息
            EvidenceRealNameExample realnameE = new EvidenceRealNameExample();
            EvidenceRealNameExample.Criteria realnameEx = realnameE.createCriteria();
            realnameEx.andMainInformationEqualTo(mainInfo.getSubjectName() + ";" + mainInfo.getIdentification());
            // realnameEx.andBasicInformationEqualTo(basicinfor1.getId());
            realnameEx.andEvidenceSnEqualTo(basicinfor.getEvidenceSn());
            EvidenceRealName erealname = sqlSession.selectOne("com.itrus.portal.db.EvidenceRealNameMapper.selectByExample", realnameE);
            if (erealname != null) {
                if ("2".equals(erealname.getEventVerifierType()) || "3".equals(erealname.getEventVerifierType())) {
                    // 判断企业还是个人
                    if ("1".equals(erealname.getType())) {
                        EvidenceCompaniesSubmitExample evidenceCompanies = new EvidenceCompaniesSubmitExample();
                        EvidenceCompaniesSubmitExample.Criteria submitEx = evidenceCompanies.createCriteria();
                        submitEx.andIdCodeEqualTo(erealname.getCompaniesSubmit());
                        EvidenceCompaniesSubmit companiesSubmit1 = sqlSession.selectOne("com.itrus.portal.db.EvidenceCompaniesSubmitMapper.selectByExample", evidenceCompanies);
                        companiesSubmit.put(mainInfo.getId(), companiesSubmit1);
                    } else {
                        EvidenceIndividualExample evidenceIndiv = new EvidenceIndividualExample();
                        EvidenceIndividualExample.Criteria idualEx = evidenceIndiv.createCriteria();
                        idualEx.andIdCodeEqualTo(erealname.getIndividual());
                        EvidenceIndividual dic = sqlSession.selectOne("com.itrus.portal.db.EvidenceIndividualMapper.selectByPrimaryKey", evidenceIndiv);
                        denceid.put(mainInfo.getId(), dic);
                    }
                } else if ("1".equals(erealname.getEventVerifierType())) {
                    if ("1".equals(erealname.getType())) {
                        String serialnamber = erealname.getSerialnumber();
                        String[] namber = serialnamber.split(",");
                        List<String> listString = new ArrayList<String>();
                        for (int i = 0; i < namber.length; i++) {
                            listString.add(namber[i]);
                        }
                        RealNameRecordExample realname = new RealNameRecordExample();
                        RealNameRecordExample.Criteria recor = realname.createCriteria();
                        // recor.andSerialnumberEqualTo(a[i]);
                        recor.andSerialnumberIn(listString);
                        realname.setOrderByClause("returntime");
                        listReal = sqlSession.selectList("com.itrus.portal.db.RealNameRecordMapper.selectByExample", realname);
                        realnameRecor.put(mainInfo.getId(), listReal);
                    } else {
                        String serialnamber = erealname.getSerialnumber();
                        String[] namber = serialnamber.split(",");
                        List<String> listString = new ArrayList<String>();
                        for (int i = 0; i < namber.length; i++) {
                            listString.add(namber[i]);
                        }
                        PersonalNameExample personal = new PersonalNameExample();
                        PersonalNameExample.Criteria personalname = personal.createCriteria();
                        personalname.andSerialnumberIn(listString);
                        personal.setOrderByClause("returntime");
                        listPersonal = sqlSession.selectList("com.itrus.portal.db.PersonalNameMapper.selectByExample", personal);
                        personalName.put(mainInfo.getId(), listPersonal);
                    }
                }
            }
            uiModel.addAttribute("erealname", erealname);
        }
    }
    // 事件内容
    EvidenceEventContentExample evencontent = new EvidenceEventContentExample();
    EvidenceEventContentExample.Criteria countent = evencontent.createCriteria();
    // countent.andBasicInformationEqualTo(basicinfor.getId());
    countent.andEvidenceSnEqualTo(basicinfor.getEvidenceSn());
    EvidenceEventContent mevencontent = sqlSession.selectOne("com.itrus.portal.db.EvidenceEventContentMapper.selectByExample", evencontent);
    if (mevencontent != null && mevencontent.getIdCode() != null) {
        // 事件对象认证
        EvidenceTrustedIdentityExample trustenid = new EvidenceTrustedIdentityExample();
        EvidenceTrustedIdentityExample.Criteria identitye = trustenid.createCriteria();
        identitye.andEventContentEqualTo(mevencontent.getIdCode());
        trustedidentit = sqlSession.selectMap("com.itrus.portal.db.EvidenceTrustedIdentityMapper.selectByExample", trustenid, "mainInformation");
        // 事件时间认证
        EvidenceEventTimeExample eventime = new EvidenceEventTimeExample();
        EvidenceEventTimeExample.Criteria eventimeEx = eventime.createCriteria();
        eventimeEx.andEventContentEqualTo(mevencontent.getIdCode());
        meventime = sqlSession.selectMap("com.itrus.portal.db.EvidenceEventTimeMapper.selectByExample", eventime, "mainInformation");
        // 事件行为认证
        EvidenceEventBehaviorExample eventbehaciorEx = new EvidenceEventBehaviorExample();
        EvidenceEventBehaviorExample.Criteria eventbe = eventbehaciorEx.createCriteria();
        eventbe.andEventContentEqualTo(mevencontent.getIdCode());
        eventbehacior = sqlSession.selectMap("com.itrus.portal.db.EvidenceEventBehaviorMapper.selectByExample", eventbehaciorEx, "mainInformation");
        // 事件意愿认证
        EvidenceEventDesireExample desireEx = new EvidenceEventDesireExample();
        EvidenceEventDesireExample.Criteria eventdesire = desireEx.createCriteria();
        eventdesire.andEventContenteEqualTo(mevencontent.getIdCode());
        meventdesire = sqlSession.selectMap("com.itrus.portal.db.EvidenceEventDesireMapper.selectByExample", desireEx, "mainInformation");
        // 事件网络地址
        EvidenceEventNetworkAddressExample network = new EvidenceEventNetworkAddressExample();
        EvidenceEventNetworkAddressExample.Criteria address = network.createCriteria();
        address.andEventContentEqualTo(mevencontent.getIdCode());
        networkaddress = sqlSession.selectMap("com.itrus.portal.db.EvidenceEventNetworkAddressMapper.selectByExample", network, "mainInformation");
        // 得到证据附件表,用于获取信息
        EvidenceEnclosure envlosure = sqlSession.selectOne("com.itrus.portal.db.EvidenceEnclosureMapper.selectByPrimaryKey", mevencontent.getEvidenceEnclosure());
        uiModel.addAttribute("enclosure", envlosure);
    }
    // 得到证据附件信息
    EvidenceEnclosureExample enclou = new EvidenceEnclosureExample();
    EvidenceEnclosureExample.Criteria sure = enclou.createCriteria();
    sure.andEvidenceSnEqualTo(basicinfor.getEvidenceSn());
    ;
    sure.andPdfTypeEqualTo("1");
    List<EvidenceEnclosure> enclosure = sqlSession.selectList("com.itrus.portal.db.EvidenceEnclosureMapper.selectByExample", enclou);
    EvidenceEnclosureExample enclouE = new EvidenceEnclosureExample();
    EvidenceEnclosureExample.Criteria sureEX = enclouE.createCriteria();
    sureEX.andEvidenceSnEqualTo(basicinfor.getEvidenceSn());
    sureEX.andPdfTypeEqualTo("3");
    EvidenceEnclosure enclosurepdf = sqlSession.selectOne("com.itrus.portal.db.EvidenceEnclosureMapper.selectByExample", enclouE);
    uiModel.addAttribute("enclosurepdf", enclosurepdf);
    // 服务委托人签名信息
    Map<Long, EvidenceClientSignature> cilentsignat = new HashMap<Long, EvidenceClientSignature>();
    // 天威签名信息
    Map<Long, EvidenceClientSignature> cilentsignature = new HashMap<Long, EvidenceClientSignature>();
    // 服务委托人时间戳信息
    Map<Long, EvidenceClientTimeStamp> clientTimestamp = new HashMap<Long, EvidenceClientTimeStamp>();
    // 天威时间戳信息
    Map<Long, EvidenceClientTimeStamp> tclientTimestamp = new HashMap<Long, EvidenceClientTimeStamp>();
    // 服务委托人证书信息
    Map<Long, List<EvidenceCert>> listcert = new HashMap<Long, List<EvidenceCert>>();
    // 服务委托人核验信息
    Map<Long, EvidenceCheck> check = new HashMap<Long, EvidenceCheck>();
    int ensize = 0;
    for (EvidenceEnclosure en : enclosure) {
        // 服务委托人签名信息
        EvidenceClientSignatureExample cilent = new EvidenceClientSignatureExample();
        EvidenceClientSignatureExample.Criteria signat = cilent.createCriteria();
        signat.andEvidenceSnEqualTo(en.getEvidenceSn());
        signat.andNameEqualTo("0");
        EvidenceClientSignature listclient = sqlSession.selectOne("com.itrus.portal.db.EvidenceClientSignatureMapper.selectByExample", cilent);
        if (listclient != null) {
            cilentsignat.put(en.getId(), listclient);
            ensize++;
            // 服务委托人证书信息
            /*	EvidenceCertExample certEx = new EvidenceCertExample();
				EvidenceCertExample.Criteria evidenceCert = certEx.createCriteria();
				evidenceCert.andClientSignatureEqualTo(listclient.getId());
				List<EvidenceCert> listCert = sqlSession
						.selectList("com.itrus.portal.db.EvidenceCertMapper.selectByExample", certEx);*/
            List<EvidenceCert> listCert = sqlSession.selectList("com.itrus.portal.db.EvidenceCertMapper.selectByPrimaryKey", listclient.getCertId());
            listcert.put(en.getId(), listCert);
            // 服务委托人核验信息
            EvidenceCheckExample checkEx = new EvidenceCheckExample();
            EvidenceCheckExample.Criteria evidenceCheck = checkEx.createCriteria();
            evidenceCheck.andClientSignatureEqualTo(listclient.getId());
            EvidenceCheck listCheck = sqlSession.selectOne("com.itrus.portal.db.EvidenceCheckMapper.selectByExample", checkEx);
            check.put(en.getId(), listCheck);
        }
        // 天威签名信息
        EvidenceClientSignatureExample cilentsign = new EvidenceClientSignatureExample();
        EvidenceClientSignatureExample.Criteria signature = cilentsign.createCriteria();
        signature.andEvidenceSnEqualTo(en.getEvidenceSn());
        signature.andNameEqualTo("1");
        EvidenceClientSignature clientlist = sqlSession.selectOne("com.itrus.portal.db.EvidenceClientSignatureMapper.selectByExample", cilentsign);
        if (clientlist != null) {
            cilentsignature.put(en.getId(), clientlist);
            ensize++;
        }
        // 服务委托人时间戳信息
        EvidenceClientTimeStampExample clientTime = new EvidenceClientTimeStampExample();
        EvidenceClientTimeStampExample.Criteria stamp = clientTime.createCriteria();
        stamp.andEvidenceSnEqualTo(en.getEvidenceSn());
        stamp.andNameEqualTo("0");
        EvidenceClientTimeStamp listtime = sqlSession.selectOne("com.itrus.portal.db.EvidenceClientTimeStampMapper.selectByExample", clientTime);
        if (listtime != null) {
            clientTimestamp.put(en.getId(), listtime);
            ensize++;
        }
        // 天威时间戳信息
        EvidenceClientTimeStampExample tclientTime = new EvidenceClientTimeStampExample();
        EvidenceClientTimeStampExample.Criteria tstamp = tclientTime.createCriteria();
        tstamp.andEvidenceSnEqualTo(en.getEvidenceSn());
        tstamp.andNameEqualTo("1");
        EvidenceClientTimeStamp timelist = sqlSession.selectOne("com.itrus.portal.db.EvidenceClientTimeStampMapper.selectByExample", tclientTime);
        if (timelist != null) {
            tclientTimestamp.put(en.getId(), timelist);
            ensize++;
        }
    }
    uiModel.addAttribute("basi", basi);
    uiModel.addAttribute("ensize", ensize);
    uiModel.addAttribute("check", check);
    uiModel.addAttribute("listcert", listcert);
    uiModel.addAttribute("envlosure", enclosure);
    // uiModel.addAttribute("erealname", erealname);
    uiModel.addAttribute("milist", milist);
    uiModel.addAttribute("basicinfor", basicinfor);
    uiModel.addAttribute("tclientTimestamp", tclientTimestamp);
    uiModel.addAttribute("clientTimestamp", clientTimestamp);
    uiModel.addAttribute("cilentsignature", cilentsignature);
    uiModel.addAttribute("cilentsignat", cilentsignat);
    uiModel.addAttribute("networkaddress", networkaddress);
    uiModel.addAttribute("meventdesire", meventdesire);
    uiModel.addAttribute("eventbehacior", eventbehacior);
    uiModel.addAttribute("meventime", meventime);
    uiModel.addAttribute("trustedidentit", trustedidentit);
    uiModel.addAttribute("mevencontent", mevencontent);
    uiModel.addAttribute("trustedidentity", trustedidentity);
    uiModel.addAttribute("companiesSubmit", companiesSubmit);
    uiModel.addAttribute("realnameRecor", realnameRecor);
    uiModel.addAttribute("denceid", denceid);
    uiModel.addAttribute("personalName", personalName);
    uiModel.addAttribute("mainInfo", mlist);
    uiModel.addAttribute("desire", desire);
    int coutn = 0;
    int size = 0;
    Map<Long, Integer> msize = new HashMap<Long, Integer>();
    // 得到认证数量
    for (EvidenceMainInformation m : mlist) {
        int showsize = 0;
        // 身份认证
        if (companiesSubmit.get(m.getId()) != null) {
            coutn++;
        }
        if (realnameRecor.get(m.getId()) != null) {
            coutn++;
        }
        if (personalName.get(m.getId()) != null) {
            coutn++;
        }
        if (desire.get(m.getId()) != null) {
            coutn++;
        }
        if (trustedidentity.get(m.getSubjectName() + ";" + m.getIdentification()) != null) {
            coutn++;
        }
        if (denceid.get(m.getId()) != null) {
            coutn++;
        }
        // 事件认证
        if (trustedidentit.get(m.getSubjectName() + ";" + m.getIdentification()) != null) {
            size++;
            showsize++;
        }
        if (meventime.get(m.getSubjectName() + ";" + m.getIdentification()) != null) {
            size++;
            showsize++;
        }
        if (eventbehacior.get(m.getSubjectName() + ";" + m.getIdentification()) != null) {
            size++;
            showsize++;
        }
        if (meventdesire.get(m.getSubjectName() + ";" + m.getIdentification()) != null) {
            size++;
            showsize++;
        }
        if (networkaddress.get(m.getSubjectName() + ";" + m.getIdentification()) != null) {
            size++;
            showsize++;
        }
        msize.put(m.getId(), showsize);
    }
    uiModel.addAttribute("showsize", msize);
    uiModel.addAttribute("rowsize", size + 1);
    uiModel.addAttribute("rowcoutn", coutn);
    return "basicinformation/show";
}
Also used : EvidenceIndividual(com.itrus.portal.db.EvidenceIndividual) EvidenceSubjectIdentityExample(com.itrus.portal.db.EvidenceSubjectIdentityExample) HashMap(java.util.HashMap) PersonalNameExample(com.itrus.portal.db.PersonalNameExample) EvidenceClientTimeStamp(com.itrus.portal.db.EvidenceClientTimeStamp) ArrayList(java.util.ArrayList) EvidenceRealName(com.itrus.portal.db.EvidenceRealName) EvidenceClientTimeStampExample(com.itrus.portal.db.EvidenceClientTimeStampExample) ArrayList(java.util.ArrayList) List(java.util.List) EvidenceEventDesire(com.itrus.portal.db.EvidenceEventDesire) EvidenceCompaniesSubmitExample(com.itrus.portal.db.EvidenceCompaniesSubmitExample) EvidenceEventNetworkAddressExample(com.itrus.portal.db.EvidenceEventNetworkAddressExample) EvidenceDesireIdentify(com.itrus.portal.db.EvidenceDesireIdentify) EvidenceEventBehaviorExample(com.itrus.portal.db.EvidenceEventBehaviorExample) EvidenceSubjectIdentity(com.itrus.portal.db.EvidenceSubjectIdentity) EvidenceEnclosureExample(com.itrus.portal.db.EvidenceEnclosureExample) RealNameRecord(com.itrus.portal.db.RealNameRecord) EvidenceCheckExample(com.itrus.portal.db.EvidenceCheckExample) EvidenceEventContentExample(com.itrus.portal.db.EvidenceEventContentExample) EvidenceCert(com.itrus.portal.db.EvidenceCert) EvidenceEventTime(com.itrus.portal.db.EvidenceEventTime) EvidenceEventNetworkAddress(com.itrus.portal.db.EvidenceEventNetworkAddress) EvidenceIndividualExample(com.itrus.portal.db.EvidenceIndividualExample) EvidenceRealNameExample(com.itrus.portal.db.EvidenceRealNameExample) EvidenceBasicInformation(com.itrus.portal.db.EvidenceBasicInformation) EvidenceEnclosure(com.itrus.portal.db.EvidenceEnclosure) EvidenceMainInformation(com.itrus.portal.db.EvidenceMainInformation) EvidenceDesireIdentifyExample(com.itrus.portal.db.EvidenceDesireIdentifyExample) PersonalName(com.itrus.portal.db.PersonalName) EvidenceEventDesireExample(com.itrus.portal.db.EvidenceEventDesireExample) EvidenceEventTimeExample(com.itrus.portal.db.EvidenceEventTimeExample) EvidenceCompaniesSubmit(com.itrus.portal.db.EvidenceCompaniesSubmit) EvidenceEventContent(com.itrus.portal.db.EvidenceEventContent) EvidenceClientSignature(com.itrus.portal.db.EvidenceClientSignature) EvidenceCheck(com.itrus.portal.db.EvidenceCheck) EvidenceClientSignatureExample(com.itrus.portal.db.EvidenceClientSignatureExample) EvidenceBasicInformationExample(com.itrus.portal.db.EvidenceBasicInformationExample) EvidenceEventBehavior(com.itrus.portal.db.EvidenceEventBehavior) EvidenceTrustedIdentity(com.itrus.portal.db.EvidenceTrustedIdentity) EvidenceMainInformationExample(com.itrus.portal.db.EvidenceMainInformationExample) RealNameRecordExample(com.itrus.portal.db.RealNameRecordExample) EvidenceTrustedIdentityExample(com.itrus.portal.db.EvidenceTrustedIdentityExample) RequestMapping(org.springframework.web.bind.annotation.RequestMapping)

Example 2 with EvidenceClientSignatureExample

use of com.itrus.portal.db.EvidenceClientSignatureExample in project portal by ixinportal.

the class BasicInformationController method show1.

/**
 * 查看详细内容(事件详细)
 *
 * @param id
 * @param type
 * @param uiModel
 * @return
 */
@RequestMapping(value = "show1/{id}/{mid}/{type}", produces = "text/html")
public String show1(@PathVariable("id") Long id, @PathVariable("mid") Long mid, @PathVariable("type") int type, Model uiModel) {
    /*
		 * if (type == 1) {// 身份意愿鉴别信息 EvidenceDesireIdentify desire =
		 * sqlSession .selectOne(
		 * "com.itrus.portal.db.EvidenceDesireIdentifyMapper.selectByPrimaryKey",
		 * id); EvidenceMainInformation mainInfo = sqlSession.selectOne(
		 * "com.itrus.portal.db.EvidenceMainInformationMapper.selectByPrimaryKey",
		 * desire.getMainInformation()); uiModel.addAttribute("desire", desire);
		 * uiModel.addAttribute("mainInfo", mainInfo); return
		 * "basicinformation/desireIdentify"; } else if (type == 2) {// 获取实名认证信息
		 * EvidenceCompaniesSubmit companiesSubmit = sqlSession .selectOne(
		 * "com.itrus.portal.db.EvidenceCompaniesSubmitMapper.selectByPrimaryKey",
		 * id); String cid = companiesSubmit.getId().toString(); int evid =
		 * Integer.parseInt(cid); EvidenceRealNameExample realnameE = new
		 * EvidenceRealNameExample(); EvidenceRealNameExample.Criteria
		 * realnameEx = realnameE.createCriteria();
		 * realnameEx.andCompaniesSubmitEqualTo(evid); EvidenceRealName
		 * erealname = sqlSession .selectOne(
		 * "com.itrus.portal.db.EvidenceRealNameMapper.selectByExample",
		 * realnameE); EvidenceMainInformation mainInfo = sqlSession.selectOne(
		 * "com.itrus.portal.db.EvidenceMainInformationMapper.selectByPrimaryKey",
		 * erealname.getMainInformation()); if
		 * (companiesSubmit.getRepresentative() != null) {// 法定代表人
		 * EvidenceRepresentative representative = sqlSession.selectOne(
		 * "com.itrus.portal.db.EvidenceRepresentativeMapper.selectByPrimaryKey",
		 * companiesSubmit.getRepresentative());
		 * uiModel.addAttribute("representative", representative); } if
		 * (companiesSubmit.getTheAgent() != null) {// 代理人 EvidenceTheAgent
		 * theagent = sqlSession.selectOne(
		 * "com.itrus.portal.db.EvidenceTheAgentMapper.selectByPrimaryKey",
		 * companiesSubmit.getTheAgent()); uiModel.addAttribute("theagent",
		 * theagent); } uiModel.addAttribute("erealname", erealname);
		 * uiModel.addAttribute("companiesSubmit", companiesSubmit);
		 * uiModel.addAttribute("mainInfo", mainInfo); return
		 * "basicinformation/companiesSubmit";
		 * 
		 * } else
		 */
    if (type == 3) {
        // 可信身份标识
        // EvidenceTrustedIdentity trusted = sqlSession
        // .selectOne("com.itrus.portal.db.EvidenceTrustedIdentityMapper.selectByPrimaryKey", id);
        // EvidenceMainInformation mainInfo = sqlSession.selectOne(
        // "com.itrus.portal.db.EvidenceMainInformationMapper.selectByPrimaryKey",
        // trusted.getMainInformation());
        // uiModel.addAttribute("trusted", trusted);
        // uiModel.addAttribute("mainInfo", mainInfo);
        EvidenceTrustedIdentity trusted = sqlSession.selectOne("com.itrus.portal.db.EvidenceTrustedIdentityMapper.selectByPrimaryKey", id);
        String idCode = trusted.getMainInformation().split(";")[1];
        String idName = trusted.getMainInformation().split(";")[0];
        EvidenceMainInformationExample maininfor = new EvidenceMainInformationExample();
        EvidenceMainInformationExample.Criteria mation = maininfor.createCriteria();
        mation.andIdentificationEqualTo(idCode);
        mation.andSubjectNameEqualTo(idName);
        List<EvidenceMainInformation> mainInfo = sqlSession.selectList("com.itrus.portal.db.EvidenceMainInformationMapper.selectByExample", maininfor);
        uiModel.addAttribute("trusted", trusted);
        /*EvidenceCertExample basicEx = new EvidenceCertExample();
			EvidenceCertExample.Criteria information = basicEx.createCriteria();
			information.andCertSerialnumberEqualTo(trusted.getCertSerialnumber().trim());
			EvidenceCert cert = sqlSession.selectOne("com.itrus.portal.db.EvidenceCertMapper.selectByExample", basicEx);
			uiModel.addAttribute("cert", cert); 
			if(cert!=null && cert.getIssuerdn()!=null){
				
				uiModel.addAttribute("Issuerdn", EvidenceSaveServiceApi.getCertCn(cert.getIssuerdn()));
			}*/
        uiModel.addAttribute("mainInfo", mainInfo.get(0));
        return "basicinformation/trustedIdentity";
    } else if (type == 4) {
        // 事件内容
        EvidenceEventContent mevencontent = sqlSession.selectOne("com.itrus.portal.db.EvidenceEventContentMapper.selectByPrimaryKey", id);
        // 得到基本信息
        /*EvidenceBasicInformation basicinfor = sqlSession
					.selectOne("com.itrus.portal.db.EvidenceBasicInformationMapper.selectByPrimaryKey", mevencontent.getBasicInformation());*/
        EvidenceBasicInformationExample basicEx = new EvidenceBasicInformationExample();
        EvidenceBasicInformationExample.Criteria information = basicEx.createCriteria();
        information.andEvidenceSnEqualTo(mevencontent.getEvidenceSn());
        EvidenceBasicInformation basicinfor = sqlSession.selectOne("com.itrus.portal.db.EvidenceBasicInformationMapper.selectByExample", basicEx);
        // 得到服务表信息
        AppService appservice = appService.selectById(basicinfor.getAppService());
        EvidenceSaveServiceExample save = new EvidenceSaveServiceExample();
        EvidenceSaveServiceExample.Criteria saveEx = save.createCriteria();
        saveEx.andAppServiceEqualTo(appservice.getId());
        EvidenceSaveService evidenceSave = sqlSession.selectOne("com.itrus.portal.db.EvidenceSaveServiceMapper.selectByExample", save);
        // String js = evidenceSave.getFactorBusinessInfo();
        String evidenceType = null;
        try {
            JSONArray jsonArray = new JSONArray(evidenceSave.getFactorBusinessInfo());
            for (int i = 0; i < jsonArray.length(); i++) {
                JSONObject jsob = JSONObject.parseObject(jsonArray.get(i).toString());
                if ("业务类型".equals(jsob.getString("b_factor"))) {
                    evidenceType = jsob.getString("b_category");
                }
            }
            if ("电子合同PDF".equals(evidenceType)) {
                // 判断图片是否存在
                if (mevencontent.getIsimg() == null) {
                    // EvidenceBasicInformation basic = sqlSession.selectOne(
                    // "com.itrus.portal.db.EvidenceBasicInformationMapper.selectByPrimaryKey",
                    // mevencontent.getEvidenceSn());
                    // 得到证据附件表,用于获取信息
                    EvidenceEnclosureExample envlosureE = new EvidenceEnclosureExample();
                    EvidenceEnclosureExample.Criteria envlosureEx = envlosureE.createCriteria();
                    envlosureEx.andEvidenceSnEqualTo(basicinfor.getEvidenceSn());
                    envlosureEx.andPdfTypeEqualTo("1");
                    EvidenceEnclosure envlosure = sqlSession.selectOne("com.itrus.portal.db.EvidenceEnclosureMapper.selectByExample", envlosureE);
                    RealNameAuthentication realNameAuthentication = CacheCustomer.getAUTH_CONFIG_MAP().get(2);
                    if (realNameAuthentication == null) {
                        try {
                            realNameAuthentication = realNameAuthenticationSerivce.getRealNameAuthenticationByTwo();
                        } catch (Exception e) {
                            // TODO Auto-generated catch block
                            e.printStackTrace();
                        }
                    }
                    String pdfbase64 = null;
                    String urlAgent = realNameAuthentication.getRealNameddress();
                    if (envlosure != null && envlosure.getBuid() != null) {
                        log.error("Buid======" + envlosure.getBuid());
                        pdfbase64 = EvidenceSaveServiceApi.decryptedAndDownload(sqlSession, envlosure.getBuid(), urlAgent);
                    }
                    if (pdfbase64 != null) {
                        log.error("*******pdfbase64不为空*********");
                        // 得到证据包的json
                        JSONObject jsonEvidenceContent = JSONObject.parseObject(pdfbase64);
                        String authEvent = jsonEvidenceContent.getString("authEvent");
                        JSONObject authEvent1 = JSONObject.parseObject(authEvent);
                        String jsonpdf = authEvent1.getString("eventContent");
                        JSONObject jsonpdf1 = JSONObject.parseObject(jsonpdf);
                        // 得到pdf的base64编码
                        String jsonbase64 = jsonpdf1.getString("contCode");
                        BufferedInputStream bin = null;
                        FileOutputStream fout = null;
                        BufferedOutputStream bout = null;
                        try {
                            BASE64Decoder decoder = new sun.misc.BASE64Decoder();
                            // 将base64编码的字符串解码成字节数组
                            byte[] bytes = decoder.decodeBuffer(jsonbase64);
                            // apache公司的API
                            // byte[] bytes = Base64.decodeBase64(base64sString);
                            // 创建一个将bytes作为其缓冲区的ByteArrayInputStream对象
                            ByteArrayInputStream bais = new ByteArrayInputStream(bytes);
                            // 创建从底层输入流中读取数据的缓冲输入流对象
                            bin = new BufferedInputStream(bais);
                            // 指定输出的文件
                            log.error("路径地址=" + systemConfigService.getpdfurl() + File.separator + envlosure.getBucketName() + File.separator + envlosure.getEvidenceSn() + ".pdf");
                            File file = new File(systemConfigService.getpdfurl() + File.separator + envlosure.getBucketName() + File.separator + envlosure.getEvidenceSn() + ".pdf");
                            // 创建到指定文件的输出流
                            fout = new FileOutputStream(file);
                            // 为文件输出流对接缓冲输出流对象
                            bout = new BufferedOutputStream(fout);
                            byte[] buffers = new byte[1024];
                            int len = bin.read(buffers);
                            while (len != -1) {
                                bout.write(buffers, 0, len);
                                len = bin.read(buffers);
                            }
                            // 刷新此输出流并强制写出所有缓冲的输出字节,必须这行代码,否则有可能有问题
                            bout.flush();
                        } catch (IOException e) {
                            e.printStackTrace();
                        } finally {
                            try {
                                if (bin != null) {
                                    bin.close();
                                }
                                if (fout != null) {
                                    fout.close();
                                }
                                if (bout != null) {
                                    bout.close();
                                }
                            } catch (IOException e) {
                                e.printStackTrace();
                            }
                        }
                        // 判断是否为用户上传pdf
                        if (envlosure != null) {
                            String urlFile = systemConfigService.getpdfurl() + File.separator + envlosure.getBucketName();
                            File filePathStr = new File(urlFile, envlosure.getEvidenceSn() + ".pdf");
                            log.error("***********filePathStr=" + filePathStr.getPath());
                            int pdfToPng = 0;
                            if (filePathStr != null && filePathStr.getPath() != null) {
                                try {
                                    pdfToPng = Pdf.pdf2png(filePathStr.getPath());
                                } catch (Exception e) {
                                    e.printStackTrace();
                                }
                            }
                            log.error("是否生成,数量****pdfToPng=" + pdfToPng);
                            // 判断生成图片是否成功
                            if (pdfToPng > 0) {
                                // 修改内容表信息,表示生成图片
                                mevencontent.setIsimg(1);
                                mevencontent.setImgCount(pdfToPng);
                                sqlSession.update("com.itrus.portal.db.EvidenceEventContentMapper.updateByPrimaryKey", mevencontent);
                                String oper = "原文图片生成成功";
                                String info = "图片地址:" + urlFile;
                                LogUtil.evidencelog(sqlSession, null, oper, info);
                            } else {
                                String oper = "原文图片生成失败";
                                String info = "失败原因:" + systemConfigService.getpdfurl() + File.separator + envlosure.getBucketName();
                                LogUtil.evidencelog(sqlSession, null, oper, info);
                            }
                        }
                    }
                }
                uiModel.addAttribute("selectType", 1);
            } else if ("合同摘要数据".equals(evidenceType)) {
                uiModel.addAttribute("selectType", 2);
            } else if ("图片摘要数据".equals(evidenceType)) {
                uiModel.addAttribute("selectType", 3);
            } else if ("信息摘要数据".equals(evidenceType)) {
                uiModel.addAttribute("selectType", 4);
            }
        } catch (JSONException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
        }
        uiModel.addAttribute("mevencontent", mevencontent);
        return "basicinformation/evenconrent";
    } else if (type == 5) {
        // 事件详细
        EvidenceEventContent mevencontent = sqlSession.selectOne("com.itrus.portal.db.EvidenceEventContentMapper.selectByPrimaryKey", id);
        // EvidenceBasicInformation basicInformation = basicInformationimpl.selectById(mevencontent.getEvidenceSn());
        EvidenceBasicInformationExample basicEx = new EvidenceBasicInformationExample();
        EvidenceBasicInformationExample.Criteria information = basicEx.createCriteria();
        information.andEvidenceSnEqualTo(mevencontent.getEvidenceSn());
        EvidenceBasicInformation basicInformation = sqlSession.selectOne("com.itrus.portal.db.EvidenceBasicInformationMapper.selectByExample", basicEx);
        EvidenceMainInformation mainInfo = new EvidenceMainInformation();
        // 事件对象
        EvidenceTrustedIdentityExample trustenid = new EvidenceTrustedIdentityExample();
        EvidenceTrustedIdentityExample.Criteria identitye = trustenid.createCriteria();
        // identitye.andBasicInformationEqualTo(mevencontent.getEvidenceSn());// 获取事件对象
        identitye.andEventContentEqualTo(mevencontent.getIdCode());
        // identitye.andMainInformationEqualTo(mid);
        EvidenceTrustedIdentity trusted = sqlSession.selectOne("com.itrus.portal.db.EvidenceTrustedIdentityMapper.selectByExample", trustenid);
        if (trusted != null) {
            String mainName = trusted.getMainInformation().split(";")[0];
            String mainIdentity = trusted.getMainInformation().split(";")[1];
            // 证据主体信息
            EvidenceMainInformationExample infomationE = new EvidenceMainInformationExample();
            EvidenceMainInformationExample.Criteria tionE = infomationE.createCriteria();
            tionE.andIdentificationEqualTo(mainIdentity);
            if (mainName != null) {
                tionE.andSubjectNameEqualTo(mainName);
            }
            List<EvidenceMainInformation> ainInfo = sqlSession.selectList("com.itrus.portal.db.EvidenceMainInformationMapper.selectByExample", infomationE);
            mainInfo = ainInfo.get(0);
        /*mainInfo = sqlSession.selectOne("com.itrus.portal.db.EvidenceMainInformationMapper.selectByPrimaryKey",
						trusted.getMainInformation());*/
        }
        // 事件行为
        EvidenceEventBehaviorExample eventbehaciorEx = new EvidenceEventBehaviorExample();
        EvidenceEventBehaviorExample.Criteria eventbe = eventbehaciorEx.createCriteria();
        eventbe.andEventContentEqualTo(mevencontent.getIdCode());
        // eventbe.andMainInformationEqualTo(mid);
        List<EvidenceEventBehavior> elist = sqlSession.selectList("com.itrus.portal.db.EvidenceEventBehaviorMapper.selectByExample", eventbehaciorEx);
        // 事件时间
        EvidenceEventTimeExample eventime = new EvidenceEventTimeExample();
        EvidenceEventTimeExample.Criteria eventimeEx = eventime.createCriteria();
        eventimeEx.andEventContentEqualTo(mevencontent.getIdCode());
        // eventimeEx.andMainInformationEqualTo(mid);
        List<EvidenceEventTime> meventime = sqlSession.selectList("com.itrus.portal.db.EvidenceEventTimeMapper.selectByExample", eventime);
        // 事件意愿
        EvidenceEventDesireExample desireEx = new EvidenceEventDesireExample();
        EvidenceEventDesireExample.Criteria eventdesire = desireEx.createCriteria();
        eventdesire.andEventContenteEqualTo(mevencontent.getIdCode());
        // eventdesire.andMainInformationEqualTo(mid);
        EvidenceEventDesire meventdesire = sqlSession.selectOne("com.itrus.portal.db.EvidenceEventDesireMapper.selectByExample", desireEx);
        // 事件网络地址
        EvidenceEventNetworkAddressExample network = new EvidenceEventNetworkAddressExample();
        EvidenceEventNetworkAddressExample.Criteria address = network.createCriteria();
        address.andEventContentEqualTo(mevencontent.getIdCode());
        // address.andMainInformationEqualTo(mid);
        EvidenceEventNetworkAddress networkaddress = sqlSession.selectOne("com.itrus.portal.db.EvidenceEventNetworkAddressMapper.selectByExample", network);
        uiModel.addAttribute("mevencontent", mevencontent);
        uiModel.addAttribute("meventdesire", meventdesire);
        uiModel.addAttribute("networkaddress", networkaddress);
        uiModel.addAttribute("basicInformation", basicInformation);
        uiModel.addAttribute("trusted", trusted);
        uiModel.addAttribute("mainInfo", mainInfo);
        uiModel.addAttribute("elist", elist);
        uiModel.addAttribute("meventime", meventime);
        return "basicinformation/certificationdetails";
    } else if (type == 6) {
        // 服务委托人签名信息
        EvidenceClientSignature cliensig = sqlSession.selectOne("com.itrus.portal.db.EvidenceClientSignatureMapper.selectByPrimaryKey", id);
        EvidenceEnclosureExample enclo = new EvidenceEnclosureExample();
        EvidenceEnclosureExample.Criteria enclosureEx = enclo.createCriteria();
        enclosureEx.andEvidenceSnEqualTo(cliensig.getEvidenceSn());
        enclosureEx.andPdfTypeEqualTo("1");
        EvidenceEnclosure enclosure = sqlSession.selectOne("com.itrus.portal.db.EvidenceEnclosureMapper.selectByExample", enclo);
        // 天威签名信息
        EvidenceClientSignatureExample cilentsign = new EvidenceClientSignatureExample();
        EvidenceClientSignatureExample.Criteria signature = cilentsign.createCriteria();
        signature.andEvidenceSnEqualTo(enclosure.getEvidenceSn());
        signature.andNameEqualTo("1");
        EvidenceClientSignature cilentsignature = sqlSession.selectOne("com.itrus.portal.db.EvidenceClientSignatureMapper.selectByExample", cilentsign);
        EvidenceCert oneCert = new EvidenceCert();
        EvidenceCheck oneCheck = new EvidenceCheck();
        if (cilentsignature != null) {
            // 天威证书信息
            /*EvidenceCertExample certE = new EvidenceCertExample();
				EvidenceCertExample.Criteria evidenceCertE = certE.createCriteria();
				evidenceCertE.andClientSignatureEqualTo(cilentsignature.getId());
				oneCert = sqlSession.selectOne("com.itrus.portal.db.EvidenceCertMapper.selectByExample",certE);*/
            oneCert = sqlSession.selectOne("com.itrus.portal.db.EvidenceCertMapper.selectByPrimaryKey", cilentsignature.getCertId());
            // 天威核验信息
            EvidenceCheckExample checkE = new EvidenceCheckExample();
            EvidenceCheckExample.Criteria evidenceCheckE = checkE.createCriteria();
            evidenceCheckE.andClientSignatureEqualTo(cilentsignature.getId());
            oneCheck = sqlSession.selectOne("com.itrus.portal.db.EvidenceCheckMapper.selectByExample", checkE);
        }
        // 服务委托人时间戳信息
        EvidenceClientTimeStampExample clientTime = new EvidenceClientTimeStampExample();
        EvidenceClientTimeStampExample.Criteria stamp = clientTime.createCriteria();
        stamp.andEvidenceSnEqualTo(enclosure.getEvidenceSn());
        stamp.andNameEqualTo("0");
        EvidenceClientTimeStamp clientTimestamp = sqlSession.selectOne("com.itrus.portal.db.EvidenceClientTimeStampMapper.selectByExample", clientTime);
        // 天威时间戳信息
        EvidenceClientTimeStampExample tclientTime = new EvidenceClientTimeStampExample();
        EvidenceClientTimeStampExample.Criteria tstamp = tclientTime.createCriteria();
        tstamp.andEvidenceSnEqualTo(enclosure.getEvidenceSn());
        tstamp.andNameEqualTo("1");
        EvidenceClientTimeStamp tclientTimestamp = sqlSession.selectOne("com.itrus.portal.db.EvidenceClientTimeStampMapper.selectByExample", tclientTime);
        // 服务委托人证书信息
        /*EvidenceCertExample certEx = new EvidenceCertExample();
			EvidenceCertExample.Criteria evidenceCert = certEx.createCriteria();
			evidenceCert.andClientSignatureEqualTo(cliensig.getId());
			List<EvidenceCert> listCert = sqlSession
					.selectList("com.itrus.portal.db.EvidenceCertMapper.selectByExample", certEx);*/
        List<EvidenceCert> listCert = sqlSession.selectList("com.itrus.portal.db.EvidenceCertMapper.selectByPrimaryKey", cliensig.getCertId());
        // 服务委托人核验信息
        EvidenceCheckExample checkEx = new EvidenceCheckExample();
        EvidenceCheckExample.Criteria evidenceCheck = checkEx.createCriteria();
        evidenceCheck.andClientSignatureEqualTo(cliensig.getId());
        EvidenceCheck listCheck = sqlSession.selectOne("com.itrus.portal.db.EvidenceCheckMapper.selectByExample", checkEx);
        Map<Long, EvidenceCheck> mapCheck = new HashMap<Long, EvidenceCheck>();
        // 服务委托人证书核验信息
        for (EvidenceCert c : listCert) {
            EvidenceCheckExample certcheckEx = new EvidenceCheckExample();
            EvidenceCheckExample.Criteria certCheck = certcheckEx.createCriteria();
            certCheck.andEvidenceCertEqualTo(c.getId());
            EvidenceCheck listCertCheck = sqlSession.selectOne("com.itrus.portal.db.EvidenceCheckMapper.selectByExample", certcheckEx);
            mapCheck.put(c.getId(), listCertCheck);
        }
        // 服务委托人证书信息
        uiModel.addAttribute("listCert", listCert);
        // 服务委托人核验信息
        uiModel.addAttribute("listCheck", listCheck);
        // 天威证书信息
        uiModel.addAttribute("oneCert", oneCert);
        // 天威核验信息
        uiModel.addAttribute("oneCheck", oneCheck);
        // 服务委托人证书核验信息
        uiModel.addAttribute("mapCheck", mapCheck);
        // 服务委托人签名信息
        uiModel.addAttribute("cliensig", cliensig);
        // 天威签名信息
        uiModel.addAttribute("cilentsignature", cilentsignature);
        // 服务委托人时间戳信息
        uiModel.addAttribute("clientTimestamp", clientTimestamp);
        // 天威时间戳信息
        uiModel.addAttribute("tclientTimestamp", tclientTimestamp);
        return "basicinformation/evidenceexists";
    }
    /*
			 * else if (type == 7) { EvidenceIndividual indiv = sqlSession
			 * .selectOne(
			 * "com.itrus.portal.db.EvidenceIndividualMapper.selectByPrimaryKey",
			 * id); String cid = indiv.getId().toString(); int evid =
			 * Integer.parseInt(cid); EvidenceRealNameExample realnameE = new
			 * EvidenceRealNameExample(); EvidenceRealNameExample.Criteria
			 * realnameEx = realnameE.createCriteria();
			 * realnameEx.andIndividualEqualTo(evid); EvidenceRealName erealname
			 * = sqlSession .selectOne(
			 * "com.itrus.portal.db.EvidenceRealNameMapper.selectByExample",
			 * realnameE); EvidenceMainInformation mainInfo =
			 * sqlSession.selectOne(
			 * "com.itrus.portal.db.EvidenceMainInformationMapper.selectByPrimaryKey",
			 * erealname.getMainInformation()); uiModel.addAttribute("indiv",
			 * indiv); uiModel.addAttribute("mainInfo", mainInfo); return
			 * "basicinformation/ineividual"; }
			 */
    return null;
}
Also used : EvidenceClientTimeStamp(com.itrus.portal.db.EvidenceClientTimeStamp) RealNameAuthentication(com.itrus.portal.db.RealNameAuthentication) EvidenceClientTimeStampExample(com.itrus.portal.db.EvidenceClientTimeStampExample) BufferedInputStream(java.io.BufferedInputStream) BASE64Decoder(sun.misc.BASE64Decoder) ArrayList(java.util.ArrayList) List(java.util.List) EvidenceEventDesire(com.itrus.portal.db.EvidenceEventDesire) EvidenceEventNetworkAddressExample(com.itrus.portal.db.EvidenceEventNetworkAddressExample) EvidenceEventBehaviorExample(com.itrus.portal.db.EvidenceEventBehaviorExample) EvidenceEnclosureExample(com.itrus.portal.db.EvidenceEnclosureExample) EvidenceCheckExample(com.itrus.portal.db.EvidenceCheckExample) EvidenceSaveServiceExample(com.itrus.portal.db.EvidenceSaveServiceExample) EvidenceCert(com.itrus.portal.db.EvidenceCert) JSONObject(com.alibaba.fastjson.JSONObject) ByteArrayInputStream(java.io.ByteArrayInputStream) FileOutputStream(java.io.FileOutputStream) EvidenceEventTime(com.itrus.portal.db.EvidenceEventTime) File(java.io.File) EvidenceEventNetworkAddress(com.itrus.portal.db.EvidenceEventNetworkAddress) Map(java.util.Map) HashMap(java.util.HashMap) EvidenceBasicInformation(com.itrus.portal.db.EvidenceBasicInformation) EvidenceSaveService(com.itrus.portal.db.EvidenceSaveService) EvidenceEnclosure(com.itrus.portal.db.EvidenceEnclosure) EvidenceMainInformation(com.itrus.portal.db.EvidenceMainInformation) EvidenceEventDesireExample(com.itrus.portal.db.EvidenceEventDesireExample) EvidenceEventTimeExample(com.itrus.portal.db.EvidenceEventTimeExample) BufferedOutputStream(java.io.BufferedOutputStream) BASE64Decoder(sun.misc.BASE64Decoder) EvidenceEventContent(com.itrus.portal.db.EvidenceEventContent) EvidenceClientSignature(com.itrus.portal.db.EvidenceClientSignature) AppService(com.itrus.portal.db.AppService) EvidenceCheck(com.itrus.portal.db.EvidenceCheck) JSONArray(org.json.JSONArray) JSONException(org.json.JSONException) IOException(java.io.IOException) EvidenceClientSignatureExample(com.itrus.portal.db.EvidenceClientSignatureExample) JSONException(org.json.JSONException) IOException(java.io.IOException) EvidenceBasicInformationExample(com.itrus.portal.db.EvidenceBasicInformationExample) EvidenceEventBehavior(com.itrus.portal.db.EvidenceEventBehavior) EvidenceTrustedIdentity(com.itrus.portal.db.EvidenceTrustedIdentity) EvidenceMainInformationExample(com.itrus.portal.db.EvidenceMainInformationExample) EvidenceTrustedIdentityExample(com.itrus.portal.db.EvidenceTrustedIdentityExample) RequestMapping(org.springframework.web.bind.annotation.RequestMapping)

Example 3 with EvidenceClientSignatureExample

use of com.itrus.portal.db.EvidenceClientSignatureExample in project portal by ixinportal.

the class BasicInformationController method show1.

/**
 * 身份认证详情
 *
 * @param id
 * @param uiModel
 * @return
 */
@RequestMapping(value = "/identity/{id}", produces = "text/html")
public String show1(@PathVariable("id") Long id, Model uiModel) {
    // 得到证据详情
    EvidenceBasicInformation basicinfor = sqlSession.selectOne("com.itrus.portal.db.EvidenceBasicInformationMapper.selectByPrimaryKey", id);
    List<EvidenceMainInformation> mlist = new ArrayList<EvidenceMainInformation>();
    // 得到主体身份信息
    EvidenceSubjectIdentityExample subjectExample = new EvidenceSubjectIdentityExample();
    EvidenceSubjectIdentityExample.Criteria identity = subjectExample.createCriteria();
    identity.andBasicInformationEqualTo(basicinfor.getEvidenceSn());
    List<EvidenceSubjectIdentity> subjectIdentity = sqlSession.selectList("com.itrus.portal.db.EvidenceSubjectIdentityMapper.selectByExample", subjectExample);
    for (int i = 0; i < subjectIdentity.size(); i++) {
        // 得到主体信息
        /*List<EvidenceMainInformation> mainInfo = sqlSession.selectList(
					"com.itrus.portal.db.EvidenceMainInformationMapper.selectByPrimaryKey",
					subjectIdentity.get(i).getMainInformation());*/
        EvidenceMainInformationExample infomationE = new EvidenceMainInformationExample();
        EvidenceMainInformationExample.Criteria tionE = infomationE.createCriteria();
        tionE.andIdentificationEqualTo(subjectIdentity.get(i).getMainInformation());
        // infomationE.isDistinct();
        if (subjectIdentity.get(i).getMainName() != null) {
            tionE.andSubjectNameEqualTo(subjectIdentity.get(i).getMainName());
        }
        List<EvidenceMainInformation> mainInfo = sqlSession.selectList("com.itrus.portal.db.EvidenceMainInformationMapper.selectByExample", infomationE);
        if (mainInfo.size() != 0) {
            mlist.add(mainInfo.get(0));
        }
    // mlist.add(mainInfo);
    }
    // 得到身份意愿鉴别
    EvidenceDesireIdentifyExample desireid = new EvidenceDesireIdentifyExample();
    EvidenceDesireIdentifyExample.Criteria desireidentitfy = desireid.createCriteria();
    desireidentitfy.andEvidenceSnEqualTo(basicinfor.getEvidenceSn());
    EvidenceDesireIdentify desire = sqlSession.selectOne("com.itrus.portal.db.EvidenceDesireIdentifyMapper.selectByExample", desireid);
    // 得到证据附件信息,用于查询服务委托人等信息
    EvidenceEnclosureExample enclou = new EvidenceEnclosureExample();
    EvidenceEnclosureExample.Criteria sure = enclou.createCriteria();
    // sure.andBasicInformationEqualTo(id);
    sure.andEvidenceSnEqualTo(basicinfor.getEvidenceSn());
    sure.andPdfTypeEqualTo("1");
    EvidenceEnclosure enclosure = sqlSession.selectOne("com.itrus.portal.db.EvidenceEnclosureMapper.selectByExample", enclou);
    if (enclosure != null) {
        // 服务委托人签名信息
        EvidenceClientSignatureExample client = new EvidenceClientSignatureExample();
        EvidenceClientSignatureExample.Criteria signat = client.createCriteria();
        signat.andEvidenceSnEqualTo(enclosure.getEvidenceSn());
        signat.andNameEqualTo("0");
        EvidenceClientSignature cliensig = sqlSession.selectOne("com.itrus.portal.db.EvidenceClientSignatureMapper.selectByExample", client);
        // 天威签名信息
        EvidenceClientSignatureExample cilentsign = new EvidenceClientSignatureExample();
        EvidenceClientSignatureExample.Criteria signature = cilentsign.createCriteria();
        signature.andEvidenceSnEqualTo(enclosure.getEvidenceSn());
        signature.andNameEqualTo("1");
        EvidenceClientSignature cilentsignature = sqlSession.selectOne("com.itrus.portal.db.EvidenceClientSignatureMapper.selectByExample", cilentsign);
        if (cilentsignature != null) {
            // 天威证书信息
            /*EvidenceCertExample certE = new EvidenceCertExample();
				EvidenceCertExample.Criteria evidenceCertE = certE.createCriteria();
				evidenceCertE.andClientSignatureEqualTo(cilentsignature.getId());*/
            EvidenceCert oneCert = sqlSession.selectOne("com.itrus.portal.db.EvidenceCertMapper.selectByPrimaryKey", cilentsignature.getCertId());
            // 天威核验信息
            EvidenceCheckExample checkE = new EvidenceCheckExample();
            EvidenceCheckExample.Criteria evidenceCheckE = checkE.createCriteria();
            evidenceCheckE.andClientSignatureEqualTo(cilentsignature.getId());
            EvidenceCheck oneCheck = sqlSession.selectOne("com.itrus.portal.db.EvidenceCheckMapper.selectByExample", checkE);
            // 天威证书信息
            uiModel.addAttribute("oneCert", oneCert);
            // 天威核验信息
            uiModel.addAttribute("oneCheck", oneCheck);
        }
        // 服务委托人时间戳信息
        EvidenceClientTimeStampExample clientTime = new EvidenceClientTimeStampExample();
        EvidenceClientTimeStampExample.Criteria stamp = clientTime.createCriteria();
        stamp.andEvidenceSnEqualTo(enclosure.getEvidenceSn());
        stamp.andNameEqualTo("0");
        EvidenceClientTimeStamp clientTimestamp = sqlSession.selectOne("com.itrus.portal.db.EvidenceClientTimeStampMapper.selectByExample", clientTime);
        // 天威时间戳信息
        EvidenceClientTimeStampExample tclientTime = new EvidenceClientTimeStampExample();
        EvidenceClientTimeStampExample.Criteria tstamp = tclientTime.createCriteria();
        tstamp.andEvidenceSnEqualTo(enclosure.getEvidenceSn());
        tstamp.andNameEqualTo("1");
        EvidenceClientTimeStamp tclientTimestamp = sqlSession.selectOne("com.itrus.portal.db.EvidenceClientTimeStampMapper.selectByExample", tclientTime);
        EvidenceCheck listCheck = new EvidenceCheck();
        List<EvidenceCert> listCert = new ArrayList<EvidenceCert>();
        if (cliensig != null && cliensig.getId() != null) {
            // 服务委托人证书信息
            /*EvidenceCertExample certEx = new EvidenceCertExample();
				EvidenceCertExample.Criteria evidenceCert = certEx.createCriteria();
				evidenceCert.andClientSignatureEqualTo(cliensig.getId());*/
            listCert = sqlSession.selectList("com.itrus.portal.db.EvidenceCertMapper.selectByPrimaryKey", cliensig.getCertId());
            // 服务委托人核验信息
            EvidenceCheckExample checkEx = new EvidenceCheckExample();
            EvidenceCheckExample.Criteria evidenceCheck = checkEx.createCriteria();
            evidenceCheck.andClientSignatureEqualTo(cliensig.getId());
            listCheck = sqlSession.selectOne("com.itrus.portal.db.EvidenceCheckMapper.selectByExample", checkEx);
        }
        Map<Long, EvidenceCheck> mapCheck = new HashMap<Long, EvidenceCheck>();
        // 服务委托人证书核验信息
        for (EvidenceCert c : listCert) {
            EvidenceCheckExample certcheckEx = new EvidenceCheckExample();
            EvidenceCheckExample.Criteria certCheck = certcheckEx.createCriteria();
            certCheck.andEvidenceCertEqualTo(c.getId());
            EvidenceCheck listCertCheck = sqlSession.selectOne("com.itrus.portal.db.EvidenceCheckMapper.selectByExample", certcheckEx);
            mapCheck.put(c.getId(), listCertCheck);
        }
        // 服务委托人证书信息
        uiModel.addAttribute("listCert", listCert);
        // 服务委托人核验信息
        uiModel.addAttribute("listCheck", listCheck);
        // 服务委托人证书核验信息
        uiModel.addAttribute("mapCheck", mapCheck);
        // 服务委托人签名信息
        uiModel.addAttribute("cliensig", cliensig);
        // 天威签名信息
        uiModel.addAttribute("cilentsignature", cilentsignature);
        // 服务委托人时间戳信息
        uiModel.addAttribute("clientTimestamp", clientTimestamp);
        // 天威时间戳信息
        uiModel.addAttribute("tclientTimestamp", tclientTimestamp);
    }
    // 身份实名认证信息
    EvidenceRealNameExample realnameE = new EvidenceRealNameExample();
    EvidenceRealNameExample.Criteria realnameEx = realnameE.createCriteria();
    // realnameEx.andMainInformationEqualTo(m.getId());
    // realnameEx.andBasicInformationEqualTo(id);
    realnameEx.andEvidenceSnEqualTo(basicinfor.getEvidenceSn());
    EvidenceRealName erealname = sqlSession.selectOne("com.itrus.portal.db.EvidenceRealNameMapper.selectByExample", realnameE);
    Map<Long, AppService> rappService = new HashMap<Long, AppService>();
    if (erealname != null) {
        uiModel.addAttribute("erealname", erealname);
        if ("2".equals(erealname.getEventVerifierType()) || "3".equals(erealname.getEventVerifierType())) {
            // 判断平台
            if ("1".equals(erealname.getType())) {
                EvidenceCompaniesSubmitExample evidenceCompanies = new EvidenceCompaniesSubmitExample();
                EvidenceCompaniesSubmitExample.Criteria submit = evidenceCompanies.createCriteria();
                submit.andIdCodeEqualTo(erealname.getCompaniesSubmit());
                EvidenceCompaniesSubmit companiesSubmit = sqlSession.selectOne("com.itrus.portal.db.EvidenceCompaniesSubmitMapper.selectByExample", evidenceCompanies);
                if (companiesSubmit != null && companiesSubmit.getRepresentative() != null) {
                    // 法定代表人
                    EvidenceRepresentativeExample representaioce = new EvidenceRepresentativeExample();
                    EvidenceRepresentativeExample.Criteria evidenceRepresent = representaioce.createCriteria();
                    evidenceRepresent.andIdCodeEqualTo(companiesSubmit.getRepresentative());
                    EvidenceRepresentative representative = sqlSession.selectOne("com.itrus.portal.db.EvidenceRepresentativeMapper.selectByExample", representaioce);
                    uiModel.addAttribute("representative", representative);
                }
                if (companiesSubmit != null && companiesSubmit.getTheAgent() != null) {
                    // 代理人
                    EvidenceTheAgentExample evidenceTheAgent = new EvidenceTheAgentExample();
                    EvidenceTheAgentExample.Criteria theAgentEx = evidenceTheAgent.createCriteria();
                    theAgentEx.andIdCodeEqualTo(companiesSubmit.getTheAgent());
                    EvidenceTheAgent theagent = sqlSession.selectOne("com.itrus.portal.db.EvidenceTheAgentMapper.selectByExample", evidenceTheAgent);
                    uiModel.addAttribute("theagent", theagent);
                }
                uiModel.addAttribute("companiesSubmit", companiesSubmit);
            } else {
                // 天威
                EvidenceIndividualExample evidenceIndividual = new EvidenceIndividualExample();
                EvidenceIndividualExample.Criteria individual = evidenceIndividual.createCriteria();
                individual.andIdCodeEqualTo(erealname.getIndividual());
                EvidenceIndividual indiv = sqlSession.selectOne("com.itrus.portal.db.EvidenceIndividualMapper.selectByExample", evidenceIndividual);
                uiModel.addAttribute("indiv", indiv);
            }
        } else if ("1".equals(erealname.getEventVerifierType())) {
            // 天威
            if ("1".equals(erealname.getType())) {
                // 获取流水号
                String serialnamber = erealname.getSerialnumber();
                // 将多个流水号以逗号分隔成一个数组
                String[] namber = serialnamber.split(",");
                // 声明一个list存储流水号
                List<String> listString = new ArrayList<String>();
                for (int i = 0; i < namber.length; i++) {
                    // 将数组中的流水号放入list中
                    listString.add(namber[i]);
                }
                // 查询实名认证信息
                RealNameRecordExample realname = new RealNameRecordExample();
                RealNameRecordExample.Criteria recor = realname.createCriteria();
                recor.andSerialnumberIn(listString);
                realname.setOrderByClause("returntime");
                listReal = sqlSession.selectList("com.itrus.portal.db.RealNameRecordMapper.selectByExample", realname);
                for (RealNameRecord real : listReal) {
                    AppServiceAuthentication authent = sqlSession.selectOne("com.itrus.portal.db.AppServiceAuthenticationMapper.selectByPrimaryKey", real.getAppServiceAuthentication());
                    // 得到服务编码
                    AppService appservice = appService.selectById(authent.getAppService());
                    rappService.put(real.getId(), appservice);
                }
            // realnameRecor.put(m.getId(), listReal);
            } else {
                String serialnamber = erealname.getSerialnumber();
                String[] namber = serialnamber.split(",");
                List<String> listString = new ArrayList<String>();
                for (int i = 0; i < namber.length; i++) {
                    listString.add(namber[i]);
                // listReal.add(realnameRecor1);
                }
                PersonalNameExample personal = new PersonalNameExample();
                PersonalNameExample.Criteria personalname = personal.createCriteria();
                personalname.andSerialnumberIn(listString);
                personal.setOrderByClause("returntime");
                listPersonal = sqlSession.selectList("com.itrus.portal.db.PersonalNameMapper.selectByExample", personal);
                uiModel.addAttribute("listPersonal", listPersonal);
            // personalName.put(m.getId(), listPersonal);
            }
        }
    }
    uiModel.addAttribute("enclosure", enclosure);
    uiModel.addAttribute("rappService", rappService);
    uiModel.addAttribute("listReal", listReal);
    uiModel.addAttribute("desire", desire);
    uiModel.addAttribute("mainInfo", mlist);
    uiModel.addAttribute("basicinfor", basicinfor);
    return "basicinformation/show1";
}
Also used : EvidenceIndividual(com.itrus.portal.db.EvidenceIndividual) EvidenceSubjectIdentityExample(com.itrus.portal.db.EvidenceSubjectIdentityExample) HashMap(java.util.HashMap) EvidenceClientTimeStamp(com.itrus.portal.db.EvidenceClientTimeStamp) PersonalNameExample(com.itrus.portal.db.PersonalNameExample) ArrayList(java.util.ArrayList) EvidenceRealName(com.itrus.portal.db.EvidenceRealName) EvidenceClientTimeStampExample(com.itrus.portal.db.EvidenceClientTimeStampExample) ArrayList(java.util.ArrayList) List(java.util.List) EvidenceCompaniesSubmitExample(com.itrus.portal.db.EvidenceCompaniesSubmitExample) EvidenceDesireIdentify(com.itrus.portal.db.EvidenceDesireIdentify) EvidenceSubjectIdentity(com.itrus.portal.db.EvidenceSubjectIdentity) EvidenceEnclosureExample(com.itrus.portal.db.EvidenceEnclosureExample) EvidenceCheckExample(com.itrus.portal.db.EvidenceCheckExample) RealNameRecord(com.itrus.portal.db.RealNameRecord) AppServiceAuthentication(com.itrus.portal.db.AppServiceAuthentication) EvidenceCert(com.itrus.portal.db.EvidenceCert) EvidenceRepresentative(com.itrus.portal.db.EvidenceRepresentative) EvidenceIndividualExample(com.itrus.portal.db.EvidenceIndividualExample) EvidenceRealNameExample(com.itrus.portal.db.EvidenceRealNameExample) EvidenceBasicInformation(com.itrus.portal.db.EvidenceBasicInformation) EvidenceEnclosure(com.itrus.portal.db.EvidenceEnclosure) EvidenceMainInformation(com.itrus.portal.db.EvidenceMainInformation) EvidenceTheAgent(com.itrus.portal.db.EvidenceTheAgent) EvidenceDesireIdentifyExample(com.itrus.portal.db.EvidenceDesireIdentifyExample) EvidenceCompaniesSubmit(com.itrus.portal.db.EvidenceCompaniesSubmit) EvidenceClientSignature(com.itrus.portal.db.EvidenceClientSignature) AppService(com.itrus.portal.db.AppService) EvidenceCheck(com.itrus.portal.db.EvidenceCheck) EvidenceClientSignatureExample(com.itrus.portal.db.EvidenceClientSignatureExample) EvidenceTheAgentExample(com.itrus.portal.db.EvidenceTheAgentExample) EvidenceRepresentativeExample(com.itrus.portal.db.EvidenceRepresentativeExample) EvidenceMainInformationExample(com.itrus.portal.db.EvidenceMainInformationExample) RealNameRecordExample(com.itrus.portal.db.RealNameRecordExample) RequestMapping(org.springframework.web.bind.annotation.RequestMapping)

Aggregations

EvidenceBasicInformation (com.itrus.portal.db.EvidenceBasicInformation)3 EvidenceCert (com.itrus.portal.db.EvidenceCert)3 EvidenceCheck (com.itrus.portal.db.EvidenceCheck)3 EvidenceCheckExample (com.itrus.portal.db.EvidenceCheckExample)3 EvidenceClientSignature (com.itrus.portal.db.EvidenceClientSignature)3 EvidenceClientSignatureExample (com.itrus.portal.db.EvidenceClientSignatureExample)3 EvidenceClientTimeStamp (com.itrus.portal.db.EvidenceClientTimeStamp)3 EvidenceClientTimeStampExample (com.itrus.portal.db.EvidenceClientTimeStampExample)3 EvidenceEnclosure (com.itrus.portal.db.EvidenceEnclosure)3 EvidenceEnclosureExample (com.itrus.portal.db.EvidenceEnclosureExample)3 EvidenceMainInformation (com.itrus.portal.db.EvidenceMainInformation)3 EvidenceMainInformationExample (com.itrus.portal.db.EvidenceMainInformationExample)3 ArrayList (java.util.ArrayList)3 AppService (com.itrus.portal.db.AppService)2 EvidenceBasicInformationExample (com.itrus.portal.db.EvidenceBasicInformationExample)2 EvidenceCompaniesSubmit (com.itrus.portal.db.EvidenceCompaniesSubmit)2 EvidenceCompaniesSubmitExample (com.itrus.portal.db.EvidenceCompaniesSubmitExample)2 EvidenceDesireIdentify (com.itrus.portal.db.EvidenceDesireIdentify)2 EvidenceDesireIdentifyExample (com.itrus.portal.db.EvidenceDesireIdentifyExample)2 EvidenceEventBehavior (com.itrus.portal.db.EvidenceEventBehavior)2