weaver-hrm-salary/src/com/engine/salary/remote/tax/response/calculate/GetASynIndividualIncomeTaxF...

788 lines
29 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package com.engine.salary.remote.tax.response.calculate;
import com.engine.salary.annotation.TaxField;
import com.engine.salary.entity.taxpayment.response.BaseResponse;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.math.BigDecimal;
import java.util.List;
@Data
@EqualsAndHashCode(callSuper = true)
public class GetASynIndividualIncomeTaxFeedbackResponse extends BaseResponse {
/**
* 返回数据
*/
private Body body;
@Data
public static class Body {
/**
* 企业名称 必填:是
*/
private String qymc;
/**
* 税号 必填:是
*/
private String nsrsbh;
/**
* 地区编号 必填:是 6位行政区划代码,精确到市级例如440100,参考省市区编码
*/
private String areaid;
/**
* 部门编号 必填:是
*/
private String bmbh;
/**
* 部门名称 必填:否
*/
private String bmmc;
/**
* 算税月份 必填:是
*/
private String skssq;
/**
* 综合所得 必填:是 见综合所得计算结果
*/
private zhsd zhsd;
// /**
// * 分类所得 必填:是 见分类所得计算结果
// */
// private flsd flsd;
/**
* 非居民所得 必填:是 见非居民所得计算结果
*/
private fjmsd fjmsd;
// /**
// * 限售股所得 必填:是 见限售股所得计算结果
// */
// private xsgsd xsgsd;
// /**
// * 人员申报失败列表 必填:是 参考人员代报结果对象
// */
// private rysbsblb rysbsblb;
@Data
public static class zhsd {
/**
* 人员代代报失败列表 参考人员代报结果对象
*/
private List<rysb> rysbsblb;
/**
* 正常工资薪金算税结果对象 参考综合所得算税结果对象
*/
private ssjgdx zcgzxj;
/**
* 全年一次性奖金收入算税结果对象 参考综合所得算税结果对象
*/
private ssjgdx qnycxjjsslb;
/**
* 稿酬所得算税结果对象 参考综合所得算税结果对象
*/
private ssjgdx gcsdlb;
/**
* 一般劳务报酬算税结果对象 参考综合所得算税结果对象
*/
private ssjgdx lwbclb;
/**
* 解除劳动合同一次性补偿金列表 参考综合所得算税结果对象
*/
private ssjgdx jcldhtycxbcjlb;
/**
* 保险营销员薪金算税结果对象 参考综合所得算税结果对象
*/
private ssjgdx bxyxy;
/**
* 证券经纪人薪金算税结果对象 参考综合所得算税结果对象
*/
private ssjgdx zqjjr;
/**
* 特许权算税结果对象 参考综合所得算税结果对象
*/
private ssjgdx txq;
/**
* 个人股权激励结果对象 参考综合所得算税结果对象
*/
private ssjgdx grgqjl;
/**
* 企业年金结果对象 参考综合所得算税结果对象
*/
private ssjgdx qynj;
/**
* 内退一次性补偿金 参考综合所得算税结果对象
*/
private ssjgdx ntycxbcjlb;
/**
* 其他连续劳务报酬 参考综合所得算税结果对象
*/
private ssjgdx qtlxlwbc;
/**
* 其他非连续劳务报酬 参考综合所得算税结果对象
*/
private ssjgdx qtflxlwbc;
/**
* 提前退休一次性补贴 参考综合所得算税结果对象
*/
private ssjgdx tqtxycxbt;
/**
* 央企负责人绩效薪金延期兑现收入和任期奖励 参考综合所得算税结果对象
*/
private ssjgdx yqfzrsrhjl;
/**
* 法律援助劳务报酬 参考综合所得算税结果对象
*/
private ssjgdx flyzlwbclb;
@Data
public static class rysb {
/**
* 姓名
*/
private String xm;
/**
* 证件类型名称
*/
private String zzlx;
/**
* 证件号码
*/
private String zzhm;
/**
* 代报状态 1 待报送 2 代报中 3 代报失败 4 代报成功
*/
private String sbzt;
/**
* 人员认证状态
*/
private String rzzt;
/**
* 失败原因
*/
private String sbyy;
/**
* 专项代报状态
*/
private String clzt;
/**
* 专项代报结果原因
*/
private String cljgms;
}
@Data
public static class ssjgdx {
/**
* 综合算税成功列表 参考综合所得输出结果报文
*/
private List<result> sscglb;
/**
* 综合算税失败列表 参考综合所得输出结果报文
*/
private List<result> sssblb;
/**
* 综合算税失败原因列表 参考算税失败原因对象
*/
private List<sssbyy> sssbyylb;
/**
* 参与综合算税总人数
*/
private int sszrs;
/**
* 综合算税失败总人数
*/
private int sssbrs;
/**
* 年金上限
*/
private BigDecimal njsx;
/**
* 住房公积金上限
*/
private BigDecimal zfgjjsx;
/**
* 年平均工资
*/
private BigDecimal npjgz;
/**
* 企业上月是否已申报 0:上月未申报 1:上月已申报 2:上上月未申报
*/
private String qysysfysb;
@Data
public static class result {
/**
* 是否明细申报 必填:否 是或者否
*/
private String sfmxsb;
/**
* 姓名 必填:否 如果是汇总申报返回空
*/
private String xm;
/**
* 证件类型 必填:否 见证件类型字典 如果是汇总申报返回空
*/
private String zzlx;
/**
* 证件号码 必填:否 如果是汇总申报返回空
*/
private String zzhm;
/**
* 任职受雇日期 必填:是 格式YYYY-MM-DD
*/
private String rzsgrq;
/**
* 离职日期 必填:否 格式YYYY-MM-DD
*/
private String lzrq;
/**
* 当期收入额 必填:是 不填写默认为0
*/
private BigDecimal sre;
/**
* 当期免税收入 必填:否
*/
private BigDecimal mssd;
/**
* 基本养老保险 必填:否
*/
private BigDecimal jbylaobxf;
/**
* 基本医疗保险 必填:否
*/
private BigDecimal jbylbxf;
/**
* 失业保险 必填:否
*/
private BigDecimal sybxf;
/**
* 住房公积金 必填:否
*/
private BigDecimal zfgjj;
/**
* 子女教育支出 必填:否
*/
private BigDecimal znjyzc;
/**
* 赡养老人支出 必填:否
*/
private BigDecimal sylrzc;
/**
* 住房贷款利息支出 必填:否
*/
private BigDecimal zfdklxzc;
/**
* 住房租金支出 必填:否
*/
private BigDecimal zfzjzc;
/**
* 继续教育支出 必填:否
*/
private BigDecimal jxjyzc;
/**
* 非学历继续教育支出 必填:否
*/
private BigDecimal fxljxjyzc;
/**
* 3岁以下婴幼儿照护支出 必填:否
*/
private BigDecimal yyezhzc;
/**
* 年金 必填:否
*/
private BigDecimal nj;
/**
* 商业健康保险 必填:否
*/
private BigDecimal syjkbx;
/**
* 税延养老保险 必填:否
*/
private BigDecimal syylbx;
/**
* 其他 必填:否 按法律规定可以在税前扣除的项目
*/
private BigDecimal qt;
/**
* 准予扣除的捐赠额 必填:否
*/
private BigDecimal zykcjze;
/**
* 备注 必填:否
*/
private String bz;
/**
* 减除费用 必填:否 正常工资薪金的减除费用。 对应保险营销员、证券经纪人的费用
*/
private BigDecimal jcfy;
/**
* 其他扣除合计 必填:否
*/
private BigDecimal qtckhj;
/**
* 应纳税所得额 必填:否 正常工资薪金返回否
*/
private BigDecimal ynssde;
/**
* 应纳税额 必填:否 正常工资薪金返回否
*/
private BigDecimal ynse;
/**
* 已缴税额 必填:否 正常工资薪金返回否
*/
private BigDecimal ykjse;
/**
* 应扣缴税额 必填:否 正常工资薪金返回否
*/
private BigDecimal yingkjse;
/**
* 所得项目名称 必填:是 正常工资薪金;全年一次性奖金收入;稿酬所得;劳务报酬
*/
private String sdxm;
/**
* 累计收入额 必填:否
*/
@TaxField(name = "当前累计应税收入合计", taxIndex = "ljsre")
private BigDecimal ljsre;
/**
* 累计免税收入额 必填:否
*/
@TaxField(name = "当前累计免税收入", taxIndex = "ljmssd")
private BigDecimal ljmssd;
/**
* 累计专项扣除额 必填:否 三险一金合计
*/
@TaxField(name = "当前累计专项扣除合计", taxIndex = "ljzxkce")
private BigDecimal ljzxkce;
/**
* 累计其他扣除额 必填:否
*/
@TaxField(name = "当前累计其他扣除合计", taxIndex = "ljqtkce")
private BigDecimal ljqtkce;
/**
* 累计减除费用额 必填:否 正常工资薪金累计减除费用 必填:否 对应保险营销员、证券经纪人累计费用
*/
@TaxField(name = "当前累计减除费用", taxIndex = "ljjcfye")
private BigDecimal ljjcfye;
/**
* 累计月减除费用 必填:否 保险营销员、证券经纪人,其他连续劳务报酬的减除费用
*/
private BigDecimal ljyjcfy;
/**
* 允许扣除税费 必填:否 保险营销员、证券经纪人
*/
private BigDecimal yxkcsf;
/**
* 展业成本 必填:否 保险营销员、证券经纪人
*/
private BigDecimal zycb;
/**
* 月减除费用 必填:否 保险营销员、证券经纪人,其他连续劳务报酬的减除费用
*/
private BigDecimal yjcfy;
/**
* 累计子女教育支出 必填:否
*/
@TaxField(name = "累计子女教育", taxIndex = "ljznjyzc")
private BigDecimal ljznjyzc;
/**
* 累计继续教育支出 必填:否
*/
@TaxField(name = "累计继续教育", taxIndex = "ljjxjyzc")
private BigDecimal ljjxjyzc;
/**
* 累计非学历继续教育支持 必填:否
*/
private BigDecimal ljfxljxjyzc;
/**
* 累计学历继续教育支持 必填:否
*/
private BigDecimal ljxljxjyzc;
/**
* 累计住房租金支出 必填:否
*/
@TaxField(name = "累计住房租金", taxIndex = "ljzfzjzc")
private BigDecimal ljzfzjzc;
/**
* 累计房屋贷款支出 必填:否
*/
@TaxField(name = "累计住房贷款利息", taxIndex = "ljzfdklxzc")
private BigDecimal ljzfdklxzc;
/**
* 累计赡养老人支出 必填:否
*/
@TaxField(name = "累计赡养老人", taxIndex = "ljsylrzc")
private BigDecimal ljsylrzc;
/**
* 累计大病医疗支出 必填:否
*/
@TaxField(name = "累计大病医疗", taxIndex = "ljdbylzc")
private BigDecimal ljdbylzc;
/**
* 累计3岁以下婴幼儿照护支出 必填:否
*/
@TaxField(name = "累计婴幼儿照护", taxIndex = "ljyyezhzc")
private BigDecimal ljyyezhzc;
/**
* 累计专项附加扣除额 必填:否 专项附加合计
*/
@TaxField(name = "当前累计专项附加扣除合计", taxIndex = "ljzxfjkce")
private BigDecimal ljzxfjkce;
/**
* 累计准予扣除的捐赠额 必填:否
*/
@TaxField(name = "当前累计准予扣除的捐赠额", taxIndex = "ljzykcjze")
private BigDecimal ljzykcjze;
/**
* 累计个人养老金 必填:否
*/
@TaxField(name = "累计个人养老金", taxIndex = "ljgrylj")
private BigDecimal ljgrylj;
/**
* 累计个人养老金校验码 必填:否
*/
private String ljgryljjym;
/**
* 仅在两个月算税场景时使用当前月分为N月
* 0表示N-1月上月未申报
* 1表示N-1月上月已申报
* 2表示N-2月上上个月未申报
*/
private String qysysfysb;
/**
* 当前月分为N,如果N-1上月已申报则返回N-1月员工在税局累计已扣缴的税额;
* 如果N-1月未申报则返回N-2月工在税局累计已扣缴的税额;
*/
private BigDecimal ygzsjljykjse;
/**
* 本月已累计扣除税额 必填:否 针对一月多次算税的场景字段
*/
private BigDecimal byyljkjse;
/**
* 本次应扣缴税额 必填:否 针对一月多次算税的场景字段,本次应扣缴税额=本月应扣缴税额-本月已累计税额
*/
private BigDecimal bcykjse;
/**
* 分摊年度数 必填:否
*/
private Integer ftnds;
/**
* 年减除费用 必填:否 默认为60000
*/
private BigDecimal njcfy;
/**
* 累计应纳税所得额 必填:否
*/
@TaxField(name = "当前累计应纳税所得额", taxIndex = "ljynssde")
private BigDecimal ljynssde;
/**
* 税率 必填:否
*/
@TaxField(name = "税率", taxIndex = "sl")
private BigDecimal sl;
/**
* 速算扣除数 必填:否
*/
@TaxField(name = "速算扣除数", taxIndex = "sskcs")
private BigDecimal sskcs;
/**
* 累计应纳税额 必填:否
*/
@TaxField(name = "当前累计应纳税额", taxIndex = "ljynse")
private BigDecimal ljynse;
/**
* 减免税额 必填:否
*/
@TaxField(name = "本月(次)减免税额", taxIndex = "jmse")
private BigDecimal jmse;
/**
* 累计减免税额 必填:否
*/
@TaxField(name = "当前累计减免税额合计", taxIndex = "ljjmse")
private BigDecimal ljjmse;
/**
* 累计应扣缴税额 必填:否 累计应扣缴税额 = 累计应纳税额 - 累计减免税额
*/
private BigDecimal ljyingkjse;
/**
* 累计已缴税额 必填:否
*/
@TaxField(name = "当前累计已扣缴税额合计", taxIndex = "ljykjse")
private BigDecimal ljykjse;
/**
* 应补退税额 必填:否 应补退税额=累计应扣缴税额-累计已缴税额
*/
@TaxField(name = "本月(次)应补税额", taxIndex = "ybtse")
private BigDecimal ybtse;
}
}
}
@Data
public static class fjmsd {
/**
* 正常工资薪金(无住所个人正常工资薪金)所得列表 参考非居民所得算税结果对象
*/
private ssjgdx wjgzxjlb;
/**
* 无住所个人数月奖金列表 参考非居民所得算税结果对象
*/
private ssjgdx wjrysyjjlb;
/**
* 劳务报酬列表 参考非居民所得算税结果对象
*/
private ssjgdx lwbclb;
/**
* 稿酬所得列表 参考非居民所得算税结果对象
*/
private ssjgdx gcsdlb;
/**
* 利息姑息红利所得列表 参考非居民所得算税结果对象
*/
private ssjgdx lxgxhllb;
/**
* 股权转让列表 参考非居民所得算税结果对象
*/
private ssjgdx gqzrlb;
/**
* 其他财产转让列表 参考非居民所得算税结果对象
*/
private ssjgdx qtcczrlb;
/**
* 偶然所得列表 参考非居民所得算税结果对象
*/
private ssjgdx orsdlb;
/**
* 解除劳动合同一次性补偿金列表 参考非居民所得算税结果对象
*/
private ssjgdx jcldhtycxbcjlb;
/**
* 保险营销员薪金算税结果对象 参考非居民所得算税结果对象
*/
private ssjgdx bxyxy;
/**
* 证券经纪人薪金算税结果对象 参考非居民所得算税结果对象
*/
private ssjgdx zqjjr;
/**
* 个人股权激励结果对象 参考非居民所得算税结果对象
*/
private ssjgdx grgqjl;
/**
* 特许权使用费所得 参考非居民所得算税结果对象
*/
private ssjgdx txqsyfsd;
/**
* 个人房屋出租所得 参考非居民所得算税结果对象
*/
private ssjgdx grfwczsd;
@Data
public static class ssjgdx {
/**
* 非居民算税成功列表 参考输入报文非居民所得输出结果报文
*/
private List<result> sscglb;
/**
* 非居民算税失败列表 参考输入报文非居民所得输出结果报文
*/
private List<result> sssblb;
/**
* 非居民算税失败原因列表 参考算税失败原因对象
*/
private List<sssbyy> sssbyylb;
/**
* 参与非居民算税总人数
*/
private int sszrs;
/**
* 非居民算税失败总人数
*/
private int sssbrs;
@Data
public static class result {
/**
* 姓名 必填:是
*/
private String xm;
/**
* 证件类型名称 必填:是
*/
private String zzlx;
/**
* 证件号码 必填:是
*/
private String zzhm;
/**
* 收入额 必填:是
*/
private String sre;
/**
* 累计收入(不含本次) 必填:是
*/
private String ljsre;
/**
* 免税收入 必填:是
*/
private String mssd;
/**
* 财产原值 必填:是
*/
private String ccyz;
/**
* 允许扣除的税费 必填:是
*/
private String yxkcsf;
/**
* 投资抵扣 必填:是
*/
private String tzdk;
/**
* 其他 必填:是
*/
private String qt;
/**
* 备注 必填:是
*/
private String bz;
/**
* 实际工作年限 必填:是
*/
private String sjgznxs;
/**
* 减除费用 必填:是
*/
private String jcfy;
/**
* 准予扣除的捐赠额 必填:是
*/
private String zykcjze;
/**
* 税前扣除项目合计 必填:是
*/
private String sqkcxmhj;
/**
* 应纳税额所得额 必填:是
*/
private String ynssde;
/**
* 应纳税额 必填:是
*/
private String ynse;
/**
* 减免税额 必填:是
*/
private String jmse;
/**
* 应扣缴税额 必填:是
*/
private String yingkjse;
/**
* 已扣缴税额 必填:是 无需填写该值按0处理
*/
private String ykjse;
/**
* 税率 必填:是
*/
private String sl;
/**
* 速算扣除数 必填:是
*/
private String sskcs;
/**
* 代报方式 必填:是
*/
private String sbfs;
/**
* 应补退税额 必填:是
*/
private String ybtse;
/**
* 非居民所得项目名字 必填:是  非居民所得薪金类别-无住所个人正常工资薪金、全年一次性奖金收入
*/
private String sdxm;
/**
* 所得期间起 必填:是 YYYY-MM
*/
private String sdqjq;
/**
* 所得期间止 必填:是 YYYY-MM
*/
private String sdqjz;
}
}
}
/**
* 算税失败原因对象
*/
@Data
public static class sssbyy {
/**
* 人员ID
*/
private Integer ygid;
/**
* 人员名称
*/
private String xm;
/**
* 证件类型 见证件类型字典
*/
private String zzlx;
/**
* 证件号码
*/
private String zzhm;
/**
* 错误码
*/
private String cwm;
/**
* 错误信息
*/
private String cwxx;
/**
* 所得税的code
*/
private String sdxmdm;
/**
* 所得税的名称
*/
private String sdxmmc;
}
}
}