package com.ruoyi.alarm.config.service.impl;
|
|
|
|
import com.ruoyi.alarm.config.domain.ArdAlarmTypeConfig;
|
import com.ruoyi.alarm.config.mapper.ArdAlarmTypeConfigMapper;
|
import com.ruoyi.alarm.config.service.IArdAlarmTypeConfigService;
|
import com.ruoyi.common.core.domain.entity.SysDictData;
|
import com.ruoyi.common.utils.DateUtils;
|
import com.ruoyi.common.utils.SecurityUtils;
|
import com.ruoyi.common.utils.uuid.IdUtils;
|
import com.ruoyi.system.mapper.SysDictDataMapper;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
import java.util.List;
|
import java.util.Map;
|
import java.util.Objects;
|
|
|
/**
|
* 报警类型用户关联Service业务层处理
|
*
|
* @author ard
|
* @date 2023-06-21
|
*/
|
@Service
|
public class ArdAlarmTypeConfigServiceImpl implements IArdAlarmTypeConfigService {
|
@Autowired
|
private ArdAlarmTypeConfigMapper ardAlarmTypeConfigMapper;
|
@Autowired
|
private SysDictDataMapper dictDataMapper;
|
/**
|
* 查询报警类型用户关联
|
*
|
* @param id 报警类型用户关联主键
|
* @return 报警类型用户关联
|
*/
|
@Override
|
public ArdAlarmTypeConfig selectArdAlarmTypeConfigById(String id) {
|
return ardAlarmTypeConfigMapper.selectArdAlarmTypeConfigById(id);
|
}
|
|
/**
|
* 查询报警类型用户关联列表
|
*
|
* @param ardAlarmTypeConfig 报警类型用户关联
|
* @return 报警类型用户关联
|
*/
|
@Override
|
public List<ArdAlarmTypeConfig> selectArdAlarmTypeConfigList(ArdAlarmTypeConfig ardAlarmTypeConfig) {
|
return ardAlarmTypeConfigMapper.selectArdAlarmTypeConfigList(ardAlarmTypeConfig);
|
}
|
|
/**
|
* 新增报警类型用户关联
|
*
|
* @param ardAlarmTypeConfig 报警类型用户关联
|
* @return 结果
|
*/
|
@Override
|
public int insertArdAlarmTypeConfig(ArdAlarmTypeConfig ardAlarmTypeConfig) {
|
ardAlarmTypeConfig.setCreateBy(SecurityUtils.getUsername());
|
ardAlarmTypeConfig.setCreateTime(DateUtils.getNowDate());
|
ardAlarmTypeConfig.setUserId(SecurityUtils.getUserId());
|
return ardAlarmTypeConfigMapper.insertArdAlarmTypeConfig(ardAlarmTypeConfig);
|
}
|
|
/**
|
* 修改报警类型用户关联
|
*
|
* @param ardAlarmTypeConfig 报警类型用户关联
|
* @return 结果
|
*/
|
@Override
|
public int updateArdAlarmTypeConfig(ArdAlarmTypeConfig ardAlarmTypeConfig) {
|
return ardAlarmTypeConfigMapper.updateArdAlarmTypeConfig(ardAlarmTypeConfig);
|
}
|
|
/**
|
* 批量删除报警类型用户关联
|
*
|
* @param ids 需要删除的报警类型用户关联主键
|
* @return 结果
|
*/
|
@Override
|
public int deleteArdAlarmTypeConfigByIds(String[] ids) {
|
return ardAlarmTypeConfigMapper.deleteArdAlarmTypeConfigByIds(ids);
|
}
|
|
/**
|
* 删除报警类型用户关联信息
|
*
|
* @param id 报警类型用户关联主键
|
* @return 结果
|
*/
|
@Override
|
public int deleteArdAlarmTypeConfigById(String id) {
|
return ardAlarmTypeConfigMapper.deleteArdAlarmTypeConfigById(id);
|
}
|
/**
|
* 批量报警类型用户关联
|
*
|
* @param configInfo 报警类型列表
|
* @return 结果
|
*/
|
@Override
|
public int insertArdAlarmTypeConfig(Map<String,Object> configInfo) {
|
String userId =(String) configInfo.get("userId");
|
if(userId==null)
|
{
|
return 0;
|
}
|
ardAlarmTypeConfigMapper.deleteArdAlarmTypeConfigByCurrentUserId(userId);
|
List<Integer> commands=(List<Integer>) configInfo.get("commands");
|
if(commands==null)
|
{
|
return 0;
|
}
|
if(commands.size()==0)
|
{
|
return 0;
|
}
|
int resNum=0;
|
for(Integer command :commands)
|
{
|
ArdAlarmTypeConfig config=new ArdAlarmTypeConfig();
|
config.setId(IdUtils.simpleUUID());
|
config.setCommand(command);
|
List<SysDictData> dictDatas = dictDataMapper.selectDictDataByType("alarm_type");
|
SysDictData sysDictData = dictDatas.stream().filter(s -> Objects.equals(s.getDictValue(), command.toString())).findFirst().orElse(null);
|
config.setAlarmType(sysDictData.getDictLabel());
|
config.setUserId(userId);
|
config.setCreateTime(DateUtils.getNowDate());
|
int i = ardAlarmTypeConfigMapper.insertArdAlarmTypeConfig(config);
|
if(i>0)
|
{
|
resNum++;
|
}
|
}
|
return resNum;
|
}
|
}
|