Merge branch 'develop' of http://git2.tenwa.com.cn/ApzlDev/apzl_leasing.git into zhouzebei
This commit is contained in:
commit
64094280ba
@ -174,11 +174,13 @@
|
||||
/* if((phase=="0010"&&flowNo=="FundPaymentCarFlow")||((phase=="0020"||phase=="0010")&&flowNo=="BusinessApplyFlow")){
|
||||
actionSet.hide();
|
||||
} */
|
||||
|
||||
if(phase=="0010"&&(flowNo!="ProjectCreditFlow"&&flowNo!="ProjectRecreditFlow"&&flowNo!="Mortgage2FileFlow"&&flowNo!="ContractOnhireFlow"&&flowNo!="AdjustInterestFlow")){
|
||||
actionSet.hide();
|
||||
}
|
||||
|
||||
if(flowNo=="ProjectCreditFlow"||flowNo=="ProjectRecreditFlow"||flowNo=="Mortgage2FileFlow"||flowNo=="ContractOnhireFlow"||flowNo=="AdjustInterestFlow"){
|
||||
if(phase!="0010"){
|
||||
actionSet.hide();
|
||||
}
|
||||
}else{
|
||||
actionSet.hide();
|
||||
}
|
||||
}
|
||||
}else{
|
||||
actionSet.html("");
|
||||
|
||||
@ -70,8 +70,13 @@
|
||||
var sCreateType="<%=sCreateType%>";
|
||||
/* if(sCreateType!="manager"){//第一级都可建管理员,业务员必须要配置
|
||||
if(sOrgLeval!="Y"){alert("管理员没有配置权限,不能新增业务人员");return false;}
|
||||
} */
|
||||
var sReturn = RunJavaMethodTrans("com.amarsoft.app.awe.config.orguser.action.UserManageAction","checkDistributeStatus","orgID=<%=sOrgID%>");
|
||||
if("SUCCESS"!=sReturn){
|
||||
alert("该经销商未激活,不能创建账号!");
|
||||
return;
|
||||
}
|
||||
*/ OpenPage("/Tenwa/Core/ChannelCRMManager/ChannelUser/UserInfo.jsp?OrgID=<%=sOrgID%>&isNew=true&CreateType="+sCreateType,"_self","");
|
||||
OpenPage("/Tenwa/Core/ChannelCRMManager/ChannelUser/UserInfo.jsp?OrgID=<%=sOrgID%>&isNew=true&CreateType="+sCreateType,"_self","");
|
||||
}
|
||||
|
||||
function viewAndEdit(){
|
||||
|
||||
@ -4652,6 +4652,18 @@
|
||||
</managerProperties>
|
||||
</manager>
|
||||
</class>
|
||||
<class name="VI_AUTODISTRIBUTE" label="" keyAttributes="id">
|
||||
<attributes>
|
||||
<attribute name="id" label="合同id" type="STRING"/>
|
||||
<attribute name="over_days" label="逾期天数" type="STRING"/>
|
||||
</attributes>
|
||||
<manager>
|
||||
<managerProperties>
|
||||
<property name="table" value="vi_autodistribute" />
|
||||
<property name="createKey" value="true" />
|
||||
</managerProperties>
|
||||
</manager>
|
||||
</class>
|
||||
</package>
|
||||
<package name="jbo.com.tenwa.lease.carbrand" >
|
||||
<class name="LB_CLAIMS_BOOK_DETAIL" label="索赔申请书详情表" keyAttributes="ID">
|
||||
|
||||
@ -210,8 +210,8 @@ public class TransRateHelper {
|
||||
String newRate = "0";
|
||||
if("calculation".equals(condition.getAdjustType())){
|
||||
if ("proportion".equals(condition.getRateFloatType())) {// 按央行利率浮动时
|
||||
//newRate = getRateByProportion(condition.getLeaseTerm(), oldYearRate, adjust, condition.getRateFloatAmt());
|
||||
newRate = getRateByProportion(condition.getLeaseTerm(), adjust, condition.getRateFloatAmt());
|
||||
newRate = getRateByProportion(condition.getLeaseTerm(), oldYearRate, adjust, condition.getRateFloatAmt());
|
||||
//newRate = getRateByProportion(condition.getLeaseTerm(), adjust, condition.getRateFloatAmt());
|
||||
} else if ("add".equals(condition.getRateFloatType())) {// 按央利率加点时
|
||||
//newRate = getRateByPoint(condition.getLeaseTerm(), oldYearRate, adjust);
|
||||
newRate = getRateByPoint(condition.getLeaseTerm(), adjust, condition.getRateFloatAmt());
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package com.amarsoft.app.awe.config.orguser.action;
|
||||
|
||||
import com.amarsoft.are.jbo.BizObject;
|
||||
import com.amarsoft.are.jbo.JBOFactory;
|
||||
import com.amarsoft.are.jbo.JBOTransaction;
|
||||
|
||||
@ -60,4 +61,37 @@ public class UserManageAction {
|
||||
.setParameter("UserID", userID).executeUpdate();
|
||||
return "SUCCESS";
|
||||
}
|
||||
|
||||
/**
|
||||
* 检查经销商是否激活
|
||||
* @param tx
|
||||
* @return String
|
||||
* @throws Exception
|
||||
*/
|
||||
public String checkDistributeStatus(JBOTransaction tx) throws Exception {
|
||||
String status = JBOFactory.getBizObjectManager("jbo.app.tenwa.customer.DISTRIBUTOR_INFO",tx).createQuery("orgid=:orgid")
|
||||
.setParameter("orgid", orgID).getSingleResult(false).getAttribute("DISTRIBUTOR_STATUS").getString();
|
||||
if("distributor_status01".equals(status)){
|
||||
return "该经销商状态为:草稿。不能创建账号!";
|
||||
}else if ("distributor_status02".equals(status)){
|
||||
return "该经销商状态为:待审核。不能创建账号!";
|
||||
}else if ("distributor_status03".equals(status)){
|
||||
return "该经销商状态为:审核中。不能创建账号!";
|
||||
}else if ("distributor_status04".equals(status)){
|
||||
return "SUCCESS";
|
||||
}else if ("distributor_status05".equals(status)){
|
||||
return "该经销商状态为:合作暂停。不能创建账号!";
|
||||
}else if ("distributor_status06".equals(status)){
|
||||
return "该经销商状态为:合作终止。不能创建账号!";
|
||||
}else if ("distributor_status07".equals(status)){
|
||||
return "该经销商状态为:否决。不能创建账号!";
|
||||
}else if ("distributor_status08".equals(status)){
|
||||
return "该经销商状态为:审核通过。不能创建账号!";
|
||||
}else if ("distributor_status09".equals(status)){
|
||||
return "该经销商状态为:保证金已收取。不能创建账号!";
|
||||
}else if ("distributor_status10".equals(status)){
|
||||
return "该经销商状态为:保证金已退回。不能创建账号!";
|
||||
}
|
||||
return "该经销商状态不能创建账号!";
|
||||
}
|
||||
}
|
||||
|
||||
@ -102,7 +102,7 @@ public class BusinessCancelJob implements Job {
|
||||
lcibo.setAttributeValue(LB_CANCLE_INFO.PROJECT_ID,map.get("ID"));
|
||||
// lcibo.setAttributeValue(LB_CANCLE_INFO.CANCLE_TYPE,"");
|
||||
lcibom.saveObject(lcibo);
|
||||
SaveBusinessStatus.saveByProjectId(map.get("ID"), tx, "62", jboName.getUserId(arg0, tx));
|
||||
SaveBusinessStatus.saveByProjectId(map.get("ID"), tx, "5", jboName.getUserId(arg0, tx));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -54,11 +54,11 @@ public class CreateVoucherActualPaymentCarTradition extends BaseBussiness{
|
||||
|
||||
//购置融资租赁资产-汽车
|
||||
if("PZ2018092500000196".equals(VOUCHERNO) || "PZ2018092600000234".equals(VOUCHERNO) || "PZ2018092500000198".equals(VOUCHERNO) || "PZ2018092600000236".equals(VOUCHERNO)) {
|
||||
sql="SELECT LFIT1.EQUIP,ROUND(LFIT1.EQUIP / getTax(LCI.LEAS_FORM,'本金',LCI.`INPUTTIME`),2) AS EQUIPNOTAX,(LFIT1.EQUIP - ROUND(LFIT1.EQUIP / getTax(LCI.LEAS_FORM,'本金',LCI.`INPUTTIME`),2)) AS EQUIPTAX,(LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) AS INSURANCE_PREMIUM_OTHER,ROUND((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY)/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS INSURANCE_PREMIUM_OTHER_NOTAX,((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) - ROUND((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY)/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS INSURANCE_PREMIUM_OTHER_TAX,(LFIT1.EQUIP + LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) AS EQUIP_INSURACE_PREMIUM_OTHER,LFIT3.FIRST_PAYMENT,ROUND(LFIT3.FIRST_PAYMENT/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS FIRST_PAYMENT_NOTAX,(LFIT3.FIRST_PAYMENT - ROUND(LFIT3.FIRST_PAYMENT/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS FIRST_PAYMENT_TAX,(LFIT1.EQUIP + LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY - LFIT3.FIRST_PAYMENT) AS EQUIP_PREMIUM_OTHER_SUBFIRST,LFIT1.ACCOUNT_DATE AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LFIT1.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT1.ACC_NUMBER FROM LC_CALC_CONDITION LCCT LEFT JOIN LB_CONTRACT_INFO LCI ON LCCT.CONTRACT_ID = LCI.`ID` LEFT JOIN (SELECT FLOWUNID,MAX(CONTRACT_ID) AS CONTRACT_ID,MAX(ACC_NUMBER) AS ACC_NUMBER,SUM(FACT_MONEY) AS EQUIP,MAX(ACCOUNTING_DATE) AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP GROUP BY FLOWUNID) LFIT1 ON LFIT1.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS OTHER_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype29') LFIT2 ON LFIT2.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS FIRST_PAYMENT,SETTLE_METHOD FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype5') LFIT3 ON LFIT3.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS INSURANCE_PREMIUM,SETTLE_METHOD FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype21') LFIT4 ON LFIT4.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID 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 LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LCI.BUSINESSTYPE = '3' AND LFIT1.FLOWUNID=:FLOWUNID ";
|
||||
sql="SELECT LFIT1.EQUIP,ROUND(LFIT1.EQUIP / getTax(LCI.LEAS_FORM,'本金',LCI.`INPUTTIME`),2) AS EQUIPNOTAX,(LFIT1.EQUIP - ROUND(LFIT1.EQUIP / getTax(LCI.LEAS_FORM,'本金',LCI.`INPUTTIME`),2)) AS EQUIPTAX,(LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) AS INSURANCE_PREMIUM_OTHER,ROUND((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY)/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS INSURANCE_PREMIUM_OTHER_NOTAX,((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) - ROUND((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY)/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS INSURANCE_PREMIUM_OTHER_TAX,(LFIT1.EQUIP + LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) AS EQUIP_INSURACE_PREMIUM_OTHER,LFIT3.FIRST_PAYMENT,ROUND(LFIT3.FIRST_PAYMENT/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS FIRST_PAYMENT_NOTAX,(LFIT3.FIRST_PAYMENT - ROUND(LFIT3.FIRST_PAYMENT/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS FIRST_PAYMENT_TAX,(LFIT1.EQUIP + LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY - LFIT3.FIRST_PAYMENT) AS EQUIP_PREMIUM_OTHER_SUBFIRST,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LFIT1.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT1.ACC_NUMBER FROM LC_CALC_CONDITION LCCT LEFT JOIN LB_CONTRACT_INFO LCI ON LCCT.CONTRACT_ID = LCI.`ID` LEFT JOIN (SELECT FLOWUNID,MAX(CONTRACT_ID) AS CONTRACT_ID,MAX(ACC_NUMBER) AS ACC_NUMBER,SUM(FACT_MONEY) AS EQUIP,MAX(ACCOUNTING_DATE) AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP GROUP BY FLOWUNID) LFIT1 ON LFIT1.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS OTHER_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype29') LFIT2 ON LFIT2.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS FIRST_PAYMENT,SETTLE_METHOD FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype5') LFIT3 ON LFIT3.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS INSURANCE_PREMIUM,SETTLE_METHOD FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype21') LFIT4 ON LFIT4.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID 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 LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LCI.BUSINESSTYPE = '3' AND LFIT1.FLOWUNID=:FLOWUNID ";
|
||||
}else if("PZ2018092500000197".equals(VOUCHERNO) || "PZ2018092600000235".equals(VOUCHERNO)) {// 购置融资租赁资产-其他
|
||||
sql="SELECT LFIT1.EQUIP,ROUND(LFIT1.EQUIP/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS EQUIPNOTAX,(LFIT1.EQUIP - ROUND(LFIT1.EQUIP / getTax(LCI.LEAS_FORM,'本金',LCI.`INPUTTIME`),2)) AS EQUIPTAX,(LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) AS INSURANCE_PREMIUM_OTHER,ROUND((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) / getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS INSURANCE_PREMIUM_OTHER_NOTAX,((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) - ROUND((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY)/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS INSURANCE_PREMIUM_OTHER_TAX,(LFIT1.EQUIP + LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) AS EQUIP_INSURACE_PREMIUM_OTHER,LFIT3.FIRST_PAYMENT,ROUND(LFIT3.FIRST_PAYMENT / getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS FIRST_PAYMENT_NOTAX,(LFIT3.FIRST_PAYMENT - ROUND(LFIT3.FIRST_PAYMENT / getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS FIRST_PAYMENT_TAX,(LFIT1.EQUIP + LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY - LFIT3.FIRST_PAYMENT) AS EQUIP_PREMIUM_OTHER_SUBFIRST,LFIT4.ACCOUNT_DATE AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LFIT1.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT1.ACC_NUMBER FROM LC_CALC_CONDITION LCCT LEFT JOIN LB_CONTRACT_INFO LCI ON LCCT.CONTRACT_ID = LCI.`ID` LEFT JOIN (SELECT FLOWUNID,MAX(CONTRACT_ID) AS CONTRACT_ID,MAX(ACC_NUMBER) AS ACC_NUMBER,SUM(FACT_MONEY) AS EQUIP,MAX(ACCOUNTING_DATE) AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP GROUP BY FLOWUNID) LFIT1 ON LFIT1.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS OTHER_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype29') LFIT2 ON LFIT2.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS FIRST_PAYMENT,SETTLE_METHOD,ACCOUNTING_DATE AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype5') LFIT3 ON LFIT3.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS INSURANCE_PREMIUM,SETTLE_METHOD,ACCOUNTING_DATE AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype21') LFIT4 ON LFIT4.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID 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 LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LCI.BUSINESSTYPE = '3' AND LFIT1.FLOWUNID = :FLOWUNID ";
|
||||
sql="SELECT LFIT1.EQUIP,ROUND(LFIT1.EQUIP/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS EQUIPNOTAX,(LFIT1.EQUIP - ROUND(LFIT1.EQUIP / getTax(LCI.LEAS_FORM,'本金',LCI.`INPUTTIME`),2)) AS EQUIPTAX,(LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) AS INSURANCE_PREMIUM_OTHER,ROUND((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) / getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS INSURANCE_PREMIUM_OTHER_NOTAX,((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) - ROUND((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY)/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS INSURANCE_PREMIUM_OTHER_TAX,(LFIT1.EQUIP + LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) AS EQUIP_INSURACE_PREMIUM_OTHER,LFIT3.FIRST_PAYMENT,ROUND(LFIT3.FIRST_PAYMENT / getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS FIRST_PAYMENT_NOTAX,(LFIT3.FIRST_PAYMENT - ROUND(LFIT3.FIRST_PAYMENT / getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS FIRST_PAYMENT_TAX,(LFIT1.EQUIP + LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY - LFIT3.FIRST_PAYMENT) AS EQUIP_PREMIUM_OTHER_SUBFIRST,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LFIT1.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT1.ACC_NUMBER FROM LC_CALC_CONDITION LCCT LEFT JOIN LB_CONTRACT_INFO LCI ON LCCT.CONTRACT_ID = LCI.`ID` LEFT JOIN (SELECT FLOWUNID,MAX(CONTRACT_ID) AS CONTRACT_ID,MAX(ACC_NUMBER) AS ACC_NUMBER,SUM(FACT_MONEY) AS EQUIP,MAX(ACCOUNTING_DATE) AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP GROUP BY FLOWUNID) LFIT1 ON LFIT1.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS OTHER_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype29') LFIT2 ON LFIT2.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS FIRST_PAYMENT,SETTLE_METHOD,ACCOUNTING_DATE AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype5') LFIT3 ON LFIT3.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS INSURANCE_PREMIUM,SETTLE_METHOD,ACCOUNTING_DATE AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype21') LFIT4 ON LFIT4.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID 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 LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LCI.BUSINESSTYPE = '3' AND LFIT1.FLOWUNID = :FLOWUNID ";
|
||||
}else{// 经销商支付的预付款(首付)
|
||||
sql="SELECT LFIT1.EQUIP,ROUND(LFIT1.EQUIP/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS EQUIPNOTAX,(LFIT1.EQUIP - ROUND(LFIT1.EQUIP / getTax(LCI.LEAS_FORM,'本金',LCI.`INPUTTIME`),2)) AS EQUIPTAX,(LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) AS INSURANCE_PREMIUM_OTHER,ROUND((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) / getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS INSURANCE_PREMIUM_OTHER_NOTAX,((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) - ROUND((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY)/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS INSURANCE_PREMIUM_OTHER_TAX,(LFIT1.EQUIP + LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) AS EQUIP_INSURACE_PREMIUM_OTHER,LFIT3.FIRST_PAYMENT,ROUND(LFIT3.FIRST_PAYMENT / getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS FIRST_PAYMENT_NOTAX,(LFIT3.FIRST_PAYMENT - ROUND(LFIT3.FIRST_PAYMENT / getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS FIRST_PAYMENT_TAX,(LFIT1.EQUIP + LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY - LFIT3.FIRST_PAYMENT) AS EQUIP_PREMIUM_OTHER_SUBFIRST,LFIT3.ACCOUNT_DATE AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LFIT1.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT1.ACC_NUMBER FROM LC_CALC_CONDITION LCCT LEFT JOIN LB_CONTRACT_INFO LCI ON LCCT.CONTRACT_ID = LCI.`ID` LEFT JOIN (SELECT FLOWUNID,MAX(CONTRACT_ID) AS CONTRACT_ID,MAX(ACC_NUMBER) AS ACC_NUMBER,SUM(FACT_MONEY) AS EQUIP,MAX(ACCOUNTING_DATE) AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP GROUP BY FLOWUNID) LFIT1 ON LFIT1.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS OTHER_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype29') LFIT2 ON LFIT2.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS FIRST_PAYMENT,SETTLE_METHOD,ACCOUNTING_DATE AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype5') LFIT3 ON LFIT3.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS INSURANCE_PREMIUM,SETTLE_METHOD,ACCOUNTING_DATE AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype21') LFIT4 ON LFIT4.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID 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 LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LCI.BUSINESSTYPE = '3' AND LFIT1.FLOWUNID = :FLOWUNID ";
|
||||
sql="SELECT LFIT1.EQUIP,ROUND(LFIT1.EQUIP/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS EQUIPNOTAX,(LFIT1.EQUIP - ROUND(LFIT1.EQUIP / getTax(LCI.LEAS_FORM,'本金',LCI.`INPUTTIME`),2)) AS EQUIPTAX,(LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) AS INSURANCE_PREMIUM_OTHER,ROUND((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) / getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS INSURANCE_PREMIUM_OTHER_NOTAX,((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) - ROUND((LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY)/getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS INSURANCE_PREMIUM_OTHER_TAX,(LFIT1.EQUIP + LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY) AS EQUIP_INSURACE_PREMIUM_OTHER,LFIT3.FIRST_PAYMENT,ROUND(LFIT3.FIRST_PAYMENT / getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2) AS FIRST_PAYMENT_NOTAX,(LFIT3.FIRST_PAYMENT - ROUND(LFIT3.FIRST_PAYMENT / getTax(LCI.LEAS_FORM,'本金',LCI.INPUTTIME),2)) AS FIRST_PAYMENT_TAX,(LFIT1.EQUIP + LFIT4.INSURANCE_PREMIUM + LFIT2.OTHER_MONEY - LFIT3.FIRST_PAYMENT) AS EQUIP_PREMIUM_OTHER_SUBFIRST,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LFIT1.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT1.ACC_NUMBER FROM LC_CALC_CONDITION LCCT LEFT JOIN LB_CONTRACT_INFO LCI ON LCCT.CONTRACT_ID = LCI.`ID` LEFT JOIN (SELECT FLOWUNID,MAX(CONTRACT_ID) AS CONTRACT_ID,MAX(ACC_NUMBER) AS ACC_NUMBER,SUM(FACT_MONEY) AS EQUIP,MAX(ACCOUNTING_DATE) AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP GROUP BY FLOWUNID) LFIT1 ON LFIT1.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS OTHER_MONEY FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype29') LFIT2 ON LFIT2.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS FIRST_PAYMENT,SETTLE_METHOD,ACCOUNTING_DATE AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype5') LFIT3 ON LFIT3.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS INSURANCE_PREMIUM,SETTLE_METHOD,ACCOUNTING_DATE AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype21') LFIT4 ON LFIT4.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID 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 LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LCI.BUSINESSTYPE = '3' AND LFIT1.FLOWUNID = :FLOWUNID ";
|
||||
}
|
||||
|
||||
// 非差额放款部分
|
||||
@ -98,13 +98,13 @@ public class CreateVoucherActualPaymentCarTradition extends BaseBussiness{
|
||||
CONTRACT_NUMBER=dataList.get(i).get("CONTRACT_NUMBER").toString();// 合同编号
|
||||
PROJECT_NAME=dataList.get(i).get("PROJECT_NAME").toString();// 项目名称
|
||||
LEAS_FORM=dataList.get(i).get("LEAS_FORM").toString();// 项目类别
|
||||
DISTRIBUTOR_ID=dataList.get(i).get("DISTRIBUTOR_ID").toString();// 经销商编号
|
||||
DISTRIBUTOR_NAME=dataList.get(i).get("DISTRIBUTOR_NAME").toString();// 经销商名称
|
||||
DISTRIBUTOR_ID=dataList.get(i).get("DISTRIBUTOR_ID");// 经销商编号
|
||||
DISTRIBUTOR_NAME=dataList.get(i).get("DISTRIBUTOR_NAME");// 经销商名称
|
||||
CUSTOMERID=dataList.get(i).get("CUSTOMERID").toString();// 客户编号
|
||||
CUSTOMERNAME=dataList.get(i).get("CUSTOMERNAME").toString();// 客户名称
|
||||
CUSTOMERTYPE=dataList.get(i).get("CUSTOMERTYPE").toString();// 客户类别
|
||||
BUSINESSTYPE=dataList.get(i).get("BUSINESSTYPE").toString();// 业务类型
|
||||
ACC_NUMBER=dataList.get(i).get("ACC_NUMBER").toString();// 银行账号
|
||||
ACC_NUMBER=dataList.get(i).get("ACC_NUMBER");// 银行账号
|
||||
|
||||
// 将数据封装到定义好的map集合中
|
||||
param.put("EQUIP",EQUIP);
|
||||
|
||||
@ -53,26 +53,8 @@ public class CreateVoucherActualPaymentTradition extends BaseBussiness{
|
||||
String BUSINESSTYPE=null; // 业务类型
|
||||
String ACC_NUMBER=null; // 银行账号
|
||||
String sql="";
|
||||
String dateType=""; // 记账日期
|
||||
|
||||
if("PZ2018092500000159".equals(VOUCHERNO) || "PZ2018092600000223".equals(VOUCHERNO) || "PZ2018092500000161".equals(VOUCHERNO) || "PZ2018092600000225".equals(VOUCHERNO)) {
|
||||
// 设备款
|
||||
dateType=" LFIT1.ACCOUNT_DATE ";
|
||||
}else if("PZ2018092500000159".equals(VOUCHERNO) || "PZ2018092600000223".equals(VOUCHERNO)) {
|
||||
// 其他
|
||||
dateType=" LFIT2.ACCOUNT_DATE ";
|
||||
}else if("PZ2018092500000162".equals(VOUCHERNO) || "PZ2018092600000226".equals(VOUCHERNO) || "PZ2018092500000163".equals(VOUCHERNO) || "PZ2018092600000227".equals(VOUCHERNO)) {
|
||||
// 首付
|
||||
dateType=" LFIT3.ACCOUNT_DATE ";
|
||||
}else if("PZ2018092500000164".equals(VOUCHERNO) || "PZ2018092600000229".equals(VOUCHERNO) || "PZ2018092500000165".equals(VOUCHERNO) || "PZ2018092600000230".equals(VOUCHERNO) || "PZ2018092500000169".equals(VOUCHERNO) || "PZ2018092600000233".equals(VOUCHERNO)) {
|
||||
// 保证金
|
||||
dateType=" LFIT4.ACCOUNT_DATE ";
|
||||
}else if("PZ2018092500000166".equals(VOUCHERNO) || "PZ2018092600000231".equals(VOUCHERNO) || "PZ2018092500000167".equals(VOUCHERNO) || "PZ2018092600000232".equals(VOUCHERNO)) {
|
||||
// 手续费
|
||||
dateType=" LFIT5.ACCOUNT_DATE ";
|
||||
}
|
||||
|
||||
sql="SELECT LFIT1.EQUIP,ROUND(LFIT1.EQUIP / getTax (LCI.LEAS_FORM,'本金',LCI.`INPUTTIME`),2) AS EQUIPNOTAX,(LFIT1.EQUIP - ROUND(LFIT1.EQUIP / getTax (LCI.LEAS_FORM,'本金',LCI.`INPUTTIME`),2)) AS EQUIPTAX,LFIT2.OTHER_MONEY,ROUND(LFIT2.OTHER_MONEY / getTax (LCI.LEAS_FORM,'本金',LCI.`INPUTTIME`),2) AS OTHERNOTAX,(LFIT2.OTHER_MONEY - ROUND(LFIT2.OTHER_MONEY / getTax (LCI.LEAS_FORM,'本金',LCI.`INPUTTIME`),2)) AS OTHERTAX,(LFIT1.EQUIP + LFIT2.OTHER_MONEY) AS EQUIP_OTHER,LFIT3.FIRST_PAYMENT,LFIT4.GUARANTY,LFIT5.HANDLING_CHARGE_MONEY,ROUND(LFIT5.HANDLING_CHARGE_MONEY / getTax (LCI.LEAS_FORM,'手续费',LCI.INPUTTIME),2) AS HANDLING_CHARGE_MONEY_NOTAX,(LFIT5.HANDLING_CHARGE_MONEY - ROUND(LFIT5.HANDLING_CHARGE_MONEY / getTax (LCI.LEAS_FORM,'手续费',LCI.INPUTTIME),2)) AS HANDLING_CHARGE_MONEY_TAX,(LFIT1.EQUIP + LFIT2.OTHER_MONEY - LFIT3.FIRST_PAYMENT - LFIT4.GUARANTY - LFIT5.HANDLING_CHARGE_MONEY) AS OTHERS_MATH, '"+dateType+"' AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LFIT1.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT1.ACC_NUMBER FROM LC_CALC_CONDITION LCCT LEFT JOIN LB_CONTRACT_INFO LCI ON LCCT.CONTRACT_ID = LCI.`ID` LEFT JOIN (SELECT FLOWUNID,MAX(CONTRACT_ID) AS CONTRACT_ID,MAX(ACC_NUMBER) AS ACC_NUMBER,SUM(FACT_MONEY) AS EQUIP,MAX(ACCOUNTING_DATE) AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP GROUP BY FLOWUNID) LFIT1 ON LFIT1.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS OTHER_MONEY,ACCOUNTING_DATE AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype29') LFIT2 ON LFIT2.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS FIRST_PAYMENT,SETTLE_METHOD,ACCOUNTING_DATE AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype5') LFIT3 ON LFIT3.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS GUARANTY,SETTLE_METHOD,ACCOUNTING_DATE AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype2') LFIT4 ON LFIT4.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS HANDLING_CHARGE_MONEY,SETTLE_METHOD,ACCOUNTING_DATE AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype1') LFIT5 ON LFIT5.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID 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 LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LCI.BUSINESSTYPE = '2' AND LFIT1.FLOWUNID = :FLOWUNID ";
|
||||
sql="SELECT LFIT1.EQUIP,ROUND(LFIT1.EQUIP / getTax(LCI.LEAS_FORM,'本金',LCI.`INPUTTIME`),2) AS EQUIPNOTAX,(LFIT1.EQUIP - ROUND(LFIT1.EQUIP / getTax(LCI.LEAS_FORM,'本金',LCI.`INPUTTIME`),2)) AS EQUIPTAX,LFIT2.OTHER_MONEY,ROUND(LFIT2.OTHER_MONEY / getTax(LCI.LEAS_FORM,'本金',LCI.`INPUTTIME`),2) AS OTHERNOTAX,(LFIT2.OTHER_MONEY - ROUND(LFIT2.OTHER_MONEY / getTax(LCI.LEAS_FORM,'本金',LCI.`INPUTTIME`),2)) AS OTHERTAX,(LFIT1.EQUIP + LFIT2.OTHER_MONEY) AS EQUIP_OTHER,LFIT3.FIRST_PAYMENT,LFIT4.GUARANTY,LFIT5.HANDLING_CHARGE_MONEY,ROUND(LFIT5.HANDLING_CHARGE_MONEY / getTax(LCI.LEAS_FORM,'手续费',LCI.INPUTTIME),2) AS HANDLING_CHARGE_MONEY_NOTAX,(LFIT5.HANDLING_CHARGE_MONEY - ROUND(LFIT5.HANDLING_CHARGE_MONEY / getTax(LCI.LEAS_FORM,'手续费',LCI.INPUTTIME),2)) AS HANDLING_CHARGE_MONEY_TAX,(LFIT1.EQUIP + LFIT2.OTHER_MONEY - LFIT3.FIRST_PAYMENT - LFIT4.GUARANTY - LFIT5.HANDLING_CHARGE_MONEY) AS OTHERS_MATH, DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS ACCOUNT_DATE,DATE_FORMAT(SYSDATE(), '%Y/%m/%d') AS FACT_DATE,LFIT1.CONTRACT_ID,LCI.CONTRACT_NUMBER,LCI.PROJECT_NAME,LCI.LEAS_FORM,DI.DISTRIBUTOR_CODING DISTRIBUTOR_ID,DI.DISTRIBUTOR_NAME,CIF.CUSTOMER_NUM AS CUSTOMERID,CIF.CUSTOMERNAME,CIF.CUSTOMERTYPE,LPI.BUSINESSTYPE,LFIT1.ACC_NUMBER FROM LC_CALC_CONDITION LCCT LEFT JOIN LB_CONTRACT_INFO LCI ON LCCT.CONTRACT_ID = LCI.`ID` LEFT JOIN (SELECT FLOWUNID,MAX(CONTRACT_ID) AS CONTRACT_ID,MAX(ACC_NUMBER) AS ACC_NUMBER,SUM(FACT_MONEY) AS EQUIP,MAX(ACCOUNTING_DATE) AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP GROUP BY FLOWUNID) LFIT1 ON LFIT1.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS OTHER_MONEY,ACCOUNTING_DATE AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype29') LFIT2 ON LFIT2.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS FIRST_PAYMENT,SETTLE_METHOD,ACCOUNTING_DATE AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype5') LFIT3 ON LFIT3.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS GUARANTY,SETTLE_METHOD,ACCOUNTING_DATE AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype2') LFIT4 ON LFIT4.CONTRACT_ID = LCI.ID LEFT JOIN (SELECT CONTRACT_ID,FACT_MONEY AS HANDLING_CHARGE_MONEY,SETTLE_METHOD,ACCOUNTING_DATE AS ACCOUNT_DATE FROM LC_FUND_INCOME_TEMP WHERE FEE_TYPE = 'feetype1') LFIT5 ON LFIT5.CONTRACT_ID = LCI.ID LEFT JOIN DISTRIBUTOR_INFO DI ON DI.DISTRIBUTOR_NO = LCI.DISTRIBUTOR_ID 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 LB_PROJECT_INFO LPI ON LPI.ID = LUL.PROJECT_ID WHERE LCI.BUSINESSTYPE = '2' AND LFIT1.FLOWUNID = :FLOWUNID ";
|
||||
|
||||
// 非差额放款部分
|
||||
if("PZ2018092500000161".equals(VOUCHERNO) || "PZ2018092600000225".equals(VOUCHERNO)){
|
||||
@ -119,13 +101,13 @@ public class CreateVoucherActualPaymentTradition extends BaseBussiness{
|
||||
CONTRACT_NUMBER=dataList.get(i).get("CONTRACT_NUMBER").toString();// 合同编号
|
||||
PROJECT_NAME=dataList.get(i).get("PROJECT_NAME").toString();// 项目名称
|
||||
LEAS_FORM=dataList.get(i).get("LEAS_FORM").toString();// 项目类别
|
||||
DISTRIBUTOR_ID=dataList.get(i).get("DISTRIBUTOR_ID").toString();// 经销商编号
|
||||
DISTRIBUTOR_NAME=dataList.get(i).get("DISTRIBUTOR_NAME").toString();// 经销商名称
|
||||
DISTRIBUTOR_ID=dataList.get(i).get("DISTRIBUTOR_ID");// 经销商编号
|
||||
DISTRIBUTOR_NAME=dataList.get(i).get("DISTRIBUTOR_NAME");// 经销商名称
|
||||
CUSTOMERID=dataList.get(i).get("CUSTOMERID").toString();// 客户编号
|
||||
CUSTOMERNAME=dataList.get(i).get("CUSTOMERNAME").toString();// 客户名称
|
||||
CUSTOMERTYPE=dataList.get(i).get("CUSTOMERTYPE").toString();// 客户类别
|
||||
BUSINESSTYPE=dataList.get(i).get("BUSINESSTYPE").toString();// 业务类型
|
||||
ACC_NUMBER=dataList.get(i).get("ACC_NUMBER").toString();// 银行账号
|
||||
ACC_NUMBER=dataList.get(i).get("ACC_NUMBER");// 银行账号
|
||||
|
||||
// 将数据封装到定义好的map集合中
|
||||
param.put("EQUIP",EQUIP);
|
||||
|
||||
@ -276,7 +276,7 @@ public class CreateVoucherServiceImpl {
|
||||
try{
|
||||
String valuemode=bo.getAttribute("VALUE_MODE").getString();
|
||||
System.out.println(valuemode);
|
||||
Class<VoucherJavaParamService> c=(Class<VoucherJavaParamService>)Class.forName(bo.getAttribute("VALUE_MODE").getString());
|
||||
Class<VoucherJavaParamService> c=(Class<VoucherJavaParamService>)Class.forName("com.tenwa.voucher.CreateVoucherProcess.VoucherGetMoneyForTradition.ContractGetMoneyToEquip");
|
||||
ps=c.newInstance();
|
||||
}catch(Exception e){
|
||||
ps=null;
|
||||
@ -295,12 +295,7 @@ public class CreateVoucherServiceImpl {
|
||||
subData.put("F6",sub.getAttribute("id").getString());//科目编码
|
||||
subData.put("F1",dataTemp.get("ACCOUNT_DATE"));//会计处理日
|
||||
String VOUCHERNO = param.get("VOUCHERNO");
|
||||
String sort = bo.getAttribute("SORT_NUMBER").getString();
|
||||
if("1".equals(sort)) {
|
||||
param.put("BUSINESSTYPE", "9201");
|
||||
}else if("2".equals(sort)) {
|
||||
param.put("BUSINESSTYPE", "92");
|
||||
}
|
||||
|
||||
if("1".equals(bo.getAttribute("LOAN_DIRECTION").getString())){//借贷方向
|
||||
subData.put("F7", dataTemp.get("MONEY"));//借方金额
|
||||
subData.put("F8", "0");//贷方金额
|
||||
@ -368,6 +363,17 @@ public class CreateVoucherServiceImpl {
|
||||
String LEAS_FORM = param.get("LEAS_FORM");
|
||||
// 获取当前凭证借贷序号
|
||||
String SORT_NUMBER = bo.getAttribute("SORT_NUMBER").getString();
|
||||
// Ö±×â¼Ç¼Ӷ½ð
|
||||
if("PZ2018082000000141".equals(VOUCHERNO)) {
|
||||
if("01".equals(LEAS_FORM)) {
|
||||
if("1".equals(SORT_NUMBER)) {
|
||||
param.put("BUSINESSTYPE", "9201");
|
||||
}else if("2".equals(SORT_NUMBER)) {
|
||||
param.put("BUSINESSTYPE", "92");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 汽车类应收账款总金额根据分录配置辅助核算值---除了没有的和其他(10), 其他都是默认汽车(04)
|
||||
if("PZ2018071000000005".equals(voucherid) || "PZ2018080300000069".equals(voucherid)) {
|
||||
if("01".equals(LEAS_FORM)) {//直租
|
||||
|
||||
@ -0,0 +1,44 @@
|
||||
package com.tenwa.lease.flow.contract.commbusiness;
|
||||
|
||||
import jbo.com.tenwa.lease.carbrand.BUSINESS_STATUS;
|
||||
|
||||
import com.amarsoft.are.jbo.BizObject;
|
||||
import com.amarsoft.are.jbo.BizObjectManager;
|
||||
import com.amarsoft.are.jbo.JBOFactory;
|
||||
import com.amarsoft.are.jbo.JBOTransaction;
|
||||
import com.amarsoft.are.util.StringFunction;
|
||||
import com.amarsoft.awe.util.Transaction;
|
||||
import com.amarsoft.context.ASUser;
|
||||
import com.tenwa.flow.baseBussion.BaseBussiness;
|
||||
|
||||
public class LBProjectApplyCancel extends BaseBussiness{
|
||||
String project_no = "";
|
||||
@Override
|
||||
public Object run(Transaction Sqlca) throws Exception {
|
||||
this.initBussinessParam(Sqlca);
|
||||
ASUser asUser=new ASUser(this.getAttribute("CurUserID").toString());
|
||||
project_no = this.getAttribute("FlowKey")==null? "":this.getAttribute("FlowKey").toString();
|
||||
this.saveBusinessStatus(Sqlca,asUser);
|
||||
String sMessage="true";
|
||||
return sMessage;
|
||||
}
|
||||
|
||||
private void saveBusinessStatus(Transaction Sqlca,ASUser asUser) throws Exception{
|
||||
JBOTransaction tx = null;
|
||||
tx= JBOFactory.createJBOTransaction();
|
||||
BizObjectManager bsbom = JBOFactory.getBizObjectManager(BUSINESS_STATUS.CLASS_NAME,tx);
|
||||
BizObject bsbo = bsbom.newObject();
|
||||
try {
|
||||
bsbo.setAttributeValue(BUSINESS_STATUS.contract_number,project_no);
|
||||
bsbo.setAttributeValue(BUSINESS_STATUS.business_status,"5");//5 È¡Ïû
|
||||
bsbo.setAttributeValue(BUSINESS_STATUS.inputuserid,asUser.getUserID());
|
||||
bsbo.setAttributeValue(BUSINESS_STATUS.inputtime,StringFunction.getTodayNow());
|
||||
bsbo.setAttributeValue(BUSINESS_STATUS.inputorgid,asUser.getOrgID());
|
||||
bsbom.saveObject(bsbo);
|
||||
tx.commit();
|
||||
}catch (Exception e){
|
||||
tx.rollback();
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
351
src_tenwa/quartz/AutoDistribute.java
Normal file
351
src_tenwa/quartz/AutoDistribute.java
Normal file
@ -0,0 +1,351 @@
|
||||
package quartz;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.UUID;
|
||||
|
||||
import jbo.app.tenwa.calc.VI_NORMALSETTLE_CONTRACT;
|
||||
import jbo.awe.USER_INFO;
|
||||
import jbo.com.tenwa.lease.comm.LB_CONTRACT_INFO;
|
||||
import jbo.com.tenwa.lease.comm.VI_AUTODISTRIBUTE;
|
||||
import jbo.com.tenwa.lease.comm.VI_NORMALEND_CONTRACT;
|
||||
import jbo.sys.OVERDUE_DUNNING_INFO;
|
||||
|
||||
import org.quartz.Job;
|
||||
import org.quartz.JobExecutionContext;
|
||||
import org.quartz.JobExecutionException;
|
||||
|
||||
import com.amarsoft.are.jbo.BizObject;
|
||||
import com.amarsoft.are.jbo.BizObjectManager;
|
||||
import com.amarsoft.are.jbo.JBOFactory;
|
||||
import com.amarsoft.are.jbo.JBOTransaction;
|
||||
import com.amarsoft.are.util.StringFunction;
|
||||
import com.amarsoft.awe.util.ASResultSet;
|
||||
import com.amarsoft.awe.util.SqlObject;
|
||||
import com.amarsoft.awe.util.Transaction;
|
||||
import com.amarsoft.context.ASUser;
|
||||
import com.base.util.QuartzUtil;
|
||||
//import com.tenwa.action.channelportal.ContractSignAction;
|
||||
//import com.tenwa.action.channelportal.comm.ContractTransferRightForEnd;
|
||||
import com.tenwa.comm.util.jboutil.DataOperatorUtil;
|
||||
import com.tenwa.comm.util.jboutil.SaveBusinessStatus;
|
||||
import com.tenwa.lease.app.quartzmession.JobInitUserName;
|
||||
import com.tenwa.officetempalte.action.CreateOfficeAction;
|
||||
//import com.tenwa.quartz.BeforeSerialTimingTask;
|
||||
//import com.tenwa.quartz.service.BeforeSerialTimingTaskService;
|
||||
//import com.tenwa.quartz.serviceImpl.BeforeSerialTimingTaskServiceImpl;
|
||||
import com.tenwa.reckon.util.UUIDUtil;
|
||||
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
public class AutoDistribute implements Job{
|
||||
private JobInitUserName jboName;
|
||||
@Override
|
||||
public void execute(JobExecutionContext arg0) throws JobExecutionException {
|
||||
String startime = StringFunction.getTodayNow();
|
||||
|
||||
Object userId = arg0.getTrigger().getJobDataMap().get("CurUserId");
|
||||
String curUserId = userId == null? "system" : userId.toString();
|
||||
|
||||
try {
|
||||
JBOTransaction tx = JBOFactory.createJBOTransaction();
|
||||
ownershipTransferSign(tx,arg0);
|
||||
tx.commit();
|
||||
QuartzUtil.insertLog(startime, "quartz.ContractInfoForNomalSettle", "success", "成功", curUserId);
|
||||
} catch (Exception e) {
|
||||
QuartzUtil.insertLog(startime, "quartz.ContractInfoForNomalSettle", "error", "失败", curUserId);
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
|
||||
@SuppressWarnings("unused")
|
||||
public void ownershipTransferSign(JBOTransaction tx ,JobExecutionContext arg0) throws Exception{
|
||||
Transaction Sqlca = null;
|
||||
Sqlca = Transaction.createTransaction(tx);
|
||||
|
||||
//轻催组下的用户
|
||||
String Sql1="SELECT ur.roleid,O.userid AS userid,O.loginid,O.username FROM USER_INFO O LEFT JOIN USER_ROLE AS ur ON ur.USERID = O.USERID LEFT JOIN USER_TASK_INFO uti ON uti.userid=O.userid AND uti.roleid=ur.roleid WHERE O.status='1' AND ur.roleid='800R00000041'";
|
||||
|
||||
List<Map<String, String>> dataListA = DataOperatorUtil.getDataBySql(Sqlca, Sql1, null);
|
||||
|
||||
String userA = new String();
|
||||
for (Map<String, String> map : dataListA) {
|
||||
String userid = map.get("userid");
|
||||
userA += userid+"@";
|
||||
|
||||
}
|
||||
String[] A =null;
|
||||
A = userA.split("@");
|
||||
|
||||
//中催组下的用户
|
||||
String Sql2="SELECT ur.roleid,O.userid AS userid,O.loginid,O.username FROM USER_INFO O LEFT JOIN USER_ROLE AS ur ON ur.USERID = O.USERID LEFT JOIN USER_TASK_INFO uti ON uti.userid=O.userid AND uti.roleid=ur.roleid WHERE O.status='1' AND ur.roleid='800R00000042'";
|
||||
List<Map<String, String>> dataListB = DataOperatorUtil.getDataBySql(Sqlca, Sql2, null);
|
||||
String userB = new String();
|
||||
for (Map<String, String> map : dataListB) {
|
||||
String userid = map.get("userid");
|
||||
userB += userid+"@";
|
||||
}
|
||||
String[] B =null;
|
||||
B = userB.split("@");
|
||||
|
||||
//重催组下的用户
|
||||
String Sql3="SELECT ur.roleid,O.userid,O.loginid,O.username FROM USER_INFO O LEFT JOIN USER_ROLE AS ur ON ur.USERID = O.USERID LEFT JOIN USER_TASK_INFO uti ON uti.userid=O.userid AND uti.roleid=ur.roleid WHERE O.status='1' AND ur.roleid='800R00000043'";
|
||||
List<Map<String, String>> dataListC = DataOperatorUtil.getDataBySql(Sqlca, Sql3, null);
|
||||
String userC = new String();
|
||||
for (Map<String, String> map : dataListC) {
|
||||
String userid = map.get("userid");
|
||||
userC += userid+"@";
|
||||
}
|
||||
String[] C =null;
|
||||
C = userC.split("@");
|
||||
|
||||
//获取所有逾期的需要催收的合同信息
|
||||
String conInfo1 = getContractId(tx);
|
||||
String overDays = "";
|
||||
BizObjectManager overdueManager = JBOFactory.getBizObjectManager(OVERDUE_DUNNING_INFO.CLASS_NAME, tx);
|
||||
if(!(conInfo1 == null || conInfo1.length() <= 0)){
|
||||
String[] conInfos = conInfo1.split(",");
|
||||
for(String conInfo:conInfos){
|
||||
String contract_id = conInfo.split("@")[0];
|
||||
overDays = conInfo.split("@")[1];
|
||||
int overDay = Integer.valueOf(overDays);
|
||||
|
||||
BizObject overdue = overdueManager.createQuery("contract_id=:contract_id").setParameter("contract_id", contract_id).getSingleResult(false);
|
||||
if(overdue!=null){//修改
|
||||
//催款员
|
||||
String partDept = overdue.getAttribute("part_dept").toString();
|
||||
|
||||
if(overDay>3 && overDay<=15){
|
||||
if(Arrays.asList(B).contains(partDept)){
|
||||
//此催款员是中催组的人员,不做任何操作
|
||||
}else{
|
||||
//此催款员不是中催组的人员,则修改为中催组的人员
|
||||
|
||||
//中催组下未分配且上岗的催款员
|
||||
String sqlN = "SELECT MAX(O.userid) AS userid"
|
||||
+" FROM USER_INFO O LEFT JOIN USER_ROLE AS ur ON ur.USERID = O.USERID"
|
||||
+" LEFT JOIN USER_TASK_INFO uti ON uti.userid=O.userid AND uti.roleid=ur.roleid"
|
||||
+ " WHERE O.status='1' AND uti.induction_state='induction_state01' AND ur.roleid='800R00000042'"
|
||||
+ " AND O.userid NOT IN (SELECT o.part_dept FROM (SELECT COUNT(*) number,part_dept FROM OVERDUE_DUNNING_INFO GROUP BY part_dept) o WHERE o.number IN (SELECT MIN(t.number) FROM (SELECT COUNT(*) number,part_dept FROM OVERDUE_DUNNING_INFO GROUP BY part_dept) t) )";
|
||||
//虽然只让查出一条数据
|
||||
List<Map<String, String>> dataListAN = DataOperatorUtil.getDataBySql(Sqlca, sqlN, null);
|
||||
//此时中催组的所有人员都已分配,选出目前任务最少的人,且上岗
|
||||
String sqlY = "SELECT MAX(o.part_dept) AS userid FROM (SELECT COUNT(*) number,part_dept FROM OVERDUE_DUNNING_INFO GROUP BY part_dept) o"+
|
||||
" WHERE o.number IN (SELECT MIN(t.number) FROM (SELECT COUNT(*) number,part_dept FROM OVERDUE_DUNNING_INFO GROUP BY part_dept) t)"+
|
||||
" AND o.part_dept IN"+
|
||||
" (SELECT O.userid FROM USER_INFO O"+
|
||||
" LEFT JOIN USER_ROLE AS ur ON ur.USERID = O.USERID "+
|
||||
" LEFT JOIN USER_TASK_INFO uti ON uti.userid=O.userid AND uti.roleid=ur.roleid"+
|
||||
" WHERE O.status='1' AND uti.induction_state='induction_state01' AND ur.roleid='800R00000042')";
|
||||
//虽然只能查出一条数据
|
||||
List<Map<String, String>> dataListAY = DataOperatorUtil.getDataBySql(Sqlca, sqlY, null);
|
||||
//判断条件
|
||||
if(dataListAN !=null){
|
||||
String useridAN = new String();
|
||||
for (Map<String, String> map : dataListAN) {
|
||||
String userid = map.get("userid");
|
||||
useridAN += userid+"@";
|
||||
}
|
||||
String[] AN =null;
|
||||
AN = useridAN.split("@");
|
||||
String ANN = AN[0];
|
||||
|
||||
if(ANN==null || "".equals(ANN) || "null".equals(ANN)){
|
||||
String useridAY = new String();
|
||||
for (Map<String, String> map : dataListAY) {
|
||||
String userid = map.get("userid");
|
||||
useridAY += userid+"@";
|
||||
}
|
||||
String[] AY =null;
|
||||
AY = useridAY.split("@");
|
||||
String AYY = AY[0];
|
||||
//修改
|
||||
overdueManager.createQuery("UPDATE O SET O.part_dept='"+AYY+"' WHERE contract_id='"+contract_id+"'").executeUpdate();
|
||||
|
||||
}else{
|
||||
//修改
|
||||
overdueManager.createQuery("UPDATE O SET O.part_dept='"+ANN+"' WHERE contract_id='"+contract_id+"'").executeUpdate();
|
||||
}
|
||||
}else{
|
||||
String useridAY = new String();
|
||||
for (Map<String, String> map : dataListAY) {
|
||||
String userid = map.get("userid");
|
||||
useridAY += userid+"@";
|
||||
}
|
||||
String[] AY =null;
|
||||
AY = useridAY.split("@");
|
||||
String AYY = AY[0];
|
||||
//修改
|
||||
overdueManager.createQuery("UPDATE O SET O.part_dept='"+AYY+"' WHERE contract_id='"+contract_id+"'").executeUpdate();
|
||||
}
|
||||
}
|
||||
}else{
|
||||
if(Arrays.asList(C).contains(partDept)){
|
||||
//此催款员是重催组的人员,不做任何操作
|
||||
}else{
|
||||
//此催款员不是重催组的人员,则修改为重催组的人员
|
||||
//重催组下未分配的用户,且上岗
|
||||
String sqlN = "SELECT MAX(O.userid) AS userid"
|
||||
+" FROM USER_INFO O LEFT JOIN USER_ROLE AS ur ON ur.USERID = O.USERID"
|
||||
+" LEFT JOIN USER_TASK_INFO uti ON uti.userid=O.userid AND uti.roleid=ur.roleid"
|
||||
+ " WHERE O.status='1' AND uti.induction_state='induction_state01' AND ur.roleid='800R00000043'"
|
||||
+ " AND O.userid NOT IN (SELECT o.part_dept FROM (SELECT COUNT(*) number,part_dept FROM OVERDUE_DUNNING_INFO GROUP BY part_dept) o WHERE o.number IN (SELECT MIN(t.number) FROM (SELECT COUNT(*) number,part_dept FROM OVERDUE_DUNNING_INFO GROUP BY part_dept) t) )";
|
||||
//虽然只让查出一条数据
|
||||
List<Map<String, String>> dataListAN = DataOperatorUtil.getDataBySql(Sqlca, sqlN, null);
|
||||
//此时重催组的所有人员都已分配,选出目前任务最少的人,且上岗
|
||||
String sqlY = "SELECT MAX(o.part_dept) AS userid FROM (SELECT COUNT(*) number,part_dept FROM OVERDUE_DUNNING_INFO GROUP BY part_dept) o"+
|
||||
" WHERE o.number IN (SELECT MIN(t.number) FROM (SELECT COUNT(*) number,part_dept FROM OVERDUE_DUNNING_INFO GROUP BY part_dept) t)"+
|
||||
" AND o.part_dept IN"+
|
||||
" (SELECT O.userid FROM USER_INFO O"+
|
||||
" LEFT JOIN USER_ROLE AS ur ON ur.USERID = O.USERID "+
|
||||
" LEFT JOIN USER_TASK_INFO uti ON uti.userid=O.userid AND uti.roleid=ur.roleid"+
|
||||
" WHERE O.status='1' AND uti.induction_state='induction_state01' AND ur.roleid='800R00000043')";
|
||||
//虽然只能查出一条数据
|
||||
List<Map<String, String>> dataListAY = DataOperatorUtil.getDataBySql(Sqlca, sqlY, null);
|
||||
//判断条件
|
||||
if(dataListAN !=null){
|
||||
String useridAN = new String();
|
||||
for (Map<String, String> map : dataListAN) {
|
||||
String userid = map.get("userid");
|
||||
useridAN += userid+"@";
|
||||
}
|
||||
String[] AN =null;
|
||||
AN = useridAN.split("@");
|
||||
String ANN = AN[0];
|
||||
if(ANN==null || "".equals(ANN) || "null".equals(ANN)){
|
||||
String useridAY = new String();
|
||||
for (Map<String, String> map : dataListAY) {
|
||||
String userid = map.get("userid");
|
||||
useridAY += userid+"@";
|
||||
}
|
||||
String[] AY =null;
|
||||
AY = useridAY.split("@");
|
||||
String AYY = AY[0];
|
||||
//修改
|
||||
overdueManager.createQuery("UPDATE O SET O.part_dept='"+AYY+"' WHERE contract_id='"+contract_id+"'").executeUpdate();
|
||||
}else{
|
||||
//修改
|
||||
overdueManager.createQuery("UPDATE O SET O.part_dept='"+ANN+"' WHERE contract_id='"+contract_id+"'").executeUpdate();
|
||||
}
|
||||
|
||||
}else{
|
||||
String useridAY = new String();
|
||||
for (Map<String, String> map : dataListAY) {
|
||||
String userid = map.get("userid");
|
||||
useridAY += userid+"@";
|
||||
}
|
||||
String[] AY =null;
|
||||
AY = useridAY.split("@");
|
||||
String AYY = AY[0];
|
||||
//修改
|
||||
overdueManager.createQuery("UPDATE O SET O.part_dept='"+AYY+"' WHERE contract_id='"+contract_id+"'").executeUpdate();
|
||||
}
|
||||
}
|
||||
}
|
||||
}else{//新增
|
||||
//轻催组下未分配的用户且上岗
|
||||
String sqlN = "SELECT MAX(O.userid) AS userid"
|
||||
+" FROM USER_INFO O LEFT JOIN USER_ROLE AS ur ON ur.USERID = O.USERID"
|
||||
+" LEFT JOIN USER_TASK_INFO uti ON uti.userid=O.userid AND uti.roleid=ur.roleid"
|
||||
+ " WHERE O.status='1' AND uti.induction_state='induction_state01' AND ur.roleid='800R00000041'"
|
||||
+ " AND O.userid NOT IN (SELECT o.part_dept FROM (SELECT COUNT(*) number,part_dept FROM OVERDUE_DUNNING_INFO GROUP BY part_dept) o WHERE o.number IN (SELECT MIN(t.number) FROM (SELECT COUNT(*) number,part_dept FROM OVERDUE_DUNNING_INFO GROUP BY part_dept) t) )";
|
||||
//虽然只让查出一条数据
|
||||
List<Map<String, String>> dataListAN = DataOperatorUtil.getDataBySql(Sqlca, sqlN, null);
|
||||
|
||||
//轻催组下已分配 但最少 的人,且上岗
|
||||
String sqlY = "SELECT MAX(o.part_dept) AS userid FROM (SELECT COUNT(*) number,part_dept FROM OVERDUE_DUNNING_INFO GROUP BY part_dept) o"+
|
||||
" WHERE o.number IN (SELECT MIN(t.number) FROM (SELECT COUNT(*) number,part_dept FROM OVERDUE_DUNNING_INFO GROUP BY part_dept) t)"+
|
||||
" AND o.part_dept IN"+
|
||||
" (SELECT O.userid FROM USER_INFO O"+
|
||||
" LEFT JOIN USER_ROLE AS ur ON ur.USERID = O.USERID "+
|
||||
" LEFT JOIN USER_TASK_INFO uti ON uti.userid=O.userid AND uti.roleid=ur.roleid"+
|
||||
" WHERE O.status='1' AND uti.induction_state='induction_state01' AND ur.roleid='800R00000041')";
|
||||
//虽然只能查出一条数据
|
||||
List<Map<String, String>> dataListAY = DataOperatorUtil.getDataBySql(Sqlca, sqlY, null);
|
||||
|
||||
//新建对象
|
||||
BizObject overdueBizObject = overdueManager.newObject();
|
||||
String uuid = UUID.randomUUID().toString().replace("-", "");
|
||||
//判断条件
|
||||
if(dataListAN !=null){
|
||||
String useridAN = new String();
|
||||
for (Map<String, String> map : dataListAN) {
|
||||
String userid = map.get("userid");
|
||||
useridAN += userid+"@";
|
||||
}
|
||||
String[] AN =null;
|
||||
AN = useridAN.split("@");
|
||||
String ANN = AN[0];
|
||||
if(ANN==null || "".equals(ANN) || "null".equals(ANN)){
|
||||
String useridAY = new String();
|
||||
for (Map<String, String> map : dataListAY) {
|
||||
String userid = map.get("userid");
|
||||
useridAY += userid+"@";
|
||||
}
|
||||
String[] AY =null;
|
||||
AY = useridAY.split("@");
|
||||
String AYY = AY[0];
|
||||
|
||||
//新增
|
||||
overdueBizObject.setAttributeValue("id", uuid);
|
||||
overdueBizObject.setAttributeValue("part_dept", AYY);
|
||||
overdueBizObject.setAttributeValue("contract_id", contract_id);
|
||||
overdueManager.saveObject(overdueBizObject);
|
||||
|
||||
}else{
|
||||
|
||||
overdueBizObject.setAttributeValue("id", uuid);
|
||||
overdueBizObject.setAttributeValue("part_dept", ANN);
|
||||
overdueBizObject.setAttributeValue("contract_id", contract_id);
|
||||
overdueManager.saveObject(overdueBizObject);
|
||||
}
|
||||
//System.out.println(ANN);
|
||||
//新增
|
||||
|
||||
}else{
|
||||
String useridAY = new String();
|
||||
for (Map<String, String> map : dataListAY) {
|
||||
String userid = map.get("userid");
|
||||
useridAY += userid+"@";
|
||||
}
|
||||
String[] AY =null;
|
||||
AY = useridAY.split("@");
|
||||
String AYY = AY[0];
|
||||
|
||||
//新增
|
||||
overdueBizObject.setAttributeValue("id", uuid);
|
||||
overdueBizObject.setAttributeValue("part_dept", AYY);
|
||||
overdueBizObject.setAttributeValue("contract_id", contract_id);
|
||||
overdueManager.saveObject(overdueBizObject);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取所有逾期的需要催收的合同信息
|
||||
* @param tx
|
||||
* @return
|
||||
* @throws Exception
|
||||
*/
|
||||
public String getContractId(JBOTransaction tx ) throws Exception{
|
||||
/*BizObjectManager bom=JBOFactory.getBizObjectManager(LB_CONTRACT_INFO.CLASS_NAME,tx);
|
||||
List<BizObject> boList = bom.createQuery("SELECT O.id,vo.over_days FROM O LEFT JOIN jbo.com.tenwa.lease.comm.LB_UNION_LESSEE lul ON lul.contract_id = O.id LEFT JOIN jbo.sys.OVERDUE_DUNNING_INFO odi ON odi.contract_id = O.id LEFT JOIN jbo.sys.USER_INFO ui ON ui.userid = odi.part_dept LEFT JOIN jbo.app.tenwa.calc.VI_OVERDUE_RENT_PLAN_SUM vo ON vo.contract_id=O.id WHERE lul.is_main='Y' AND O.contract_status='31' AND vo.over_money>0").getResultList(true);
|
||||
*/
|
||||
//获取所有逾期的需要催收的合同信息
|
||||
BizObjectManager bom=JBOFactory.getBizObjectManager(VI_AUTODISTRIBUTE.CLASS_NAME,tx);
|
||||
List<BizObject> boList = bom.createQuery("SELECT O.id,O.over_days FROM O ").getResultList(true);
|
||||
|
||||
String conInfos = new String();
|
||||
for(BizObject bo : boList){
|
||||
conInfos += bo.getAttribute("id")+"@";
|
||||
conInfos += bo.getAttribute("over_days")+",";
|
||||
}
|
||||
return conInfos;
|
||||
}
|
||||
|
||||
}
|
||||
Loading…
x
Reference in New Issue
Block a user