Browse Source

[深爱]科目基础资料对接测试

zxl 1 year ago
parent
commit
e33989aa7c

+ 44 - 2
src/main/java/com/uas/eis/service/Impl/STKServiceImpl.java

@@ -233,6 +233,48 @@ public class STKServiceImpl implements STKService {
                     ",'"+custvendDTOS.get(i).getReg_url()+"','"+custvendDTOS.get(i).getReg_address()+"'" +
                     ",case when '"+custvendDTOS.get(i).getCreat_time()+"' = 'null' then null else to_date(to_char(to_timestamp('"+custvendDTOS.get(i).getCreat_time()+"','yyyy-mm-dd hh24:mi:ssxff'),'yyyy-mm-dd hh24:mi:ss'),'yyyy-mm-dd hh24:mi:ss') end" +
                     ",case when '"+custvendDTOS.get(i).getUpdate_time()+"' = 'null' then null else to_date(to_char(to_timestamp('"+custvendDTOS.get(i).getUpdate_time()+"','yyyy-mm-dd hh24:mi:ssxff'),'yyyy-mm-dd hh24:mi:ss'),'yyyy-mm-dd hh24:mi:ss') end,'"+custvendDTOS.get(i).getSerial()+"')");
+            sqls.add("update STK_CUSTVEND2 set UID_TYPENAME = case when UID_TYPE = '01' then '统一社会信用代码' when UID_TYPE = '02' then '邓氏编码' " +
+                    "when UID_TYPE = '03' then '身份证号码(大陆)' when UID_TYPE = '04' then '护照号码(包括港澳身份证号码)'  when UID_TYPE = '06' then '身份证护照组合' " +
+                    "when UID_TYPE = '99' then '其他编码' end where id = " + custvendDTOS.get(i).getId());
+            sqls.add("update STK_CUSTVEND2 set CUSTOMER_TYPENAME = case when CUSTOMER_TYPE = 'C0201' then '单位客户' when CUSTOMER_TYPE = 'C0202' then '个人客户' " +
+                    "when CUSTOMER_TYPE = 'S0201' then '单位供应商' when CUSTOMER_TYPE = 'S0202' then '个人供应商' end where id = " + custvendDTOS.get(i).getId());
+            sqls.add("update STK_CUSTVEND2 set IS_VALIDNAME = case when IS_VALID = '1' then '有效' else '无效' end, " +
+                    "ISTEMPORARYNAME = case when ISTEMPORARY = '1' then '是' else '否' end where id = " + custvendDTOS.get(i).getId());
+        }
+        baseDao.execute(sqls);
+    }
+
+    //客商信息(当天)
+    @Override
+    public void getCustvendDay(TravellingMerchantVo travellingMerchantVo , Boolean isdelete) {
+        if(null == travellingMerchantVo.getData() || CollectionUtils.isEmpty(travellingMerchantVo.getData().getList())){
+            return ;
+        }
+        List<CustvendDTO> custvendDTOS = travellingMerchantVo.getData().getList();
+        List<String> sqls = new ArrayList<>();
+        for (int i = 0; i < custvendDTOS.size(); i++) {
+            sqls.add("delete from STK_CUSTVEND2 where id = " + custvendDTOS.get(i).getId());
+            sqls.add("insert into STK_CUSTVEND2(ID,S_ID,S_CODE,NAME,UID_TYPE,UID2,CUSTOMER_TYPE,IS_VALID,CREATED_ORG,CREATED_SYSTEM,ISTEMPORARY,MDM_CODE,REG_COUNTRY, " +
+                    "REG_PLACE,REG_REP,REG_CAPTIAL,REG_PERIOD,REG_BIZSCOPE," +
+                    "REG_FOUNDEDDATE," +
+                    "REG_URL,REG_ADDRESS," +
+                    "CREAT_TIME," +
+                    "UPDATE_TIME,SERIAL) " +
+                    "values ("+custvendDTOS.get(i).getId()+","+custvendDTOS.get(i).getS_id()+",'"+custvendDTOS.get(i).getS_code()+"','"+custvendDTOS.get(i).getName()+"'" +
+                    ",'"+custvendDTOS.get(i).getUid_type()+"','"+custvendDTOS.get(i).getUid()+"','"+custvendDTOS.get(i).getCustomer_type()+"','"+custvendDTOS.get(i).getIs_valid()+"'" +
+                    ",'"+custvendDTOS.get(i).getCreated_org()+"','"+custvendDTOS.get(i).getCreated_system()+"','"+custvendDTOS.get(i).getIstemporary()+"','"+custvendDTOS.get(i).getMdm_code()+"','"+custvendDTOS.get(i).getReg_country()+"'" +
+                    ",'"+custvendDTOS.get(i).getReg_place()+"','"+custvendDTOS.get(i).getReg_rep()+"','"+custvendDTOS.get(i).getReg_captial()+"','"+custvendDTOS.get(i).getReg_period()+"','"+custvendDTOS.get(i).getReg_bizscope()+"'" +
+                    ",case when '"+custvendDTOS.get(i).getReg_foundeddate()+"' = 'null' then null else to_date(to_char(to_timestamp('"+custvendDTOS.get(i).getReg_foundeddate()+"','yyyy-mm-dd hh24:mi:ssxff'),'yyyy-mm-dd hh24:mi:ss'),'yyyy-mm-dd hh24:mi:ss') end" +
+                    ",'"+custvendDTOS.get(i).getReg_url()+"','"+custvendDTOS.get(i).getReg_address()+"'" +
+                    ",case when '"+custvendDTOS.get(i).getCreat_time()+"' = 'null' then null else to_date(to_char(to_timestamp('"+custvendDTOS.get(i).getCreat_time()+"','yyyy-mm-dd hh24:mi:ssxff'),'yyyy-mm-dd hh24:mi:ss'),'yyyy-mm-dd hh24:mi:ss') end" +
+                    ",case when '"+custvendDTOS.get(i).getUpdate_time()+"' = 'null' then null else to_date(to_char(to_timestamp('"+custvendDTOS.get(i).getUpdate_time()+"','yyyy-mm-dd hh24:mi:ssxff'),'yyyy-mm-dd hh24:mi:ss'),'yyyy-mm-dd hh24:mi:ss') end,'"+custvendDTOS.get(i).getSerial()+"')");
+            sqls.add("update STK_CUSTVEND2 set UID_TYPENAME = case when UID_TYPE = '01' then '统一社会信用代码' when UID_TYPE = '02' then '邓氏编码' " +
+                    "when UID_TYPE = '03' then '身份证号码(大陆)' when UID_TYPE = '04' then '护照号码(包括港澳身份证号码)'  when UID_TYPE = '06' then '身份证护照组合' " +
+                    "when UID_TYPE = '99' then '其他编码' end where id = " + custvendDTOS.get(i).getId());
+            sqls.add("update STK_CUSTVEND2 set CUSTOMER_TYPENAME = case when CUSTOMER_TYPE = 'C0201' then '单位客户' when CUSTOMER_TYPE = 'C0202' then '个人客户' " +
+                    "when CUSTOMER_TYPE = 'S0201' then '单位供应商' when CUSTOMER_TYPE = 'S0202' then '个人供应商' end where id = " + custvendDTOS.get(i).getId());
+            sqls.add("update STK_CUSTVEND2 set IS_VALIDNAME = case when IS_VALID = '1' then '有效' else '无效' end, " +
+                    "ISTEMPORARYNAME = case when ISTEMPORARY = '1' then '是' else '否' end where id = " + custvendDTOS.get(i).getId());
         }
         baseDao.execute(sqls);
     }
