lwhhszx 2 سال پیش
والد
کامیت
8ca17ea051

+ 5 - 1
pom.xml

@@ -139,7 +139,11 @@
             <artifactId>pagehelper-spring-boot-starter</artifactId>
             <version>1.4.0</version>
         </dependency>
-
+        <!--rabbitmq-->
+        <dependency>
+            <groupId>org.springframework.boot</groupId>
+            <artifactId>spring-boot-starter-amqp</artifactId>
+        </dependency>
         <dependency>
             <groupId>e-iceblue</groupId>
             <artifactId>spire.pdf</artifactId>

+ 28 - 0
src/main/java/com/example/demo/config/MailConstants.java

@@ -0,0 +1,28 @@
+package com.example.demo.config;
+
+public class MailConstants {
+    //消息投递中
+    public static final Integer DELIVERING = 0;
+
+    //消息投成功
+    public static final Integer SUCCESS = 1;
+
+    //消息投递失败
+    public static final Integer FAILURE = 2;
+
+    //最大重试次数
+    public static final Integer MAX_TRY_COUNT = 2;
+
+    //消息超时时间
+    public static final Integer MSG_TIMEOUT = 1;
+
+    //队列
+    public static final String MAIL_QUEUE_NAME = "mail.queue";
+
+    //交换机
+    public static final String MAIL_EXCHANGE_NAME = "mail.exchange";
+
+    //路由键
+    public static final String MAIL_ROUTING_KEY_NAME = "mail.routing.key";
+
+}

+ 0 - 20
src/main/java/com/example/demo/controller/AssoTaskPersonelController.java

@@ -38,25 +38,5 @@ public class AssoTaskPersonelController {
     }
 
 
-    @GetMapping("/getPartClient")
-    @Operation(summary = "分页获取对比专利")
-    public List<PatentCell> getPatentya(String patentVO) throws IOException, InterruptedException {
-        return uploadFromWebService.getPatentya(patentVO);
 
-    }
-
-
-    @GetMapping("/test")
-    @Operation(summary = "分页获取对比专利")
-    public void test(String patentVO) throws IOException, InterruptedException, ParseException {
-        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy.MM.dd");
-        String date = "2022.1.1";
-        Date date1 = simpleDateFormat.parse(date);
-
-        Long ts = date1.getTime() / 1000;
-        Integer a = Integer.parseInt(String.valueOf(ts));
-        System.out.println(ts + "ni" + a);
-
-
-    }
 }

+ 39 - 0
src/main/java/com/example/demo/job/DetectInterfacesJob.java

@@ -0,0 +1,39 @@
+package com.example.demo.job;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.example.demo.domain.entity.QrtzTask;
+import com.example.demo.domain.entity.QrtzTaskDetail;
+import com.example.demo.exception.XiaoShiException;
+import com.example.demo.model.dto.TaskWebSocketDTO;
+import com.example.demo.model.dto.WebQueryDTO;
+import com.example.demo.util.MathUtils;
+import com.example.demo.util.Response;
+import com.example.demo.util.ResponseEnum;
+import com.example.demo.util.WebSocketServer;
+import lombok.extern.slf4j.Slf4j;
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+import org.quartz.DisallowConcurrentExecution;
+import org.quartz.JobExecutionContext;
+import org.quartz.JobExecutionException;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.scheduling.quartz.QuartzJobBean;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 检测接口任务
+ */
+@Slf4j
+@DisallowConcurrentExecution
+public class DetectInterfacesJob extends QuartzJobBean {
+    @Override
+    public void executeInternal(JobExecutionContext context) throws JobExecutionException {
+
+    }
+
+
+}

+ 163 - 0
src/main/java/com/example/demo/service/OutInterfaceService.java

@@ -179,4 +179,167 @@ public class OutInterfaceService {
                 .build();
         return Objects.requireNonNull(okHttpClient.newCall(request).execute().body()).string();
     }
