SalaryGroupVO.java 2.17 KB
package cn.fw.morax.domain.vo.salary;

import cn.fw.morax.domain.db.salary.SalaryGroup;
import cn.fw.morax.domain.enums.SettingStatusEnum;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;

import java.time.LocalDate;
import java.util.List;

/**
 * @author : kurisu
 * @date : 2022-4-6
 * @desc : 薪酬组配置
 */
@Data
public class SalaryGroupVO {
    /**
     * 主键id
     */
    private Long id;
    /**
     * 名称
     */
    private String name;
    /**
     * 岗位id
     */
    private Long postId;
    /**
     * 岗位名称
     */
    private String postName;
    /**
     * 适用门店ids
     */
    private List<Long> shopIds;
    /**
     * 适用门店名称
     */
    private List<String> shopNames;
    /**
     * 生效时间
     */
    private LocalDate beginTime;
    /**
     * 调整原因
     */
    private String reason;
    /**
     * 附件ids
     */
    private List<String> attachment;
    /**
     * 状态;1:审批中 2:待生效 3:生效中 4:已失效
     */
    private SettingStatusEnum status;
    /**
     * 集团id
     */
    private Long groupId;
    /**
     * 包薪酬项数量;只统计可配置的的项目数
     */
    private Integer projectNum;

    /**
     * 薪酬组薪酬项目
     */
    private List<SalaryGroupProjectVO> projects;

    public static SalaryGroupVO convertSalaryGroup(SalaryGroup salaryGroup) {
        SalaryGroupVO salaryGroupVo = new SalaryGroupVO();
        salaryGroupVo.setId(salaryGroup.getId());
        salaryGroupVo.setName(salaryGroup.getName());
        salaryGroupVo.setPostId(salaryGroup.getPostId());
        salaryGroupVo.setPostName(salaryGroup.getPostName());
        salaryGroupVo.setShopIds(salaryGroup.getShopIds());
        salaryGroupVo.setShopNames(salaryGroup.getShopNames());
        salaryGroupVo.setBeginTime(salaryGroup.getBeginTime());
        salaryGroupVo.setReason(salaryGroup.getReason());
        salaryGroupVo.setAttachment(salaryGroup.getAttachment());
        salaryGroupVo.setStatus(salaryGroup.getStatus());
        salaryGroupVo.setGroupId(salaryGroup.getGroupId());
        salaryGroupVo.setProjectNum(salaryGroup.getProjectNum());
        return salaryGroupVo;
    }
}