package com.engine.salary.entity.config;

import com.engine.salary.entity.salaryarchive.config.ArchiveFieldConfig;
import com.engine.salary.entity.salaryitem.config.SalaryItemAllConfig;
import com.engine.salary.entity.taxagent.config.TaxAgentConfig;
import com.engine.salary.entity.taxagent.po.TaxAgentBasePO;
import com.engine.salary.sys.config.SysConfig;
import com.thoughtworks.xstream.annotations.XStreamAlias;
import com.thoughtworks.xstream.annotations.XStreamImplicit;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.List;

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@XStreamAlias("SalaryConfig")
public class SalaryConfig {
    //    //版本
//    @XStreamAlias("version")
//    @XStreamAsAttribute
//    private String version;
//
    @XStreamAlias("SysConfig")
    private SysConfig sysConfig;

    //社保方案

    //薪资项目
    @XStreamAlias("SalaryItemConfig")
    private SalaryItemAllConfig salaryItemConfig;

    //字段管理
    @XStreamAlias("ArchiveFieldConfig")
    private ArchiveFieldConfig archiveFieldConfig;

    //分权基础设置
    @XStreamAlias("TaxAgentBaseConfig")
    private TaxAgentBasePO taxAgentBaseConfig;

    //扣缴义务人
    @XStreamImplicit
    private List<TaxAgentConfig> taxAgentConfigs;

}