+
+    //分析系统检索接口
+    /**
+     * @title 获得
+     * @description 接口来源:PAS
+     */
+    public String getCnBibApi(String appNo) throws IOException {
+        OkHttpClient okHttpClient = new OkHttpClient.Builder()
+                .connectTimeout(60, TimeUnit.SECONDS)
+                .writeTimeout(60, TimeUnit.SECONDS)
+                .readTimeout(60, TimeUnit.SECONDS)
+                .build();
+        Request request = new Request.Builder()
+                .url(PASUrl + "/api/v2/patentStar/getCnBib?appNo=" +appNo)
+                .get()
+                .build();
+        return Objects.requireNonNull(okHttpClient.newCall(request).execute().body()).string();
+    }
+    /**
+     * @title 获得
+     * @description 接口来源:PAS
+     */
+    public String getPicture(String appNo) throws IOException {
+        OkHttpClient okHttpClient = new OkHttpClient.Builder()
+                .connectTimeout(60, TimeUnit.SECONDS)
+                .writeTimeout(60, TimeUnit.SECONDS)
+                .readTimeout(60, TimeUnit.SECONDS)
+                .build();
+        Request request = new Request.Builder()
+                .url(PASUrl + "/api/v2/patentStar/getPicture?appNo=" +appNo)
+                .get()
+                .build();
+        return Objects.requireNonNull(okHttpClient.newCall(request).execute().body()).string();
+    }
+    /**
+     * @title 获得
+     * @description 接口来源:PAS
+     */
+    public String getWGPicture(String appNo) throws IOException {
+        OkHttpClient okHttpClient = new OkHttpClient.Builder()
+                .connectTimeout(60, TimeUnit.SECONDS)
+                .writeTimeout(60, TimeUnit.SECONDS)
+                .readTimeout(60, TimeUnit.SECONDS)
+                .build();
+        Request request = new Request.Builder()
+                .url(PASUrl + "/api/v2/patentStar/getWGPicture?appNo=" +appNo)
+                .get()
+                .build();
+        return Objects.requireNonNull(okHttpClient.newCall(request).execute().body()).string();
+    }
+    /**
+     * @title 获得
+     * @description 接口来源:PAS
+     */
+    public String getCnLegal(String appNo) throws IOException {
+        OkHttpClient okHttpClient = new OkHttpClient.Builder()
+                .connectTimeout(60, TimeUnit.SECONDS)
+                .writeTimeout(60, TimeUnit.SECONDS)
+                .readTimeout(60, TimeUnit.SECONDS)
+                .build();
+        Request request = new Request.Builder()
+                .url(PASUrl + "/api/v2/patentStar/getCnLegal?appNo=" +appNo)
+                .get()
+                .build();
+        return Objects.requireNonNull(okHttpClient.newCall(request).execute().body()).string();
+    }
+    /**
+     * @title 获得
+     * @description 接口来源:PAS
+     */
+    public String getCnPdf(String appNo) throws IOException {
+        OkHttpClient okHttpClient = new OkHttpClient.Builder()
+                .connectTimeout(60, TimeUnit.SECONDS)
+                .writeTimeout(60, TimeUnit.SECONDS)
+                .readTimeout(60, TimeUnit.SECONDS)
+                .build();
+        Request request = new Request.Builder()
+                .url(PASUrl + "/api/v2/patentStar/getCnPdf?appNo=" +appNo)
+                .get()
+                .build();
+        return Objects.requireNonNull(okHttpClient.newCall(request).execute().body()).string();
+    }
+    /**
+     * @title 获得
+     * @description 接口来源:PAS
+     */
+    public String getCnFullXml(String appNo) throws IOException {
+        OkHttpClient okHttpClient = new OkHttpClient.Builder()
+                .connectTimeout(60, TimeUnit.SECONDS)
+                .writeTimeout(60, TimeUnit.SECONDS)
+                .readTimeout(60, TimeUnit.SECONDS)
+                .build();
+        Request request = new Request.Builder()
+                .url(PASUrl + "/api/v2/patentStar/getCnFullXml?appNo=" +appNo)
+                .get()
+                .build();
+        return Objects.requireNonNull(okHttpClient.newCall(request).execute().body()).string();
+    }
+    /**
+     * @title 获得
+     * @description 接口来源:PAS
+     */
+    public String getEnPdf(String patentNo) throws IOException {
+        OkHttpClient okHttpClient = new OkHttpClient.Builder()
+                .connectTimeout(60, TimeUnit.SECONDS)
+                .writeTimeout(60, TimeUnit.SECONDS)
+                .readTimeout(60, TimeUnit.SECONDS)
+                .build();
+        Request request = new Request.Builder()
+                .url(PASUrl + "/api/v2/patentStar/getEnPdf?patentNo=" +patentNo)
+                .get()
+                .build();
+        return Objects.requireNonNull(okHttpClient.newCall(request).execute().body()).string();
+    }
+    /**
+     * @title 获得
+     * @description 接口来源:PAS
+     */
+    public String getENBib(String patentNo) throws IOException {
+        OkHttpClient okHttpClient = new OkHttpClient.Builder()
+                .connectTimeout(60, TimeUnit.SECONDS)
+                .writeTimeout(60, TimeUnit.SECONDS)
+                .readTimeout(60, TimeUnit.SECONDS)
+                .build();
+        Request request = new Request.Builder()
+                .url(PASUrl + "/api/v2/patentStar/getENBib?patentNo=" +patentNo)
+                .get()
+                .build();
+        return Objects.requireNonNull(okHttpClient.newCall(request).execute().body()).string();
+    }
+    /**
+     * @title 获得
+     * @description 接口来源:PAS
+     */
+    public String getFamilyByPubNo(String patentNo) throws IOException {
+        OkHttpClient okHttpClient = new OkHttpClient.Builder()
+                .connectTimeout(60, TimeUnit.SECONDS)
+                .writeTimeout(60, TimeUnit.SECONDS)
+                .readTimeout(60, TimeUnit.SECONDS)
+                .build();
+        Request request = new Request.Builder()
+                .url(PASUrl + "/api/v2/patentStar/getFamilyByPubNo?patentNo=" +patentNo)
+                .get()
+                .build();
+        return Objects.requireNonNull(okHttpClient.newCall(request).execute().body()).string();
+    }
+    /**
+     * @title 获得
+     * @description 接口来源:PAS
+     */
+    public String getCitedNumByPubNo(String patentNo) throws IOException {
+        OkHttpClient okHttpClient = new OkHttpClient.Builder()
+                .connectTimeout(60, TimeUnit.SECONDS)
+                .writeTimeout(60, TimeUnit.SECONDS)
+                .readTimeout(60, TimeUnit.SECONDS)
+                .build();
+        Request request = new Request.Builder()
+                .url(PASUrl + "/api/v2/patentStar/getCitedNumByPubNo?patentNo=" +patentNo)
+                .get()
+                .build();
+        return Objects.requireNonNull(okHttpClient.newCall(request).execute().body()).string();
+    }
+
 }

+ 27 - 0
src/main/java/com/example/demo/util/MessageUtils.java

@@ -0,0 +1,27 @@
+package com.example.demo.util;
+
+import com.example.demo.config.MailConstants;
+import org.springframework.amqp.rabbit.connection.CorrelationData;
+import org.springframework.amqp.rabbit.core.RabbitTemplate;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.beans.factory.annotation.Value;
+import org.springframework.stereotype.Component;
+
+import java.util.Map;
+
+@Component
+public class MessageUtils {
+    @Autowired
+    private RabbitTemplate rabbitTemplate;
+    @Value("${queueName}")
+    private String queueName;
+
+    /**
+     * 向用户邮箱发送短信
+     *
+     * @param map 所需参数
+     */
+    public void sendEmailMessage(Map<String, Object> map) {
+        rabbitTemplate.convertAndSend(MailConstants.MAIL_EXCHANGE_NAME, MailConstants.MAIL_ROUTING_KEY_NAME, map, new CorrelationData("1"));
+    }
+}

+ 4 - 1
src/main/resources/application-dev.yml

@@ -1,5 +1,9 @@
 
 spring:
+  rabbitmq.host: 192.168.1.24
+  rabbitmq.port: 5672
+  rabbitmq.username: admin
+  rabbitmq.password: 123456
   redis:
     host: 192.168.1.24
     port: 6379
@@ -50,7 +54,6 @@ spring:
               user: root
               password: rrzTwWAYX8Gxh5JH
               driver: com.mysql.jdbc.Driver
-
     #数据库方式
     job-store-type: jdbc
     #初始化表结构

+ 1 - 1
src/main/resources/application.yml

@@ -21,7 +21,7 @@ spring:
       max-file-size: 1000MB
       max-request-size: 1000MB
   profiles:
-    active: prodNetIn
+    active: dev
   jackson:
     default-property-inclusion: non_null
     serialization: