jinpengyong
2023-12-05 ac326c1db9de13a81d8b807276689df88486307d
screen-api/src/main/java/com/moral/api/service/impl/SysDictTypeServiceImpl.java
@@ -1,10 +1,22 @@
package com.moral.api.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.moral.api.config.Interceptor.UserHelper;
import com.moral.api.entity.SysDictData;
import com.moral.api.entity.SysDictType;
import com.moral.api.mapper.SysDictTypeMapper;
import com.moral.api.pojo.enums.SysDictTypeEnum;
import com.moral.api.pojo.vo.user.QxUser;
import com.moral.api.service.SysDictTypeService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
/**
 * <p>
@@ -17,4 +29,49 @@
@Service
public class SysDictTypeServiceImpl extends ServiceImpl<SysDictTypeMapper, SysDictType> implements SysDictTypeService {
    @Autowired
    private SysDictTypeMapper sysDictTypeMapper;
    @Override
    public List<SysDictData> listAll(String code, String dataKey) {
        List<SysDictData> listAll = this.baseMapper.selectCodeList(code,dataKey);
        return listAll;
    }
    @Override
    public SysDictData listOne(String code, String dataKey) {
        List<SysDictData> list = listAll(code,dataKey);
        SysDictData sysDictData = new SysDictData();
        if (CollectionUtils.isNotEmpty(list)) {
            return list.get(0);
        }
        sysDictData.setDataValue("0");
        return sysDictData;
    }
    @Override
    public List<SysDictData> listWindAll(String code, List<String> dataKey) {
        List<SysDictData> listAll = this.baseMapper.selectIdList(code,dataKey);
        return listAll;
    }
    @Override
    public List<Integer> dateValueList(String code) {
        QxUser user = UserHelper.getCurrentUser();
        List<Integer> integerList = new ArrayList<>();
        SysDictData listSys = this.listOne(code,user.getUserId().toString());
        if(listSys.getDataValue().contains(",")){
            List<Integer> resultStr = Arrays.asList(listSys.getDataValue().split(",")).stream().map(Integer::parseInt).collect(Collectors.toList());
            integerList.addAll(resultStr);
        }else {
            Integer dataValue = Objects.nonNull(listSys.getDataValue())?Integer.parseInt(listSys.getDataValue()):0;
            integerList.add(dataValue);
        }
        return integerList;
    }
    @Override
    public SysDictType slectFind(String name) {
        SysDictType sysDictType = this.baseMapper.selectFind(name);
        return sysDictType;
    }
}