package com.moral.api.pojo.vo.Version; 
 | 
  
 | 
import com.fasterxml.jackson.annotation.JsonInclude; 
 | 
import com.moral.api.entity.Sensor; 
 | 
import com.moral.api.entity.Version; 
 | 
import com.moral.api.pojo.dto.version.VersionDTO; 
 | 
import com.moral.api.pojo.vo.sensor.SensorVO; 
 | 
import com.moral.util.DateUtils; 
 | 
import lombok.Data; 
 | 
import org.springframework.util.ObjectUtils; 
 | 
  
 | 
import java.util.ArrayList; 
 | 
import java.util.Date; 
 | 
import java.util.List; 
 | 
  
 | 
/** 
 | 
 * @ClassName VersionVO 
 | 
 * @Description TODO 
 | 
 * @Author 陈凯裕 
 | 
 * @Date 2021/5/14 15:44 
 | 
 * @Version TODO 
 | 
 **/ 
 | 
@Data 
 | 
@JsonInclude(JsonInclude.Include.NON_EMPTY) 
 | 
public class VersionVO { 
 | 
  
 | 
    private Integer id; 
 | 
  
 | 
    private String name; 
 | 
  
 | 
    private String createTime; 
 | 
  
 | 
    private String updateTime; 
 | 
  
 | 
    private String isDelete; 
 | 
  
 | 
    private String desc; 
 | 
  
 | 
    private List<SensorVO> sensors; 
 | 
  
 | 
    public static VersionVO convert(VersionDTO dto){ 
 | 
        return convertToQueryPage(dto); 
 | 
    } 
 | 
  
 | 
    private static VersionVO convertToQueryPage(VersionDTO dto) { 
 | 
        VersionVO vo = new VersionVO(); 
 | 
        Version version = dto.getVersion(); 
 | 
        Integer id = version.getId(); 
 | 
        String desc = version.getDesc(); 
 | 
        String name = version.getName(); 
 | 
        Date createTime = version.getCreateTime(); 
 | 
        Date updateTime = version.getUpdateTime(); 
 | 
        List<Sensor> sensors = version.getSensors(); 
 | 
        List<SensorVO> sensorVOS = new ArrayList<>(); 
 | 
        if(!ObjectUtils.isEmpty(sensors)){ 
 | 
            for (Sensor sensor : sensors) { 
 | 
                SensorVO sensorVO = convertToSensorVO(sensor); 
 | 
                sensorVOS.add(sensorVO); 
 | 
            } 
 | 
        } 
 | 
        vo.setId(id); 
 | 
        vo.setDesc(desc); 
 | 
        vo.setName(name); 
 | 
        vo.setCreateTime(DateUtils.dateToDateString(createTime,"yyyy-MM-dd")); 
 | 
        vo.setUpdateTime(DateUtils.dateToDateString(updateTime,"yyyy-MM-dd")); 
 | 
        vo.setSensors(sensorVOS); 
 | 
        return vo; 
 | 
    } 
 | 
  
 | 
    private static SensorVO convertToSensorVO(Sensor sensor) { 
 | 
        SensorVO vo = new SensorVO(); 
 | 
        vo.setName(sensor.getName()); 
 | 
        vo.setId(sensor.getId()); 
 | 
        vo.setUnit(sensor.getUnit()); 
 | 
        vo.setUpper(sensor.getUpper()); 
 | 
        vo.setLower(sensor.getLower()); 
 | 
        vo.setUnitKey(sensor.getUnitKey()); 
 | 
        return vo; 
 | 
    } 
 | 
} 
 |