薪酬系统-福利台账,补差福利项列表功能和补差模板导出功能
This commit is contained in:
parent
bea06f1d88
commit
3fa017b13a
|
|
@ -140,7 +140,6 @@ public interface SIAccountService {
|
|||
|
||||
/**
|
||||
* tab信息
|
||||
* @param billMonth
|
||||
*/
|
||||
InsuranceAccountTabDTO tabList(AccountParam build);
|
||||
|
||||
|
|
@ -260,5 +259,9 @@ public interface SIAccountService {
|
|||
*/
|
||||
void editAccount(EditAccountDetailParam param);
|
||||
|
||||
/**
|
||||
* 导出“福利核算-补差导入模板”
|
||||
*/
|
||||
XSSFWorkbook exportBalanceImportTemplate(InsuranceAcctDetailImportTemplateParam param);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -2475,4 +2475,48 @@ public class SIAccountServiceImpl extends Service implements SIAccountService {
|
|||
insuranceAccountDetailPO.setTotal(perSum.add(comSum).toPlainString());
|
||||
return insuranceAccountDetailPO;
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出“福利核算-补差导入”模板
|
||||
*/
|
||||
@Override
|
||||
public XSSFWorkbook exportBalanceImportTemplate(InsuranceAcctDetailImportTemplateParam param) {
|
||||
ValidUtil.doValidator(param);
|
||||
|
||||
// 必须选择导入模板所需的薪资项目(福利项)
|
||||
if (CollectionUtils.isEmpty(param.getWelfareNames())) {
|
||||
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(99019, "参数错误,请选择导入模板所需的福利项目核算项"));
|
||||
}
|
||||
|
||||
// 模板表头(默认必带"个税扣缴义务人"、"姓名")
|
||||
List<Object> headerList = Lists.newArrayList(SalaryI18nUtil.getI18nLabel(85429, "姓名"),
|
||||
"部门",
|
||||
SalaryI18nUtil.getI18nLabel(86186, "手机号"),
|
||||
SalaryI18nUtil.getI18nLabel(86317, "工号"),
|
||||
SalaryI18nUtil.getI18nLabel(86184, "个税扣缴义务人")
|
||||
);
|
||||
List<String> dataIndexList = Lists.newArrayList("username", "departmentName", "mobile", "workcode", "taxAgentName");
|
||||
// 查询福利核算项目
|
||||
List<String> welfareNames = (List<String>) param.getWelfareNames();
|
||||
headerList.addAll(welfareNames);
|
||||
|
||||
// //查询当前已有的补缴数据
|
||||
// List<Map<String, Object>> resultMapList = getSupplyDataByBillMonth(param.getBillMonth(), param.getPaymentOrganization());
|
||||
// // excel导出的数据
|
||||
// List<List<Object>> rows = Lists.newArrayListWithExpectedSize(resultMapList.size());
|
||||
// rows.add(headerList);
|
||||
// for (Map<String, Object> map : resultMapList) {
|
||||
// List<Object> row = Lists.newArrayListWithExpectedSize(headerList.size());
|
||||
// for (String dataIndex : dataIndexList) {
|
||||
// row.add(map.getOrDefault(dataIndex, StringUtils.EMPTY));
|
||||
// }
|
||||
// rows.add(row);
|
||||
// }
|
||||
|
||||
List<List<Object>> rows = new ArrayList<>();
|
||||
rows.add(headerList);
|
||||
|
||||
String sheetName = "福利核算-补差导入模板";
|
||||
return ExcelUtil.genWorkbookV2(rows, sheetName);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -786,4 +786,18 @@ public class SIAccountController {
|
|||
}
|
||||
|
||||
// **********************************调差 end*********************************/
|
||||
|
||||
// **********************************补差 start*********************************/
|
||||
/**
|
||||
* 福利台账-补差福利项列表
|
||||
*/
|
||||
@GET
|
||||
@Path("/getBalanceWelfareList")
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public String getBalanceWelfareList(@Context HttpServletRequest request, @Context HttpServletResponse response) {
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
return new ResponseResult<String,List<InsuranceAcctDetailImportFieldDTO>>(user).run(getSalaryFormulaWrapper(user)::balanceWelfareList);
|
||||
}
|
||||
|
||||
// **********************************补差 end*********************************/
|
||||
}
|
||||
|
|
|
|||
|
|
@ -22,6 +22,7 @@ import weaver.hrm.User;
|
|||
import weaver.servicefiles.DataSourceXML;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 薪资项目
|
||||
|
|
@ -108,4 +109,14 @@ public class SalaryFormulaWrapper extends Service {
|
|||
|
||||
return welfareList;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取福利台账的补差-福利类项目
|
||||
*/
|
||||
public List<InsuranceAcctDetailImportFieldDTO> balanceWelfareList() {
|
||||
|
||||
List<InsuranceAcctDetailImportFieldDTO> welfareList = welfareList();
|
||||
welfareList = welfareList.stream().filter(f -> !f.getSalaryItemName().contains("合计")).collect(Collectors.toList());
|
||||
return welfareList;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue