mycopy123@163.com преди 1 година
родител
ревизия
527efc5690

+ 46 - 0
src/main/java/com/trs/project/entity/Gongao.java

@@ -0,0 +1,46 @@
+package com.trs.project.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author trs
+ * @since 2024-02-27
+ */
+@Data
+public class Gongao {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId("id")
+    private String id;
+
+    @TableField("NOTICE_NAME")
+    private String noticeName;
+
+    @TableField("NOTICE_CONTENT")
+    private String noticeContent;
+
+    @TableField("NOTICE_TIME")
+    private Long noticeTime;
+
+    @TableField("NOTICE_GUID")
+    private String noticeGuid;
+
+    @TableField("NOTICE_TYPE")
+    private String noticeType;
+
+    @TableField("REGION_CODE")
+    private String regionCode;
+
+    @TableField("REGION_NAME")
+    private String regionName;
+
+
+}

+ 50 - 0
src/main/java/com/trs/project/entity/ZfcgGongao.java

@@ -0,0 +1,50 @@
+package com.trs.project.entity;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ * <p>
+ * 
+ * </p>
+ *
+ * @author trs
+ * @since 2024-02-27
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class ZfcgGongao extends BaseEntity {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId("SOURCE_DATA_KEY")
+    private String sourceDataKey;
+
+    @TableField("NOTICE_NAME")
+    private String noticeName;
+
+    @TableField("NOTICE_CONTENT")
+    private String noticeContent;
+
+    @TableField("NOTICE_TIME")
+    private Long noticeTime;
+
+    @TableField("NOTICE_GUID")
+    private String noticeGuid;
+
+    @TableField("NOTICE_TYPE")
+    private String noticeType;
+
+    @TableField("DATA_TIMESTAMP")
+    private Long  dataTimestamp;
+
+    @TableField("REGION_CODE")
+    private String regionCode;
+
+    @TableField("REGION_NAME")
+    private String regionName;
+
+
+}

+ 45 - 0
src/main/java/com/trs/project/exchange/SampleXxlJob.java

@@ -4,6 +4,8 @@ import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.trs.project.entity.*;
 import com.trs.project.service.*;
+import com.trs.project.util.Base64Util;
+import com.trs.project.util.GpDESUtils;
 import com.trs.project.util.RSAUtils;
 import com.xxl.job.core.context.XxlJobHelper;
 import com.xxl.job.core.handler.annotation.XxlJob;
@@ -22,6 +24,7 @@ import org.springframework.web.client.RestTemplate;
 import java.nio.charset.StandardCharsets;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
+import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
 