@@ -245,7 +287,7 @@ public class STKServiceImpl implements STKService {
         if(null == cashFlowItemsVo.getData()){
             return ;
         }
-        List<CashFlowItemsDataVo> cashFlowItemsDataVo = cashFlowItemsVo.getData();
+        List<CashFlowItemsDataVo> cashFlowItemsDataVo = cashFlowItemsVo.getData().getList();
         List<String> sqls = new ArrayList<>();
         if (isdelete) {
             sqls.add("delete from STK_CASHFLOWDJ");
@@ -278,7 +320,7 @@ public class STKServiceImpl implements STKService {
         if(null == accountantProjectVo.getData()){
             return ;
         }
-        List<AccountantProjectDataVo> accountantProjectDataVo = accountantProjectVo.getData();
+        List<AccountantProjectDataVo> accountantProjectDataVo = accountantProjectVo.getData().getList();
         List<String> sqls = new ArrayList<>();
         if (isdelete) {
             sqls.add("delete from STK_CATEGORYDJ");

+ 5 - 0
src/main/java/com/uas/eis/service/STKService.java

@@ -59,6 +59,11 @@ public interface STKService {
      * */
     void getCustvend(TravellingMerchantVo travellingMerchantVo , Boolean isdelete);
 
+    /**
+     * 获取客商信息(当天)
+     * */
+    void getCustvendDay(TravellingMerchantVo travellingMerchantVo , Boolean isdelete);
+
     /**
      * 获取现金流
      * */

+ 57 - 0
src/main/java/com/uas/eis/task/STKTask.java

@@ -16,6 +16,7 @@ import org.springframework.beans.factory.annotation.Value;
 import org.springframework.scheduling.annotation.Scheduled;
 import org.springframework.stereotype.Component;
 
+import java.util.Calendar;
 import java.util.Date;
 import java.util.List;
 import java.util.Set;
@@ -143,6 +144,62 @@ public class STKTask {
         log.info("开始获取深投控客商状态信息,结束:"+((System.currentTimeMillis()-date.getTime())/1000));
     }
 
+    //客商获取(当天)
+    @Scheduled(cron = "0 36 17 * * ?")
+    public void queryCustVendDayQuartz(){
+        log.info("开始获取深投控客商状态信息=========start=============");
+        Date date = new Date();
+
+        Calendar start=Calendar.getInstance();
+
+        log.info("开始时间:"+start.get(Calendar.YEAR)+"-"+start.get(Calendar.MONTH) + 1+"-"+start.get(Calendar.DAY_OF_MONTH)+" 00:00:00");
+        log.info("结束时间:"+start.get(Calendar.YEAR)+"-"+start.get(Calendar.MONTH) + 1+"-"+start.get(Calendar.DAY_OF_MONTH)+" 23:59:59");
+        QueryTravellingMerchantDto dto = new QueryTravellingMerchantDto();
+        dto.setCode(GET_TRAVELLING_MERCHANT);
+        dto.setPage(1);
+        dto.setSize(500);
+        dto.setStartTime(start.get(Calendar.YEAR)+"-"+start.get(Calendar.MONTH) + 1+"-"+start.get(Calendar.DAY_OF_MONTH)+" 00:00:00");
+        dto.setEndTime(start.get(Calendar.YEAR)+"-"+start.get(Calendar.MONTH) + 1+"-"+start.get(Calendar.DAY_OF_MONTH)+" 23:59:59");
+
+        //第一次删除STK_CUSTVEND的数据
+        stkService.delete();
+        //是否跳出循环
+        Boolean isBreak = true;
+        //是否发生异常
+        Boolean exception = false;
+        //异常跳过次数
+        Integer num = 0;
+        while(isBreak) {
+            if(num >=5){
+                break;
+            }
+            log.info("while循环获取客商数据,查询参数:{}",JSONObject.toJSONString(dto));
+            TravellingMerchantVo travellingMerchantVo = new TravellingMerchantVo();
+            try{
+                travellingMerchantVo = requestSTKService.selectTravellingMerchantList(dto, COMPLEXITY_QUERY_URL);
+                if(travellingMerchantVo.getCode() != 200){
+                    num = num +1;
+                    continue;
+                }
+                //获取到客商数据,数据入库
+                stkService.getCustvendDay(travellingMerchantVo, false);
+            }catch (Exception e){
+                log.info("获取客商信息数据异常:{}",e.getMessage());
+                exception = true;
+                num = num +1;
+            }
+            //判断没发生异常,且是最后一页条件判断==》没有下页编码,或者返回的数据量小于每次查询的每页数量
+            if (!exception && null != travellingMerchantVo && null != travellingMerchantVo.getData() && dto.getSize() > travellingMerchantVo.getData().getEndRow()){
+                isBreak = false;
+            }
+            if(!exception){
+                dto.setPage(travellingMerchantVo.getData().getNextPage());
+            }
+            log.info("定时任务获取深投控客商信息数据结果2:{}", JSONObject.toJSONString(travellingMerchantVo));
+        }
+        log.info("开始获取深投控客商状态信息,结束:"+((System.currentTimeMillis()-date.getTime())/1000));
+    }
+
 
     //现金流项目
     //@Scheduled(cron = "0 56 23 * * ?")

+ 27 - 0
src/main/java/com/uas/eis/vo/stkVo/AccountantProjectListVo.java

@@ -0,0 +1,27 @@
+package com.uas.eis.vo.stkVo;
+
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * 会计科目Vo
+ * */
+@Data
+public class AccountantProjectListVo{
+
+    /**
+     * 返回数据
+     * */
+
+    private Integer pageNum;
+
+    private Integer size;
+
+    private Integer total;
+
+    private Integer pages;
+
+    private List<AccountantProjectDataVo> list;
+
+}

+ 2 - 1
src/main/java/com/uas/eis/vo/stkVo/AccountantProjectVo.java

@@ -14,6 +14,7 @@ public class AccountantProjectVo extends StkResponseBaseVo{
      * 返回数据
      * */
     //private AccountantProjectDataVo data;
-    private List<AccountantProjectDataVo> data;
+    //private List<AccountantProjectDataVo> data;
+    private AccountantProjectListVo data;
 
 }

+ 28 - 0
src/main/java/com/uas/eis/vo/stkVo/CashFlowItemsListVo.java

@@ -0,0 +1,28 @@
+package com.uas.eis.vo.stkVo;
+
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ *查询现金流项目Vo
+ * */
+@Data
+public class CashFlowItemsListVo {
+
+    /**
+     * 返回数据
+     * */
+
+    private Integer pageNum;
+
+    private Integer size;
+
+    private Integer total;
+
+    private Integer pages;
+
+    private List<CashFlowItemsDataVo> list;
+
+
+}

+ 2 - 1
src/main/java/com/uas/eis/vo/stkVo/CashFlowItemsVo.java

@@ -15,7 +15,8 @@ public class CashFlowItemsVo extends StkResponseBaseVo {
      * 返回数据
      * */
     //private CashFlowItemsDataVo data;
-    private List<CashFlowItemsDataVo> data;
+    //private List<CashFlowItemsDataVo> data;
+    private CashFlowItemsListVo data;
 
 
 }