ソースを参照

SRM消息通知

Zimo 1 週間 前
コミット
272d7f5bb1

+ 9 - 4
yudao-server/src/main/java/cn/iocoder/yudao/server/rest/SrmRest.java

@@ -38,6 +38,8 @@ public class SrmRest {
     private AdminAuthService authService;
     @Autowired
     private SrmNoticeMapper srmNoticeMapper;
+    @Autowired
+    private RestTemplate restTemplate;
 
     /**
      * 获取SRM的待办及已办的数量
@@ -56,7 +58,6 @@ public class SrmRest {
         }
         HttpHeaders headers = new HttpHeaders();
         headers.set("Authorization", "Bearer "+token);
-        headers.setContentType(MediaType.APPLICATION_JSON);
 
 
         // 2. 创建请求体参数
@@ -128,7 +129,6 @@ public class SrmRest {
         }
         HttpHeaders headers = new HttpHeaders();
         headers.set("Authorization", "Bearer "+token);
-        headers.setContentType(MediaType.APPLICATION_JSON);
 
 
         // 2. 创建请求体参数
@@ -141,7 +141,7 @@ public class SrmRest {
         requestBody.put("propertyValues", 0);
         System.out.println("==============================" + JSON.toJSONString(requestBody));
         HttpEntity<Map<String, Object>> requestEntity = new HttpEntity<>(requestBody, headers);
-        RestTemplate restTemplate = SslSkippingRestTemplate.createRestTemplate();
+//        RestTemplate restTemplate = SslSkippingRestTemplate.createRestTemplate();
         String todoStr = null;
         try {
             ResponseEntity<String> exchange = restTemplate.exchange(srmNoticeUrl, HttpMethod.GET, requestEntity, String.class);
@@ -151,11 +151,14 @@ public class SrmRest {
                 return new ArrayList<>();
             }
             List<JSONObject> needInsert = jsonObjects.stream().filter(e -> {
-                String createdDate = JSON.toJSONString(e.get("createdDate"));
+                String createdDate = String.valueOf(e.get("createdDate"));
                 if (StringUtils.isBlank(createdDate)) {
                     return false;
                 }
                 Instant instant1 = Instant.parse(createdDate);
+                if (Objects.isNull(srmNoticeDO)) {
+                    return true;
+                }
                 Instant instant2 = Instant.parse(srmNoticeDO.getSrmCreateTime());
                 return instant1.isAfter(instant2);
             }).collect(Collectors.toList());
@@ -168,6 +171,8 @@ public class SrmRest {
                 srmNoticeDO1.setTitle(jsonObject.getString("title"));
                 srmNoticeDO1.setContent(jsonObject.getString("content"));
                 srmNoticeDO1.setReadStatus("0");
+                srmNoticeDO1.setStatus("0");
+                srmNoticeDO1.setWorkCode(workcode);
                 srmNoticeDO1.setImgUrl(jsonObject.getString("imgUrl"));
                 srmNoticeDO1.setReqUrl(jsonObject.getString("reqUrl"));
                 return srmNoticeDO1;

+ 1 - 0
yudao-server/src/main/resources/application-dev.yaml

@@ -275,6 +275,7 @@ srm:
   ssoToken: https://srmqas.deepoil.cc/jbl/api/sso/get-temporary-token/OA
   todo: https://srmqas.deepoil.cc/jbl/api/workflow-request/backlog/page
   done: https://srmqas.deepoil.cc/jbl/api/workflow-request/through-my/page
+  notice: https://srmqas.deepoil.cc/jbl/api/info-status
 pms:
   secret: cc99d802-ce5c-5f62-b037-9a00726e7109
   ssoToken: https://iot.deepoil.cc/admin-api/system/auth/ssoLogin/getToken