@@ -144,6 +147,9 @@ public class SampleXxlJob {
     @Autowired
     private NmResultNoticeService nmResultNoticeService;
 
+    @Autowired
+    private ZfcgGongaoService zfcgGongaoService;
+
     /**
      * 1、工程-招标公告与资格预审公告【GC_NOTICEANDFILE】
      */
@@ -492,6 +498,14 @@ public class SampleXxlJob {
         detailMethod(0);//1:post  0:get
     }
 
+    /**
+     * 40、政府采购【GONGAO】
+     */
+    @XxlJob("task_gongao")
+    public void gongao() throws Exception {
+        detailMethod(0);//1:post  0:get
+    }
+
 
 
     private void detailMethod(Integer type){
@@ -623,6 +637,7 @@ public class SampleXxlJob {
     }
 
     private void updateDatas(String param , JSONArray jsonArray ) {
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
         switch (param)
         {
             case "GC_NOTICEANDFILE"://1、工程-招标公告与资格预审公告【GC_NOTICEANDFILE】
@@ -898,6 +913,36 @@ public class SampleXxlJob {
                 XxlJobHelper.log(param+":数据入库="+nmResultNotice.size());
                 nmResultNoticeService.saveOrUpdateBatch(nmResultNotice);
                 break;
+            case "ZFCG_GONGAO"://38、政府采购【ZfcgGongao】
+                List<Gongao> gongaoList = JSONObject.parseArray(jsonArray.toJSONString(), Gongao.class);
+                List<ZfcgGongao> gongaoDbList = new ArrayList<>();
+                for(Gongao gongao : gongaoList){
+                    ZfcgGongao zfcgGongao = new ZfcgGongao();
+                    try{
+                        zfcgGongao.setNoticeTime((gongao.getNoticeTime()));
+                        zfcgGongao.setNoticeName(gongao.getNoticeName());
+                        zfcgGongao.setNoticeGuid(gongao.getNoticeGuid());
+                        zfcgGongao.setNoticeType(gongao.getNoticeType());
+                        zfcgGongao.setRegionName(gongao.getRegionName());
+                        zfcgGongao.setSourceDataKey(gongao.getId());
+                        zfcgGongao.setRegionCode(gongao.getRegionCode());
+                        zfcgGongao.setDataTimestamp(Long.parseLong(simpleDateFormat.format(new Date())));
+                        String regionCode = gongao.getRegionCode();
+                        if(!"1504".equals(regionCode.substring(0,4))){
+                            zfcgGongao.setNoticeContent(Base64Util.decode(gongao.getNoticeContent()));
+                        }else {
+                            zfcgGongao.setNoticeContent(gongao.getNoticeContent());
+
+                        }
+                        gongaoDbList.add(zfcgGongao);
+                    }catch (Exception e){
+                        e.printStackTrace();
+                    }
+                }
+                logger.info(param+":数据入库="+gongaoDbList.size());
+                XxlJobHelper.log(param+":数据入库="+gongaoDbList.size());
+                zfcgGongaoService.saveOrUpdateBatch(gongaoDbList);
+                break;
             default:
         }
     }

+ 11 - 0
src/main/java/com/trs/project/mapper/ZfcgGongaoMapper.java

@@ -0,0 +1,11 @@
+package com.trs.project.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.trs.project.entity.ZfcgGongao;
+import org.apache.ibatis.annotations.Mapper;
+
+
+@Mapper
+public interface ZfcgGongaoMapper extends BaseMapper<ZfcgGongao> {
+
+}

+ 16 - 0
src/main/java/com/trs/project/service/ZfcgGongaoService.java

@@ -0,0 +1,16 @@
+package com.trs.project.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.trs.project.entity.ZfcgGongao;
+
+/**
+ * <p>
+ *  服务类
+ * </p>
+ *
+ * @author trs
+ * @since 2024-02-27
+ */
+public interface ZfcgGongaoService extends IService<ZfcgGongao> {
+
+}

+ 17 - 0
src/main/java/com/trs/project/service/impl/ZfcgGongaoServiceImpl.java

@@ -0,0 +1,17 @@
+package com.trs.project.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.trs.project.entity.ZfcgGongao;
+import com.trs.project.mapper.ZfcgGongaoMapper;
+import com.trs.project.service.ZfcgGongaoService;
+import org.springframework.stereotype.Service;
+
+/**
+ *
+ * @author trs
+ * @since 2023-02-23
+ */
+@Service
+public class ZfcgGongaoServiceImpl extends ServiceImpl<ZfcgGongaoMapper, ZfcgGongao> implements ZfcgGongaoService {
+
+}

Файловите разлики са ограничени, защото са твърде много
+ 1 - 0
src/main/java/com/trs/project/util/Base64Util.java


Файловите разлики са ограничени, защото са твърде много
+ 295 - 0
src/main/java/com/trs/project/util/GpDESUtils.java


+ 2 - 6
src/main/test/java/com/trs/project/timer/BusinessTaskTest.java

@@ -115,16 +115,12 @@ public class BusinessTaskTest {
 
         System.out.println(new Date().getTime());
         try{
-            JSONObject jsonObject = httpGetMethod("https://ggzyjy.nmg.gov.cn/adminNmg/api/down.do?platform_code=e64975be&table_name=NM_RESULT_NOTICE&page=1&page_size=20&startTime="+startDate.getTime()+"  ");
+            JSONObject jsonObject = httpGetMethod("https://ggzyjy.nmg.gov.cn/adminNmg/api/down.do?platform_code=e64975be&table_name=NM_ATTACHMENTS&page=1&page_size=20&startTime="+startDate.getTime()+"  ");
 
             String data = RSAUtils.decrypt(jsonObject.getString("data"));
             JSONArray jsonArray = JSONArray.parseArray(data);
             System.out.println(jsonArray);
-                List list = JSONObject.parseArray(jsonArray.toJSONString(), NmResultNotice.class);
-                for (int j=0;j<list.size();j++){
-                    NmResultNotice nmResultNoticeNmResultNotice = (NmResultNotice)list.get(j);
-                    System.out.println(nmResultNoticeNmResultNotice);
-                }
+
         }catch (Exception e){
             e.printStackTrace();
         }

Някои файлове не бяха показани, защото твърде много файлове са промени