年终奖
This commit is contained in:
parent
857c39bd2d
commit
9bedcf6d38
|
|
@ -343,12 +343,6 @@ public class TaxDeclarationBO {
|
|||
Long employeeId = Long.parseLong(keyArray[1]);
|
||||
Map<String, String> valueMap = Maps.newHashMapWithExpectedSize(7);
|
||||
Map<Long, List<SalaryAcctResultPO>> resultMap = SalaryEntityUtil.group2Map(salaryAcctResultPOS, SalaryAcctResultPO::getSalaryItemId);
|
||||
// 所得项目
|
||||
String incomeItems = resultMap.getOrDefault(salaryItemMap.getOrDefault(TaxDeclarationDataIndexConstant.INCOME_ITEMS, 0L), Collections.emptyList()).stream()
|
||||
.map(SalaryAcctResultPO::getResultValue)
|
||||
.findAny()
|
||||
.orElse(StringUtils.EMPTY);
|
||||
valueMap.put(TaxDeclarationDataIndexConstant.INCOME_ITEMS, incomeItems);
|
||||
// 全年一次性奖金额
|
||||
BigDecimal laborIncome = findValue(TaxDeclarationDataIndexConstant.ANNUAL_INCOME, resultMap, salaryItemMap);
|
||||
valueMap.put(TaxDeclarationDataIndexConstant.ANNUAL_INCOME, laborIncome.toPlainString());
|
||||
|
|
|
|||
|
|
@ -135,7 +135,7 @@ public class TaxDeclarationDetailBO {
|
|||
}
|
||||
|
||||
/**
|
||||
* 转换成个税申报表详情列表(劳务报酬所得)
|
||||
* 转换成个税申报表详情列表(年终奖)
|
||||
*
|
||||
* @param taxDeclarationDetailPOS
|
||||
* @param simpleEmployees
|
||||
|
|
@ -158,7 +158,6 @@ public class TaxDeclarationDetailBO {
|
|||
.setId(dto.getEmployeeId())
|
||||
.setEmployeeId(dto.getEmployeeId())
|
||||
.setCardType(SalaryI18nUtil.getI18nLabel(105564, "居民身份证"))
|
||||
.setIncomeItems(fieldCodeKeyFieldValueMap.get(TaxDeclarationDataIndexConstant.INCOME_ITEMS))
|
||||
.setAnnualIncome(fieldCodeKeyFieldValueMap.get(TaxDeclarationDataIndexConstant.ANNUAL_INCOME))
|
||||
.setAnnualTaxFreeIncome(fieldCodeKeyFieldValueMap.get(TaxDeclarationDataIndexConstant.ANNUAL_TAX_FREE_INCOME))
|
||||
.setAnnualOther(fieldCodeKeyFieldValueMap.get(TaxDeclarationDataIndexConstant.ANNUAL_OTHER))
|
||||
|
|
|
|||
|
|
@ -52,15 +52,9 @@ public class TaxDeclarationAnnualListDTO {
|
|||
private String cardNum;
|
||||
|
||||
@SalaryTableColumn(
|
||||
text = "所得项目", width = "10%", column = "incomeItems"
|
||||
text = "全年一次性奖金额", width = "10%", column = "annualIncome"
|
||||
)
|
||||
@TableTitle(title ="所得项目",dataIndex = "incomeItems",key = "incomeItems")
|
||||
private String incomeItems;
|
||||
|
||||
@SalaryTableColumn(
|
||||
text = "年终奖收入", width = "10%", column = "annualIncome"
|
||||
)
|
||||
@TableTitle(title ="年终奖收入",dataIndex = "annualIncome",key = "annualIncome")
|
||||
@TableTitle(title ="全年一次性奖金额",dataIndex = "annualIncome",key = "annualIncome")
|
||||
private String annualIncome;
|
||||
|
||||
@SalaryTableColumn(
|
||||
|
|
|
|||
|
|
@ -3,6 +3,7 @@ package com.engine.salary.service.impl;
|
|||
import com.engine.common.util.ServiceUtil;
|
||||
import com.engine.core.impl.Service;
|
||||
import com.engine.salary.annotation.SalaryTableColumn;
|
||||
import com.engine.salary.entity.taxdeclaration.dto.TaxDeclarationAnnualListDTO;
|
||||
import com.engine.salary.entity.taxdeclaration.dto.TaxDeclarationLaborListDTO;
|
||||
import com.engine.salary.entity.taxdeclaration.dto.TaxDeclarationWageListDTO;
|
||||
import com.engine.salary.entity.taxdeclaration.param.TaxDeclarationDetailListQueryParam;
|
||||
|
|
@ -107,6 +108,28 @@ public class TaxDeclarationExcelServiceImpl extends Service implements TaxDeclar
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (Objects.equals(taxDeclarationPO.getIncomeCategory(), IncomeCategoryEnum.ONETIME_ANNUAL_BONUS.getValue())) {
|
||||
// 解析表头
|
||||
parseHeader(TaxDeclarationAnnualListDTO.class, headerList, dataIndexList);
|
||||
rows.add(headerList);
|
||||
for (int i = 0; i < totalPages; i++) {
|
||||
TaxDeclarationDetailListQueryParam queryParam = new TaxDeclarationDetailListQueryParam();
|
||||
queryParam.setTaxDeclarationId(taxDeclarationId);
|
||||
queryParam.setCurrent(i);
|
||||
queryParam.setPageSize(1000);
|
||||
PageInfo<TaxDeclarationAnnualListDTO> dtoPage = getTaxDeclarationDetailService(user).listDtoPageByParam4Annual(queryParam);
|
||||
List<TaxDeclarationAnnualListDTO> list = dtoPage.getList();
|
||||
for (TaxDeclarationAnnualListDTO taxDeclarationLaborListDTO : list) {
|
||||
List<Object> row = Lists.newArrayListWithExpectedSize(dataIndexList.size());
|
||||
Map<String, Object> map = JsonUtil.parseMap(taxDeclarationLaborListDTO, Object.class);
|
||||
for (String dataIndex : dataIndexList) {
|
||||
row.add(map.get(dataIndex));
|
||||
}
|
||||
rows.add(row);
|
||||
}
|
||||
}
|
||||
}
|
||||
return ExcelUtil.genWorkbookV2(rows, sheetName);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -68,10 +68,12 @@ public class SalaryPageUtil {
|
|||
* @param <T> 范型制定类
|
||||
* @return
|
||||
*/
|
||||
public static <T> List<T> subList(int pageNo, int pageSize, List<T> source) {
|
||||
public static <T> List<T> subList(Integer pageNo, Integer pageSize, List<T> source) {
|
||||
if (CollectionUtils.isEmpty(source)) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
pageNo = pageNo == null || pageNo <= 0 ? 1 : pageNo;
|
||||
pageSize = pageSize == null || pageSize <= 0 ? 10 : pageSize;
|
||||
int endIndex = pageNo * pageSize;
|
||||
int startIndex = (pageNo - 1) * pageSize;
|
||||
startIndex = startIndex < 0 ? 0 : startIndex;
|
||||
|
|
|
|||
Loading…
Reference in New Issue