修改生成凭证的事务
This commit is contained in:
parent
98411416d2
commit
6becbda3db
@ -36,12 +36,12 @@ public class Checkfordeduction {
|
||||
* @param VOUCHERNO
|
||||
* @throws Exception
|
||||
*/
|
||||
public void CreateVoucher(String VOUCHERNO,String id) throws Exception {
|
||||
public void CreateVoucher(String VOUCHERNO,String id,Transaction Sqlca) throws Exception {
|
||||
|
||||
Transaction Sqlca = null;
|
||||
// Transaction Sqlca = null;
|
||||
String sql_where = "";
|
||||
try {
|
||||
Sqlca = Transaction.createTransaction(CacheLoaderFactory.getDataSource());
|
||||
// Sqlca = Transaction.createTransaction(CacheLoaderFactory.getDataSource());
|
||||
Map<String, String> map = new HashMap<String, String>();
|
||||
map.put("VOUCHER_NO", VOUCHERNO);
|
||||
BizObject vouch = DataOperatorUtil.getSingleJBO(LV_VOUCHER_CONFIG.CLASS_NAME, map, Sqlca);
|
||||
@ -77,28 +77,28 @@ public class Checkfordeduction {
|
||||
SqlObject asql = new SqlObject(sql_where);
|
||||
Sqlca.executeSQL(asql);
|
||||
}
|
||||
Sqlca.commit();
|
||||
// Sqlca.commit();
|
||||
}
|
||||
} catch (Exception e) {
|
||||
returns = "false";
|
||||
Sqlca.rollback();
|
||||
// Sqlca.rollback();
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
} /*finally {
|
||||
if (Sqlca != null) {
|
||||
Sqlca.disConnect();
|
||||
Sqlca = null;
|
||||
}
|
||||
}
|
||||
}*/
|
||||
}
|
||||
|
||||
/**
|
||||
* f16存凭证编号,f17寸凭证关键字 关键字的配发 表的别名 .过滤关键字段 f17也会存进表中 查询sql 用逗号关联的方法,查询乘积条数 where
|
||||
* 1=1
|
||||
*/
|
||||
public void initLVRentIncome(String id) throws Exception {
|
||||
Transaction Sqlca = null;
|
||||
public void initLVRentIncome(String id,Transaction Sqlca) throws Exception {
|
||||
// Transaction Sqlca = null;
|
||||
try {
|
||||
Sqlca = Transaction.createTransaction(CacheLoaderFactory.getDataSource());
|
||||
// Sqlca = Transaction.createTransaction(CacheLoaderFactory.getDataSource());
|
||||
|
||||
// String sql="INSERT INTO lv_rent_income (SELECT
|
||||
// REPLACE(UUID(),'-',''),CONCAT('k',getSerialNumber
|
||||
@ -113,10 +113,10 @@ public class Checkfordeduction {
|
||||
// 未逾期及逾期未过月
|
||||
String[] ids = id.split("@");
|
||||
for (String str : ids) {
|
||||
String sql = "INSERT INTO lv_rent_income (SELECT REPLACE(UUID(), '-', ''),CONCAT('k', getSerialNumber ()),cif.customer_num,cif.customername,lci.id,lci.contract_number,lrp.ID,lri.HIRE_DATE,lri.RENT,lri.CORPUS,lri.INTEREST,0.00,lri.OWN_BANK,lri.OWN_ACCOUNT,lri.OWN_NUMBER,lri.EBANK_NUMBER,lri.CARDDEDUCT_ID,lri.ACCOUNTING_DATE FROM lc_rent_income lri LEFT JOIN lb_contract_info lci ON lci.id = lri.contract_id LEFT JOIN lc_rent_plan lrp ON lrp.contract_id=lci.id AND lrp.plan_list=lri.plan_list LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id WHERE lrp.id in('"+ str + "') AND lrp.id NOT IN(SELECT INCOME_ID FROM lv_rent_income) AND DATE_FORMAT(NOW(),'%Y-%m') = DATE_FORMAT(lrp.plan_date,'%Y-%m'))";
|
||||
String sql = "INSERT INTO lv_rent_income (SELECT REPLACE(UUID(), '-', ''),CONCAT('k', getSerialNumber ('ƾ֤ºÅ')),cif.customer_num,cif.customername,lci.id,lci.contract_number,lrp.ID,lri.HIRE_DATE,lri.RENT,lri.CORPUS,lri.INTEREST,0.00,lri.OWN_BANK,lri.OWN_ACCOUNT,lri.OWN_NUMBER,lri.EBANK_NUMBER,lri.CARDDEDUCT_ID,lri.ACCOUNTING_DATE FROM lc_rent_income lri LEFT JOIN lb_contract_info lci ON lci.id = lri.contract_id LEFT JOIN lc_rent_plan lrp ON lrp.contract_id=lci.id AND lrp.plan_list=lri.plan_list LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id WHERE lrp.id in('"+ str + "') AND lrp.id NOT IN(SELECT INCOME_ID FROM lv_rent_income) AND DATE_FORMAT(NOW(),'%Y-%m') = DATE_FORMAT(lrp.plan_date,'%Y-%m'))";
|
||||
// 逾期过月
|
||||
String sq1 = "INSERT INTO lv_rent_income2 (SELECT REPLACE(UUID(), '-', ''),CONCAT('k', getSerialNumber ()),cif.customer_num,cif.customername,lci.id,lci.contract_number,lrp.ID,lri.HIRE_DATE,lri.RENT,lri.CORPUS,lri.INTEREST,0.00,lri.OWN_BANK,lri.OWN_ACCOUNT,lri.OWN_NUMBER,lri.EBANK_NUMBER,lri.CARDDEDUCT_ID,lri.ACCOUNTING_DATE FROM lc_rent_income lri LEFT JOIN lb_contract_info lci ON lci.id = lri.contract_id LEFT JOIN lc_rent_plan lrp ON lrp.contract_id=lci.id AND lrp.plan_list=lri.plan_list LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id WHERE lrp.id in('"+ str + "') AND lrp.id NOT IN(SELECT INCOME_ID FROM lv_rent_income2) AND DATE_FORMAT(NOW(),'%Y-%m')> DATE_FORMAT(lrp.plan_date,'%Y-%m'))";
|
||||
String sql1 = "INSERT INTO lv_penalty_income (SELECT REPLACE(UUID(),'-',''),CONCAT('k',getSerialNumber ()),cif.customer_num,cif.customername,lci.id,lci.contract_number,lrp.ID,lri.HIRE_DATE ,0.00,0.00,0.00,lri.PENALTY,lri.OWN_BANK,lri.OWN_ACCOUNT,lri.OWN_NUMBER,lri.EBANK_NUMBER,lri.CARDDEDUCT_ID,lri.ACCOUNTING_DATE FROM lc_rent_income lri LEFT JOIN lc_rent_plan lrp ON lri.contract_id=lrp.contract_id AND lrp.plan_list=lri.plan_list LEFT JOIN lb_contract_info lci ON lci.id=lrp.contract_id LEFT JOIN lb_union_lessee lul ON lul.contract_id=lci.id LEFT JOIN customer_info cif ON cif.customerid=lul.customer_id WHERE lrp.id in('"+ str + "') AND lrp.id NOT IN(SELECT INCOME_ID FROM lv_penalty_income) )";
|
||||
String sq1 = "INSERT INTO lv_rent_income2 (SELECT REPLACE(UUID(), '-', ''),CONCAT('k', getSerialNumber ('ƾ֤ºÅ')),cif.customer_num,cif.customername,lci.id,lci.contract_number,lrp.ID,lri.HIRE_DATE,lri.RENT,lri.CORPUS,lri.INTEREST,0.00,lri.OWN_BANK,lri.OWN_ACCOUNT,lri.OWN_NUMBER,lri.EBANK_NUMBER,lri.CARDDEDUCT_ID,lri.ACCOUNTING_DATE FROM lc_rent_income lri LEFT JOIN lb_contract_info lci ON lci.id = lri.contract_id LEFT JOIN lc_rent_plan lrp ON lrp.contract_id=lci.id AND lrp.plan_list=lri.plan_list LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id WHERE lrp.id in('"+ str + "') AND lrp.id NOT IN(SELECT INCOME_ID FROM lv_rent_income2) AND DATE_FORMAT(NOW(),'%Y-%m')> DATE_FORMAT(lrp.plan_date,'%Y-%m'))";
|
||||
String sql1 = "INSERT INTO lv_penalty_income (SELECT REPLACE(UUID(),'-',''),CONCAT('k',getSerialNumber ('ƾ֤ºÅ')),cif.customer_num,cif.customername,lci.id,lci.contract_number,lrp.ID,lri.HIRE_DATE ,0.00,0.00,0.00,lri.PENALTY,lri.OWN_BANK,lri.OWN_ACCOUNT,lri.OWN_NUMBER,lri.EBANK_NUMBER,lri.CARDDEDUCT_ID,lri.ACCOUNTING_DATE FROM lc_rent_income lri LEFT JOIN lc_rent_plan lrp ON lri.contract_id=lrp.contract_id AND lrp.plan_list=lri.plan_list LEFT JOIN lb_contract_info lci ON lci.id=lrp.contract_id LEFT JOIN lb_union_lessee lul ON lul.contract_id=lci.id LEFT JOIN customer_info cif ON cif.customerid=lul.customer_id WHERE lrp.id in('"+ str + "') AND lrp.id NOT IN(SELECT INCOME_ID FROM lv_penalty_income) )";
|
||||
// String sql2 = "INSERT INTO lv_discount_income (SELECT REPLACE(UUID(), '-', ''),CONCAT('k', getSerialNumber ()),cif.customer_num,cif.customername,lci.id,lci.contract_number,ld.ID,DATE_FORMAT(ld.inputtime, '%Y/%m/%d'),ld.discount_money,0.00,0.00,0.00,oac.acc_bank,oac.acc_name,oac.acc_number FROM lb_discount ld LEFT JOIN lb_contract_info lci ON lci.contract_no = ld.contract_no LEFT JOIN lb_union_lessee lul ON lul.contract_id = lci.id LEFT JOIN customer_info cif ON cif.customerid = lul.customer_id LEFT JOIN (SELECT acc_bank,acc_name,acc_number FROM OWN_ACCOUNT WHERE account_type = 'in_account' AND state_ = '0010' LIMIT 0, 1) oac ON 1 = 1 WHERE ld.id NOT IN (SELECT income_id FROM lv_discount_income)) ";
|
||||
SqlObject as1 = new SqlObject(sq1);
|
||||
SqlObject asql = new SqlObject(sql);
|
||||
@ -127,21 +127,23 @@ public class Checkfordeduction {
|
||||
Sqlca.executeSQL(asql1);
|
||||
//Sqlca.executeSQL(asql2);
|
||||
}
|
||||
Sqlca.commit();
|
||||
// Sqlca.commit();
|
||||
} catch (Exception e) {
|
||||
returns = "false";
|
||||
Sqlca.rollback();
|
||||
// Sqlca.rollback();
|
||||
e.printStackTrace();
|
||||
} finally {
|
||||
} /*finally {
|
||||
if (Sqlca != null) {
|
||||
Sqlca.disConnect();
|
||||
Sqlca = null;
|
||||
}
|
||||
}
|
||||
}*/
|
||||
}
|
||||
|
||||
public String execute(JBOTransaction tx) {
|
||||
public String execute(JBOTransaction tx) throws Exception{
|
||||
Transaction Sqlca = null;
|
||||
try {
|
||||
Sqlca = Transaction.createTransaction(CacheLoaderFactory.getDataSource());
|
||||
// 遍历传入的参数, 拼接SQL in条件内容
|
||||
//String[] ids = id.split("@");
|
||||
/*StringBuffer parms = new StringBuffer();
|
||||
@ -152,22 +154,28 @@ public class Checkfordeduction {
|
||||
parms.append(",'" + str + "'");
|
||||
}
|
||||
}*/
|
||||
initLVRentIncome(id);
|
||||
initLVRentIncome(id,Sqlca);
|
||||
if (returns != "true") {
|
||||
return returns;
|
||||
}
|
||||
for (String voucherno : voucher_nos) {
|
||||
CreateVoucher(voucherno,id);
|
||||
CreateVoucher(voucherno,id,Sqlca);
|
||||
if (returns != "true") {
|
||||
return returns;
|
||||
}
|
||||
}
|
||||
return returns;
|
||||
Sqlca.commit();
|
||||
} catch (Exception e) {
|
||||
Sqlca.rollback();
|
||||
e.printStackTrace();
|
||||
return "false";
|
||||
}finally {
|
||||
if (Sqlca != null) {
|
||||
Sqlca.disConnect();
|
||||
Sqlca = null;
|
||||
}
|
||||
}
|
||||
|
||||
return returns;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user