GlobalDriverInfoCache.java 1.35 KB
package com.ruoyi.common.global;

import com.ruoyi.in.domain.SignIn;
import com.ruoyi.pojo.domain.SignInExpand;
import org.springframework.stereotype.Component;

import java.util.*;
import java.util.concurrent.ConcurrentHashMap;

/**
 * @author 20412
 */
@Component
public class GlobalDriverInfoCache {
    /**
     * 签到次数汇总
     */
    private final ConcurrentHashMap<String, List<SignInExpand>> userCurrentMap = new ConcurrentHashMap<>();

    /**
     * 驾驶员签到成功
     *
     * @param signIn
     */
    public void putDriverSignInSuccess(SignIn signIn) {
        ConcurrentHashMap<String, List<SignInExpand>> userCurrentMap = null;
            if (Objects.isNull(userCurrentMap.get(signIn.getJobCode()))) {
                SignInExpand signInExpand = new SignInExpand();
                signInExpand.setJobCode(signIn.getJobCode());
                signInExpand.setSignCount(signIn.getId() + ",");
                userCurrentMap.put(signIn.getJobCode(), new ArrayList<>(Arrays.asList(signInExpand)));
            } else {
                SignInExpand signInExpand = new SignInExpand();
                signInExpand.setJobCode(signIn.getJobCode());
                signInExpand.setSignCount(signInExpand.getSignCount() + signIn.getId() + ",");
                userCurrentMap.get(signIn.getJobCode()).add(signInExpand);
            }
        }

    }