package com.engine.salary.entity.salaryacct.dto;

import com.cloudstore.eccom.pc.table.WeaTableOperate;
import com.engine.salary.annotation.TableTitle;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

/**
 * 薪资核算列表
 * <p>Copyright: Copyright (c) 2022</p>
 * <p>Company: 泛微软件</p>
 *
 * @author qiantao
 * @version 1.0
 **/
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
//@SalaryTable(
//        value = {
//                @SalaryTableOperate(index = 0, text = "核算", labelId = 94146),
//                @SalaryTableOperate(index = 1, text = "归档", labelId = 92144),
//                @SalaryTableOperate(index = 2, text = "查看", labelId = 90821, outer = false),
//                @SalaryTableOperate(index = 3, text = "删除", labelId = 87061, outer = false),
//                @SalaryTableOperate(index = 4, text = "操作日志", labelId = 87775, outer = false),
//                @SalaryTableOperate(index = 5, text = "重新核算", labelId = 98820)
//        }, tableType = WeaTableTypeEnum.NONE, pageUid = "salaryAcctRecordList"
//)
public class SalaryAcctRecordListDTO {

    //主键id
    private Long id;

    @TableTitle(title = "个税扣缴义务人", dataIndex = "taxAgentName", key = "taxAgentName")
    private String taxAgentName;

    @TableTitle(title = "薪资账套", dataIndex = "salarySobName", key = "salarySobName")
    private String salarySobName;

    @TableTitle(title = "薪资所属月", dataIndex = "salaryMonth", key = "salaryMonth")
    private String salaryMonth;

    @TableTitle(title = "是否回算过", dataIndex = "backCalcStatus", key = "backCalcStatus")
    private Integer backCalcStatus;

    @TableTitle(title = "核算次数", dataIndex = "acctTimes", key = "acctTimes")
    private Integer acctTimes;

    //核算次数是否显示
    private boolean acctTimesViable;

    @TableTitle(title = "税款所属期", dataIndex = "taxCycle", key = "taxCycle")
    private String taxCycle;

    @TableTitle(title = "状态", dataIndex = "status", key = "status")
    private String status;


    @TableTitle(title = "核算人数", dataIndex = "employeeSize", key = "employeeSize")
    private Long employeeSize;

    @TableTitle(title = "核算人", dataIndex = "accountantName", key = "accountantName")
    private String accountantName;

    @TableTitle(title = "最后操作时间", dataIndex = "updateTime", key = "updateTime")
    private String updateTime;

    @TableTitle(title = "备注", dataIndex = "description", key = "description")
    private String description;

    @TableTitle(title = "操作", dataIndex = "operate", key = "operate")
    private List<WeaTableOperate> operate;
}
