EquipmentServiceImpl.java 3.55 KB
package com.ruoyi.equipment.service.impl;

import java.util.List;
import java.util.stream.Collectors;

import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.equipment.domain.EquipmentLog;
import com.ruoyi.pojo.equipment.EquipmentOnline;
import com.ruoyi.pojo.vo.EquipmentResponseVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.equipment.mapper.EquipmentMapper;
import com.ruoyi.equipment.domain.Equipment;
import com.ruoyi.equipment.service.IEquipmentService;

import javax.annotation.Resource;

/**
 * 设备信息Service业务层处理
 *
 * @author guzijian
 * @date 2023-07-05
 */
@Service
public class EquipmentServiceImpl implements IEquipmentService {
    @Autowired
    private EquipmentMapper equipmentMapper;

    @Resource
    private EquipmentOnline client;

    /**
     * 查询设备信息
     *
     * @param id 设备信息主键
     * @return 设备信息
     */
    @Override
    public Equipment selectEquipmentById(Long id) {
        return equipmentMapper.selectEquipmentById(id);
    }

    /**
     * 查询设备信息列表
     *
     * @param equipment 设备信息
     * @return 设备信息
     */
    @Override
    public List<Equipment> selectEquipmentList(Equipment equipment) {
        return equipmentMapper.selectEquipmentList(equipment);
    }

    /**
     * 新增设备信息
     *
     * @param equipment 设备信息
     * @return 结果
     */
    @Override
    public int insertEquipment(Equipment equipment) {
        equipment.setCreateTime(DateUtils.getNowDate());
        equipment.setCreateBy(SecurityUtils.getUsername());
        if (!StringUtils.isNotEmpty(equipment.getDeviceId())) {
            throw new RuntimeException("设备号不能为空");
        }
        return equipmentMapper.insertEquipment(equipment);
    }

    /**
     * 修改设备信息
     *
     * @param equipment 设备信息
     * @return 结果
     */
    @Override
    public int updateEquipment(Equipment equipment) {
        equipment.setUpdateTime(DateUtils.getNowDate());
        equipment.setUpdateBy(SecurityUtils.getUsername());
        return equipmentMapper.updateEquipment(equipment);
    }

    /**
     * 批量删除设备信息
     *
     * @param ids 需要删除的设备信息主键
     * @return 结果
     */
    @Override
    public int deleteEquipmentByIds(Long[] ids) {
        return equipmentMapper.deleteEquipmentByIds(ids);
    }

    /**
     * 删除设备信息信息
     *
     * @param id 设备信息主键
     * @return 结果
     */
    @Override
    public int deleteEquipmentById(Long id) {
        return equipmentMapper.deleteEquipmentById(id);
    }

    @Override
    public List<EquipmentLog> queryLog(EquipmentLog log) {
        return equipmentMapper.queryLog(log);
    }

    @Override
    public List<EquipmentResponseVo> getEquipmentAll() {
        List<Equipment> list = equipmentMapper.selectEquipmentList(null);

        return list.stream().map(item -> {
            EquipmentResponseVo vo = new EquipmentResponseVo();
            vo.setLabel(item.getDeviceId());
            vo.setValue(item.getDeviceId());
            return vo;
        }).collect(Collectors.toList());
    }

    @Override
    public List<String> getEquipmentSiteName() {
        List<Equipment> list = equipmentMapper.selectEquipmentList(null);
        List<String> equipment = list.stream().map(Equipment::getSiteName).distinct().collect(Collectors.toList());
        return equipment;
    }
}