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

788 lines
29 KiB
Java
Raw Normal View History

2024-06-06 13:51:33 +08:00
package com.engine.salary.remote.tax.response.calculate;
2024-06-07 11:01:57 +08:00
import com.engine.salary.annotation.TaxField;
2024-06-06 13:51:33 +08:00
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;
2024-06-07 11:01:57 +08:00
@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;
2024-06-19 17:05:46 +08:00
2024-06-07 11:01:57 +08:00
/**
* 备注 必填
*/
private String bz;
/**
* 减除费用 必填 正常工资薪金的减除费用 对应保险营销员证券经纪人的费用
*/
private BigDecimal jcfy;
/**
* 其他扣除合计 必填
*/
private BigDecimal qtckhj;
/**
* 应纳税所得额 必填 正常工资薪金返回否
*/
private BigDecimal ynssde;
/**
* 应纳税额 必填 正常工资薪金返回否
*/
private BigDecimal ynse;
/**
* 已缴税额 必填 正常工资薪金返回否
*/
private BigDecimal ykjse;
/**
* 应扣缴税额 必填 正常工资薪金返回否
*/
private BigDecimal yingkjse;
/**
* 所得项目名称 必填 正常工资薪金全年一次性奖金收入稿酬所得劳务报酬
*/
private String sdxm;
2024-06-17 17:03:48 +08:00
2024-06-07 11:01:57 +08:00
/**
* 累计收入额 必填
*/
2024-06-19 17:05:46 +08:00
@TaxField(name = "当前累计应税收入合计", taxIndex = "ljsre")
2024-06-07 11:01:57 +08:00
private BigDecimal ljsre;
/**
* 累计免税收入额 必填
*/
2024-06-19 17:05:46 +08:00
@TaxField(name = "当前累计免税收入", taxIndex = "ljmssd")
2024-06-07 11:01:57 +08:00
private BigDecimal ljmssd;
/**
* 累计专项扣除额 必填 三险一金合计
*/
2024-06-19 17:05:46 +08:00
@TaxField(name = "当前累计专项扣除合计", taxIndex = "ljzxkce")
2024-06-07 11:01:57 +08:00
private BigDecimal ljzxkce;
2024-06-19 17:05:46 +08:00
2024-06-07 11:01:57 +08:00
/**
* 累计其他扣除额 必填
*/
2024-06-19 17:05:46 +08:00
@TaxField(name = "当前累计其他扣除合计", taxIndex = "ljqtkce")
2024-06-07 11:01:57 +08:00
private BigDecimal ljqtkce;
2024-06-19 17:05:46 +08:00
2024-06-07 11:01:57 +08:00
/**
* 累计减除费用额 必填 正常工资薪金累计减除费用 必填 对应保险营销员证券经纪人累计费用
*/
2024-06-19 17:05:46 +08:00
@TaxField(name = "当前累计减除费用", taxIndex = "ljjcfye")
2024-06-07 11:01:57 +08:00
private BigDecimal ljjcfye;
/**
* 累计月减除费用 必填 保险营销员证券经纪人其他连续劳务报酬的减除费用
*/
private BigDecimal ljyjcfy;
/**
* 允许扣除税费 必填 保险营销员证券经纪人
*/
private BigDecimal yxkcsf;
/**
* 展业成本 必填 保险营销员证券经纪人
*/
private BigDecimal zycb;
/**
* 月减除费用 必填 保险营销员证券经纪人其他连续劳务报酬的减除费用
*/
private BigDecimal yjcfy;
/**
* 累计子女教育支出 必填
*/
2024-06-17 17:03:48 +08:00
@TaxField(name = "累计子女教育", taxIndex = "ljznjyzc")
2024-06-07 11:01:57 +08:00
private BigDecimal ljznjyzc;
/**
* 累计继续教育支出 必填
*/
2024-06-17 17:03:48 +08:00
@TaxField(name = "累计继续教育", taxIndex = "ljjxjyzc")
2024-06-07 11:01:57 +08:00
private BigDecimal ljjxjyzc;
2024-06-17 17:03:48 +08:00
2024-06-07 11:01:57 +08:00
/**
* 累计非学历继续教育支持 必填
*/
private BigDecimal ljfxljxjyzc;
/**
* 累计学历继续教育支持 必填
*/
private BigDecimal ljxljxjyzc;
/**
* 累计住房租金支出 必填
*/
2024-06-17 17:03:48 +08:00
@TaxField(name = "累计住房租金", taxIndex = "ljzfzjzc")
2024-06-07 11:01:57 +08:00
private BigDecimal ljzfzjzc;
/**
* 累计房屋贷款支出 必填
*/
2024-06-19 17:05:46 +08:00
@TaxField(name = "累计住房贷款利息", taxIndex = "ljzfdklxzc")
2024-06-07 11:01:57 +08:00
private BigDecimal ljzfdklxzc;
/**
* 累计赡养老人支出 必填
*/
2024-06-17 17:03:48 +08:00
@TaxField(name = "累计赡养老人", taxIndex = "ljsylrzc")
2024-06-07 11:01:57 +08:00
private BigDecimal ljsylrzc;
2024-06-19 17:05:46 +08:00
/**
* 累计大病医疗支出 必填
*/
@TaxField(name = "累计大病医疗", taxIndex = "ljdbylzc")
private BigDecimal ljdbylzc;
2024-06-07 11:01:57 +08:00
/**
* 累计3岁以下婴幼儿照护支出 必填
*/
2024-06-19 17:05:46 +08:00
@TaxField(name = "累计婴幼儿照护", taxIndex = "ljyyezhzc")
2024-06-07 11:01:57 +08:00
private BigDecimal ljyyezhzc;
2024-06-19 17:05:46 +08:00
/**
* 累计专项附加扣除额 必填 专项附加合计
*/
@TaxField(name = "当前累计专项附加扣除合计", taxIndex = "ljzxfjkce")
private BigDecimal ljzxfjkce;
2024-06-07 11:01:57 +08:00
/**
* 累计准予扣除的捐赠额 必填
*/
2024-06-19 17:05:46 +08:00
@TaxField(name = "当前累计准予扣除的捐赠额", taxIndex = "ljzykcjze")
2024-06-07 11:01:57 +08:00
private BigDecimal ljzykcjze;
2024-06-19 17:05:46 +08:00
2024-06-07 11:01:57 +08:00
/**
* 累计个人养老金 必填
*/
2024-06-17 17:03:48 +08:00
@TaxField(name = "累计个人养老金", taxIndex = "ljgrylj")
2024-06-07 11:01:57 +08:00
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;
2024-06-17 17:03:48 +08:00
/**
* 累计应纳税所得额 必填
*/
2024-06-19 17:05:46 +08:00
@TaxField(name = "当前累计应纳税所得额", taxIndex = "ljynssde")
2024-06-17 17:03:48 +08:00
private BigDecimal ljynssde;
2024-06-19 17:05:46 +08:00
2024-06-17 17:03:48 +08:00
/**
* 税率 必填
*/
2024-07-01 15:09:40 +08:00
@TaxField(name = "税率", taxIndex = "sl")
2024-06-17 17:03:48 +08:00
private BigDecimal sl;
/**
* 速算扣除数 必填
*/
2024-07-01 15:09:40 +08:00
@TaxField(name = "速算扣除数", taxIndex = "sskcs")
2024-06-17 17:03:48 +08:00
private BigDecimal sskcs;
/**
* 累计应纳税额 必填
*/
2024-06-19 17:05:46 +08:00
@TaxField(name = "当前累计应纳税额", taxIndex = "ljynse")
2024-06-17 17:03:48 +08:00
private BigDecimal ljynse;
2024-06-19 17:05:46 +08:00
/**
* 减免税额 必填
*/
@TaxField(name = "本月(次)减免税额", taxIndex = "jmse")
private BigDecimal jmse;
/**
* 累计减免税额 必填
*/
@TaxField(name = "当前累计减免税额合计", taxIndex = "ljjmse")
private BigDecimal ljjmse;
2024-06-17 17:03:48 +08:00
/**
* 累计应扣缴税额 必填 累计应扣缴税额 = 累计应纳税额 - 累计减免税额
*/
private BigDecimal ljyingkjse;
2024-06-19 17:05:46 +08:00
2024-06-17 17:03:48 +08:00
/**
* 累计已缴税额 必填
*/
2024-06-19 17:05:46 +08:00
@TaxField(name = "当前累计已扣缴税额合计", taxIndex = "ljykjse")
2024-06-17 17:03:48 +08:00
private BigDecimal ljykjse;
/**
* 应补退税额 必填 应补退税额=累计应扣缴税额-累计已缴税额
*/
2024-06-19 17:05:46 +08:00
@TaxField(name = "本月(次)应补税额", taxIndex = "ybtse")
2024-06-17 17:03:48 +08:00
private BigDecimal ybtse;
2024-06-07 11:01:57 +08:00
}
2024-06-06 13:51:33 +08:00
}
}
@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;
2024-06-07 11:01:57 +08:00
@Data
public static class result {
2024-06-06 13:51:33 +08:00
2024-06-07 11:01:57 +08:00
/**
* 姓名 必填
*/
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;
}
}
2024-06-06 13:51:33 +08:00
}
2024-06-07 11:01:57 +08:00
2024-06-06 13:51:33 +08:00
/**
* 算税失败原因对象
*/
@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;
}
}
}