123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161 |
- package com.gyee.power.fitting.service.auth;
- import cn.hutool.core.bean.BeanUtil;
- import com.gyee.power.fitting.common.config.StringUtils;
- import com.gyee.power.fitting.common.spring.CacheContext;
- import com.gyee.power.fitting.model.ProBasicEquipment;
- import com.gyee.power.fitting.model.ProBasicPowerstation;
- import com.gyee.power.fitting.model.ProBasicWeatherStation;
- import com.gyee.power.fitting.model.custom.TokenVo;
- import com.gyee.power.fitting.service.ISysUserService;
- import org.springframework.stereotype.Service;
- import javax.annotation.Resource;
- import javax.servlet.http.HttpServletRequest;
- import java.util.ArrayList;
- import java.util.List;
- import java.util.Map;
- import java.util.concurrent.ConcurrentHashMap;
- @Service
- public class TokenService {
- @Resource
- private ISysUserService sysUserService;
- public static Map<String, List<ProBasicEquipment>> sessionWtMap = new ConcurrentHashMap<>();
- public static Map<String, List<ProBasicPowerstation>> sessionWpMap = new ConcurrentHashMap<>();
- public static Map<String, List<ProBasicWeatherStation>> sessionWeMap = new ConcurrentHashMap<>();
- public static Map<String, TokenVo> sessionMap = new ConcurrentHashMap<>();
- public List<ProBasicEquipment> getWtls(HttpServletRequest request) {
- String token = request.getHeader("token");
- String userId = request.getHeader("userId");
- List<ProBasicEquipment> wtlist = new ArrayList<>();
- if (StringUtils.notEmp(token) && StringUtils.notEmp(userId)) {
- if (sessionMap.containsKey(token) && !sessionWtMap.containsKey(token)) {
- List<String> depls = sysUserService.getUserByuserId(Long.valueOf(userId));
- if (!depls.isEmpty()) {
- String depId = depls.get(0);
- if (CacheContext.wpwtmap.containsKey(depId)) {
- List<ProBasicEquipment> wtls = CacheContext.wpwtmap.get(depId);
- for (ProBasicEquipment wt : wtls) {
- ProBasicEquipment newWt = new ProBasicEquipment();
- BeanUtil.copyProperties(wt, newWt);
- wtlist.add(newWt);
- }
- } else if (CacheContext.cmwtlsmap.containsKey(depId)) {
- List<ProBasicEquipment> wtls = CacheContext.cmwtlsmap.get(depId);
- for (ProBasicEquipment wt : wtls) {
- ProBasicEquipment newWt = new ProBasicEquipment();
- BeanUtil.copyProperties(wt, newWt);
- wtlist.add(newWt);
- }
- } else if (CacheContext.rgwtlsmap.containsKey(depId)) {
- List<ProBasicEquipment> wtls = CacheContext.rgwtlsmap.get(depId);
- for (ProBasicEquipment wt : wtls) {
- ProBasicEquipment newWt = new ProBasicEquipment();
- BeanUtil.copyProperties(wt, newWt);
- wtlist.add(newWt);
- }
- } else if (depId.equals("0")) {
- for (ProBasicEquipment wt : CacheContext.wtls) {
- ProBasicEquipment newWt = new ProBasicEquipment();
- BeanUtil.copyProperties(wt, newWt);
- wtlist.add(newWt);
- }
- }
- }
- sessionWtMap.put(token, wtlist);
- } else if (sessionMap.containsKey(token) && sessionWtMap.containsKey(token)) {
- wtlist = sessionWtMap.get(token);
- }
- } else {
- for (ProBasicEquipment wt : CacheContext.wtls) {
- ProBasicEquipment newWt = new ProBasicEquipment();
- BeanUtil.copyProperties(wt, newWt);
- wtlist.add(newWt);
- }
- }
- return wtlist;
- }
- public List<ProBasicPowerstation> getWpls(HttpServletRequest request) {
- String token = request.getHeader("token");
- String userId = request.getHeader("userId");
- List<ProBasicPowerstation> wplist = new ArrayList<>();
- if (StringUtils.notEmp(token) && StringUtils.notEmp(token)) {
- if (sessionMap.containsKey(token) && !sessionWpMap.containsKey(token)) {
- List<String> depls = sysUserService.getUserByuserId(Long.valueOf(userId));
- if (!depls.isEmpty()) {
- String depId = depls.get(0);
- if (CacheContext.wpmap.containsKey(depId)) {
- ProBasicPowerstation wp = CacheContext.wpmap.get(depId);
- ProBasicPowerstation newWp = new ProBasicPowerstation();
- BeanUtil.copyProperties(wp, newWp);
- wplist.add(newWp);
- } else if (CacheContext.cpwpmap.containsKey(depId)) {
- List<ProBasicPowerstation> wpls = CacheContext.cpwpmap.get(depId);
- for (ProBasicPowerstation wp : wpls) {
- ProBasicPowerstation newWp = new ProBasicPowerstation();
- BeanUtil.copyProperties(wp, newWp);
- wplist.add(newWp);
- }
- }else if (CacheContext.rgwpmap.containsKey(depId)) {
- List<ProBasicPowerstation> rgcpls = CacheContext.rgwpmap.get(depId);
- for (ProBasicPowerstation cp : rgcpls) {
- List<ProBasicPowerstation> wpls = CacheContext.rgwpmap.get(cp.getId());
- for (ProBasicPowerstation wp : wpls) {
- ProBasicPowerstation newWp = new ProBasicPowerstation();
- BeanUtil.copyProperties(wp, newWp);
- wplist.add(newWp);
- }
- }
- } else if (depId.equals("0")) {
- List<ProBasicPowerstation> wpls = CacheContext.wpls;
- for (ProBasicPowerstation wp : wpls) {
- ProBasicPowerstation newWp = new ProBasicPowerstation();
- BeanUtil.copyProperties(wp, newWp);
- wplist.add(newWp);
- }
- }
- }
- sessionWpMap.put(token, wplist);
- } else if (sessionMap.containsKey(token) && sessionWpMap.containsKey(token)) {
- wplist = sessionWpMap.get(token);
- }
- } else {
- List<ProBasicPowerstation> wpls = CacheContext.wpls;
- for (ProBasicPowerstation wp : wpls) {
- ProBasicPowerstation newWp = new ProBasicPowerstation();
- BeanUtil.copyProperties(wp, newWp);
- wplist.add(newWp);
- }
- }
- return wplist;
- }
- }
|