From 6008ff1aad2de3a1b1d85fcd8fae89e217ccfa22 Mon Sep 17 00:00:00 2001
From: liujie <1793218484@qq.com>
Date: 星期三, 04 六月 2025 17:33:11 +0800
Subject: [PATCH] 小程序接口 退出登录

---
 ruoyi-system/src/main/java/com/ruoyi/system/mapper/TbQichachaMapper.java              |   17 +++++
 ruoyi-system/src/main/java/com/ruoyi/system/service/TbQichachaService.java            |   16 +++++
 ruoyi-applet/src/main/java/com/ruoyi/web/controller/system/UserController.java        |   23 +++++--
 ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/WxLoginController.java        |    2 
 ruoyi-applet/src/main/java/com/ruoyi/web/controller/system/UserAddressController.java |    1 
 ruoyi-framework/src/main/java/com/ruoyi/framework/config/ServerConfig.java            |    2 
 ruoyi-system/src/main/resources/mapper/system/TbQichachaMapper.xml                    |   12 ++++
 ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TbQichachaServiceImpl.java   |   21 +++++++
 ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/TokenService.java       |   19 ++++++
 ruoyi-system/src/main/java/com/ruoyi/system/model/TbQichacha.java                     |   41 +++++++++++++
 ruoyi-applet/src/main/java/com/ruoyi/web/controller/system/CompanyController.java     |   18 +++++
 11 files changed, 160 insertions(+), 12 deletions(-)

diff --git a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/WxLoginController.java b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/WxLoginController.java
index 4a16eb7..eebaf23 100644
--- a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/WxLoginController.java
+++ b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/api/WxLoginController.java
@@ -111,7 +111,7 @@
         return ajax;
     }
 
-    @ApiOperation(value = "通过code获得openid,获取用户信息",tags = {"登录模块"})
+    @ApiOperation(value = "微信登录 通过code获得openid,获取用户信息",tags = {"登录模块"})
     @PostMapping("/openIdByJsCode")
     public AjaxResult openIdByJsCode(@RequestBody AppletUserEncrypteData data) {
         log.info("<<<<<<<<换取openid开始<<<<<<<<:{}", data.getCode());
diff --git a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/system/CompanyController.java b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/system/CompanyController.java
index e74f124..484c291 100644
--- a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/system/CompanyController.java
+++ b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/system/CompanyController.java
@@ -1,12 +1,17 @@
 package com.ruoyi.web.controller.system;
 
 
+import cn.hutool.core.map.MapUtil;
+import cn.hutool.http.HttpRequest;
+import cn.hutool.http.HttpResponse;
+import cn.hutool.http.HttpUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.common.core.domain.BasePage;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.domain.model.LoginUser;
 import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.common.utils.http.HttpUtils;
 import com.ruoyi.framework.web.service.TokenService;
 import com.ruoyi.system.dto.*;
 import com.ruoyi.system.model.*;
@@ -26,6 +31,7 @@
 
 import javax.validation.Valid;
 import java.util.Date;
+import java.util.HashMap;
 import java.util.List;
 
 @Slf4j
@@ -76,7 +82,7 @@
         return R.ok(page1);
     }
 
-    @ApiOperation(value = "获取许可证信息",tags = {"发布模块"})
+    @ApiOperation(value = "获取公司类型信息",tags = {"发布模块"})
     @GetMapping("/getCompanyTypeList")
     public R<Page<TbCompanyType>> getCompanyTypeList(BasePage page) {
         Page<TbCompanyType> page1 = companyTypeService.page(new Page<>(page.getPageNum(),page.getPageSize()),new LambdaQueryWrapper<TbCompanyType>().eq(TbCompanyType::getDelFlag,0).orderByDesc(TbCompanyType::getOrderNum));
@@ -216,6 +222,16 @@
     }
 
 
+    public static void main(String[] args) {
+        HttpRequest post = HttpUtil.createPost("https://shuimui.szsmjr.com/index/index/result");
+        HashMap<String, String> stringStringHashMap = new HashMap<>();
+        stringStringHashMap.put("Origin","https://shuimui.szsmjr.com");
+        post.addHeaders(stringStringHashMap);
+        post.body("{\"sn\":\""+"ZZD20250321019744801521301"+"\"}");
+        HttpResponse execute = post.execute();
+        System.out.println(execute.body());
+    }
+
 
 
 
diff --git a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/system/UserAddressController.java b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/system/UserAddressController.java
index e0abf1e..384150a 100644
--- a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/system/UserAddressController.java
+++ b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/system/UserAddressController.java
@@ -56,6 +56,7 @@
         LoginUser loginUser = tokenService.getLoginUser();
         Long userId = loginUser.getUserId();
         tbAddress.setUserId(userId.toString());
+        tbAddress.setIsDelete(0);
         addressService.saveOrUpdate(tbAddress);
         return R.ok();
     }
diff --git a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/system/UserController.java b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/system/UserController.java
index c224b41..7352939 100644
--- a/ruoyi-applet/src/main/java/com/ruoyi/web/controller/system/UserController.java
+++ b/ruoyi-applet/src/main/java/com/ruoyi/web/controller/system/UserController.java
@@ -22,6 +22,7 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
+import javax.servlet.http.HttpServletRequest;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.concurrent.TimeUnit;
@@ -48,17 +49,15 @@
     @PostMapping("/updateUserInfo")
     public R<?> updateUserInfo(String avatar,String username) {
         LoginUser loginUser = tokenService.getLoginUser();
-        if (StringUtils.isBlank(avatar)) {
-            return R.fail("头像不能为空");
-        }
-        if (StringUtils.isBlank(username)) {
-            return R.fail("姓名不能为空");
-        }
         Long userId = loginUser.getUserId();
 
         TbUser user = userService.getById(userId);
-        user.setUserName(username);
-        user.setAvatar(avatar);
+        if(StringUtils.isNotEmpty(username)) {
+            user.setUserName(username);
+        }
+        if(StringUtils.isNotEmpty(avatar)){
+            user.setAvatar(avatar);
+        }
         userService.updateById(user);
         return R.ok();
     }
