卡扣优化
This commit is contained in:
parent
87d6627b6a
commit
4249a4996e
@ -1372,17 +1372,15 @@ public class CollectAuditInfoCache {
|
||||
}
|
||||
Map<String, String> map = getRetAndCodeByBatch(strResp);
|
||||
if (map.containsKey("RET_CODE")) {//清空批量代收状态
|
||||
//清空批量处理状态
|
||||
JBOTransaction trans = JBOFactory.createJBOTransaction();
|
||||
BizObjectManager bm = JBOFactory.getFactory().getManager(LC_RENT_PLAN.CLASS_NAME,trans);
|
||||
StringBuilder updateIds = new StringBuilder();
|
||||
for (BizObject biz : list) {
|
||||
bm.createQuery("update O set O.BATCH_STATUS=:BATCH_STATUS,O.BATCH_NO=:BATCH_NO,O.BATCH_SN=:BATCH_SN where O.id=:id")
|
||||
.setParameter("BATCH_STATUS", "")//处理中
|
||||
.setParameter("BATCH_NO", req_sn)
|
||||
.setParameter("BATCH_SN", "")
|
||||
.setParameter("id", biz.getAttribute("id").toString()).executeUpdate();
|
||||
updateIds.append(biz.getAttribute("id").toString()).append("','");
|
||||
}
|
||||
trans.commit();
|
||||
String updateIdsStr = updateIds.delete(updateIds.length() - 3, updateIds.length()).toString();
|
||||
//清空批量处理状态
|
||||
BizObjectManager bm = JBOFactory.getFactory().getManager(LC_RENT_PLAN.CLASS_NAME);
|
||||
bm.createQuery("update O set O.BATCH_STATUS=null,O.BATCH_NO=:BATCH_NO,O.BATCH_SN=null where O.id in ('" + updateIdsStr + "')")
|
||||
.setParameter("BATCH_NO", req_sn).executeUpdate();
|
||||
}else{
|
||||
int m = 0;//统计发送的代收的批数
|
||||
for (int n = 1; n <= map.size(); n++) {
|
||||
@ -1390,25 +1388,31 @@ public class CollectAuditInfoCache {
|
||||
m++;
|
||||
}
|
||||
}
|
||||
|
||||
for (int k = 1; k <= m; k++) {
|
||||
BizObjectManager bm = JBOFactory.getFactory().getBizObjectManager(LC_RENT_PLAN.CLASS_NAME);
|
||||
if (map.containsKey("REQ_SN") && map.containsKey("RET_CODE"+k) && "0000".equals(map.get("RET_CODE"+k))) {
|
||||
bm.createQuery("update O set O.BATCH_STATUS=:BATCH_STATUS where O.BATCH_NO=:BATCH_NO and O.BATCH_SN like '%"+map.get("SN"+k)+"%' ")
|
||||
.setParameter("BATCH_STATUS", "process")//处理状态标记为--处理中
|
||||
.setParameter("BATCH_NO", map.get("REQ_SN")).executeUpdate();
|
||||
}else{
|
||||
BizObject bo0 = bm.createQuery("O.BATCH_NO=:BATCH_NO and O.BATCH_SN like '%"+map.get("SN"+k)+"%'").setParameter("BATCH_NO", map.get("REQ_SN")).getSingleResult(false);
|
||||
if (bo0 != null && "process".equals(bo0.getAttribute("BATCH_STATUS"))) {
|
||||
//不做任何操作
|
||||
}else{
|
||||
bm.createQuery("update O set O.BATCH_STATUS=:BATCH_STATUS,O.BATCH_NO='',O.BATCH_SN='' where O.BATCH_NO=:BATCH_NO and O.BATCH_SN like '%"+map.get("SN"+k)+"%' ")
|
||||
.setParameter("BATCH_STATUS", "")//清空批量处理状态
|
||||
.setParameter("BATCH_NO", map.get("REQ_SN")).executeUpdate();
|
||||
JBOTransaction trans = null;
|
||||
try {
|
||||
trans = JBOFactory.createJBOTransaction();
|
||||
BizObjectManager bm = JBOFactory.getFactory().getManager(LC_RENT_PLAN.CLASS_NAME, trans);
|
||||
BizObject bo0 = bm.createQuery("O.BATCH_NO=:BATCH_NO and O.BATCH_SN like '%" + map.get("SN" + k) + "%'").setParameter("BATCH_NO", map.get("REQ_SN")).getSingleResult(true);
|
||||
if (bo0 != null && "process".equals(bo0.getAttribute("BATCH_STATUS").getString())) {
|
||||
continue;
|
||||
}
|
||||
//响应成功
|
||||
if (map.containsKey("REQ_SN") && map.containsKey("RET_CODE" + k) && "0000".equals(map.get("RET_CODE" + k))) {
|
||||
bo0.setAttributeValue("BATCH_STATUS", "process");
|
||||
} else {//响应异常
|
||||
bo0.setAttributeValue("BATCH_STATUS", null);
|
||||
bo0.setAttributeValue("BATCH_NO", null);
|
||||
bo0.setAttributeValue("BATCH_SN", null);
|
||||
}
|
||||
bm.saveObject(bo0);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
if (trans != null) trans.rollback();
|
||||
} finally {
|
||||
if (trans != null) trans.commit();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
return map;
|
||||
}
|
||||
|
||||
@ -1372,17 +1372,15 @@ public class CollectAuditInfoCacheTj {
|
||||
Map<String, String> map = getRetAndCodeByBatch(strResp);
|
||||
//包含RET_CODE说明响应没有成功
|
||||
if (map.containsKey("RET_CODE")) {//清空批量代收状态
|
||||
StringBuilder updateIds = new StringBuilder();
|
||||
for (BizObject biz : list) {
|
||||
//清空批量处理状态
|
||||
JBOTransaction trans = JBOFactory.createJBOTransaction();
|
||||
BizObjectManager bm = JBOFactory.getFactory().getManager(LC_RENT_PLAN.CLASS_NAME,trans);
|
||||
bm.createQuery("update O set O.BATCH_STATUS=:BATCH_STATUS,O.BATCH_NO=:BATCH_NO,O.BATCH_SN=:BATCH_SN where O.id=:id")
|
||||
.setParameter("BATCH_STATUS", "")//处理中
|
||||
.setParameter("BATCH_NO", req_sn)
|
||||
.setParameter("BATCH_SN", "")
|
||||
.setParameter("id", biz.getAttribute("id").toString()).executeUpdate();
|
||||
trans.commit();
|
||||
updateIds.append(biz.getAttribute("id").toString()).append("','");
|
||||
}
|
||||
String updateIdsStr = updateIds.delete(updateIds.length() - 3, updateIds.length()).toString();
|
||||
//清空批量处理状态
|
||||
BizObjectManager bm = JBOFactory.getFactory().getManager(LC_RENT_PLAN.CLASS_NAME);
|
||||
bm.createQuery("update O set O.BATCH_STATUS=null,O.BATCH_NO=:BATCH_NO,O.BATCH_SN=null where O.id in ('" + updateIdsStr + "')")
|
||||
.setParameter("BATCH_NO", req_sn).executeUpdate();
|
||||
}else{
|
||||
//响应成功
|
||||
int m = 0;//统计发送的代收的批数
|
||||
@ -1391,38 +1389,31 @@ public class CollectAuditInfoCacheTj {
|
||||
m++;
|
||||
}
|
||||
}
|
||||
for (int k = 1; k <= m; k++) {
|
||||
//每条响应成功
|
||||
if (map.containsKey("REQ_SN") && map.containsKey("RET_CODE"+k) && "0000".equals(map.get("RET_CODE"+k))) {
|
||||
JBOTransaction trans = JBOFactory.createJBOTransaction();
|
||||
BizObjectManager bm = JBOFactory.getFactory().getManager(LC_RENT_PLAN.CLASS_NAME,trans);
|
||||
BizObject bo0 = bm.createQuery("O.BATCH_NO=:BATCH_NO and O.BATCH_SN like '%"+map.get("SN"+k)+"%'").setParameter("BATCH_NO", map.get("REQ_SN")).getSingleResult(false);
|
||||
//不知道为啥这么写
|
||||
if (bo0 != null && "process".equals(bo0.getAttribute("BATCH_STATUS"))) {
|
||||
bm.createQuery("update O set O.BATCH_STATUS=:BATCH_STATUS where O.BATCH_NO=:BATCH_NO and O.BATCH_SN like '%"+map.get("SN"+k)+"%' ")
|
||||
.setParameter("BATCH_STATUS", "process")//处理状态标记为--处理中
|
||||
.setParameter("BATCH_NO", map.get("REQ_SN")).executeUpdate();
|
||||
trans.commit();
|
||||
}else{
|
||||
bm.createQuery("update O set O.BATCH_STATUS=:BATCH_STATUS where O.BATCH_NO=:BATCH_NO and O.BATCH_SN like '%"+map.get("SN"+k)+"%' ")
|
||||
.setParameter("BATCH_STATUS", "process")//处理状态标记为--处理中
|
||||
.setParameter("BATCH_NO", map.get("REQ_SN")).executeUpdate();
|
||||
trans.commit();
|
||||
}
|
||||
}else{
|
||||
JBOTransaction trans = JBOFactory.createJBOTransaction();
|
||||
BizObjectManager bm = JBOFactory.getFactory().getManager(LC_RENT_PLAN.CLASS_NAME,trans);
|
||||
BizObject bo0 = bm.createQuery("O.BATCH_NO=:BATCH_NO and O.BATCH_SN like '%"+map.get("SN"+k)+"%'").setParameter("BATCH_NO", map.get("REQ_SN")).getSingleResult(false);
|
||||
if (bo0 != null && "process".equals(bo0.getAttribute("BATCH_STATUS"))) {
|
||||
//不做任何操作
|
||||
}else{
|
||||
bm.createQuery("update O set O.BATCH_STATUS=:BATCH_STATUS,O.BATCH_NO='',O.BATCH_SN='' where O.BATCH_NO=:BATCH_NO and O.BATCH_SN like '%"+map.get("SN"+k)+"%' ")
|
||||
.setParameter("BATCH_STATUS", "")//清空批量处理状态
|
||||
.setParameter("BATCH_NO", map.get("REQ_SN")).executeUpdate();
|
||||
trans.commit();
|
||||
}
|
||||
}
|
||||
}
|
||||
for (int k = 1; k <= m; k++) {
|
||||
JBOTransaction trans = null;
|
||||
try {
|
||||
trans = JBOFactory.createJBOTransaction();
|
||||
BizObjectManager bm = JBOFactory.getFactory().getManager(LC_RENT_PLAN.CLASS_NAME, trans);
|
||||
BizObject bo0 = bm.createQuery("O.BATCH_NO=:BATCH_NO and O.BATCH_SN like '%" + map.get("SN" + k) + "%'").setParameter("BATCH_NO", map.get("REQ_SN")).getSingleResult(true);
|
||||
if (bo0 != null && "process".equals(bo0.getAttribute("BATCH_STATUS").getString())) {
|
||||
continue;
|
||||
}
|
||||
//响应成功
|
||||
if (map.containsKey("REQ_SN") && map.containsKey("RET_CODE" + k) && "0000".equals(map.get("RET_CODE" + k))) {
|
||||
bo0.setAttributeValue("BATCH_STATUS", "process");
|
||||
} else {//响应异常
|
||||
bo0.setAttributeValue("BATCH_STATUS", null);
|
||||
bo0.setAttributeValue("BATCH_NO", null);
|
||||
bo0.setAttributeValue("BATCH_SN", null);
|
||||
}
|
||||
bm.saveObject(bo0);
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
if (trans != null) trans.rollback();
|
||||
} finally {
|
||||
if (trans != null) trans.commit();
|
||||
}
|
||||
}
|
||||
}
|
||||
return map;
|
||||
}
|
||||
@ -1819,7 +1810,7 @@ public class CollectAuditInfoCacheTj {
|
||||
String reqSn = strXML.substring(kStart+8, end);
|
||||
map.put("REQ_SN", reqSn);
|
||||
}
|
||||
|
||||
|
||||
Pattern pm = Pattern.compile("(?<=<RET_CODE>)([\\S\\s]*?)(?=</RET_CODE>)");
|
||||
Matcher mm = pm.matcher(strXML);
|
||||
int i = 0;
|
||||
@ -1831,7 +1822,7 @@ public class CollectAuditInfoCacheTj {
|
||||
Matcher mc = pc.matcher(strXML);
|
||||
int j = 1;
|
||||
while (mc.find())
|
||||
{
|
||||
{
|
||||
map.put("SN"+j++, mc.group());
|
||||
}
|
||||
if (map.containsKey("RET_CODE0") && "0000".equals(map.get("RET_CODE0"))) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user