获取序列号工具类修改
This commit is contained in:
parent
99ad21922a
commit
0480aef548
@ -1,418 +1,114 @@
|
||||
package com.tenwa.flow.util;
|
||||
|
||||
import java.text.DecimalFormat;
|
||||
import com.amarsoft.app.lc.util.DateAssistant;
|
||||
import com.amarsoft.are.jbo.*;
|
||||
import com.amarsoft.are.lang.StringX;
|
||||
import com.google.common.collect.ImmutableMap;
|
||||
import com.tenwa.comm.util.jboutil.DataOperatorUtil;
|
||||
import jbo.com.tenwa.entity.comm.flow.FLOW_WORK_FLAG;
|
||||
import jbo.com.tenwa.entity.comm.serialutil.T_SERIAL_NUMBER;
|
||||
|
||||
import java.util.Calendar;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import com.google.common.collect.ImmutableMap;
|
||||
import jbo.com.tenwa.entity.comm.flow.FLOW_BUSSINESS_OBJECT;
|
||||
import jbo.com.tenwa.entity.comm.flow.FLOW_WORK_FLAG;
|
||||
import jbo.com.tenwa.entity.comm.serialutil.T_SERIAL_DISCARD_NUMBER;
|
||||
import jbo.com.tenwa.entity.comm.serialutil.T_SERIAL_NUMBER;
|
||||
import jbo.sys.FLOW_OBJECT;
|
||||
|
||||
import com.amarsoft.app.lc.util.DateAssistant;
|
||||
import com.amarsoft.are.jbo.BizObject;
|
||||
import com.amarsoft.are.jbo.BizObjectManager;
|
||||
import com.amarsoft.are.jbo.BizObjectQuery;
|
||||
import com.amarsoft.are.jbo.JBOFactory;
|
||||
import com.amarsoft.are.jbo.JBOTransaction;
|
||||
import com.amarsoft.are.lang.StringX;
|
||||
import com.amarsoft.awe.Configure;
|
||||
import com.amarsoft.awe.util.ASResultSet;
|
||||
import com.amarsoft.awe.util.SqlObject;
|
||||
import com.amarsoft.awe.util.Transaction;
|
||||
import com.tenwa.comm.util.jboutil.DataOperatorUtil;
|
||||
import java.util.Objects;
|
||||
|
||||
|
||||
public class FlowUtil {
|
||||
public static synchronized String getProjectSerialNumber(String orgId,JBOTransaction tx) throws Exception{
|
||||
return FlowUtil.getSerialNumber("P{year}{month}{day}{maxOrderNumber}",6,null, "项目编号"+orgId, null, tx);
|
||||
}
|
||||
|
||||
public static synchronized String getEbankSerialNumber(String orgId,JBOTransaction tx) throws Exception{
|
||||
return FlowUtil.getSerialNumber("E-{year}{month}{maxOrderNumber}",3,null, "网银编号"+orgId, null, tx);
|
||||
}
|
||||
|
||||
public static synchronized String getOutNoNumber(JBOTransaction tx) throws Exception{
|
||||
return FlowUtil.getSerialNumber("PF{year}{month}{maxOrderNumber}",4,null, "", null, tx);
|
||||
}
|
||||
|
||||
public static synchronized String getRentOutNoNumber(JBOTransaction tx) throws Exception{
|
||||
return FlowUtil.getSerialNumber("PR{year}{month}{maxOrderNumber}",4,null, "", null, tx);
|
||||
}
|
||||
|
||||
//获取1位的凭证号(凭证号--1、2、3)
|
||||
public static synchronized String getVoucher_Number(JBOTransaction tx) throws Exception{
|
||||
return String.valueOf(Integer.parseInt(FlowUtil.getSerialNumber("{maxOrderNumber}",6,null, "凭证号", Integer.parseInt("2018"), tx)));
|
||||
public static String getVoucher_Number(JBOTransaction tx) throws Exception {
|
||||
return FlowUtil.getSerialNumber("{maxOrderNumber}", 6, null, "凭证号", 2018, tx);
|
||||
}
|
||||
|
||||
//获取1位的客户编号(--1、2、3)
|
||||
public static synchronized String getCustomer_Number(boolean isCompany ,String custType) throws Exception {
|
||||
//获取客户编号(法人,自然人)
|
||||
public static String getCustomer_Number(boolean isCompany, String custType) throws Exception {
|
||||
ImmutableMap<String, String> model = ImmutableMap.of("custType", custType);
|
||||
return FlowUtil.getSerialNumber("APZL{custType}{maxOrderNumber}", 15, model, isCompany ? "法人客户编号" : "客户编号", null, null);
|
||||
}
|
||||
|
||||
//获取经销商编号
|
||||
public static String getDistributorSerialNumber(JBOTransaction tx) throws Exception {
|
||||
return FlowUtil.getSerialNumber("DSTB{year}{month}{day}{maxOrderNumber}",6,null, "经销商编号", null, tx);
|
||||
}
|
||||
|
||||
|
||||
private static String getSerialNumber(String serialNumberPattern, int numberCount, Map<String, String> model, String type, Integer queryYear, JBOTransaction tx) throws Exception {
|
||||
String currentDateTime = DateAssistant.getTodayNow();
|
||||
String currentYear = currentDateTime.substring(0,4);
|
||||
String month = currentDateTime.substring(5,7);
|
||||
String day = currentDateTime.substring(8,10);
|
||||
String hour = currentDateTime.substring(11,13);
|
||||
String minute = currentDateTime.substring(14,16);
|
||||
String second = currentDateTime.substring(17,19);
|
||||
Integer year = queryYear != null ? queryYear : Integer.valueOf(currentYear);
|
||||
Map<String, String> paramMap = new HashMap<>();
|
||||
paramMap.put("year", year+"");
|
||||
paramMap.put("month", month);
|
||||
paramMap.put("day", day);
|
||||
paramMap.put("hour", hour);
|
||||
paramMap.put("minute", minute);
|
||||
paramMap.put("second", second);
|
||||
|
||||
int maxOrderNumber = getMaxOrderNumber(type, queryYear);
|
||||
paramMap.put("maxOrderNumber", String.format("%0" + numberCount + "d", maxOrderNumber));
|
||||
if(null != model){
|
||||
paramMap.putAll(model);
|
||||
}
|
||||
for (String key : paramMap.keySet()) {
|
||||
if (serialNumberPattern.indexOf("{" + key + "}") >= 0) {
|
||||
serialNumberPattern = serialNumberPattern.replace("{" + key + "}", paramMap.get(key));
|
||||
}
|
||||
}
|
||||
return serialNumberPattern;
|
||||
}
|
||||
|
||||
//考虑并发情况必须采用同步机制
|
||||
private static synchronized int getMaxOrderNumber(String type, Integer queryYear) throws Exception {
|
||||
JBOTransaction tx = null;
|
||||
try {
|
||||
tx = JBOFactory.createJBOTransaction();
|
||||
ImmutableMap<String, String> model = ImmutableMap.of("custType", custType);
|
||||
String serial = FlowUtil.getSerialNumber("APZL{custType}{maxOrderNumber}", 15, model, isCompany?"法人客户编号":"客户编号", null, tx);
|
||||
int currentYear = Calendar.getInstance().get(Calendar.YEAR);
|
||||
BizObjectManager tNumberManager = JBOFactory.getBizObjectManager(T_SERIAL_NUMBER.CLASS_NAME);
|
||||
tx.join(tNumberManager);
|
||||
Map<String, String> searchCondtion = new HashMap<String, String>();
|
||||
if (!StringX.isEmpty(type)) {
|
||||
searchCondtion.put("type_", type);
|
||||
}
|
||||
if (null != queryYear) {
|
||||
searchCondtion.put("year_", queryYear.toString());
|
||||
|
||||
}
|
||||
String querySql = DataOperatorUtil.getQuerySql(searchCondtion);
|
||||
BizObjectQuery bqDest = tNumberManager.createQuery(querySql);
|
||||
for (String key : searchCondtion.keySet()) {
|
||||
bqDest.setParameter(key, searchCondtion.get(key).toString());
|
||||
}
|
||||
// 目标JBO,需要做更新操作
|
||||
BizObject serialNumber = bqDest.getSingleResult(true);
|
||||
if (Objects.isNull(serialNumber)) {
|
||||
serialNumber = tNumberManager.newObject();
|
||||
serialNumber.setAttributeValue("year_", queryYear != null ? queryYear : currentYear);
|
||||
serialNumber.setAttributeValue("type_", type);
|
||||
serialNumber.setAttributeValue("order_number_", "0");
|
||||
}
|
||||
int maxOrderNumber = serialNumber.getAttribute("order_number_").getInt() + 1;
|
||||
serialNumber.setAttributeValue("order_number_", maxOrderNumber);
|
||||
tNumberManager.saveObject(serialNumber);
|
||||
tx.commit();
|
||||
return serial;
|
||||
return maxOrderNumber;
|
||||
} catch (Exception e) {
|
||||
if (tx != null) tx.rollback();
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
|
||||
//获取经销商编号
|
||||
public static synchronized String getDistributorSerialNumber(JBOTransaction tx) throws Exception{
|
||||
return FlowUtil.getSerialNumber("DSTB{year}{month}{day}{maxOrderNumber}",6,null, "经销商编号", null, tx);
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
protected static synchronized String getSerialNumber(String serialNumberPattern,int numberCount,Map<String,String> model,String type,Integer queryYear,JBOTransaction tx) throws Exception
|
||||
{
|
||||
String currentDateTime = DateAssistant.getTodayNow();
|
||||
String currentYear = currentDateTime.substring(0,4);
|
||||
String month = currentDateTime.substring(5,7);
|
||||
String day = currentDateTime.substring(8,10);
|
||||
String hour = currentDateTime.substring(11,13);
|
||||
String minute = currentDateTime.substring(14,16);
|
||||
String second = currentDateTime.substring(17,19);
|
||||
|
||||
Integer year = Integer.parseInt(currentYear);
|
||||
if(null != queryYear){
|
||||
year = queryYear;
|
||||
}
|
||||
Map<String,String> paramMap = new HashMap<String,String>();
|
||||
paramMap.put("year", year+"");
|
||||
paramMap.put("month", month+"");
|
||||
paramMap.put("day", day+"");
|
||||
paramMap.put("hour", hour+"");
|
||||
paramMap.put("minute", minute+"");
|
||||
paramMap.put("second", second+"");
|
||||
|
||||
int maxOrderNumber = getMaxOrderNumber(type, queryYear, tx);
|
||||
StringBuffer numberFormat = new StringBuffer();
|
||||
for(int i=0;i<numberCount;i++)
|
||||
{
|
||||
numberFormat.append("0");
|
||||
}
|
||||
|
||||
DecimalFormat df = new DecimalFormat(numberFormat.toString());
|
||||
String serialNumberFormat = df.format(maxOrderNumber);
|
||||
paramMap.put("maxOrderNumber", serialNumberFormat);
|
||||
if(null != model){
|
||||
paramMap.putAll(model);
|
||||
}
|
||||
String serialNumberString = getSerialNumber(paramMap, serialNumberPattern);
|
||||
|
||||
return serialNumberString;
|
||||
}
|
||||
protected static synchronized String getSerialNumber(Map<String,String> paramMap,String serialNumberPattern){
|
||||
for(String key:paramMap.keySet()){
|
||||
if(serialNumberPattern.indexOf("{"+key+"}")>=0){
|
||||
serialNumberPattern=serialNumberPattern.replace("{"+key+"}", paramMap.get(key));
|
||||
}
|
||||
}
|
||||
return serialNumberPattern;
|
||||
}
|
||||
/***
|
||||
* serialNumberPattern匹配值
|
||||
* {year}->年份,如果参数year为空则取当前年
|
||||
* {month}->当前月
|
||||
* {day}->当前日
|
||||
* {hour}->时
|
||||
* {minute}->分
|
||||
* {second}->秒
|
||||
* {maxOrderNumber}->当前最大序号
|
||||
*
|
||||
* **/
|
||||
protected static synchronized String getSerialNumberByMonth(String serialNumberPattern,int numberCount,Map<String,String> model,String type,Integer queryYear,Integer queryMonth,JBOTransaction tx) throws Exception
|
||||
{
|
||||
String currentDateTime = DateAssistant.getTodayNow();
|
||||
String currentYear = currentDateTime.substring(0,4);
|
||||
String monthStr = currentDateTime.substring(5,7);
|
||||
String day = currentDateTime.substring(8,10);
|
||||
String hour = currentDateTime.substring(11,13);
|
||||
String minute = currentDateTime.substring(14,16);
|
||||
String second = currentDateTime.substring(17,19);
|
||||
|
||||
int year = Integer.parseInt(currentYear);
|
||||
int month = Integer.parseInt(monthStr);
|
||||
if(null != queryYear){
|
||||
year = queryYear;
|
||||
}
|
||||
if(null != queryMonth){
|
||||
month = queryMonth ;
|
||||
}
|
||||
Map<String,String> paramMap = new HashMap<String,String>();
|
||||
paramMap.put("year", year+"");
|
||||
paramMap.put("month", monthStr+"");
|
||||
paramMap.put("day", day+"");
|
||||
paramMap.put("hour", hour+"");
|
||||
paramMap.put("minute", minute+"");
|
||||
paramMap.put("second", second+"");
|
||||
|
||||
int maxOrderNumber = getMaxOrderNumberByMonth(type, year,month, tx);
|
||||
StringBuffer numberFormat = new StringBuffer();
|
||||
for(int i=0;i<numberCount;i++)
|
||||
{
|
||||
numberFormat.append("0");
|
||||
}
|
||||
|
||||
DecimalFormat df = new DecimalFormat(numberFormat.toString());
|
||||
String serialNumberFormat = df.format(maxOrderNumber);
|
||||
paramMap.put("maxOrderNumber", serialNumberFormat);
|
||||
if(null != model){
|
||||
paramMap.putAll(model);
|
||||
}
|
||||
|
||||
String serialNumberString = getSerialNumber(paramMap, serialNumberPattern);
|
||||
|
||||
return serialNumberString;
|
||||
}
|
||||
//考虑并发情况必须采用同步机制
|
||||
@SuppressWarnings("unchecked")
|
||||
protected static synchronized int getMaxOrderNumber(String type,Integer queryYear,JBOTransaction tx) throws Exception
|
||||
{
|
||||
int currentYear = Calendar.getInstance().get(Calendar.YEAR);
|
||||
BizObjectManager tNumberManager = JBOFactory.getBizObjectManager(T_SERIAL_NUMBER.CLASS_NAME);
|
||||
tx.join(tNumberManager);
|
||||
Map<String,String>searchCondtion=new HashMap<String,String>();
|
||||
if(!StringX.isEmpty(type)){
|
||||
searchCondtion.put("type_", type);
|
||||
}
|
||||
if(null != queryYear){
|
||||
searchCondtion.put("year_", queryYear.toString());
|
||||
|
||||
}
|
||||
String querySql = DataOperatorUtil.getQuerySql(searchCondtion);
|
||||
BizObjectQuery bqDest = tNumberManager.createQuery(querySql);
|
||||
for (String key : searchCondtion.keySet()) {
|
||||
bqDest.setParameter(key, searchCondtion.get(key));
|
||||
}
|
||||
BizObject serialNumber = null;
|
||||
serialNumber = bqDest.getSingleResult();// 目标JBO,需要做更新操作
|
||||
if(null==serialNumber){
|
||||
serialNumber = tNumberManager.newObject();
|
||||
if (null != queryYear) {
|
||||
currentYear = queryYear;
|
||||
}
|
||||
serialNumber.setAttributeValue("year_",currentYear);
|
||||
serialNumber.setAttributeValue("type_",type);
|
||||
serialNumber.setAttributeValue("order_number_", "1");
|
||||
tNumberManager.saveObject(serialNumber);
|
||||
} else {
|
||||
Transaction sqlCa = Transaction.createTransaction(tx);
|
||||
SqlObject sqlObject = new SqlObject("update T_SERIAL_NUMBER set order_number_ = order_number_+1 where " + querySql);
|
||||
for (String key : searchCondtion.keySet()) {
|
||||
sqlObject.setParameter(key, searchCondtion.get(key));
|
||||
}
|
||||
sqlCa.executeSQL(sqlObject);
|
||||
serialNumber = bqDest.getSingleResult();
|
||||
}
|
||||
return serialNumber.getAttribute("order_number_").getInt();
|
||||
}
|
||||
//考虑并发情况必须采用同步机制
|
||||
@SuppressWarnings("unchecked")
|
||||
protected static synchronized int getMaxOrderNumberByMonth(String type,Integer queryYear,Integer queryMonth,JBOTransaction tx) throws Exception
|
||||
{
|
||||
|
||||
int currentYear = Calendar.getInstance().get(Calendar.YEAR);
|
||||
int currentMonth = Calendar.getInstance().get(Calendar.MONTH);
|
||||
BizObjectManager tNumberManager = JBOFactory.getBizObjectManager(T_SERIAL_NUMBER.CLASS_NAME);
|
||||
tx.join(tNumberManager);
|
||||
Map<String,String>searchCondtion=new HashMap<String,String>();
|
||||
if(!StringX.isEmpty(type)){
|
||||
searchCondtion.put("type_", type);
|
||||
}
|
||||
if(null != queryYear){
|
||||
searchCondtion.put("year_", queryYear.toString());
|
||||
|
||||
}
|
||||
if(null != queryMonth){
|
||||
searchCondtion.put("month_", queryMonth.toString());
|
||||
|
||||
}
|
||||
String querySql = DataOperatorUtil.getQuerySql(searchCondtion);
|
||||
BizObjectQuery bqDest = tNumberManager.createQuery(querySql);
|
||||
for (String key : searchCondtion.keySet()) {
|
||||
bqDest.setParameter(key, searchCondtion.get(key).toString());
|
||||
}
|
||||
BizObject serialNumber = null;
|
||||
serialNumber = bqDest.getSingleResult(true);// 目标JBO,需要做更新操作
|
||||
|
||||
|
||||
if(null==serialNumber)
|
||||
{
|
||||
|
||||
serialNumber = tNumberManager.newObject();
|
||||
if(null != queryYear)
|
||||
{
|
||||
currentYear = queryYear;
|
||||
}
|
||||
if(null != queryMonth){
|
||||
currentMonth = queryMonth;
|
||||
}
|
||||
serialNumber.setAttributeValue("year_",currentYear);
|
||||
serialNumber.setAttributeValue("month_",currentMonth);
|
||||
serialNumber.setAttributeValue("type_",type);
|
||||
serialNumber.setAttributeValue("order_number_", "0");
|
||||
}
|
||||
int maxOrderNumber = Integer.valueOf(serialNumber.getAttribute("order_number_").getInt()) + 1;
|
||||
serialNumber.setAttributeValue("order_number_",maxOrderNumber);
|
||||
tNumberManager.saveObject(serialNumber);
|
||||
return maxOrderNumber;
|
||||
}
|
||||
/**
|
||||
* 优先从号码废弃池中取号,如果号码废弃池中没有待取号吗,则根据序列号生成
|
||||
* @param serialNumberPattern
|
||||
* @param numberCount
|
||||
* @param model
|
||||
* @param type
|
||||
* @param queryYear
|
||||
* @param hibernateTemplate
|
||||
* @param jdbcTemplate
|
||||
* @return
|
||||
* @throws Exception
|
||||
*/
|
||||
protected static synchronized String getSerialNumberFirstDiscard(String serialNumberPattern,int numberCount,Map<String,String> model,String type,Integer queryYear,JBOTransaction tx) throws Exception
|
||||
{
|
||||
String currentDateTime = DateAssistant.getTodayNow();
|
||||
String currentYear = currentDateTime.substring(0,4);
|
||||
String month = currentDateTime.substring(5,7);
|
||||
String day = currentDateTime.substring(8,10);
|
||||
String hour = currentDateTime.substring(11,13);
|
||||
String minute = currentDateTime.substring(14,16);
|
||||
String second = currentDateTime.substring(17,19);
|
||||
|
||||
int year = Integer.parseInt(currentYear);
|
||||
if(null != queryYear){
|
||||
year = queryYear;
|
||||
}
|
||||
Map<String,String> paramMap = new HashMap<String,String>();
|
||||
paramMap.put("year", year+"");
|
||||
paramMap.put("month", month+"");
|
||||
paramMap.put("day", day+"");
|
||||
paramMap.put("hour", hour+"");
|
||||
paramMap.put("minute", minute+"");
|
||||
paramMap.put("second", second+"");
|
||||
|
||||
int maxOrderNumber =0;
|
||||
//从废弃池查找可用号码
|
||||
maxOrderNumber=getMinDiscardNumber(type, queryYear, tx);
|
||||
if(maxOrderNumber<0){//废弃池中没有数据
|
||||
maxOrderNumber=getMaxOrderNumber(type, year, tx);
|
||||
}
|
||||
StringBuffer numberFormat = new StringBuffer();
|
||||
for(int i=0;i<numberCount;i++)
|
||||
{
|
||||
numberFormat.append("0");
|
||||
}
|
||||
DecimalFormat df = new DecimalFormat(numberFormat.toString());
|
||||
String serialNumberFormat = df.format(maxOrderNumber);
|
||||
paramMap.put("maxOrderNumber", serialNumberFormat);
|
||||
if(null != model){
|
||||
paramMap.putAll(model);
|
||||
}
|
||||
|
||||
String serialNumberString = getSerialNumber(paramMap, serialNumberPattern);
|
||||
|
||||
return serialNumberString;
|
||||
}
|
||||
@SuppressWarnings("unchecked")
|
||||
protected static synchronized int getMinDiscardNumber(String type,Integer queryYear,JBOTransaction tx) throws Exception
|
||||
{
|
||||
BizObjectManager tNumberManager = JBOFactory.getBizObjectManager(T_SERIAL_DISCARD_NUMBER.CLASS_NAME);
|
||||
tx.join(tNumberManager);
|
||||
Map<String,String>searchCondtion=new HashMap<String,String>();
|
||||
if(!StringX.isEmpty(type)){
|
||||
searchCondtion.put("type_", type);
|
||||
}
|
||||
if(null != queryYear){
|
||||
searchCondtion.put("year_", queryYear.toString());
|
||||
|
||||
}
|
||||
|
||||
String querySql = DataOperatorUtil.getQuerySql(searchCondtion);
|
||||
BizObjectQuery bqDest = tNumberManager.createQuery(querySql);
|
||||
for (String key : searchCondtion.keySet()) {
|
||||
bqDest.setParameter(key, searchCondtion.get(key).toString());
|
||||
}
|
||||
BizObject serialNumber = null;
|
||||
serialNumber = bqDest.getSingleResult(true);// 目标JBO,需要做更新操作
|
||||
|
||||
if(null!=serialNumber)
|
||||
{
|
||||
int minOrderNumber = serialNumber.getAttribute("discard_number_").getInt();
|
||||
tNumberManager.deleteObject(serialNumber);
|
||||
return minOrderNumber;
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
|
||||
public static void deleteWorkFlowConflict(String flowUnid,JBOTransaction tx) throws Exception{
|
||||
Map<String,String> condtion=new HashMap<String, String>();
|
||||
public static void deleteWorkFlowConflict(String flowUnid, JBOTransaction tx) throws Exception {
|
||||
Map<String, String> condtion = new HashMap<String, String>();
|
||||
condtion.put("flow_unid", flowUnid);
|
||||
DataOperatorUtil.deleteJBOByCondtion(FLOW_WORK_FLAG.CLASS_NAME, condtion, tx);
|
||||
}
|
||||
|
||||
public static String checkWorkFlowConflict(String flowUnid,String flowname,String flowkey,JBOTransaction tx)throws Exception{
|
||||
String sql="SELECT flow_unid,flow_name FROM flow_work_flag WHERE flow_name IN("
|
||||
+ "SELECT flow_nameb FROM flow_mutex_config "
|
||||
+ "WHERE flow_namea=:flow_namea ) AND mutex_key=:mutex_key";
|
||||
ASResultSet rs = null;
|
||||
String flow_unid=null;
|
||||
String flow_name=null;
|
||||
String username=null;
|
||||
String res="";
|
||||
try {
|
||||
Map<String,String>searchCondtion=new HashMap<String,String>();
|
||||
Configure CurConfig = Configure.getInstance();
|
||||
String sDataSource = CurConfig.getDataSource();
|
||||
Transaction Sqlca = Transaction.createTransaction(sDataSource);
|
||||
SqlObject so = new SqlObject(sql);
|
||||
so.setParameter("flow_namea",flowname);
|
||||
so.setParameter("mutex_key",flowkey);
|
||||
rs = Sqlca.getASResultSet(so);
|
||||
while(rs.next()){
|
||||
flow_unid=rs.getString("flow_unid");
|
||||
flow_name=rs.getString("flow_name");
|
||||
searchCondtion.clear();
|
||||
searchCondtion.put("objectno", flow_unid);
|
||||
BizObject flowobject=DataOperatorUtil.getSingleJBO(FLOW_OBJECT.CLASS_NAME, searchCondtion, tx);
|
||||
if(res!=""){
|
||||
res+=",";
|
||||
}
|
||||
res+=flow_name+"[用户名:"+flowobject.getAttribute("username").getString()+"]";
|
||||
}
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}finally{
|
||||
rs.close();
|
||||
}
|
||||
if(res.length()>0){
|
||||
//删除表数据
|
||||
Map<String,String>condtion=new HashMap<String,String>();
|
||||
condtion.put("flow_unid", flowUnid);
|
||||
DataOperatorUtil.deleteJBOByCondtion(FLOW_BUSSINESS_OBJECT.CLASS_NAME, condtion, tx);
|
||||
return "当前流程和"+res+"互斥,如有疑惑请联系管理员";
|
||||
}else{
|
||||
/*BizObjectManager bom=JBOFactory.getBizObjectManager(FLOW_BUSSINESS_OBJECT.CLASS_NAME);
|
||||
tx.join(bom);
|
||||
BizObject bo=bom.newObject();
|
||||
|
||||
bo.setAttributeValue("flow_unid", flowUnid);
|
||||
bo.setAttributeValue("flow_name", flowname);
|
||||
bo.setAttributeValue("flow_key", flowkey);
|
||||
bom.saveObject(bo);*/
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -57,7 +57,7 @@ public class SelectBalance {
|
||||
return "ERROR@剩余额度不足";
|
||||
}
|
||||
}
|
||||
return "ERROR@网络异常……";
|
||||
return "ERROR@经销商没有保证金";
|
||||
}
|
||||
}
|
||||
|
||||
@ -93,8 +93,12 @@ public class AutoFiveGradeClassification implements Job {
|
||||
//更新合同状态为100,105 分类状态
|
||||
sqlca.executeSQL("update LC_CALC_CONDITION_STATUS LCCS join lb_contract_info lci on LCCS.CONTRACT_ID = lci.ID set LCCS.FIVE_GRADE='ClassifyResult01',LCCS.FIVE_GRADE_DATE= date_format(curdate(),'%Y/%m/%d'),LCCS.FIVE_GRADE_DEMO=concat(date_format(curdate(),'%Y/%m/%d'),'日自动跑批') where lci.CONTRACT_STATUS in ('100','105') and LCCS.FIVE_GRADE <> 'ClassifyResult01'");
|
||||
|
||||
//更新合同状态为31分类状态
|
||||
//更新合同状态为31分类状态(逾期)
|
||||
sqlca.executeSQL("{call proc_autoFiveClassify()}");
|
||||
|
||||
//更新合同状态为31分类状态(未逾期,刚起租) 2022/03/15
|
||||
sqlca.executeSQL("{call proc_autoFiveClassify_normal()}");
|
||||
|
||||
sqlca.commit();
|
||||
List<BizObject> diList = JBOFactory.getBizObjectManager(DISTRIBUTOR_INFO.CLASS_NAME).createQuery("1=1").getResultList(false);
|
||||
for (BizObject bo : diList) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user