ソースを参照

设备台账瑞恒数据导入及oa接口

lipenghui 1 日 前
コミット
7258b6f295

+ 2 - 3
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/constant/OaFlow.java

@@ -21,9 +21,6 @@ public class OaFlow {
     private String tokenUrl;
 
 
-    @Resource
-    private RestTemplate restTemplate;;
-
 
     public void regist() throws Exception{
         HttpHeaders headers = new HttpHeaders();
@@ -31,6 +28,8 @@ public class OaFlow {
         headers.add("cpk", cpk);
 
         HttpEntity<MultiValueMap<String, String>> requestEntity = new HttpEntity<>(headers);
+        RestTemplate restTemplate = SslSkippingRestTemplate.createRestTemplate();
+
         String result = restTemplate.postForObject(registerUrl, requestEntity, String.class);
         System.out.println("result:" + result);
 

+ 43 - 0
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/constant/SslSkippingRestTemplate.java

@@ -0,0 +1,43 @@
+package cn.iocoder.yudao.module.pms.constant;
+
+import org.springframework.http.client.SimpleClientHttpRequestFactory;
+import org.springframework.web.client.RestTemplate;
+
+import javax.net.ssl.*;
+import java.security.cert.X509Certificate;
+
+public class SslSkippingRestTemplate {
+
+    public static RestTemplate createRestTemplate() {
+        try {
+            // 创建不验证证书的SSL上下文
+            TrustManager[] trustAllCerts = new TrustManager[]{
+                    new X509TrustManager() {
+                        public X509Certificate[] getAcceptedIssuers() {
+                            return null;
+                        }
+                        public void checkClientTrusted(X509Certificate[] certs, String authType) {
+                        }
+                        public void checkServerTrusted(X509Certificate[] certs, String authType) {
+                        }
+                    }
+            };
+
+            SSLContext sslContext = SSLContext.getInstance("SSL");
+            sslContext.init(null, trustAllCerts, new java.security.SecureRandom());
+
+            // 获取SSL连接工厂
+            HttpsURLConnection.setDefaultSSLSocketFactory(sslContext.getSocketFactory());
+
+            // 创建不验证主机名的主机名验证器
+            HostnameVerifier allHostsValid = (hostname, session) -> true;
+            HttpsURLConnection.setDefaultHostnameVerifier(allHostsValid);
+
+            // 创建RestTemplate并设置自定义请求工厂
+            SimpleClientHttpRequestFactory requestFactory = new SimpleClientHttpRequestFactory();
+            return new RestTemplate(requestFactory);
+        } catch (Exception e) {
+            throw new RuntimeException("创建RestTemplate失败", e);
+        }
+    }
+}

+ 2 - 0
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/controller/admin/vo/IotDeviceRespVO.java

@@ -226,4 +226,6 @@ public class IotDeviceRespVO {
     private boolean runningWorkOrder = false;
 
     private String vehicleName;
+    private String assetOwnership;
+    private String useProject;
 }

+ 1 - 0
yudao-module-pms/yudao-module-pms-biz/src/main/java/cn/iocoder/yudao/module/pms/service/IotDeviceServiceImpl.java

@@ -128,6 +128,7 @@ public class IotDeviceServiceImpl implements IotDeviceService {
         List<IotDeviceDO> iotDeviceDOS = iotDeviceMapper.selectList();
         for (DeviceImportExcelVO deviceImportExcelVO : list) {
             iotDeviceDOS.stream().filter(e -> e.getDeviceCode().equals(deviceImportExcelVO.getDeviceCode())).forEach(f ->{
+                f.setEnableDate(deviceImportExcelVO.getEnableDate());
                 f.setAssetOwnership(deviceImportExcelVO.getAssetOwnership());
                 f.setUseProject(deviceImportExcelVO.getUseProject());
                 iotDeviceMapper.updateById(f);

+ 10 - 3
yudao-server/src/main/resources/application-dev.yaml

@@ -164,9 +164,9 @@ logging:
 
 --- #################### 钉微应用相关配置 ####################
 dingtalk:
-  AGENT_ID: 3687646006  # DeepOil 微应用 agent_id
-  APP_KEY: dingmr9ez0ecgbmscfeb # 钉钉微应用 appkey
-  APP_SECRET: VhG_zMdTvIBwA_0Ef8FJ0foH3VYYo5T-kw0ukX_PBA8Ah1xl7AjDw5RVYCU0DTpe # 钉钉微应用 appkey
+  AGENT_ID: 3687646006xxxxxxxxxxx  # DeepOil 微应用 agent_id
+  APP_KEY: dingmr9ez0ecgbmscfebxxxxxxx # 钉钉微应用 appkey
+  APP_SECRET: VhG_zMdTvIBwA_0Ef8FJ0foH3VYYo5T-kw0ukX_PBA8Ah1xl7AjDw5RVYCU0DTpexxxxxxx # 钉钉微应用 appkey
   GET_ACCESS_TOKEN_URL: https://oapi.dingtalk.com/gettoken  # 获取access_token
   URL_GET_USERINFO_BYCODE: https://oapi.dingtalk.com/sns/getuserinfo_bycode # 通过二维码扫码获取UNIONID
   URL_GET_USERINFO_BYUNIONID: https://oapi.dingtalk.com/topapi/user/getbyunionid # 通过UNIONID获取用户信息
@@ -274,3 +274,10 @@ pf4j:
   pluginsDir: ${user.home}/plugins # 插件目录
 system:
   url: https://iot.deepoil.cc/
+
+oa:
+  register: https://172.17.25.231/api/ec/dev/auth/regist
+  gettoken: https://172.17.25.231/api/ec/dev/auth/applytoken
+#  appid: EEAA5436-7577-4BE0-8C6C-89E9D88805EE
+  appid: EEAA5436-7577-4BE0-8C6C-89E9D88805E1
+  cpk: MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEApmtQUp9M82/z22P7am5owQCknjQnjF4U4ckEh7XVtJVQZrZx7d1lCPfoYrwOKEM4DEV7khW6++4Zv5caJ/9nqPn4QFwCqJWVmCEm9vC1BA6i2yfa4bmTxdR1/oeU/Af9pDFlvv5GC9XyilO7CIKu19Ce50v7aN6h1Tjix+h5Ba8e12XAEpEZk9pFroEYfR4lrecvi1pQOwRw8YzDRC4lhGNOo5Cen1rGjk7dwzzgs4uEv9ZyPZoVJnty5P9JE/ctboEf3x4jbqIliuCRgOyXYsLlp+N282CKcWZ35URkGw2orKyG1U6L1hNoj7kkpvAo8Zagf97SdZ0nYdRBIHv6PQIDAQAB