package com.zy.asrs.wms.system.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.zy.asrs.common.domain.enums.LoginSystemType; import com.zy.asrs.wms.common.domain.BaseParam; import com.zy.asrs.wms.system.entity.Role; import com.zy.asrs.wms.system.entity.User; import com.zy.asrs.wms.system.entity.UserLogin; import com.zy.asrs.wms.system.service.UserLoginService; import com.zy.asrs.wms.system.service.UserRoleService; import com.zy.asrs.wms.system.service.UserService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.core.Authentication; import org.springframework.security.core.context.SecurityContextHolder; import java.util.List; import java.util.Map; /** * Created by vincent on 1/30/2024 */ public class BaseController { @Autowired private UserLoginService userLoginService; @Autowired private UserRoleService userRoleService; @Autowired private UserService userService; public User getLoginUser() { try { Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); if (authentication != null) { Object object = authentication.getPrincipal(); if (object instanceof User) { return (User) object; } if(object instanceof UserLogin) { UserLogin userLogin = (UserLogin) object; User user = userService.superGetById(userLogin.getUserId()); return user; } } } catch (Exception e) { System.out.println(e.getMessage()); } return null; } public Long getLoginUserId() { User loginUser = getLoginUser(); return loginUser == null ? null : loginUser.getId(); } public Long getHostId() { User loginUser = getLoginUser(); return loginUser.getHostId(); } public T buildParam(Map map, Class clz) { T t = null; try { t = clz.getDeclaredConstructor().newInstance(); t.syncMap(map); } catch (Exception e) { e.printStackTrace(); } return t; } }