package com.engine.salary.entity.salaryBill.param;

import com.engine.salary.common.BaseQueryParam;
import com.engine.salary.exception.SalaryRunTimeException;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

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

/**
 * @Description: 工资单发放信息
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
////"工资单发放信息查询参数")
public class SalarySendDetailListQueryParam extends BaseQueryParam {

//   主键id")
    private Collection<Long> ids;

//   工资单发放Id")
    private Long salarySendId;

    /**
     * 工资核算id
     */
//    @JsonIgnore
    private Long salaryAccountingId;

//   关键字（姓名）")
    private String keyword;

//   姓名")
    private String username;
    private Long userId;


//   个税扣缴义务人的主键id")
    private Long taxAgent;

//   部门id")
    private List<Long> departmentIds;
    private String departmentIdStr;

    //   分部id
    private List<Long> subCompanyIds;
    private String subCompanyIdStr;

//   岗位id")
    private Long position;

//   状态")
    private String userstatus;

//   入职日期")
    private List<LocalDate> hiredate;

//   合并计税")
    private Boolean mergeCountTax;

    /**
     * 发送状态
     */
//    @JsonIgnore
    private List<Integer> sendStatuss;

    public static String checkParam(SalarySendDetailListQueryParam saveParam) {
        if (saveParam.getSalarySendId() == null) {
            throw new SalaryRunTimeException("工资单发放Id必传");
        }
        return "";
    }
}
