内置算税结果

This commit is contained in:
钱涛 2024-04-10 14:48:58 +08:00
parent 917c9f87c1
commit 691f4c42ce
2 changed files with 260 additions and 21 deletions

View File

@ -139,36 +139,36 @@ public enum IncomeCategoryEnum implements BaseEnum<Integer> {
NON_RESIDENT_INCOME_WAGES_AND_SALARIES(700, "0700", "无住所个人正常工资薪金", DeclareReportTypeEnum.NONRESIDENT_INCOME, 181945) {
@Override
public Map<String, List<List<Object>>> parseGetDeclareTaxResultFeedbackResponse(Map<String, List<List<Object>>> result, GetDeclareTaxResultFeedbackResponse declareTaxResultFeedbackResponse) {
// List<GetDeclareTaxResultFeedbackResponse.Body.zhsd.zcgzxj.zhsdscjgbw> zhsd = declareTaxResultFeedbackResponse.getBody().getZhsd().getTxq().getSscglb();
// List<List<Object>> zhsdSheetData = ExcelUtil.getExcelSheetData(GetDeclareTaxResultFeedbackResponse.Body.zhsd.zcgzxj.zhsdscjgbw.class, zhsd);
// result.put(this.getDefaultLabel(), zhsdSheetData);
List<GetDeclareTaxResultFeedbackResponse.Body.fjmsd.fjmsdssjgdx.fjmsdscbw> fjmsd = declareTaxResultFeedbackResponse.getBody().getFjmsd().getWjgzxjlb().getSscglb();
List<List<Object>> sheetData = ExcelUtil.getExcelSheetData(GetDeclareTaxResultFeedbackResponse.Body.fjmsd.fjmsdssjgdx.fjmsdscbw.class, fjmsd);
result.put(this.getDefaultLabel(), sheetData);
return result;
}
},
NON_RESIDENT_INCOME_MONTHLY_BONUS(710, "0710", "无住所个人数月奖金", DeclareReportTypeEnum.NONRESIDENT_INCOME, 181945) {
@Override
public Map<String, List<List<Object>>> parseGetDeclareTaxResultFeedbackResponse(Map<String, List<List<Object>>> result, GetDeclareTaxResultFeedbackResponse declareTaxResultFeedbackResponse) {
List<GetDeclareTaxResultFeedbackResponse.Body.zhsd.zcgzxj.zhsdscjgbw> zhsd = declareTaxResultFeedbackResponse.getBody().getZhsd().getTxq().getSscglb();
List<List<Object>> zhsdSheetData = ExcelUtil.getExcelSheetData(GetDeclareTaxResultFeedbackResponse.Body.zhsd.zcgzxj.zhsdscjgbw.class, zhsd);
result.put(this.getDefaultLabel(), zhsdSheetData);
List<GetDeclareTaxResultFeedbackResponse.Body.fjmsd.fjmsdssjgdx.fjmsdscbw> fjmsd = declareTaxResultFeedbackResponse.getBody().getFjmsd().getWjrysyjjlb().getSscglb();
List<List<Object>> sheetData = ExcelUtil.getExcelSheetData(GetDeclareTaxResultFeedbackResponse.Body.fjmsd.fjmsdssjgdx.fjmsdscbw.class, fjmsd);
result.put(this.getDefaultLabel(), sheetData);
return result;
}
},
NON_RESIDENT_INCOME_REMUNERATION_FOR_LABOR(720, "0720", "一般劳务报酬所得", DeclareReportTypeEnum.NONRESIDENT_INCOME, 181945) {
@Override
public Map<String, List<List<Object>>> parseGetDeclareTaxResultFeedbackResponse(Map<String, List<List<Object>>> result, GetDeclareTaxResultFeedbackResponse declareTaxResultFeedbackResponse) {
List<GetDeclareTaxResultFeedbackResponse.Body.zhsd.zcgzxj.zhsdscjgbw> zhsd = declareTaxResultFeedbackResponse.getBody().getZhsd().getTxq().getSscglb();
List<List<Object>> zhsdSheetData = ExcelUtil.getExcelSheetData(GetDeclareTaxResultFeedbackResponse.Body.zhsd.zcgzxj.zhsdscjgbw.class, zhsd);
result.put(this.getDefaultLabel(), zhsdSheetData);
List<GetDeclareTaxResultFeedbackResponse.Body.fjmsd.fjmsdssjgdx.fjmsdscbw> fjmsd = declareTaxResultFeedbackResponse.getBody().getFjmsd().getLwbclb().getSscglb();
List<List<Object>> sheetData = ExcelUtil.getExcelSheetData(GetDeclareTaxResultFeedbackResponse.Body.fjmsd.fjmsdssjgdx.fjmsdscbw.class, fjmsd);
result.put(this.getDefaultLabel(), sheetData);
return result;
}
},
NON_RESIDENT_INCOME_COMPENSATION_FOR_DISMISS(730, "0730", "解除劳动合同一次性补偿金", DeclareReportTypeEnum.NONRESIDENT_INCOME, 181945) {
@Override
public Map<String, List<List<Object>>> parseGetDeclareTaxResultFeedbackResponse(Map<String, List<List<Object>>> result, GetDeclareTaxResultFeedbackResponse declareTaxResultFeedbackResponse) {
List<GetDeclareTaxResultFeedbackResponse.Body.zhsd.zcgzxj.zhsdscjgbw> zhsd = declareTaxResultFeedbackResponse.getBody().getZhsd().getTxq().getSscglb();
List<List<Object>> zhsdSheetData = ExcelUtil.getExcelSheetData(GetDeclareTaxResultFeedbackResponse.Body.zhsd.zcgzxj.zhsdscjgbw.class, zhsd);
result.put(this.getDefaultLabel(), zhsdSheetData);
List<GetDeclareTaxResultFeedbackResponse.Body.fjmsd.fjmsdssjgdx.fjmsdscbw> fjmsd = declareTaxResultFeedbackResponse.getBody().getFjmsd().getJcldhtycxbcjlb().getSscglb();
List<List<Object>> sheetData = ExcelUtil.getExcelSheetData(GetDeclareTaxResultFeedbackResponse.Body.fjmsd.fjmsdssjgdx.fjmsdscbw.class, fjmsd);
result.put(this.getDefaultLabel(), sheetData);
return result;
}
};

View File

@ -51,19 +51,16 @@ public class GetDeclareTaxResultFeedbackResponse extends BaseResponse {
// * 分类所得 必填 见分类所得计算结果
// */
// private 对象 flsd;
// /**
// * 非居民所得 必填 见非居民所得计算结果
// */
// private fjmsd fjmsd;
// /**
/**
* 非居民所得 必填 见非居民所得计算结果
*/
private fjmsd fjmsd;
// /**
// * 限售股所得 必填 见限售股所得计算结果
// */
// private 对象 xsgsd;
/**
* 人员申报失败列表 必填 参考人员代报结果对象
*/
private List<rydbjgdx> rysbsblb;
@Data
public static class zhsd {
@ -660,6 +657,248 @@ public class GetDeclareTaxResultFeedbackResponse extends BaseResponse {
}
@Data
public static class fjmsd {
/**
* 正常工资薪金无住所个人正常工资薪金所得列表 参考非居民所得算税结果对象
*/
private fjmsdssjgdx wjgzxjlb;
/**
* 无住所个人数月奖金列表 参考非居民所得算税结果对象
*/
private fjmsdssjgdx wjrysyjjlb;
/**
* 劳务报酬列表 参考非居民所得算税结果对象
*/
private fjmsdssjgdx lwbclb;
/**
* 稿酬所得列表 参考非居民所得算税结果对象
*/
private fjmsdssjgdx gcsdlb;
/**
* 利息姑息红利所得列表 参考非居民所得算税结果对象
*/
private fjmsdssjgdx lxgxhllb;
/**
* 股权转让列表 参考非居民所得算税结果对象
*/
private fjmsdssjgdx gqzrlb;
/**
* 其他财产转让列表 参考非居民所得算税结果对象
*/
private fjmsdssjgdx qtcczrlb;
/**
* 偶然所得列表 参考非居民所得算税结果对象
*/
private fjmsdssjgdx orsdlb;
/**
* 解除劳动合同一次性补偿金列表 参考非居民所得算税结果对象
*/
private fjmsdssjgdx jcldhtycxbcjlb;
/**
* 保险营销员薪金算税结果对象 参考非居民所得算税结果对象
*/
private fjmsdssjgdx bxyxy;
/**
* 证券经纪人薪金算税结果对象 参考非居民所得算税结果对象
*/
private fjmsdssjgdx zqjjr;
/**
* 个人股权激励结果对象 参考非居民所得算税结果对象
*/
private fjmsdssjgdx grgqjl;
/**
* 特许权使用费所得 参考非居民所得算税结果对象
*/
private fjmsdssjgdx txqsyfsd;
/**
* 个人房屋出租所得 参考非居民所得算税结果对象
*/
private fjmsdssjgdx grfwczsd;
/**
* 非居民所得算税结果对象
*/
@Data
public static class fjmsdssjgdx {
/**
* 非居民算税成功列表 参考输入报文非居民所得输出结果报文
*/
private List<fjmsdscbw> sscglb;
/**
* 非居民算税失败列表 参考输入报文非居民所得输出结果报文
*/
private List<fjmsdscbw> sssblb;
/**
* 非居民算税失败原因列表 参考算税失败原因对象
*/
private List<rydbjgdx> sssbyylb;
/**
* 参与非居民算税总人数
*/
private int sszrs;
/**
* 非居民算税失败总人数
*/
private int sssbrs;
/**
* 4.4.1.3.4.2非居民所得输出结果报文
*/
@Data
public static class fjmsdscbw {
/**
* 姓名 必填
*/
@SalaryTableColumn(text = "姓名", width = "10%", column = "xm")
@ExcelHead(title = "姓名", dataIndex = "xm")
private String xm;
/**
* 证件类型名称 必填
*/
@SalaryTableColumn(text = "证件类型", width = "10%", column = "zzlx")
@ExcelHead(title = "证件类型", dataIndex = "zzlx")
private String zzlx;
/**
* 证件号码 必填
*/
@SalaryTableColumn(text = "证件号码", width = "10%", column = "zzhm")
@ExcelHead(title = "证件号码", dataIndex = "zzhm")
private String zzhm;
/**
* 收入额 必填
*/
@SalaryTableColumn(text = "收入额", width = "10%", column = "sre")
@ExcelHead(title = "收入额", dataIndex = "sre")
private String sre;
/**
* 累计收入不含本次 必填
*/
@SalaryTableColumn(text = "累计收入(不含本次)", width = "10%", column = "ljsre")
@ExcelHead(title = "累计收入(不含本次)", dataIndex = "ljsre")
private String ljsre;
/**
* 免税收入 必填
*/
@SalaryTableColumn(text = "免税收入", width = "10%", column = "mssd")
@ExcelHead(title = "免税收入", dataIndex = "mssd")
private String mssd;
/**
* 财产原值 必填
*/
private String ccyz;
/**
* 允许扣除的税费 必填
*/
private String yxkcsf;
/**
* 投资抵扣 必填
*/
private String tzdk;
/**
* 其他 必填
*/
private String qt;
/**
* 备注 必填
*/
private String bz;
/**
* 实际工作年限 必填
*/
private String sjgznxs;
/**
* 减除费用 必填
*/
private String jcfy;
/**
* 准予扣除的捐赠额 必填
*/
@SalaryTableColumn(text = "准予扣除的捐赠额", width = "10%", column = "zykcjze")
@ExcelHead(title = "准予扣除的捐赠额", dataIndex = "zykcjze")
private String zykcjze;
/**
* 税前扣除项目合计 必填
*/
private String sqkcxmhj;
/**
* 应纳税额所得额 必填
*/
@SalaryTableColumn(text = "应纳税额所得额", width = "10%", column = "ynssde")
@ExcelHead(title = "应纳税额所得额", dataIndex = "ynssde")
private String ynssde;
/**
* 应纳税额 必填
*/
@SalaryTableColumn(text = "应纳税额", width = "10%", column = "ynse")
@ExcelHead(title = "应纳税额", dataIndex = "ynse")
private String ynse;
/**
* 减免税额 必填
*/
private String jmse;
/**
* 应扣缴税额 必填
*/
@SalaryTableColumn(text = "应扣缴税额", width = "10%", column = "yingkjse")
@ExcelHead(title = "应扣缴税额", dataIndex = "yingkjse")
private String yingkjse;
/**
* 已扣缴税额 必填 无需填写该值按0处理
*/
@SalaryTableColumn(text = "已扣缴税额", width = "10%", column = "ykjse")
@ExcelHead(title = "已扣缴税额", dataIndex = "ykjse")
private String ykjse;
/**
* 税率 必填
*/
@SalaryTableColumn(text = "税率", width = "10%", column = "sl")
@ExcelHead(title = "税率", dataIndex = "sl")
private String sl;
/**
* 速算扣除数 必填
*/
@SalaryTableColumn(text = "速算扣除数", width = "10%", column = "sskcs")
@ExcelHead(title = "速算扣除数", dataIndex = "sskcs")
private String sskcs;
/**
* 代报方式 必填
*/
private String sbfs;
/**
* 应补退税额 必填
*/
@SalaryTableColumn(text = "应补退税额", width = "10%", column = "ybtse")
@ExcelHead(title = "应补退税额", dataIndex = "ybtse")
private String ybtse;
/**
* 非居民所得项目名字 必填是非居民所得薪金类别-无住所个人正常工资薪金全年一次性奖金收入
*/
private String sdxm;
/**
* 所得期间起 必填 YYYY-MM
*/
private String sdqjq;
/**
* 所得期间止 必填 YYYY-MM
*/
private String sdqjz;
}
}
}
/**
* 人员申报失败列表 必填 参考人员代报结果对象
*/
private List<rydbjgdx> rysbsblb;
/**
* 4.4.1.3.1.1人员代报结果对象
*/