@@ -125,4 +124,12 @@
         return R.ok(content);
     }
 
+
+    @ApiOperation(value = "退出登录",tags = {"用户模块"})
+    @PostMapping("/quit")
+    public R<String> quit(HttpServletRequest request) {
+        tokenService.quitLogin(request);
+        return R.ok();
+    }
+
 }
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ServerConfig.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ServerConfig.java
index b5b7de3..c155373 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ServerConfig.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/config/ServerConfig.java
@@ -10,7 +10,7 @@
  * @author ruoyi
  */
 @Component
-public class ServerConfig
+public class    ServerConfig
 {
     /**
      * 获取完整的请求路径,包括:域名,端口,上下文访问路径
diff --git a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/TokenService.java b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/TokenService.java
index 206c1a4..31e73bb 100644
--- a/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/TokenService.java
+++ b/ruoyi-framework/src/main/java/com/ruoyi/framework/web/service/TokenService.java
@@ -58,6 +58,20 @@
     @Autowired
     private RedisCache redisCache;
 
+
+    /**
+     * 退出登录
+     *
+     */
+    public void quitLogin(HttpServletRequest request)
+    {
+        String token = getToken(request);
+        if (StringUtils.isNotEmpty(token)){
+            delLoginUser(token);
+        }
+
+    }
+
     /**
      * 获取用户身份信息
      *
@@ -149,7 +163,10 @@
     {
         if (StringUtils.isNotEmpty(token))
         {
-            String userKey = getTokenKey(token);
+            Claims claims = parseToken(token);
+            // 解析对应的权限以及用户信息
+            String uuid = (String) claims.get(Constants.LOGIN_USER_KEY);
+            String userKey = getTokenKey(uuid);
             redisCache.deleteObject(userKey);
         }
     }
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/mapper/TbQichachaMapper.java b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/TbQichachaMapper.java
new file mode 100644
index 0000000..bca8f47
--- /dev/null
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/mapper/TbQichachaMapper.java
@@ -0,0 +1,17 @@
+package com.ruoyi.system.mapper;
+
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.system.model.TbQichacha;
+
+/**
+ * <p>
+ * 企查查3方接口调用表 Mapper 接口
+ * </p>
+ *
+ * @author administrator
+ * @since 2025-06-04
+ */
+public interface TbQichachaMapper extends BaseMapper<TbQichacha> {
+
+}
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/model/TbQichacha.java b/ruoyi-system/src/main/java/com/ruoyi/system/model/TbQichacha.java
new file mode 100644
index 0000000..0cb752a
--- /dev/null
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/model/TbQichacha.java
@@ -0,0 +1,41 @@
+package com.ruoyi.system.model;
+
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.extension.activerecord.Model;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import java.util.Date;
+
+/**
+ * <p>
+ * 企查查3方接口调用表
+ * </p>
+ *
+ * @author administrator
+ * @since 2025-06-04
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("tb_qichacha")
+public class TbQichacha extends Model<TbQichacha> {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+    /**
+     * 1基础 2异常
+     */
+    private Integer type;
+
+    private Date time;
+
+
+
+}
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/TbQichachaService.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/TbQichachaService.java
new file mode 100644
index 0000000..f3020b0
--- /dev/null
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/TbQichachaService.java
@@ -0,0 +1,16 @@
+package com.ruoyi.system.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.system.model.TbQichacha;
+
+/**
+ * <p>
+ * 企查查3方接口调用表 服务类
+ * </p>
+ *
+ * @author administrator
+ * @since 2025-06-04
+ */
+public interface TbQichachaService extends IService<TbQichacha> {
+
+}
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TbQichachaServiceImpl.java b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TbQichachaServiceImpl.java
new file mode 100644
index 0000000..4c58721
--- /dev/null
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/TbQichachaServiceImpl.java
@@ -0,0 +1,21 @@
+package com.ruoyi.system.service.impl;
+
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.system.mapper.TbQichachaMapper;
+import com.ruoyi.system.model.TbQichacha;
+import com.ruoyi.system.service.TbQichachaService;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 企查查3方接口调用表 服务实现类
+ * </p>
+ *
+ * @author administrator
+ * @since 2025-06-04
+ */
+@Service
+public class TbQichachaServiceImpl extends ServiceImpl<TbQichachaMapper, TbQichacha> implements TbQichachaService {
+
+}
diff --git a/ruoyi-system/src/main/resources/mapper/system/TbQichachaMapper.xml b/ruoyi-system/src/main/resources/mapper/system/TbQichachaMapper.xml
new file mode 100644
index 0000000..0c259e9
--- /dev/null
+++ b/ruoyi-system/src/main/resources/mapper/system/TbQichachaMapper.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.system.mapper.TbQichachaMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.ruoyi.system.model.TbQichacha">
+        <id column="id" property="id" />
+        <result column="type" property="type" />
+        <result column="time" property="time" />
+    </resultMap>
+
+</mapper>

--
Gitblit v1.7.1