Helius
2022-05-27 4351e71d782741143a98f86f6648acd16689165f
zq-erp/src/main/java/com/matrix/system/app/action/ApiUsersAction.java
@@ -1,24 +1,28 @@
package com.matrix.system.app.action;
import com.matrix.component.redis.RedisClient;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.util.StrUtil;
import com.matrix.core.constance.MatrixConstance;
import com.matrix.core.pojo.AjaxResult;
import com.matrix.core.tools.DateUtil;
import com.matrix.core.tools.WebUtil;
import com.matrix.system.app.dto.*;
import com.matrix.system.app.mapper.SysBeauticianStateMapper;
import com.matrix.system.app.dto.BeauticianDto;
import com.matrix.system.app.dto.ModifyUserDto;
import com.matrix.system.app.dto.PwdModifyDto;
import com.matrix.system.app.dto.UsersQueryDto;
import com.matrix.system.app.mapper.SysUsersMapper;
import com.matrix.system.app.mapper.SysWorkBeatuistaffMapper;
import com.matrix.system.app.vo.BeauticianVo;
import com.matrix.system.app.vo.UserAchieveVo;
import com.matrix.system.app.vo.UserInfoDetailVo;
import com.matrix.system.common.bean.SysUsers;
import com.matrix.system.common.init.LocalCache;
import com.matrix.system.common.interceptor.ApiUserLoginInterceptor;
import com.matrix.system.common.interceptor.HostInterceptor;
import com.matrix.system.common.service.SysUsersService;
import com.matrix.system.common.tools.DataAuthUtil;
import com.matrix.system.common.tools.PasswordUtil;
import com.matrix.system.hive.action.BaseController;
import com.matrix.system.hive.bean.SysBeauticianState;
import com.matrix.system.hive.bean.SysWorkBeatuistaff;
import com.matrix.system.hive.service.AchieveNewService;
import com.matrix.system.hive.service.SysWorkBeatuistaffService;
@@ -32,11 +36,9 @@
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.io.UnsupportedEncodingException;
import java.security.NoSuchAlgorithmException;
import java.util.ArrayList;
import java.util.List;
/**
@@ -60,8 +62,6 @@
    @Autowired
    private SysWorkBeatuistaffService sysWorkBeatuistaffService;
    @Autowired
    private RedisClient redisClient;
    @Value("${login_private_key}")
    private  String privateKey;
@@ -107,7 +107,24 @@
    @GetMapping(value = "/loginOut")
    public AjaxResult loginOut(HttpServletRequest request) {
        String token=ApiUserLoginInterceptor.resolveToken(request,privateKey);
        redisClient.removeObject(token);
        LocalCache.remove(token);
        return AjaxResult.buildSuccessInstance("退出成功");
    }
    @ApiOperation(value = "小程序退出登陆", notes = "小程序退出登陆")
    @GetMapping(value = "/xcxloginOut/{code}")
    public AjaxResult xcxloginOut(HttpServletRequest request, @PathVariable("code") String code) {
        SysUsers hasBind = sysUsersService.findByOpenId(code, HostInterceptor.getCompanyId());
        if (hasBind != null) {
            if(StrUtil.isNotBlank(hasBind.getOpenIds())) {
                List<String> openIds = StrUtil.split(hasBind.getOpenIds(), ',');
                openIds.remove(code);
                sysUsersService.modifyUserOpenId(CollUtil.join(openIds, ","), hasBind.getSuId());
            }
        }
        String token=ApiUserLoginInterceptor.resolveToken(request,privateKey);
        LocalCache.remove(token);
        return AjaxResult.buildSuccessInstance("退出成功");
    }