|
|
@@ -23,11 +23,14 @@ import com.usoft.sdk.fin.client.CapitalSideSdk;
|
|
|
import com.usoft.sdk.fin.client.TradingHallSdk;
|
|
|
|
|
|
import org.apache.commons.lang3.StringUtils;
|
|
|
+import org.apache.tomcat.util.descriptor.web.ContextHandler;
|
|
|
import org.springframework.stereotype.Component;
|
|
|
import org.springframework.util.CollectionUtils;
|
|
|
|
|
|
import com.uas.erp.schedular.task.support.Role;
|
|
|
import com.uas.erp.schedular.task.support.TaskMapping;
|
|
|
+import com.uas.erp.schedular.util.CollectionUtil;
|
|
|
+import com.uas.erp.schedular.util.ContextHolder;
|
|
|
import com.usoft.fin.external.open.api.entity.CompanyBasicInfosByErmRest;
|
|
|
import com.usoft.fin.external.open.api.entity.CompanyEnterpriseCrawlerListFinRest;
|
|
|
import com.usoft.fin.external.open.api.entity.CompanyIndustryAndCommerceInfoRest;
|
|
|
@@ -61,7 +64,7 @@ public class B2BInformation extends AbstractTask{
|
|
|
* 额度申请
|
|
|
* @throws Exception
|
|
|
*/
|
|
|
- @TaskMapping(title = "额度申请下载", fixedDelay = 360000, method = Method.DOWNLOAD)
|
|
|
+ @TaskMapping(title = "额度申请下载", fixedDelay = 30000, method = Method.DOWNLOAD)
|
|
|
public void getOfferQuotaInfoList() throws Exception {
|
|
|
List<String> sqls = new ArrayList<>();
|
|
|
Calendar beforeTime = Calendar.getInstance();
|
|
|
@@ -414,14 +417,16 @@ public class B2BInformation extends AbstractTask{
|
|
|
* 下载放款记录列表
|
|
|
* @throws Exception
|
|
|
*/
|
|
|
- @TaskMapping(title = "放款记录下载", fixedDelay = 360000, method = Method.DOWNLOAD)
|
|
|
+ @TaskMapping(title = "放款记录下载", fixedDelay = 30000, method = Method.DOWNLOAD)
|
|
|
public void getCapitalSideLoan() throws Exception {
|
|
|
final List<String> sqls = new ArrayList<>();
|
|
|
GetCapitalSideLoanReq.Builder req = GetCapitalSideLoanReq.newBuilder();
|
|
|
req.setPageSize(100);
|
|
|
req.setPageNumber(1);
|
|
|
+ Master ceuuMaster = ContextHolder.getMaster();
|
|
|
+ req.setCsEnuu(Integer.valueOf(ceuuMaster.getMa_uu().toString()));
|
|
|
//req.setCsEnuu(10050877); //保理企业UU
|
|
|
- req.setCsEnuu(10050877); //优软商城企业UU com.usoft.fin.external.open.api.entity.
|
|
|
+ //req.setCsEnuu(10050877); //优软商城企业UU com.usoft.fin.external.open.api.entity.
|
|
|
Calendar beforeTime = Calendar.getInstance();
|
|
|
beforeTime.add(Calendar.MINUTE, -7);// 7分钟之前的时间
|
|
|
Date beforeD = beforeTime.getTime();
|
|
|
@@ -506,13 +511,14 @@ public class B2BInformation extends AbstractTask{
|
|
|
* 报价记录下载
|
|
|
* @throws Exception
|
|
|
*/
|
|
|
- @TaskMapping(title = "报价记录下载", fixedDelay = 360000, method = Method.DOWNLOAD)
|
|
|
+ @TaskMapping(title = "报价记录下载", fixedDelay = 30000, method = Method.DOWNLOAD)
|
|
|
public void getFinanceOfferList() throws Exception {
|
|
|
final List<String> sqls = new ArrayList<>();
|
|
|
final List<String> sqlsDemand = new ArrayList<>();
|
|
|
final List<String> sqlloand = new ArrayList<>();
|
|
|
GetFinanceOfferListReq.Builder req = GetFinanceOfferListReq.newBuilder();
|
|
|
- req.setEnuu(10050877);
|
|
|
+ Master ceuuMaster = ContextHolder.getMaster();
|
|
|
+ req.setEnuu(Integer.valueOf(ceuuMaster.getMa_uu().toString()));
|
|
|
req.setPageNumber(1);
|
|
|
req.setPageSize(100);
|
|
|
//Calendar beforeTime = Calendar.getInstance();
|
|
|
@@ -520,11 +526,8 @@ public class B2BInformation extends AbstractTask{
|
|
|
//Date beforeD = beforeTime.getTime();
|
|
|
//req.setUpdateTime(beforeD.getTime());//获取最近7分钟更新的单据列表
|
|
|
GetFinanceOfferListResp resp = capitalSideSdk.getFinanceOfferList(req);
|
|
|
-
|
|
|
List<? extends FinanceOfferListOrBuilder> flist = resp.getFinanceOfferInfoOrBuilderList();
|
|
|
-
|
|
|
for(FinanceOfferListOrBuilder Finance :flist){
|
|
|
-
|
|
|
sqls.add("MERGE INTO AcceptOffer ao"
|
|
|
+" USING (SELECT nvl(max(id),0) ID FROM AcceptOffer where CODE = '"+Finance.getAcceptOfferInfo().getCode()+"') b"
|
|
|
+" ON (ao.ID = b.ID)"
|
|
|
@@ -562,10 +565,15 @@ public class B2BInformation extends AbstractTask{
|
|
|
+ "'"+Finance.getFinanceDemandInfo().getCsContactsPhone()+"','"+Finance.getFinanceDemandInfo().getPubTime()+"','"+Finance.getFinanceDemandInfo().getEndTime()+"'"
|
|
|
+ ",'"+Finance.getFinanceDemandInfo().getDealTime()+"','"+Finance.getFinanceDemandInfo().getOfferCount()+"','"+Finance.getFinanceDemandInfo().getFsDemandAmount()+"'"
|
|
|
+ ",'已上传')");
|
|
|
-
|
|
|
if(Finance.getAcceptOfferInfo().getStatus() == 1002){
|
|
|
String aaCode = jdbcTemplate.generateCode("AccountApply!YSB2", 2);
|
|
|
- sqlloand.add("insert into AccountApply(AA_ID, AA_CODE, AA_CUSTCODE, AA_CUSTNAME, AA_STATUS, AA_SACODES, AA_BILLCODES,"
|
|
|
+ sqlloand.add("MERGE INTO AccountApply a"
|
|
|
+ +" USING (SELECT nvl(max(AA_ID),0) ID from AccountApply where AA_CODE = '"+aaCode+"') b"
|
|
|
+ +" ON (a.AA_ID = b.ID)"
|
|
|
+ +" WHEN MATCHED THEN "
|
|
|
+ +" UPDATE SET a.AA_CUSTNAME ='"+Finance.getFinanceDemandInfo().getCsUserName()+"'"
|
|
|
+ +" WHEN NOT MATCHED THEN "
|
|
|
+ +" INSERT(AA_ID, AA_CODE, AA_CUSTCODE, AA_CUSTNAME, AA_STATUS, AA_SACODES, AA_BILLCODES,"
|
|
|
+ " AA_BILLAMOUNT, AA_CURRENCY, AA_DUEAMOUNT, AA_BANK, AA_BACKBANKNO, AA_LOANDATE, AA_BACKDATE, "
|
|
|
+ "AA_INTERESTRATE, AA_PENALTYRATE, AA_LENDRATE, AA_EFFECTDAYS, AA_HANDRATE, AA_OTHRATE, AA_ISNOTARIZATION,"
|
|
|
+ " AA_OTHERS, AA_REMARK, AA_TRUSTER, AA_APPLYDATE, AA_RECORDER, AA_INDATE, AA_AUDITMAN, AA_AUDITDATE, "
|
|
|
@@ -581,20 +589,21 @@ public class B2BInformation extends AbstractTask{
|
|
|
+ "AA_REPAYMENTFREQUENCY, AA_FSCOLLECTIONBANK, AA_FSCOLLECTIONACCOUNT, AA_FSCOLLECTIONNAME, "
|
|
|
+ "AA_RECEIPTFORLOAN, AA_INTERESTPAYABLE, AA_BEOVERDUE, AA_SETTLE, AA_PERSONINCHARGE, AA_APPROVALDATE, "
|
|
|
+ "AA_APPROVALMAN, AA_UPLOADSTATUS,AA_B2BSTATUS,AA_REPAYMENTDATA,AA_B2BAA_APPLYDATE,AA_B2BAA_AUDITDATE) "
|
|
|
-
|
|
|
- + "values (AccountApply_seq.nextval,'"+aaCode+"',null,null,'在录入',null,null,null,' ',null,null,null,null,null,'"+Finance.getAcceptOfferInfo().getOfferRate()+"',null,'"+Finance.getAcceptOfferInfo().getFinancingRatio()+"',null,null,null,null,null,null"
|
|
|
- + ",'"+Finance.getFinanceDemandInfo().getCsUserName()+"',null,sysdate,null,null,null,'ENTERING',null,null,null,null,null"
|
|
|
- + ",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null"
|
|
|
- + ",null,null,null,null,null,null,null,null,null,null,null,null,null,null,'"+Finance.getFinanceDemandInfo().getCode()+"','"+Finance.getAcceptOfferInfo().getCode()+"',"
|
|
|
- + "'"+aaCode+"','"+Finance.getAcceptOfferInfo().getCsEnuu()+"','"+Finance.getFinanceDemandInfo().getFsEnuu()+"','"+Finance.getFinanceDemandInfo().getFsEnName()+"',"
|
|
|
- + "null,'"+Finance.getAcceptOfferInfo().getFinancingRatio()+"',null,"
|
|
|
- + "'"+Finance.getAcceptOfferInfo().getOfferRate()+"','"+Finance.getAcceptOfferInfo().getPayments()+"',null,"
|
|
|
- + "null,null,null,null,"
|
|
|
- + "null,null,'"+Finance.getFinanceDemandInfo().getCsUserName()+"',null,null,'已上传',"
|
|
|
- + "'"+Finance.getAcceptOfferInfo().getStatus()+"',null,null,null)");
|
|
|
+
|
|
|
+ + "values (AccountApply_seq.nextval,'"+aaCode+"',null,null,'在录入',null,null,null,' ',null,null,null,null,null,'"+Finance.getAcceptOfferInfo().getOfferRate()+"',null,'"+Finance.getAcceptOfferInfo().getFinancingRatio()+"',null,null,null,null,null,null"
|
|
|
+ + ",'"+Finance.getFinanceDemandInfo().getCsUserName()+"',null,null,sysdate,null,null,'ENTERING',null,null,null,null,null"
|
|
|
+ + ",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null"
|
|
|
+ + ",null,null,null,null,null,null,null,null,null,null,null,null,null,null,'"+Finance.getFinanceDemandInfo().getCode()+"','"+Finance.getAcceptOfferInfo().getCode()+"',"
|
|
|
+ + "'"+aaCode+"','"+Finance.getAcceptOfferInfo().getCsEnuu()+"','"+Finance.getFinanceDemandInfo().getFsEnuu()+"','"+Finance.getFinanceDemandInfo().getFsEnName()+"',"
|
|
|
+ + "null,'"+Finance.getAcceptOfferInfo().getFinancingRatio()+"',null,"
|
|
|
+ + "'"+Finance.getAcceptOfferInfo().getOfferRate()+"','"+Finance.getAcceptOfferInfo().getPayments()+"',null,"
|
|
|
+ + "null,null,null,null,"
|
|
|
+ + "null,null,'"+Finance.getFinanceDemandInfo().getCsUserName()+"',null,null,'已上传',"
|
|
|
+ + "'"+Finance.getAcceptOfferInfo().getStatus()+"',null,null,null)");
|
|
|
}
|
|
|
}
|
|
|
- System.out.println(sqlloand);
|
|
|
+
|
|
|
+ System.out.println(sqls);
|
|
|
jdbcTemplate.batchExecute(sqls); //报价信息
|
|
|
jdbcTemplate.batchExecute(sqlsDemand); //融资信息
|
|
|
jdbcTemplate.batchExecute(sqlloand); //放款信息
|
|
|
@@ -608,7 +617,7 @@ public class B2BInformation extends AbstractTask{
|
|
|
/**
|
|
|
* 下载报价详情
|
|
|
*/
|
|
|
- @TaskMapping(title = "报价详情下载", fixedDelay = 360000, method = Method.DOWNLOAD)
|
|
|
+ @TaskMapping(title = "报价详情下载", fixedDelay = 30000, method = Method.DOWNLOAD)
|
|
|
public void getFinanceOfferDetails() throws Exception {
|
|
|
final List<String> ordersqls = new ArrayList<>(); //订单详情
|
|
|
final List<String> acceptsqls = new ArrayList<>(); //验收单详情
|
|
|
@@ -618,9 +627,20 @@ public class B2BInformation extends AbstractTask{
|
|
|
GetFinanceOfferDetailsResp resp = capitalSideSdk.getFinanceOfferDetails(req);
|
|
|
FinanceOfferDetails adetaillist = resp.getFinanceOfferInfo();
|
|
|
List<OfferDetailAndFinanceAccept> restlist = adetaillist.getOfferDetailAndFinanceAcceptInfoList();
|
|
|
+
|
|
|
for(OfferDetailAndFinanceAccept rest :restlist){
|
|
|
|
|
|
- ordersqls.add("MERGE INTO ACCEPTFINANCEDEMANDDETAIL a"
|
|
|
+ //判断主表是否存在明细 count>0
|
|
|
+ int count = jdbcTemplate.count(" from ACCEPTFINANCEDEMANDDETAIL where code =?",rest.getFinanceDemandDetail().getCode());
|
|
|
+ if(count >0){
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ ordersqls.add("insert into ACCEPTFINANCEDEMANDDETAIL(ID,CODE,FINANCEDEMANDCODE,CUSTENUU,CUSTENNAME,CUSTGRADE,PAYMENTS,ORDERID,ORDERCODE,ORDERTOTAL,"
|
|
|
+ + "ACCEPTAMOUNT,UPLOADSTATUS) "
|
|
|
+ + "values (ACCEPTFINANCEDEMANDDETAIL_seq.nextval,'"+rest.getFinanceDemandDetail().getCode()+"','"+rest.getFinanceDemandDetail().getFinanceDemandCode()+"','"+rest.getFinanceDemandDetail().getCustEnuu()+"',"
|
|
|
+ + "'"+rest.getFinanceDemandDetail().getCustEnName()+"','"+rest.getFinanceDemandDetail().getCustGrade()+"','"+rest.getFinanceDemandDetail().getPayments()+"','"+rest.getFinanceDemandDetail().getOrderId()+"',"
|
|
|
+ + "'"+rest.getFinanceDemandDetail().getOrderCode()+"','"+rest.getFinanceDemandDetail().getOrderTotal()+"','"+rest.getFinanceDemandDetail().getAcceptAmount()+"','已上传')");
|
|
|
+ /*ordersqls.add("MERGE INTO ACCEPTFINANCEDEMANDDETAIL a"
|
|
|
+" USING (SELECT nvl(max(id),0) ID from ACCEPTFINANCEDEMANDDETAIL where code = '"+rest.getFinanceDemandDetail().getCode()+"') b"
|
|
|
+" ON (a.ID = b.ID)"
|
|
|
+" WHEN MATCHED THEN "
|
|
|
@@ -631,10 +651,20 @@ public class B2BInformation extends AbstractTask{
|
|
|
+ "ACCEPTAMOUNT,UPLOADSTATUS)"
|
|
|
+ "values (ACCEPTFINANCEDEMANDDETAIL_seq.nextval,'"+rest.getFinanceDemandDetail().getCode()+"','"+rest.getFinanceDemandDetail().getFinanceDemandCode()+"','"+rest.getFinanceDemandDetail().getCustEnuu()+"',"
|
|
|
+ "'"+rest.getFinanceDemandDetail().getCustEnName()+"','"+rest.getFinanceDemandDetail().getCustGrade()+"','"+rest.getFinanceDemandDetail().getPayments()+"','"+rest.getFinanceDemandDetail().getOrderId()+"',"
|
|
|
- + "'"+rest.getFinanceDemandDetail().getOrderCode()+"','"+rest.getFinanceDemandDetail().getOrderTotal()+"','"+rest.getFinanceDemandDetail().getAcceptAmount()+"','已上传')");
|
|
|
-
|
|
|
-
|
|
|
- acceptsqls.add("MERGE INTO FINANCEDEMANDDETAILACCEPT a"
|
|
|
+ + "'"+rest.getFinanceDemandDetail().getOrderCode()+"','"+rest.getFinanceDemandDetail().getOrderTotal()+"','"+rest.getFinanceDemandDetail().getAcceptAmount()+"','已上传')");*/
|
|
|
+ int countAccept = jdbcTemplate.count(" from FINANCEDEMANDDETAILACCEPT where code =?",rest.getFinanceDemandDetailAccept().getCode());
|
|
|
+ if(countAccept >0){
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ acceptsqls.add("insert into FINANCEDEMANDDETAILACCEPT(ID,CODE,FINANCEDEMANDCODE,FINANCEDEMANDDETAILCODE,ORDERITEMID,ACCEPTITEMID,ACCEPTID,ACCEPTAMOUNT,ACCEPTDATE,ACCEPTCODE,"
|
|
|
+ + "ACCEPTSTATUS,TITLE,SPEC,PRODUCTCODE,STATUS,UPLOADSTATUS) "
|
|
|
+ + "values (FINANCEDEMANDDETAILACCEPT_seq.nextval,'"+rest.getFinanceDemandDetailAccept().getCode()+"','"+rest.getFinanceDemandDetailAccept().getFinanceDemandCode()+"','"+rest.getFinanceDemandDetailAccept().getFinanceDemandDetailCode()+"',"
|
|
|
+ + "'"+rest.getFinanceDemandDetailAccept().getOrderItemId()+"','"+rest.getFinanceDemandDetailAccept().getAcceptItemId()+"','"+rest.getFinanceDemandDetailAccept().getAcceptId()+"','"+rest.getFinanceDemandDetailAccept().getAcceptAmount()+"','"+rest.getFinanceDemandDetailAccept().getAcceptDate()+"',"
|
|
|
+ + "'"+rest.getFinanceDemandDetailAccept().getAcceptCode()+"','"+rest.getFinanceDemandDetailAccept().getAcceptStatus()+"',"
|
|
|
+ + "'"+rest.getFinanceDemandDetailAccept().getTitle()+"','"+rest.getFinanceDemandDetailAccept().getSpec()+"',"
|
|
|
+ + "'"+rest.getFinanceDemandDetailAccept().getProductCode()+"','"+rest.getFinanceDemandDetailAccept().getStatus()+"','已上传')");
|
|
|
+
|
|
|
+ /*acceptsqls.add("MERGE INTO FINANCEDEMANDDETAILACCEPT a"
|
|
|
+" USING (SELECT nvl(max(id),0) ID from FINANCEDEMANDDETAILACCEPT where code = '"+rest.getFinanceDemandDetailAccept().getCode()+"') b"
|
|
|
+" ON (a.ID = b.ID)"
|
|
|
+" WHEN MATCHED THEN "
|
|
|
@@ -647,13 +677,11 @@ public class B2BInformation extends AbstractTask{
|
|
|
+ "values (FINANCEDEMANDDETAILACCEPT_seq.nextval,'"+rest.getFinanceDemandDetailAccept().getCode()+"','"+rest.getFinanceDemandDetailAccept().getFinanceDemandCode()+"','"+rest.getFinanceDemandDetailAccept().getFinanceDemandDetailCode()+"',"
|
|
|
+ "'"+rest.getFinanceDemandDetailAccept().getOrderItemId()+"','"+rest.getFinanceDemandDetailAccept().getAcceptItemId()+"','"+rest.getFinanceDemandDetailAccept().getAcceptId()+"','"+rest.getFinanceDemandDetailAccept().getAcceptAmount()+"','"+rest.getFinanceDemandDetailAccept().getAcceptDate()+"',"
|
|
|
+ "'"+rest.getFinanceDemandDetailAccept().getAcceptCode()+"','"+rest.getFinanceDemandDetailAccept().getAcceptStatus()+"','"+rest.getFinanceDemandDetailAccept().getTitle()+"',"
|
|
|
- + "'"+rest.getFinanceDemandDetailAccept().getSpec()+"','"+rest.getFinanceDemandDetailAccept().getProductCode()+"','"+rest.getFinanceDemandDetailAccept().getStatus()+"','已上传')");
|
|
|
+ + "'"+rest.getFinanceDemandDetailAccept().getSpec()+"','"+rest.getFinanceDemandDetailAccept().getProductCode()+"','"+rest.getFinanceDemandDetailAccept().getStatus()+"','已上传')");*/
|
|
|
|
|
|
- }
|
|
|
- System.out.println(acceptsqls);
|
|
|
- System.out.println(ordersqls);
|
|
|
- jdbcTemplate.batchExecute(acceptsqls);
|
|
|
- jdbcTemplate.batchExecute(ordersqls);
|
|
|
+ }
|
|
|
+ jdbcTemplate.batchExecute(acceptsqls);
|
|
|
+ jdbcTemplate.batchExecute(ordersqls);
|
|
|
|
|
|
}
|
|
|
|
|
|
@@ -661,7 +689,7 @@ public class B2BInformation extends AbstractTask{
|
|
|
* 上传放款信息
|
|
|
* @throws Exception
|
|
|
*/
|
|
|
- @TaskMapping(title = "上传放款信息", fixedDelay = 60000, method = Method.DOWNLOAD)
|
|
|
+ @TaskMapping(title = "上传放款信息", fixedDelay = 60000, method = Method.UPLOAD)
|
|
|
public void addCapitalSideLoan() throws Exception {
|
|
|
|
|
|
List<Map<String, Object>> capitalSideLoan = getAccountApplyUpload(); //获取需要上传的放款申请
|
|
|
@@ -735,7 +763,8 @@ public class B2BInformation extends AbstractTask{
|
|
|
capitalSideLoanOther.setApprovalMan(map.get("AA_APPROVALMAN").toString()); //审批人
|
|
|
}
|
|
|
req.setCapitalSideLoan(capitalSideLoanOther);
|
|
|
- req.setEnuu(10050877);
|
|
|
+ Master ceuuMaster = ContextHolder.getMaster();
|
|
|
+ req.setEnuu(Integer.valueOf(ceuuMaster.getMa_uu().toString()));
|
|
|
AddCapitalSideLoanResp resp = capitalSideSdk.addCapitalSideLoan(req);
|
|
|
System.out.println(resp);
|
|
|
String s = ProtoBufUtil.toJSON(resp);
|
|
|
@@ -791,7 +820,7 @@ public class B2BInformation extends AbstractTask{
|
|
|
* 上传卖方客户额度申请
|
|
|
* @throws Exception
|
|
|
*/
|
|
|
- @TaskMapping(title = "上传卖方客户额度申请", fixedDelay = 60000, method = Method.DOWNLOAD)
|
|
|
+ @TaskMapping(title = "上传卖方客户额度申请", fixedDelay = 60000, method = Method.UPLOAD)
|
|
|
public void saveOfferQuotaInfoReq() throws Exception{
|
|
|
List<Map<String, Object>> customerQuotaUpload = getCustomerQuotaUpload();
|
|
|
if (!CollectionUtils.isEmpty(customerQuotaUpload)) {
|
|
|
@@ -858,9 +887,11 @@ public class B2BInformation extends AbstractTask{
|
|
|
"cq_custuu,cq_custname,cq_effectdays,cq_quota,cq_lendrate,cq_annualrate," +
|
|
|
"cq_repaymentmeans,cq_recorderuu from " +
|
|
|
"customerQuota where " +
|
|
|
- "CQ_UPLOADSTATUS='待上传' and cq_quotatype='卖方客户' order by cq_code ) where rownum < 100");
|
|
|
+ "CQ_UPLOADSTATUS='待上传' and cq_quotatype='卖方客户' order by cq_code ) where rownum < 100");
|
|
|
return maps;
|
|
|
}
|
|
|
+
|
|
|
+
|
|
|
}
|
|
|
|
|
|
|