소스 검색

Merge remote-tracking branch 'origin/master'

wuyx 5 년 전
부모
커밋
4047c25dfb
2개의 변경된 파일71개의 추가작업 그리고 38개의 파일을 삭제
  1. 69 38
      src/main/java/com/uas/erp/schedular/finance/task/B2BInformation.java
  2. 2 0
      src/test/java/com/uas/erp/test/SdkTest.java

+ 69 - 38
src/main/java/com/uas/erp/schedular/finance/task/B2BInformation.java

@@ -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;
 	}
+	
+
 }
 
 

+ 2 - 0
src/test/java/com/uas/erp/test/SdkTest.java

@@ -42,6 +42,7 @@ public class SdkTest extends AbstractTask {
 	 public void getFinanceOfferList() throws Exception{
 		 Master master = new Master();
          master.setMa_user("YITOA_BL");
+         master.setMa_uu(10050877L);
          ContextHolder.setMaster(master);
 		 b2BInformation.getFinanceOfferList();
 	 }
@@ -50,6 +51,7 @@ public class SdkTest extends AbstractTask {
 	 public void getFinanceOfferDetails() throws Exception{
 		 Master master = new Master();
          master.setMa_user("YITOA_BL");
+         master.setMa_uu(10050877L);
          ContextHolder.setMaster(master);
 		 b2BInformation.getFinanceOfferDetails();
 	 }