java思想篇1
// 获取应收账款质押和转让登记信息 Record[] registrationRecord = savePdfregistrationNumber(txtValue); // 储存临时对象的变量 Record temp = null; //遍历 for (Record rd : registrationRecord) { rd.set("grantorPledgorName", grantorPledgorName); //如果当前循环是“初始登记” if ("初始登记".equals(rd.getStr("registrationType"))) { // 当临时登记对象不为空的时候,也就是代表当前循环不是第一次,循环,把上次的缓存的对象,放入集合中 if (temp != null) { chooseRecord.add(temp); } //用个临时登记存一下 temp = rd; // 如果是变更登记 } else if ("变更登记".equals(rd.getStr("registrationType"))) { // 如果临时对象(也就是上一次的对象)的变更类型:初始登记,就把临时对象重新赋予一下值,赋值成当前次的 if ("初始登记".equals(temp.getStr("registrationType"))) { temp = rd; } else { // 如果临时对象与当前循环对象的类型一致的话,就比时间的大小,大于的情况下,重新赋值临时对象,小于情况不用管 if (compareDate(rd.getStr("registrationTime"), temp.getStr("registrationTime"))) { temp = rd; } } } else { //如果是注销登记,设为空 temp = null; } } // 倒数第二条是注销登记,最后一条不是注销登记的情况下,自己额外写入一次 if (temp != null) { chooseRecord.add(temp); }
/**
* @param bigPDFRecord pdf信息
* @param zdRecordslist 数据库中登信息
* 解析出来的pdf信息与数据库的信息做比对的方法
*/
public List<Record> comparisonInformation(ArrayList<Record> bigPDFRecord, List<Record> zdRecordslist) {
//定义一个集合来保存,经过对比数据的PDF信息
ArrayList<Record> comparisonPDFRecord = new ArrayList<Record>();
//遍历PDF信息
bigPDFRecord : for (Record pdfRecord : bigPDFRecord) {
//不为空
if(!zdRecordslist.isEmpty()){
// 是否存在Flag
boolean isExistFlag = false;
//遍历数据库中登信息
//找得到进入
zdRecordslist : for (Record zdRecord : zdRecordslist) {
// 如果PDF信息里面的登记编号(1条),在中登信息(所有)里面找,存在,登记状态,如果一条存在就终止zdRecordslist循环,不用再继续下面的循环
// 同时设置Flag为true,以防进入下面的条件中去,下面的条件是当前zdRecordslist 循环中找不到,才进入的条件
if (pdfRecord.getStr("registrationNumber").equals(zdRecord.getStr("registerNumber"))) {
isExistFlag = true;
// 获取中登信息里面的定义状态
String fileState = zdRecord.getStr("fileState");
// 如果定义状态是为:00未定义
if ("00".equals(fileState)) {
pdfRecord.set("fileState", "未定义");
} else if ("10".equals(fileState)) {
pdfRecord.set("fileState", "已定义未解析");
} else if ("11".equals(fileState)) {
pdfRecord.set("fileState", "已定义审核中");
} else if ("13".equals(fileState)) {
pdfRecord.set("fileState", "审核未通过");
}
comparisonPDFRecord.add(pdfRecord);
break zdRecordslist ;
}
}
//找不到进入
if(!isExistFlag){
pdfRecord.set("fileState", "未解析");
comparisonPDFRecord.add(pdfRecord);
}
}else {
pdfRecord.set("fileState", "未解析");
comparisonPDFRecord.add(pdfRecord);
}
}
return comparisonPDFRecord;
}