use of com.itrus.portal.db.EvidenceClientTimeStamp 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";
}
use of com.itrus.portal.db.EvidenceClientTimeStamp in project portal by ixinportal.
the class EvidenceQueueThread method run.
@Override
public void run() {
boolean isException = false;
while (true) {
// long startDate = System.currentTimeMillis();
log.debug("EvidenceQueueThread execute run,the queue size is [" + OBJECT_QUEUE.size() + "]");
if (OBJECT_QUEUE.isEmpty()) {
try {
// 若队列中没有信息则等待10秒
sleep(10 * 1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
continue;
}
log.debug("EvidenceQueueThread execute run,the queue size is [" + OBJECT_QUEUE.size() + "]");
// 存证记录信息
List<EvidenceBasicInformation> basicInformations = new ArrayList<EvidenceBasicInformation>();
// 事件内容记录
List<EvidenceEventContent> eventContents = new ArrayList<EvidenceEventContent>();
// 主体
Map<String, EvidenceMainInformation> mainInformationMap = new HashMap<>();
// 主体与记录关联
List<EvidenceSubjectIdentity> subjectIdentites = new ArrayList<EvidenceSubjectIdentity>();
// 日志记录
List<EvidenceLog> logs = new ArrayList<EvidenceLog>();
// 签名服务信息记录
List<EvidenceClientSignature> signatures = new ArrayList<EvidenceClientSignature>();
// 时间戳服务信息记录
List<EvidenceClientTimeStamp> clientTimeStamps = new ArrayList<EvidenceClientTimeStamp>();
// 附件信息记录
List<EvidenceEnclosure> enclosures = new ArrayList<EvidenceEnclosure>();
// 身份意愿鉴别信息记录
List<EvidenceDesireIdentify> desireIdentifies = new ArrayList<EvidenceDesireIdentify>();
// 身份实名信息记录
List<EvidenceRealName> realNames = new ArrayList<EvidenceRealName>();
// 身份个人实名提交信息
List<EvidenceIndividual> individuals = new ArrayList<EvidenceIndividual>();
// 身份企业法人实名提交信息
List<EvidenceRepresentative> representatives = new ArrayList<EvidenceRepresentative>();
// 身份企业代理人实名提交信息
List<EvidenceTheAgent> agents = new ArrayList<EvidenceTheAgent>();
// 身份企业实名提交信息
List<EvidenceCompaniesSubmit> companiesSubmits = new ArrayList<EvidenceCompaniesSubmit>();
// 事件意愿认证信息
List<EvidenceEventDesire> eventDesires = new ArrayList<EvidenceEventDesire>();
// 事件地点认证信息
List<EvidenceEventNetworkAddress> addresses = new ArrayList<EvidenceEventNetworkAddress>();
// 事件对象认证信息
List<EvidenceTrustedIdentity> trustedIdentities = new ArrayList<EvidenceTrustedIdentity>();
// 事件行为信息
List<EvidenceEventBehavior> eventBehaviors = new ArrayList<EvidenceEventBehavior>();
// 事件时间戳信息
List<EvidenceEventTime> eventTimes = new ArrayList<EvidenceEventTime>();
// 用户上传证书信息
List<EvidenceCertUser> certUsers = new ArrayList<EvidenceCertUser>();
for (int i = 0; !OBJECT_QUEUE.isEmpty() && i < 1000; i++) {
Object object = OBJECT_QUEUE.poll();
isOver = false;
if (object instanceof EvidenceBasicInformation) {
EvidenceBasicInformation ebi = (EvidenceBasicInformation) object;
basicInformations.add(ebi);
} else if (object instanceof EvidenceEventContent) {
EvidenceEventContent eec = (EvidenceEventContent) object;
eventContents.add(eec);
} else if (object instanceof EvidenceMainInformation) {
EvidenceMainInformation emi = (EvidenceMainInformation) object;
mainInformationMap.put(emi.getSubjectName() + emi.getIdentification(), emi);
} else if (object instanceof EvidenceSubjectIdentity) {
EvidenceSubjectIdentity esi = (EvidenceSubjectIdentity) object;
subjectIdentites.add(esi);
} else if (object instanceof EvidenceLog) {
EvidenceLog eLog = (EvidenceLog) object;
eLog.setInfo(StringUtils.replaceHtml(eLog.getInfo()));
logs.add(eLog);
} else if (object instanceof EvidenceClientSignature) {
EvidenceClientSignature ecs = (EvidenceClientSignature) object;
signatures.add(ecs);
} else if ((object instanceof EvidenceClientTimeStamp)) {
EvidenceClientTimeStamp ects = (EvidenceClientTimeStamp) object;
clientTimeStamps.add(ects);
} else if ((object instanceof EvidenceEnclosure)) {
EvidenceEnclosure ee = (EvidenceEnclosure) object;
enclosures.add(ee);
} else if ((object instanceof EvidenceDesireIdentify)) {
EvidenceDesireIdentify edi = (EvidenceDesireIdentify) object;
desireIdentifies.add(edi);
} else if ((object instanceof EvidenceEnclosure)) {
EvidenceEnclosure ee = (EvidenceEnclosure) object;
enclosures.add(ee);
} else if ((object instanceof EvidenceRealName)) {
EvidenceRealName erl = (EvidenceRealName) object;
realNames.add(erl);
} else if ((object instanceof EvidenceIndividual)) {
EvidenceIndividual ei = (EvidenceIndividual) object;
individuals.add(ei);
} else if ((object instanceof EvidenceRepresentative)) {
EvidenceRepresentative er = (EvidenceRepresentative) object;
representatives.add(er);
} else if ((object instanceof EvidenceTheAgent)) {
EvidenceTheAgent eta = (EvidenceTheAgent) object;
agents.add(eta);
} else if ((object instanceof EvidenceCompaniesSubmit)) {
EvidenceCompaniesSubmit ecs = (EvidenceCompaniesSubmit) object;
companiesSubmits.add(ecs);
} else if ((object instanceof EvidenceEventDesire)) {
EvidenceEventDesire eed = (EvidenceEventDesire) object;
eventDesires.add(eed);
} else if ((object instanceof EvidenceEventNetworkAddress)) {
EvidenceEventNetworkAddress eena = (EvidenceEventNetworkAddress) object;
addresses.add(eena);
} else if ((object instanceof EvidenceTrustedIdentity)) {
EvidenceTrustedIdentity eti = (EvidenceTrustedIdentity) object;
trustedIdentities.add(eti);
} else if ((object instanceof EvidenceEventBehavior)) {
EvidenceEventBehavior eeb = (EvidenceEventBehavior) object;
eventBehaviors.add(eeb);
} else if ((object instanceof EvidenceEventTime)) {
EvidenceEventTime eet = (EvidenceEventTime) object;
eventTimes.add(eet);
} else if ((object instanceof EvidenceCertUser)) {
EvidenceCertUser ecu = (EvidenceCertUser) object;
certUsers.add(ecu);
}
}
// 保存事件内容记录
if (!eventContents.isEmpty())
try {
sqlSession.insert("com.itrus.portal.db.EvidenceEventContentMapper.insertOrUpdate", eventContents.toArray());
} catch (Exception e) {
isException = true;
// 将错误信息显示,不进行操作
this.log.error("EvidenceQueueThread add eventContents " + e);
Calendar cal = Calendar.getInstance();
String content = JSONObject.toJSONString(eventContents.toArray());
String fileName = "EvidenceEventContent" + "_" + cal.get(Calendar.YEAR) + cal.get(Calendar.MONTH) + cal.get(Calendar.DATE) + cal.get(Calendar.HOUR) + cal.get(Calendar.MINUTE) + cal.get(Calendar.SECOND);
try {
saveContent(content, fileName);
} catch (Exception e2) {
EvidenceLog log = new EvidenceLog();
log.setCreateTime(new Date());
log.setType("存储入库异常_存证事件内容");
log.setInfo("失败原因:" + e2 + ",失败数据:" + content);
log.setIp(null);
logs.add(log);
}
} finally {
eventContents = null;
}
// 保存证据主体记录
if (!mainInformationMap.isEmpty())
try {
sqlSession.insert("com.itrus.portal.db.EvidenceMainInformationMapper.insertOrUpdate", mainInformationMap.values().toArray());
} catch (Exception e) {
isException = true;
// 将错误信息显示,不进行操作
this.log.error("EvidenceQueueThread add mainInformations " + e);
Calendar cal = Calendar.getInstance();
String content = JSONObject.toJSONString(mainInformationMap.values().toArray());
String fileName = "EvidenceMainInformation" + "_" + cal.get(Calendar.YEAR) + cal.get(Calendar.MONTH) + cal.get(Calendar.DATE) + cal.get(Calendar.HOUR) + cal.get(Calendar.MINUTE) + cal.get(Calendar.SECOND);
try {
saveContent(content, fileName);
} catch (Exception e2) {
EvidenceLog log = new EvidenceLog();
log.setCreateTime(new Date());
log.setType("存储入库异常_存证主体");
log.setInfo("失败原因:" + e2 + ",失败数据:" + content);
log.setIp(null);
logs.add(log);
}
} finally {
mainInformationMap.clear();
}
// 保存主体与记录关联记录
if (!subjectIdentites.isEmpty())
try {
sqlSession.insert("com.itrus.portal.db.EvidenceSubjectIdentityMapper.insertOrUpdate", subjectIdentites.toArray());
} catch (Exception e) {
isException = true;
// 将错误信息显示,不进行操作
this.log.error("EvidenceQueueThread add subjectIdentites " + e);
Calendar cal = Calendar.getInstance();
String content = JSONObject.toJSONString(subjectIdentites.toArray());
String fileName = "EvidenceSubjectIdentity" + "_" + cal.get(Calendar.YEAR) + cal.get(Calendar.MONTH) + cal.get(Calendar.DATE) + cal.get(Calendar.HOUR) + cal.get(Calendar.MINUTE) + cal.get(Calendar.SECOND);
try {
saveContent(content, fileName);
} catch (Exception e2) {
EvidenceLog log = new EvidenceLog();
log.setCreateTime(new Date());
log.setType("存储入库异常_存证主体");
log.setInfo("失败原因:" + e2 + ",失败数据:" + content);
log.setIp(null);
logs.add(log);
}
} finally {
subjectIdentites = null;
}
// 保存签名服务信息记录
if (!signatures.isEmpty()) {
try {
sqlSession.insert("com.itrus.portal.db.EvidenceClientSignatureMapper.insertOrUpdate", signatures.toArray());
} catch (Exception e) {
isException = true;
// 将错误信息显示,不进行操作
this.log.error("EvidenceQueueThread add signatures " + e);
Calendar cal = Calendar.getInstance();
String content = JSONObject.toJSONString(signatures.toArray());
String fileName = "EvidenceClientSignature" + "_" + cal.get(Calendar.YEAR) + cal.get(Calendar.MONTH) + cal.get(Calendar.DATE) + cal.get(Calendar.HOUR) + cal.get(Calendar.MINUTE) + cal.get(Calendar.SECOND);
try {
saveContent(content, fileName);
} catch (Exception e2) {
EvidenceLog log = new EvidenceLog();
log.setCreateTime(new Date());
log.setType("存储入库异常_存证签名服务");
log.setInfo("失败原因:" + e2 + ",失败数据:" + content);
log.setIp(null);
logs.add(log);
}
} finally {
signatures = null;
}
}
// 保存时间戳服务信息
if (!clientTimeStamps.isEmpty()) {
try {
this.sqlSession.insert("com.itrus.portal.db.EvidenceClientTimeStampMapper.insertOrUpdate", clientTimeStamps.toArray());
} catch (Exception e) {
isException = true;
this.log.error("EvidenceQueueThread add clientTimeStamps " + e);
Calendar cal = Calendar.getInstance();
String content = JSONObject.toJSONString(clientTimeStamps.toArray());
String fileName = "EvidenceClientTimeStamp" + "_" + cal.get(Calendar.YEAR) + cal.get(Calendar.MONTH) + cal.get(Calendar.DATE) + cal.get(Calendar.HOUR) + cal.get(Calendar.MINUTE) + cal.get(Calendar.SECOND);
try {
saveContent(content, fileName);
} catch (Exception e2) {
EvidenceLog log = new EvidenceLog();
log.setCreateTime(new Date());
log.setType("存储入库异常_存证时间戳服务");
log.setInfo("失败原因:" + e2 + ",失败数据:" + content);
log.setIp(null);
logs.add(log);
}
} finally {
clientTimeStamps = null;
}
}
// 保存附件信息
if (!enclosures.isEmpty()) {
try {
this.sqlSession.insert("com.itrus.portal.db.EvidenceEnclosureMapper.insertOrUpdate", enclosures.toArray());
} catch (Exception e) {
isException = true;
this.log.error("EvidenceQueueThread add enclosures " + e);
Calendar cal = Calendar.getInstance();
String content = JSONObject.toJSONString(enclosures.toArray());
String fileName = "EvidenceEnclosure" + "_" + cal.get(Calendar.YEAR) + cal.get(Calendar.MONTH) + cal.get(Calendar.DATE) + cal.get(Calendar.HOUR) + cal.get(Calendar.MINUTE) + cal.get(Calendar.SECOND);
try {
saveContent(content, fileName);
} catch (Exception e2) {
EvidenceLog log = new EvidenceLog();
log.setCreateTime(new Date());
log.setType("存储入库异常_存证附件");
log.setInfo("失败原因:" + e2 + ",失败数据:" + content);
log.setIp(null);
logs.add(log);
}
} finally {
enclosures = null;
}
}
// 保存身份意愿信息
if (!desireIdentifies.isEmpty()) {
try {
sqlSession.insert("com.itrus.portal.db.EvidenceDesireIdentifyMapper.insertOrUpdate", desireIdentifies.toArray());
} catch (Exception e) {
isException = true;
this.log.error("EvidenceQueueThread add desireIdentifies " + e);
Calendar cal = Calendar.getInstance();
String content = JSONObject.toJSONString(desireIdentifies.toArray());
String fileName = "EvidenceDesireIdentify" + "_" + cal.get(Calendar.YEAR) + cal.get(Calendar.MONTH) + cal.get(Calendar.DATE) + cal.get(Calendar.HOUR) + cal.get(Calendar.MINUTE) + cal.get(Calendar.SECOND);
try {
saveContent(content, fileName);
} catch (Exception e2) {
EvidenceLog log = new EvidenceLog();
log.setCreateTime(new Date());
log.setType("存储入库异常_存证身份意愿");
log.setInfo("失败原因:" + e2 + ",失败数据:" + content);
log.setIp(null);
logs.add(log);
}
} finally {
desireIdentifies = null;
}
}
// 保存身份个人实名提交信息
if (!individuals.isEmpty()) {
try {
sqlSession.insert("com.itrus.portal.db.EvidenceIndividualMapper.insertOrUpdate", individuals.toArray());
} catch (Exception e) {
isException = true;
this.log.error("EvidenceQueueThread add individuals " + e);
Calendar cal = Calendar.getInstance();
String content = JSONObject.toJSONString(individuals.toArray());
String fileName = "EvidenceIndividual" + "_" + cal.get(Calendar.YEAR) + cal.get(Calendar.MONTH) + cal.get(Calendar.DATE) + cal.get(Calendar.HOUR) + cal.get(Calendar.MINUTE) + cal.get(Calendar.SECOND);
try {
saveContent(content, fileName);
} catch (Exception e2) {
EvidenceLog log = new EvidenceLog();
log.setCreateTime(new Date());
log.setType("存储入库异常_存证身份个人实名提交信息");
log.setInfo("失败原因:" + e2 + ",失败数据:" + content);
log.setIp(null);
logs.add(log);
}
} finally {
individuals = null;
}
}
// 保存身份实名信息
if (!realNames.isEmpty()) {
try {
sqlSession.insert("com.itrus.portal.db.EvidenceRealNameMapper.insertOrUpdate", realNames.toArray());
} catch (Exception e) {
isException = true;
this.log.error("EvidenceQueueThread add realNames " + e);
Calendar cal = Calendar.getInstance();
String content = JSONObject.toJSONString(realNames.toArray());
String fileName = "EvidenceRealName" + "_" + cal.get(Calendar.YEAR) + cal.get(Calendar.MONTH) + cal.get(Calendar.DATE) + cal.get(Calendar.HOUR) + cal.get(Calendar.MINUTE) + cal.get(Calendar.SECOND);
try {
saveContent(content, fileName);
} catch (Exception e2) {
EvidenceLog log = new EvidenceLog();
log.setCreateTime(new Date());
log.setType("存储入库异常_存证身份实名");
log.setInfo("失败原因:" + e2 + ",失败数据:" + content);
log.setIp(null);
logs.add(log);
}
} finally {
realNames = null;
}
}
// 保存身份企业法人实名提交信息
if (!representatives.isEmpty()) {
try {
sqlSession.insert("com.itrus.portal.db.EvidenceRepresentativeMapper.insertOrUpdate", representatives.toArray());
} catch (Exception e) {
isException = true;
this.log.error("EvidenceQueueThread add representatives " + e);
Calendar cal = Calendar.getInstance();
String content = JSONObject.toJSONString(representatives.toArray());
String fileName = "EvidenceRepresentative" + "_" + cal.get(Calendar.YEAR) + cal.get(Calendar.MONTH) + cal.get(Calendar.DATE) + cal.get(Calendar.HOUR) + cal.get(Calendar.MINUTE) + cal.get(Calendar.SECOND);
try {
saveContent(content, fileName);
} catch (Exception e2) {
EvidenceLog log = new EvidenceLog();
log.setCreateTime(new Date());
log.setType("存储入库异常_存证身份企业法人实名");
log.setInfo("失败原因:" + e2 + ",失败数据:" + content);
log.setIp(null);
logs.add(log);
}
} finally {
representatives = null;
}
}
// 保存身份企业代理人实名提交信息
if (!agents.isEmpty()) {
try {
sqlSession.insert("com.itrus.portal.db.EvidenceTheAgentMapper.insertOrUpdate", agents.toArray());
} catch (Exception e) {
isException = true;
this.log.error("EvidenceQueueThread add agents " + e);
Calendar cal = Calendar.getInstance();
String content = JSONObject.toJSONString(agents.toArray());
String fileName = "EvidenceTheAgent" + "_" + cal.get(Calendar.YEAR) + cal.get(Calendar.MONTH) + cal.get(Calendar.DATE) + cal.get(Calendar.HOUR) + cal.get(Calendar.MINUTE) + cal.get(Calendar.SECOND);
try {
saveContent(content, fileName);
} catch (Exception e2) {
EvidenceLog log = new EvidenceLog();
log.setCreateTime(new Date());
log.setType("存储入库异常_存证身份企业代理人");
log.setInfo("失败原因:" + e2 + ",失败数据:" + content);
log.setIp(null);
logs.add(log);
}
} finally {
agents = null;
}
}
// 保存身份企业实名提交信息
if (!companiesSubmits.isEmpty()) {
try {
sqlSession.insert("com.itrus.portal.db.EvidenceCompaniesSubmitMapper.insertOrUpdate", companiesSubmits.toArray());
} catch (Exception e) {
isException = true;
this.log.error("EvidenceQueueThread add companiesSubmits " + e);
Calendar cal = Calendar.getInstance();
String content = JSONObject.toJSONString(companiesSubmits.toArray());
String fileName = "EvidenceCompaniesSubmit" + "_" + cal.get(Calendar.YEAR) + cal.get(Calendar.MONTH) + cal.get(Calendar.DATE) + cal.get(Calendar.HOUR) + cal.get(Calendar.MINUTE) + cal.get(Calendar.SECOND);
try {
saveContent(content, fileName);
} catch (Exception e2) {
EvidenceLog log = new EvidenceLog();
log.setCreateTime(new Date());
log.setType("存储入库异常_存证身份企业实名");
log.setInfo("失败原因:" + e2 + ",失败数据:" + content);
log.setIp(null);
logs.add(log);
}
} finally {
companiesSubmits = null;
}
}
// 保存事件意愿认证信息
if (!eventDesires.isEmpty()) {
try {
sqlSession.insert("com.itrus.portal.db.EvidenceEventDesireMapper.insertOrUpdate", eventDesires.toArray());
} catch (Exception e) {
isException = true;
this.log.error("EvidenceQueueThread add eventDesires " + e);
Calendar cal = Calendar.getInstance();
String content = JSONObject.toJSONString(eventDesires.toArray());
String fileName = "EvidenceEventDesire" + "_" + cal.get(Calendar.YEAR) + cal.get(Calendar.MONTH) + cal.get(Calendar.DATE) + cal.get(Calendar.HOUR) + cal.get(Calendar.MINUTE) + cal.get(Calendar.SECOND);
try {
saveContent(content, fileName);
} catch (Exception e2) {
EvidenceLog log = new EvidenceLog();
log.setCreateTime(new Date());
log.setType("存储入库异常_存证事件意愿认证");
log.setInfo("失败原因:" + e2 + ",失败数据:" + content);
log.setIp(null);
logs.add(log);
}
} finally {
eventDesires = null;
}
}
// 保存事件地点认证信息
if (!addresses.isEmpty()) {
try {
sqlSession.insert("com.itrus.portal.db.EvidenceEventNetworkAddressMapper.insertOrUpdate", addresses.toArray());
} catch (Exception e) {
isException = true;
this.log.error("EvidenceQueueThread add addresses " + e);
Calendar cal = Calendar.getInstance();
String content = JSONObject.toJSONString(addresses.toArray());
String fileName = "EvidenceEventNetworkAddress" + "_" + cal.get(Calendar.YEAR) + cal.get(Calendar.MONTH) + cal.get(Calendar.DATE) + cal.get(Calendar.HOUR) + cal.get(Calendar.MINUTE) + cal.get(Calendar.SECOND);
try {
saveContent(content, fileName);
} catch (Exception e2) {
EvidenceLog log = new EvidenceLog();
log.setCreateTime(new Date());
log.setType("存储入库异常_存证事件地点认证");
log.setInfo("失败原因:" + e2 + ",失败数据:" + content);
log.setIp(null);
logs.add(log);
}
} finally {
addresses = null;
}
}
// 保存事件对象认证信息
if (!trustedIdentities.isEmpty()) {
try {
sqlSession.insert("com.itrus.portal.db.EvidenceTrustedIdentityMapper.insertOrUpdate", trustedIdentities.toArray());
} catch (Exception e) {
isException = true;
this.log.error("EvidenceQueueThread add trustedIdentities " + e);
Calendar cal = Calendar.getInstance();
String content = JSONObject.toJSONString(trustedIdentities.toArray());
String fileName = "EvidenceTrustedIdentity" + "_" + cal.get(Calendar.YEAR) + cal.get(Calendar.MONTH) + cal.get(Calendar.DATE) + cal.get(Calendar.HOUR) + cal.get(Calendar.MINUTE) + cal.get(Calendar.SECOND);
try {
saveContent(content, fileName);
} catch (Exception e2) {
EvidenceLog log = new EvidenceLog();
log.setCreateTime(new Date());
log.setType("存储入库异常_存证事件对象认证");
log.setInfo("失败原因:" + e2 + ",失败数据:" + content);
log.setIp(null);
logs.add(log);
}
} finally {
trustedIdentities = null;
}
}
// 保存事件行为信息
if (!eventBehaviors.isEmpty()) {
try {
sqlSession.insert("com.itrus.portal.db.EvidenceEventBehaviorMapper.insertOrUpdate", eventBehaviors.toArray());
} catch (Exception e) {
isException = true;
this.log.error("EvidenceQueueThread add eventBehaviors " + e);
Calendar cal = Calendar.getInstance();
String content = JSONObject.toJSONString(eventBehaviors.toArray());
String fileName = "EvidenceEventBehavior" + "_" + cal.get(Calendar.YEAR) + cal.get(Calendar.MONTH) + cal.get(Calendar.DATE) + cal.get(Calendar.HOUR) + cal.get(Calendar.MINUTE) + cal.get(Calendar.SECOND);
try {
saveContent(content, fileName);
} catch (Exception e2) {
EvidenceLog log = new EvidenceLog();
log.setCreateTime(new Date());
log.setType("存储入库异常_存证事件行为");
log.setInfo("失败原因:" + e2 + ",失败数据:" + content);
log.setIp(null);
logs.add(log);
}
} finally {
eventBehaviors = null;
}
}
// 保存事件时间戳信息
if (!eventTimes.isEmpty()) {
try {
sqlSession.insert("com.itrus.portal.db.EvidenceEventTimeMapper.insertOrUpdate", eventTimes.toArray());
} catch (Exception e) {
isException = true;
this.log.error("EvidenceQueueThread add eventTimes " + e);
Calendar cal = Calendar.getInstance();
String content = JSONObject.toJSONString(eventTimes.toArray());
String fileName = "EvidenceEventTime" + "_" + cal.get(Calendar.YEAR) + cal.get(Calendar.MONTH) + cal.get(Calendar.DATE) + cal.get(Calendar.HOUR) + cal.get(Calendar.MINUTE) + cal.get(Calendar.SECOND);
try {
saveContent(content, fileName);
} catch (Exception e2) {
EvidenceLog log = new EvidenceLog();
log.setCreateTime(new Date());
log.setType("存储入库异常_存证事件时间戳");
log.setInfo("失败原因:" + e2 + ",失败数据:" + content);
log.setIp(null);
logs.add(log);
}
} finally {
eventTimes = null;
}
}
// 保存用户上传证书信息
if (!certUsers.isEmpty()) {
// TODO
try {
sqlSession.insert("com.itrus.portal.db.EvidenceCertUserMapper.insertOrUpdate", certUsers.toArray());
} catch (Exception e) {
isException = true;
this.log.error("EvidenceQueueThread add certUsers " + e);
Calendar cal = Calendar.getInstance();
String content = JSONObject.toJSONString(certUsers.toArray());
String fileName = "EvidenceCertUser" + "_" + cal.get(Calendar.YEAR) + cal.get(Calendar.MONTH) + cal.get(Calendar.DATE) + cal.get(Calendar.HOUR) + cal.get(Calendar.MINUTE) + cal.get(Calendar.SECOND);
try {
saveContent(content, fileName);
} catch (Exception e2) {
EvidenceLog log = new EvidenceLog();
log.setCreateTime(new Date());
log.setType("存储入库异常_存证用户上传证书");
log.setInfo("失败原因:" + e2 + ",失败数据:" + content);
log.setIp(null);
logs.add(log);
}
} finally {
certUsers = null;
}
}
// 保存存证记录信息
if (!basicInformations.isEmpty()) {
try {
try {
sqlSession.insert("com.itrus.portal.db.EvidenceBasicInformationMapper.insertOrUpdate", basicInformations.toArray());
// 调用回调方法
if (evidenceQueryQueue != null) {
try {
evidenceQueryQueue.putObjectList(basicInformations);
} catch (IllegalStateException e) {
e.printStackTrace();
}
}
} catch (Exception e) {
Calendar cal = Calendar.getInstance();
String content = JSONObject.toJSONString(basicInformations.toArray());
String fileName = "EvidenceBasicInformation" + "_" + cal.get(Calendar.YEAR) + cal.get(Calendar.MONTH) + cal.get(Calendar.DATE) + cal.get(Calendar.HOUR) + cal.get(Calendar.MINUTE) + cal.get(Calendar.SECOND);
try {
saveContent(content, fileName);
} catch (Exception e2) {
EvidenceLog log = new EvidenceLog();
log.setCreateTime(new Date());
log.setType("存储入库异常_存证基础信息");
log.setInfo("失败原因:" + e2 + ",失败数据:" + content);
log.setIp(null);
logs.add(log);
throw new Exception("失败原因:" + e2);
}
}
} catch (Exception e) {
isException = true;
// 将错误信息显示,不进行操作
this.log.error("EvidenceQueueThread add basicInformations " + e);
} finally {
basicInformations = null;
}
}
// 保存日志记录
if (!logs.isEmpty())
try {
sqlSession.insert("com.itrus.portal.db.EvidenceLogMapper.insertOrUpdate", logs.toArray());
} catch (Exception e) {
isException = true;
// 将错误信息显示,不进行操作
this.log.error("EvidenceQueueThread add logs " + e);
// Calendar cal = Calendar.getInstance();
// String content = JSONObject.toJSONString(logs.toArray());
// String fileName = "EvidenceLog"
// + "_"
// + cal.get(Calendar.YEAR)
// + cal.get(Calendar.MONTH)
// + cal.get(Calendar.DATE)
// + cal.get(Calendar.HOUR)
// + cal.get(Calendar.MINUTE)
// + cal.get(Calendar.SECOND);
// try {
// saveContent(content, fileName);
// } catch (Exception e2) {
// EvidenceLog log = new EvidenceLog();
// log.setCreateTime(new Date());
// log.setType("存储入库异常_存证日志");
// log.setInfo("失败原因:" + e2 + ",失败数据:" + content);
// log.setIp(null);
// logs.add(log);
// }
} finally {
logs = null;
}
log.debug("EvidenceQueueThread the exception is [" + isException + "]");
// 若出现异常则暂停10秒钟
if (isException) {
try {
// 若队列中没有信息则等待10秒
sleep(10 * 1000);
} catch (InterruptedException e) {
log.error(e);
} finally {
isException = false;
}
}
isOver = true;
// log.error("Queue 耗时:" + (System.currentTimeMillis() - startDate));
}
}
Aggregations