SettingVO.java 1.18 KB
package cn.fw.valhalla.domain.vo.setting;

import cn.fw.valhalla.domain.db.setting.FollowSettingDetail;
import cn.fw.valhalla.domain.enums.SettingTypeEnum;
import lombok.Data;
import lombok.ToString;

import java.util.Objects;

/**
 * @author : kurisu
 * @className : SettingVO
 * @description :
 * @date: 2020-08-14 09:22
 */
@Data
@ToString
public class SettingVO {
    private Long id;
    /**
     * 设置id
     */
    private Long settingId;
    /**
     * 设置类型
     */
    private Integer type;
    /**
     * 值
     */
    private Integer detailValue;
    /**
     * 单位
     */
    private Integer unit;

    public static SettingVO with(FollowSettingDetail detail) {
        if (Objects.isNull(detail)) {
            return null;
        }
        SettingVO vo = new SettingVO();
        vo.setId(detail.getId());
        vo.setDetailValue(detail.getDetailValue());
        if (SettingTypeEnum.REVISE_RATIO.equals(detail.getType())) {
            vo.setDetailValue(detail.getDetailValue() / 100);
        }
        vo.setSettingId(detail.getSettingId());
        vo.setType(detail.getType().getValue());
        vo.setUnit(detail.getUnit().getValue());
        return vo;
    }
}