package com.zy.asrs.wcs.system.controller; 
 | 
  
 | 
import com.zy.asrs.wcs.common.domain.BaseParam; 
 | 
import com.zy.asrs.wcs.system.entity.User; 
 | 
import org.springframework.security.core.Authentication; 
 | 
import org.springframework.security.core.context.SecurityContextHolder; 
 | 
  
 | 
import java.util.Map; 
 | 
  
 | 
/** 
 | 
 * Created by vincent on 1/30/2024 
 | 
 */ 
 | 
public class BaseController { 
 | 
  
 | 
    public User getLoginUser() { 
 | 
        try { 
 | 
            Authentication authentication = SecurityContextHolder.getContext().getAuthentication(); 
 | 
            if (authentication != null) { 
 | 
                Object object = authentication.getPrincipal(); 
 | 
                if (object instanceof User) { 
 | 
                    return (User) object; 
 | 
                } 
 | 
            } 
 | 
        } 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 == null ? null : loginUser.getHostId(); 
 | 
    } 
 | 
  
 | 
    public <T extends BaseParam> T buildParam(Map<String, Object> map, Class<T> clz) { 
 | 
        T t  = null; 
 | 
        try { 
 | 
            t = clz.getDeclaredConstructor().newInstance(); 
 | 
            t.syncMap(map); 
 | 
        } catch (Exception e) { 
 | 
            e.printStackTrace(); 
 | 
        } 
 | 
        return t; 
 | 
    } 
 | 
  
 | 
} 
 |