Browse Source

supersonic登录集成

zhouyy 4 months ago
parent
commit
d45452fad5

+ 0 - 7
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/controller/UserController.java

@@ -1,17 +1,12 @@
 package com.management.platform.controller;
 package com.management.platform.controller;
 
 
 
 
-import com.alibaba.fastjson.JSONArray;
-import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.management.platform.constant.Constant;
 import com.management.platform.entity.*;
 import com.management.platform.entity.*;
 import com.management.platform.mapper.*;
 import com.management.platform.mapper.*;
 import com.management.platform.service.*;
 import com.management.platform.service.*;
-import com.management.platform.util.ColorUtil;
 import com.management.platform.util.HttpRespMsg;
 import com.management.platform.util.HttpRespMsg;
-
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.ldap.core.LdapTemplate;
 import org.springframework.ldap.core.LdapTemplate;
@@ -30,8 +25,6 @@ import javax.naming.ldap.LdapContext;
 import javax.naming.ldap.SortControl;
 import javax.naming.ldap.SortControl;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletRequest;
 import java.io.IOException;
 import java.io.IOException;
-import java.time.LocalDate;
-import java.time.LocalDateTime;
 import java.util.*;
 import java.util.*;
 
 
 /**
 /**

+ 1 - 0
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/entity/vo/UserVO.java

@@ -32,4 +32,5 @@ public class UserVO extends User {
     private Integer num;//客户数量
     private Integer num;//客户数量
     private Integer saleNum;//交易客户数量
     private Integer saleNum;//交易客户数量
 
 
+    private String supersonicToken;
 }
 }

+ 1 - 1
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/service/impl/ContactsServiceImpl.java

@@ -8,11 +8,11 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.management.platform.entity.*;
 import com.management.platform.entity.*;
 import com.management.platform.entity.vo.ContactsVo;
 import com.management.platform.entity.vo.ContactsVo;
 import com.management.platform.mapper.*;
 import com.management.platform.mapper.*;
 import com.management.platform.service.ContactsService;
 import com.management.platform.service.ContactsService;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.management.platform.service.SysFunctionService;
 import com.management.platform.service.SysFunctionService;
 import com.management.platform.service.WxCorpInfoService;
 import com.management.platform.service.WxCorpInfoService;
 import com.management.platform.util.ExcelUtil;
 import com.management.platform.util.ExcelUtil;

+ 52 - 3
fhKeeper/formulahousekeeper/management-crm/src/main/java/com/management/platform/service/impl/UserServiceImpl.java

@@ -33,9 +33,7 @@ import org.apache.poi.xssf.usermodel.XSSFWorkbook;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.beans.factory.annotation.Value;
-import org.springframework.http.HttpMethod;
-import org.springframework.http.HttpStatus;
-import org.springframework.http.ResponseEntity;
+import org.springframework.http.*;
 import org.springframework.ldap.core.LdapTemplate;
 import org.springframework.ldap.core.LdapTemplate;
 import org.springframework.ldap.filter.EqualsFilter;
 import org.springframework.ldap.filter.EqualsFilter;
 import org.springframework.stereotype.Service;
 import org.springframework.stereotype.Service;
@@ -241,6 +239,20 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
     @Resource
     @Resource
     private SysDictService sysDictService;
     private SysDictService sysDictService;
 
 
+
+    @Value("${supersonic.ip:localhost}")
+    private String supersonicIP;
+
+    @Value("${supersonic.port:9080}")
+    private String supersonicPort;
+
+    @Value("${supersonic.username:admin}")
+    private String supersonicUserName;
+
+    @Value("${supersonic.password:e6+jQ26AESREiBBuKM1u1A==}")
+    private String supersonicPassWord;
+
+
     //登录网页端
     //登录网页端
     @Override
     @Override
     public HttpRespMsg loginAdmin(String username, String password){
     public HttpRespMsg loginAdmin(String username, String password){
@@ -306,6 +318,14 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
                 userVO.setHasAuditDept(num>0);
                 userVO.setHasAuditDept(num>0);
                 //获取当前角色的权限菜单
                 //获取当前角色的权限菜单
                 setUserRoleMenu(userVO);
                 setUserRoleMenu(userVO);
+                //获取supersonicToken
+                String superSonicToken = getSuperSonicToken();
+                if(org.apache.commons.lang3.StringUtils.isBlank(superSonicToken)){
+                    httpRespMsg.setError(MessageUtils.message("user.supersonicLogin"));
+                    return httpRespMsg;
+                }else{
+                    userVO.setSupersonicToken(superSonicToken);
+                }
                 httpRespMsg.data = userVO;
                 httpRespMsg.data = userVO;
             }else {
             }else {
                 httpRespMsg.setError(MessageUtils.message("user.pwdError"));
                 httpRespMsg.setError(MessageUtils.message("user.pwdError"));
@@ -314,6 +334,35 @@ public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements Us
         return httpRespMsg;
         return httpRespMsg;
     }
     }
 
 
+    public String getSuperSonicToken(){
+        String token = "";
+        String apiUrl = "http://"+supersonicIP+":"+supersonicPort+"/api/auth/user/login";
+        HttpHeaders headers = new HttpHeaders();
+        headers.setContentType(MediaType.APPLICATION_JSON);
+        JSONObject params = new JSONObject();
+        params.put("name", supersonicUserName);
+        params.put("password", supersonicPassWord);
+        String requestBody = params.toJSONString();
+        HttpEntity<String> entity = new HttpEntity<>(requestBody, headers);
+        ResponseEntity<String> responseEntity = restTemplate.exchange(apiUrl, HttpMethod.POST, entity, String.class);
+
+        if (responseEntity.getStatusCode() == HttpStatus.OK) {
+            String responseBody = responseEntity.getBody();
+            System.out.println("Response from API: " + responseBody);
+            JSONObject jsonObject = JSONObject.parseObject(responseBody);
+            System.out.println("jsonObject== "+jsonObject);
+            if(jsonObject.getString("msg").equals("success") && jsonObject.getString("code").equals("200")){
+                token = jsonObject.get("data").toString();
+//                System.out.println("token=== "+token);
+            }else{
+                System.out.println("请求失败");
+            }
+        } else {
+            System.out.println("请求失败");
+        }
+        return token;
+    }
+
     @Override
     @Override
     public HttpRespMsg loginAdminByThirdParty(String jobNumber, String token) {
     public HttpRespMsg loginAdminByThirdParty(String jobNumber, String token) {
         HttpRespMsg httpRespMsg;
         HttpRespMsg httpRespMsg;

+ 6 - 0
fhKeeper/formulahousekeeper/management-crm/src/main/resources/application.yml

@@ -175,3 +175,9 @@ sftp:
 
 
 defaultcommonmodules:
 defaultcommonmodules:
   path: [/customer,/contacts,/tasks]
   path: [/customer,/contacts,/tasks]
+
+supersonic:
+  ip: localhost
+  port: 9080
+  username: admin
+  password: e6+jQ26AESREiBBuKM1u1A==

+ 1 - 0
fhKeeper/formulahousekeeper/management-crm/src/main/resources/i18n/messages.properties

@@ -13,6 +13,7 @@ user.roleNameRepeat=角色名称不能重复
 user.pwdError=密码错误
 user.pwdError=密码错误
 user.NoPermission=您尚无权使用系统,请联系管理员。
 user.NoPermission=您尚无权使用系统,请联系管理员。
 user.AccountDeactivation=您的账号已停用,无法操作
 user.AccountDeactivation=您的账号已停用,无法操作
+user.supersonicLogin=supersonic登录失败
 #注册相关
 #注册相关
 register.codeError=验证码不正确
 register.codeError=验证码不正确
 register.phoneExist=该电话号码已注册
 register.phoneExist=该电话号码已注册

+ 1 - 0
fhKeeper/formulahousekeeper/management-crm/src/main/resources/i18n/messages_en_US.properties

@@ -13,6 +13,7 @@ user.pwdError=password error
 user.NoPermission=You are not authorized to use the system. Please contact the administrator.
 user.NoPermission=You are not authorized to use the system. Please contact the administrator.
 user.roleNameRepeat=The role name cannot be duplicate.
 user.roleNameRepeat=The role name cannot be duplicate.
 user.AccountDeactivation=Your account has been deactivated, unable to operate.
 user.AccountDeactivation=Your account has been deactivated, unable to operate.
+user.supersonicLogin=supersonic login fail
 #注册相关
 #注册相关
 register.codeError=Incorrect verification code.
 register.codeError=Incorrect verification code.
 register.phoneExist=The phone number is already registered.
 register.phoneExist=The phone number is already registered.