薪资档案表单
This commit is contained in:
parent
3307c5c67e
commit
1c38214f6f
|
|
@ -49,7 +49,6 @@ import org.apache.ibatis.session.SqlSession;
|
|||
import weaver.conn.mybatis.MyBatisFactory;
|
||||
import weaver.general.Util;
|
||||
import weaver.hrm.User;
|
||||
import weaver.systeminfo.SystemEnv;
|
||||
|
||||
import java.util.*;
|
||||
import java.util.function.Function;
|
||||
|
|
|
|||
|
|
@ -2,8 +2,8 @@ package com.engine.salary.enums.salaryarchive;
|
|||
|
||||
import com.engine.salary.util.SalaryI18nUtil;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Optional;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @Description: 薪资档案-个税扣缴义务人调整原因
|
||||
|
|
@ -52,4 +52,14 @@ public enum SalaryArchiveTaxAgentAdjustReasonEnum {
|
|||
Optional<SalaryArchiveTaxAgentAdjustReasonEnum> optionalAdjustReason = Arrays.stream(SalaryArchiveTaxAgentAdjustReasonEnum.values()).filter(r->r.getValue().equals(value)).findFirst();
|
||||
return optionalAdjustReason.isPresent()? SalaryI18nUtil.getI18nLabel(optionalAdjustReason.get().getLabelId(), optionalAdjustReason.get().getDefaultLabel()):"";
|
||||
}
|
||||
|
||||
public static List<Map<String, String>> getList(){
|
||||
return Arrays.stream(SalaryArchiveTaxAgentAdjustReasonEnum.values()).map(e -> {
|
||||
Map<String, String> map = new HashMap<>();
|
||||
map.put("id", e.getValue());
|
||||
map.put("content", e.getDefaultLabel());
|
||||
return map;
|
||||
}).collect(Collectors.toList());
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
package com.engine.salary.service.impl;
|
||||
|
||||
import com.engine.core.impl.Service;
|
||||
import com.engine.salary.biz.TaxAgentBiz;
|
||||
import com.engine.salary.constant.SalaryDefaultTenantConstant;
|
||||
import com.engine.salary.entity.salaryarchive.dto.TaxAgentAdjustRecordListDTO;
|
||||
import com.engine.salary.entity.salaryarchive.param.SalaryArchiveTaxAgentQueryParam;
|
||||
|
|
@ -8,12 +9,16 @@ import com.engine.salary.entity.salaryarchive.param.SalaryArchiveTaxAgentSavePar
|
|||
import com.engine.salary.entity.salaryarchive.param.TaxAgentAdjustRecordQueryParam;
|
||||
import com.engine.salary.entity.salaryarchive.po.SalaryArchivePO;
|
||||
import com.engine.salary.entity.salaryarchive.po.SalaryArchiveTaxAgentPO;
|
||||
import com.engine.salary.entity.taxrate.TaxAgent;
|
||||
import com.engine.salary.enums.UserStatusEnum;
|
||||
import com.engine.salary.enums.salaryarchive.SalaryArchiveTaxAgentAdjustReasonEnum;
|
||||
import com.engine.salary.exception.SalaryRunTimeException;
|
||||
import com.engine.salary.mapper.archive.SalaryArchiveMapper;
|
||||
import com.engine.salary.mapper.archive.SalaryArchiveTaxAgentMapper;
|
||||
import com.engine.salary.service.SalaryArchiveTaxAgentService;
|
||||
import com.engine.salary.service.TaxAgentService;
|
||||
import com.engine.salary.util.SalaryI18nUtil;
|
||||
import com.engine.salary.util.db.SalarySqlProxyHandle;
|
||||
import com.engine.salary.util.excel.ExcelUtil;
|
||||
import com.engine.salary.util.page.PageInfo;
|
||||
import com.engine.salary.util.page.PageUtil;
|
||||
import com.google.common.collect.Lists;
|
||||
|
|
@ -23,8 +28,8 @@ import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
|||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.*;
|
||||
|
||||
/**
|
||||
* 薪资档案-个税扣缴义务人
|
||||
|
|
@ -36,9 +41,9 @@ import java.util.List;
|
|||
**/
|
||||
public class SalaryArchiveTaxAgentServiceImpl extends Service implements SalaryArchiveTaxAgentService {
|
||||
private static final Logger log = LoggerFactory.getLogger(SalaryArchiveTaxAgentServiceImpl.class);
|
||||
private SalaryArchiveMapper salaryArchiveMapper;
|
||||
private SalaryArchiveTaxAgentMapper salaryArchiveTaxAgentMapper;
|
||||
private TaxAgentService taxAgentService;
|
||||
private SalaryArchiveMapper salaryArchiveMapper = SalarySqlProxyHandle.getProxy(SalaryArchiveMapper.class);
|
||||
private SalaryArchiveTaxAgentMapper salaryArchiveTaxAgentMapper = SalarySqlProxyHandle.getProxy(SalaryArchiveTaxAgentMapper.class);
|
||||
private TaxAgentBiz taxAgentService = new TaxAgentBiz();
|
||||
// private SalaryBatchService salaryBatchService;
|
||||
|
||||
@Override
|
||||
|
|
@ -94,12 +99,7 @@ public class SalaryArchiveTaxAgentServiceImpl extends Service implements SalaryA
|
|||
// 获取当前已生效之前的
|
||||
List<SalaryArchiveTaxAgentPO> salaryArchiveTaxAgents = Lists.newArrayList();
|
||||
if (effectiveTaxAgent != null) {
|
||||
salaryArchiveTaxAgents = salaryArchiveTaxAgentMapper.getTaxAgentLtTimeBySalaryArchiveId(
|
||||
SalaryArchiveTaxAgentQueryParam
|
||||
.builder()
|
||||
.salaryArchiveId(saveParam.getSalaryArchiveId())
|
||||
.effectiveTime(effectiveTaxAgent.getEffectiveTime())
|
||||
.build());
|
||||
salaryArchiveTaxAgents = salaryArchiveTaxAgentMapper.getTaxAgentLtTimeBySalaryArchiveId(SalaryArchiveTaxAgentQueryParam.builder().salaryArchiveId(saveParam.getSalaryArchiveId()).effectiveTime(effectiveTaxAgent.getEffectiveTime()).build());
|
||||
}
|
||||
// 获取未生效数据
|
||||
SalaryArchiveTaxAgentPO ineffectiveTaxAgent = getIneffectiveTaxAgent(saveParam.getSalaryArchiveId());
|
||||
|
|
@ -164,19 +164,9 @@ public class SalaryArchiveTaxAgentServiceImpl extends Service implements SalaryA
|
|||
Date now = new Date();
|
||||
SalaryArchiveTaxAgentPO salaryArchiveTaxAgent = SalaryArchiveTaxAgentPO.builder()
|
||||
// .id(IdGenerator.generate())
|
||||
.salaryArchiveId(saveParam.getSalaryArchiveId())
|
||||
.employeeId(salaryArchive.getEmployeeId())
|
||||
.effectiveTime(saveParam.getEffectiveTime())
|
||||
.adjustReason(saveParam.getAdjustReason())
|
||||
.salaryArchiveId(saveParam.getSalaryArchiveId()).employeeId(salaryArchive.getEmployeeId()).effectiveTime(saveParam.getEffectiveTime()).adjustReason(saveParam.getAdjustReason())
|
||||
// 调整后
|
||||
.taxAgentId(saveParam.getTaxAgentId())
|
||||
.operator(employeeId)
|
||||
.operateTime(now)
|
||||
.createTime(now)
|
||||
.updateTime(now)
|
||||
.creator(employeeId)
|
||||
.tenantKey(SalaryDefaultTenantConstant.DEFAULT_TENANT_KEY)
|
||||
.build();
|
||||
.taxAgentId(saveParam.getTaxAgentId()).operator(employeeId).operateTime(now).createTime(now).updateTime(now).creator(employeeId).tenantKey(SalaryDefaultTenantConstant.DEFAULT_TENANT_KEY).build();
|
||||
salaryArchiveTaxAgentMapper.insertIgnoreNull(salaryArchiveTaxAgent);
|
||||
}
|
||||
|
||||
|
|
@ -196,88 +186,66 @@ public class SalaryArchiveTaxAgentServiceImpl extends Service implements SalaryA
|
|||
|
||||
@Override
|
||||
public XSSFWorkbook exportAdjustRecordList(TaxAgentAdjustRecordQueryParam queryParam) {
|
||||
return null;
|
||||
// // 1.工作簿名称
|
||||
// String nameI18n = SalaryI18nUtil.getI18nLabel(currentTenantKey, currentEmployeeId, 99978, "个税扣缴义务人调整记录");
|
||||
// excelSheetData.setSheetName(nameI18n);
|
||||
// String[] header = {
|
||||
// SalaryI18nUtil.getI18nLabel(currentTenantKey, currentEmployeeId, 85429, "姓名"),
|
||||
// SalaryI18nUtil.getI18nLabel(currentTenantKey, currentEmployeeId, 86187, "员工状态"),
|
||||
// SalaryI18nUtil.getI18nLabel(currentTenantKey, currentEmployeeId, 86185, "部门"),
|
||||
// SalaryI18nUtil.getI18nLabel(currentTenantKey, currentEmployeeId, 85433, "调整前"),
|
||||
// SalaryI18nUtil.getI18nLabel(currentTenantKey, currentEmployeeId, 85434, "调整后"),
|
||||
// SalaryI18nUtil.getI18nLabel(currentTenantKey, currentEmployeeId, 85431, "调整原因"),
|
||||
// SalaryI18nUtil.getI18nLabel(currentTenantKey, currentEmployeeId, 85904, "生效日期"),
|
||||
// SalaryI18nUtil.getI18nLabel(currentTenantKey, currentEmployeeId, 85435, "操作人"),
|
||||
// SalaryI18nUtil.getI18nLabel(currentTenantKey, currentEmployeeId, 85436, "操作时间"),
|
||||
// SalaryI18nUtil.getI18nLabel(currentTenantKey, currentEmployeeId, 84961, "备注")
|
||||
// };
|
||||
// // 2.表头
|
||||
// excelSheetData.setHeaders(Collections.singletonList(header));
|
||||
//
|
||||
// // 获取记录
|
||||
// List<TaxAgentAdjustRecordListDTO> list = salaryArchiveTaxAgentMapper.taxAgentAdjustRecordList(queryParam, currentTenantKey);
|
||||
// List<TaxAgentAdjustRecordListDTO> listAll = salaryArchiveTaxAgentMapper.taxAgentAdjustRecordList(TaxAgentAdjustRecordQueryParam.builder().build(), currentTenantKey);
|
||||
// // 个税扣缴义务人
|
||||
// Collection<TaxAgentListDTO> taxAgentList = taxAgentService.findAll(currentTenantKey);
|
||||
// // 人员信息赋值
|
||||
// list.forEach(m -> {
|
||||
// if (!org.springframework.util.CollectionUtils.isEmpty(listAll)) {
|
||||
// listAll.removeIf(a -> a.getId().equals(m.getId()));
|
||||
// }
|
||||
// Optional<TaxAgentAdjustRecordListDTO> optional = listAll.stream().filter(f -> f.getSalaryArchiveId().equals(m.getSalaryArchiveId())).findFirst();
|
||||
// m.setAdjustBefore(optional.isPresent() ? optional.get().getAdjustAfter() : "");
|
||||
// Optional<TaxAgentListDTO> optionalBefore = taxAgentList.stream().filter(t -> t.getId().toString().equals(m.getAdjustBefore())).findFirst();
|
||||
// m.setAdjustBefore(optionalBefore.isPresent() ? optionalBefore.get().getName() : "");
|
||||
// Optional<TaxAgentListDTO> optionalAfter = taxAgentList.stream().filter(t -> t.getId().toString().equals(m.getAdjustAfter())).findFirst();
|
||||
// m.setAdjustAfter(optionalAfter.isPresent() ? optionalAfter.get().getName() : "");
|
||||
//
|
||||
// m.setEmployeeStatus(SalaryUserStatusEnum.getDefaultLabelByValue(m.getEmployeeStatus(), currentEmployeeId, currentTenantKey));
|
||||
// m.setAdjustReason(SalaryArchiveTaxAgentAdjustReasonEnum.getDefaultLabelByValue(m.getAdjustReason(), currentEmployeeId, currentTenantKey));
|
||||
// });
|
||||
// SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
// List<List<Object>> rows = new ArrayList<>();
|
||||
// for (TaxAgentAdjustRecordListDTO dto : list) {
|
||||
// List<Object> row = new ArrayList<>();
|
||||
// row.add(dto.getUsername());
|
||||
// row.add(dto.getEmployeeStatus());
|
||||
// row.add(dto.getDepartmentName());
|
||||
// row.add(dto.getAdjustBefore());
|
||||
// row.add(dto.getAdjustAfter());
|
||||
// row.add(dto.getAdjustReason());
|
||||
// row.add(dto.getEffectiveTime() + "");
|
||||
// row.add(dto.getOperator());
|
||||
// row.add(format.format(dto.getOperateTime()));
|
||||
// row.add(dto.getDescription());
|
||||
// rows.add(row);
|
||||
// }
|
||||
// // 3.表数据
|
||||
// excelSheetData.setRows(rows);
|
||||
//
|
||||
// sheetList.add(excelSheetData);
|
||||
//
|
||||
// salaryBatchService.simpleExportExcel(ExportExcelInfo.builder()
|
||||
// .bizId(map.get("biz").toString())
|
||||
// .flag(true)
|
||||
// .userId(currentEmployeeId)
|
||||
// .eteamsId(eteamsId)
|
||||
// .tenantKey(currentTenantKey)
|
||||
// .operator(username)
|
||||
// .module(map.get("module").toString())
|
||||
// .fileName(nameI18n + SalaryDateUtil.getFormatLocalDateTime(LocalDateTime.now()))
|
||||
// .handlerName(map.get("function").toString())
|
||||
// .dataType(nameI18n)
|
||||
// .function(map.get("function").toString()).build(), sheetList);
|
||||
// 1.工作簿名称
|
||||
String sheetName = SalaryI18nUtil.getI18nLabel(99978, "个税扣缴义务人调整记录");
|
||||
// 2.表头
|
||||
List<Object> header = new ArrayList<>();
|
||||
header.add(SalaryI18nUtil.getI18nLabel(85429, "姓名"));
|
||||
header.add(SalaryI18nUtil.getI18nLabel(86187, "员工状态"));
|
||||
header.add(SalaryI18nUtil.getI18nLabel(86185, "部门"));
|
||||
header.add(SalaryI18nUtil.getI18nLabel(85433, "调整前"));
|
||||
header.add(SalaryI18nUtil.getI18nLabel(85434, "调整后"));
|
||||
header.add(SalaryI18nUtil.getI18nLabel(85431, "调整原因"));
|
||||
header.add(SalaryI18nUtil.getI18nLabel(85904, "生效日期"));
|
||||
header.add(SalaryI18nUtil.getI18nLabel(85435, "操作人"));
|
||||
header.add(SalaryI18nUtil.getI18nLabel(85436, "操作时间"));
|
||||
header.add(SalaryI18nUtil.getI18nLabel(84961, "备注"));
|
||||
// 3.表数据
|
||||
// 获取记录
|
||||
List<TaxAgentAdjustRecordListDTO> list = salaryArchiveTaxAgentMapper.taxAgentAdjustRecordList(queryParam);
|
||||
List<TaxAgentAdjustRecordListDTO> listAll = salaryArchiveTaxAgentMapper.taxAgentAdjustRecordList(TaxAgentAdjustRecordQueryParam.builder().build());
|
||||
// 个税扣缴义务人
|
||||
Collection<TaxAgent> taxAgentList = taxAgentService.listAll();
|
||||
// 人员信息赋值
|
||||
list.forEach(m -> {
|
||||
if (!org.springframework.util.CollectionUtils.isEmpty(listAll)) {
|
||||
listAll.removeIf(a -> a.getId().equals(m.getId()));
|
||||
}
|
||||
Optional<TaxAgentAdjustRecordListDTO> optional = listAll.stream().filter(f -> f.getSalaryArchiveId().equals(m.getSalaryArchiveId())).findFirst();
|
||||
m.setAdjustBefore(optional.isPresent() ? optional.get().getAdjustAfter() : "");
|
||||
Optional<TaxAgent> optionalBefore = taxAgentList.stream().filter(t -> t.getId().toString().equals(m.getAdjustBefore())).findFirst();
|
||||
m.setAdjustBefore(optionalBefore.isPresent() ? optionalBefore.get().getName() : "");
|
||||
Optional<TaxAgent> optionalAfter = taxAgentList.stream().filter(t -> t.getId().toString().equals(m.getAdjustAfter())).findFirst();
|
||||
m.setAdjustAfter(optionalAfter.isPresent() ? optionalAfter.get().getName() : "");
|
||||
|
||||
m.setEmployeeStatus(UserStatusEnum.getDefaultLabelByValue(Integer.parseInt(m.getEmployeeStatus())));
|
||||
m.setAdjustReason(SalaryArchiveTaxAgentAdjustReasonEnum.getDefaultLabelByValue(m.getAdjustReason()));
|
||||
});
|
||||
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
||||
List<List<Object>> rows = new ArrayList<>();
|
||||
rows.add(header);
|
||||
for (TaxAgentAdjustRecordListDTO dto : list) {
|
||||
List<Object> row = new ArrayList<>();
|
||||
row.add(dto.getUsername());
|
||||
row.add(dto.getEmployeeStatus());
|
||||
row.add(dto.getDepartmentName());
|
||||
row.add(dto.getAdjustBefore());
|
||||
row.add(dto.getAdjustAfter());
|
||||
row.add(dto.getAdjustReason());
|
||||
row.add(dto.getEffectiveTime() + "");
|
||||
row.add(dto.getOperator());
|
||||
row.add(format.format(dto.getOperateTime()));
|
||||
row.add(dto.getDescription());
|
||||
rows.add(row);
|
||||
}
|
||||
|
||||
return ExcelUtil.genWorkbookV2(rows, sheetName);
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public SalaryArchiveTaxAgentPO getAdjustBeforeTaxAgent(SalaryArchiveTaxAgentPO salaryArchiveTaxAgent) {
|
||||
List<SalaryArchiveTaxAgentPO> salaryArchiveTaxAgents = salaryArchiveTaxAgentMapper.getAdjustBeforeTaxAgent(
|
||||
SalaryArchiveTaxAgentPO
|
||||
.builder()
|
||||
.salaryArchiveId(salaryArchiveTaxAgent.getSalaryArchiveId())
|
||||
.effectiveTime(salaryArchiveTaxAgent.getEffectiveTime())
|
||||
.build());
|
||||
List<SalaryArchiveTaxAgentPO> salaryArchiveTaxAgents = salaryArchiveTaxAgentMapper.getAdjustBeforeTaxAgent(SalaryArchiveTaxAgentPO.builder().salaryArchiveId(salaryArchiveTaxAgent.getSalaryArchiveId()).effectiveTime(salaryArchiveTaxAgent.getEffectiveTime()).build());
|
||||
return CollectionUtils.isNotEmpty(salaryArchiveTaxAgents) ? salaryArchiveTaxAgents.get(0) : null;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -252,18 +252,24 @@ public class SalaryArchiveController {
|
|||
// ******** 薪资档案主表 end ***********************************************************************************************/
|
||||
|
||||
// ******** 薪资项目调整 start ***********************************************************************************************/
|
||||
// /**
|
||||
// * 通过薪资档案id获取薪资项目调整表单
|
||||
// *
|
||||
// * @param salaryArchiveId
|
||||
// * @return
|
||||
// */
|
||||
// @GetMapping("/getSalaryItemForm")
|
||||
// @ApiOperation("获取薪资项目调整表单")
|
||||
// @WeaPermission
|
||||
// public WeaResult<SalaryArchiveItemFormDTO> getSalaryItemForm(@RequestParam Long salaryArchiveId) {
|
||||
// return WeaResult.success(salaryArchiveItemWrapper.getSalaryItemForm(salaryArchiveId, UserContext.getCurrentEmployeeId(), TenantContext.getCurrentTenantKey()));
|
||||
// }
|
||||
/**
|
||||
* 获取薪资项目调整表单
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@GET
|
||||
@Path("/getSalaryItemForm")
|
||||
@Produces(MediaType.APPLICATION_JSON)
|
||||
public String getSalaryItemForm(@Context HttpServletRequest request, @Context HttpServletResponse response) {
|
||||
User user = HrmUserVarify.getUser(request, response);
|
||||
String salaryArchiveIdStr = request.getParameter("salaryArchiveId");
|
||||
Long salaryArchiveId = null;
|
||||
if (StringUtils.isNotBlank(salaryArchiveIdStr)) {
|
||||
salaryArchiveId = Long.valueOf(salaryArchiveIdStr);
|
||||
}
|
||||
return new ResponseResult<Long, SalaryArchiveItemFormDTO>().run(getSalaryArchiveItemWrapper(user)::getSalaryItemForm, salaryArchiveId);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 获取薪资项目调整前的值
|
||||
|
|
|
|||
|
|
@ -13,6 +13,7 @@ import com.engine.salary.entity.salaryarchive.po.SalaryArchiveItemPO;
|
|||
import com.engine.salary.entity.salaryitem.po.SalaryItemPO;
|
||||
import com.engine.salary.enums.SalaryUserStatusEnum;
|
||||
import com.engine.salary.enums.salaryarchive.SalaryArchiveItemAdjustReasonEnum;
|
||||
import com.engine.salary.enums.salaryarchive.SalaryArchiveTaxAgentAdjustReasonEnum;
|
||||
import com.engine.salary.exception.SalaryRunTimeException;
|
||||
import com.engine.salary.service.SalaryArchiveItemService;
|
||||
import com.engine.salary.service.impl.SalaryArchiveItemServiceImpl;
|
||||
|
|
@ -62,6 +63,7 @@ public class SalaryArchiveItemWrapper extends Service {
|
|||
data.put("effectiveTime", effectiveTime + "");
|
||||
data.put("adjustReason", adjustReason);
|
||||
data.put("description", description);
|
||||
data.put("adjustReasonList", SalaryArchiveTaxAgentAdjustReasonEnum.getList());
|
||||
|
||||
return data;
|
||||
}
|
||||
|
|
@ -74,10 +76,10 @@ public class SalaryArchiveItemWrapper extends Service {
|
|||
private Map<String, Object> buildSalaryArchiveItemAdjustDetailTable(List<Map<String, Object>> tableData) {
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
// 表头
|
||||
List<String> headers = new ArrayList<>();
|
||||
headers.add(SalaryI18nUtil.getI18nLabel(84960, "薪资项目"));
|
||||
headers.add(SalaryI18nUtil.getI18nLabel(85433, "调整前"));
|
||||
headers.add(SalaryI18nUtil.getI18nLabel(85434, "调整后"));
|
||||
List<String> columns = new ArrayList<>();
|
||||
columns.add(SalaryI18nUtil.getI18nLabel(84960, "薪资项目"));
|
||||
columns.add(SalaryI18nUtil.getI18nLabel(85433, "调整前"));
|
||||
columns.add(SalaryI18nUtil.getI18nLabel(85434, "调整后"));
|
||||
// 获取所有可被引用的薪资项目
|
||||
List<SalaryItemPO> salaryItemList = getSalaryArchiveItemService(user).getCanAdjustSalaryItems();
|
||||
List<Map<String, Object>> salaryItems = salaryItemList.stream().map(m -> {
|
||||
|
|
@ -87,7 +89,7 @@ public class SalaryArchiveItemWrapper extends Service {
|
|||
return salaryItemMap;
|
||||
}).collect(Collectors.toList());
|
||||
|
||||
map.put("headers", headers);
|
||||
map.put("columns", columns);
|
||||
map.put("list", tableData);
|
||||
map.put("salaryItemList", salaryItems);
|
||||
|
||||
|
|
@ -104,6 +106,19 @@ public class SalaryArchiveItemWrapper extends Service {
|
|||
return getSalaryArchiveItemService(user).getSalaryItemAdjustBeforeValue(adjustBeforeParam);
|
||||
}
|
||||
|
||||
public SalaryArchiveItemFormDTO getSalaryItemForm(Long salaryArchiveId) {
|
||||
|
||||
// 调整明细数据
|
||||
List<Map<String, Object>> tableData = Lists.newArrayList();
|
||||
|
||||
return SalaryArchiveItemFormDTO.builder()
|
||||
.salaryArchiveId(salaryArchiveId)
|
||||
.salaryArchiveItemForm(buildSalaryArchiveItemForm(null, null, null))
|
||||
.salaryArchiveItemDetail(buildSalaryArchiveItemAdjustDetailTable(tableData))
|
||||
.build();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 通过薪资档案的薪资项目id获取薪资项目调整表单
|
||||
*
|
||||
|
|
@ -270,4 +285,6 @@ public class SalaryArchiveItemWrapper extends Service {
|
|||
public XSSFWorkbook exportAdjustRecordList(SalaryItemAdjustRecordQueryParam queryParam) {
|
||||
return getSalaryArchiveItemService(user).exportAdjustRecordList(queryParam);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,10 +1,6 @@
|
|||
package com.engine.salary.wrapper;
|
||||
|
||||
import com.api.browser.bean.SearchConditionGroup;
|
||||
import com.api.browser.bean.SearchConditionItem;
|
||||
import com.api.browser.bean.SearchConditionOption;
|
||||
import com.api.browser.util.ConditionFactory;
|
||||
import com.api.browser.util.ConditionType;
|
||||
import com.engine.common.util.ServiceUtil;
|
||||
import com.engine.core.impl.Service;
|
||||
import com.engine.salary.entity.salaryarchive.dto.SalaryArchiveTaxAgentFormDTO;
|
||||
import com.engine.salary.entity.salaryarchive.dto.SingleTaxAgentAdjustRecordListDTO;
|
||||
|
|
@ -19,11 +15,14 @@ import com.engine.salary.enums.salaryarchive.SalaryArchiveTaxAgentAdjustReasonEn
|
|||
import com.engine.salary.exception.SalaryRunTimeException;
|
||||
import com.engine.salary.service.SalaryArchiveTaxAgentService;
|
||||
import com.engine.salary.service.TaxAgentService;
|
||||
import com.engine.salary.service.impl.SalaryArchiveTaxAgentServiceImpl;
|
||||
import com.engine.salary.service.impl.TaxAgentServiceImpl;
|
||||
import com.engine.salary.util.SalaryI18nUtil;
|
||||
import com.engine.salary.util.page.PageInfo;
|
||||
import com.google.common.collect.Lists;
|
||||
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import weaver.hrm.User;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
|
|
@ -36,8 +35,15 @@ import java.util.*;
|
|||
* @version 1.0
|
||||
**/
|
||||
public class SalaryArchiveTaxAgentWrapper extends Service {
|
||||
private SalaryArchiveTaxAgentService salaryArchiveTaxAgentService;
|
||||
private TaxAgentService taxAgentService;
|
||||
|
||||
private SalaryArchiveTaxAgentService getSalaryArchiveTaxAgentService(User user) {
|
||||
return (SalaryArchiveTaxAgentService) ServiceUtil.getService(SalaryArchiveTaxAgentServiceImpl.class, user);
|
||||
}
|
||||
|
||||
private TaxAgentService getTaxAgentService(User user) {
|
||||
return (TaxAgentService) ServiceUtil.getService(TaxAgentServiceImpl.class, user);
|
||||
}
|
||||
|
||||
// @Resource
|
||||
// private SalaryBatchService salaryBatchService;
|
||||
// @Autowired
|
||||
|
|
@ -54,10 +60,9 @@ public class SalaryArchiveTaxAgentWrapper extends Service {
|
|||
if (salaryArchiveId == null) {
|
||||
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(100425, "薪资档案id不能为空"));
|
||||
}
|
||||
// 个税扣缴义务人下拉列表
|
||||
Collection<TaxAgent> taxAgentList = taxAgentService.findAll();
|
||||
|
||||
// 构建表单
|
||||
Map<String, Object> form = buildTaxAgentForm(taxAgentList, null, "", "", null);
|
||||
Map<String, Object> form = buildTaxAgentForm(null, "", "", null);
|
||||
|
||||
return SalaryArchiveTaxAgentFormDTO.builder()
|
||||
.salaryArchiveId(salaryArchiveId)
|
||||
|
|
@ -65,74 +70,15 @@ public class SalaryArchiveTaxAgentWrapper extends Service {
|
|||
.build();
|
||||
}
|
||||
|
||||
private Map<String, Object> buildTaxAgentForm(Collection<TaxAgent> taxAgentList, Date effectiveTime, String adjustReason, String adjustBefore, Long adjustAfter) {
|
||||
// 个税扣缴义务人调整原因下拉列表
|
||||
List<SalaryArchiveTaxAgentAdjustReasonEnum> salaryArchiveTaxAgentAdjustReasonEnums = Arrays.asList(SalaryArchiveTaxAgentAdjustReasonEnum.values());
|
||||
|
||||
ConditionFactory conditionFactory = new ConditionFactory(user);
|
||||
|
||||
//条件组
|
||||
List<SearchConditionGroup> addGroups = new ArrayList<SearchConditionGroup>();
|
||||
List<SearchConditionItem> items = new ArrayList<SearchConditionItem>();
|
||||
|
||||
SearchConditionItem effectiveTimeItem = conditionFactory.createCondition(ConditionType.DATEPICKER, 502327, "effectiveTime");
|
||||
effectiveTimeItem.setColSpan(1);//定义一行显示条件数,默认值为2,当值为1时标识该条件单独占一行
|
||||
effectiveTimeItem.setFieldcol(12); //条件输入框所占宽度,默认值18
|
||||
effectiveTimeItem.setViewAttr(3); // 编辑权限 1:只读,2:可编辑, 3:必填 默认2
|
||||
effectiveTimeItem.setLength(10); // 设置输入长度
|
||||
effectiveTimeItem.setLabel("生效时间"); //设置文本值 这个将覆盖多语言标签的值
|
||||
effectiveTimeItem.setRules("required"); //设置字段填入规则
|
||||
items.add(effectiveTimeItem);
|
||||
|
||||
SearchConditionItem adjustReasonItem = conditionFactory.createCondition(ConditionType.SELECT, 502227, "adjustReason");
|
||||
List<SearchConditionOption> selectOptions = new ArrayList<>(); //设置选项值
|
||||
Arrays.stream(SalaryArchiveTaxAgentAdjustReasonEnum.values()).forEach(r -> {
|
||||
if (r.getValue().equals(adjustReason)) {
|
||||
selectOptions.add(new SearchConditionOption(r.getValue(), r.getDefaultLabel(), true));
|
||||
}
|
||||
selectOptions.add(new SearchConditionOption(r.getValue(), r.getDefaultLabel()));
|
||||
});
|
||||
adjustReasonItem.setOptions(selectOptions);
|
||||
effectiveTimeItem.setColSpan(1);
|
||||
effectiveTimeItem.setFieldcol(12);
|
||||
effectiveTimeItem.setViewAttr(3);
|
||||
effectiveTimeItem.setLength(10);
|
||||
adjustReasonItem.setLabel("调整原因");
|
||||
effectiveTimeItem.setRules("required"); //设置字段填入规则
|
||||
items.add(adjustReasonItem);
|
||||
|
||||
SearchConditionItem adjustBeforeItem = conditionFactory.createCondition(ConditionType.INPUT, 502327, "adjustBefore");
|
||||
adjustBeforeItem.setColSpan(1);//定义一行显示条件数,默认值为2,当值为1时标识该条件单独占一行
|
||||
adjustBeforeItem.setFieldcol(12); //条件输入框所占宽度,默认值18
|
||||
adjustBeforeItem.setViewAttr(1); // 编辑权限 1:只读,2:可编辑, 3:必填 默认2
|
||||
adjustBeforeItem.setLength(10); // 设置输入长度
|
||||
adjustBeforeItem.setLabel("调整前"); //设置文本值 这个将覆盖多语言标签的值
|
||||
adjustBeforeItem.setRules("required"); //设置字段填入规则
|
||||
adjustBeforeItem.setValue(adjustBefore);
|
||||
items.add(adjustBeforeItem);
|
||||
|
||||
|
||||
SearchConditionItem taxAgentItem = conditionFactory.createCondition(ConditionType.SELECT, 502227, "taxAgentId");
|
||||
List<SearchConditionOption> taxAgentOptions = new ArrayList<>(); //设置选项值
|
||||
taxAgentList.forEach(t -> {
|
||||
if (t.getId().equals(adjustAfter)) {
|
||||
taxAgentOptions.add(new SearchConditionOption(t.getId().toString(), t.getName(), true));
|
||||
}
|
||||
taxAgentOptions.add(new SearchConditionOption(t.getId().toString(), t.getName()));
|
||||
});
|
||||
adjustReasonItem.setOptions(selectOptions);
|
||||
effectiveTimeItem.setColSpan(1);
|
||||
effectiveTimeItem.setFieldcol(12);
|
||||
effectiveTimeItem.setViewAttr(3);
|
||||
effectiveTimeItem.setLength(10);
|
||||
adjustReasonItem.setLabel("调整后");
|
||||
effectiveTimeItem.setRules("required"); //设置字段填入规则
|
||||
items.add(taxAgentItem);
|
||||
|
||||
addGroups.add(new SearchConditionGroup("表单", true, items));
|
||||
|
||||
private Map<String, Object> buildTaxAgentForm(Date effectiveTime, String adjustReason, String adjustBefore, Long adjustAfter) {
|
||||
// 个税扣缴义务人下拉列表
|
||||
Collection<TaxAgent> taxAgentList = getTaxAgentService(user).findAll();
|
||||
Map<String, Object> map = new HashMap<>();
|
||||
map.put("form", addGroups);
|
||||
map.put("adjustReasonList", SalaryArchiveTaxAgentAdjustReasonEnum.getList());
|
||||
map.put("taxAgentList", taxAgentList);
|
||||
map.put("effectiveTime", effectiveTime);
|
||||
map.put("adjustBefore", adjustBefore);
|
||||
map.put("adjustAfter", adjustAfter);
|
||||
return map;
|
||||
}
|
||||
|
||||
|
|
@ -146,15 +92,15 @@ public class SalaryArchiveTaxAgentWrapper extends Service {
|
|||
if (salaryArchiveTaxAgentId == null) {
|
||||
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(100489, "薪资档案的个税扣缴义务人id不能为空"));
|
||||
}
|
||||
SalaryArchiveTaxAgentPO salaryArchiveTaxAgent = salaryArchiveTaxAgentService.getById(salaryArchiveTaxAgentId);
|
||||
SalaryArchiveTaxAgentPO salaryArchiveTaxAgent = getSalaryArchiveTaxAgentService(user).getById(salaryArchiveTaxAgentId);
|
||||
if (salaryArchiveTaxAgent == null) {
|
||||
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(100484, "该薪资档案的个税扣缴义务人的调整记录不存在"));
|
||||
}
|
||||
// 个税扣缴义务人下拉列表
|
||||
Collection<TaxAgent> taxAgentList = taxAgentService.findAll();
|
||||
Collection<TaxAgent> taxAgentList = getTaxAgentService(user).findAll();
|
||||
// 调整前
|
||||
String adjustBefore = "";
|
||||
SalaryArchiveTaxAgentPO adjustBeforePo = salaryArchiveTaxAgentService.getAdjustBeforeTaxAgent(salaryArchiveTaxAgent);
|
||||
SalaryArchiveTaxAgentPO adjustBeforePo = getSalaryArchiveTaxAgentService(user).getAdjustBeforeTaxAgent(salaryArchiveTaxAgent);
|
||||
|
||||
if (adjustBeforePo != null) {
|
||||
Optional<TaxAgent> optional = taxAgentList.stream().filter(f -> f.getId().equals(adjustBeforePo.getTaxAgentId())).findFirst();
|
||||
|
|
@ -166,7 +112,7 @@ public class SalaryArchiveTaxAgentWrapper extends Service {
|
|||
Long adjustAfter = salaryArchiveTaxAgent.getTaxAgentId();
|
||||
|
||||
// 构建表单
|
||||
Map<String, Object> taxAgentForm = buildTaxAgentForm(taxAgentList, effectiveTime, adjustReason, adjustBefore, adjustAfter);
|
||||
Map<String, Object> taxAgentForm = buildTaxAgentForm(effectiveTime, adjustReason, adjustBefore, adjustAfter);
|
||||
|
||||
return SalaryArchiveTaxAgentFormDTO.builder()
|
||||
.salaryArchiveId(salaryArchiveTaxAgent.getSalaryArchiveId())
|
||||
|
|
@ -181,7 +127,7 @@ public class SalaryArchiveTaxAgentWrapper extends Service {
|
|||
* @return
|
||||
*/
|
||||
public String saveTaxAgent(SalaryArchiveTaxAgentSaveParam saveParam) {
|
||||
return salaryArchiveTaxAgentService.saveTaxAgent(saveParam);
|
||||
return getSalaryArchiveTaxAgentService(user).saveTaxAgent(saveParam);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -191,7 +137,7 @@ public class SalaryArchiveTaxAgentWrapper extends Service {
|
|||
* @return
|
||||
*/
|
||||
public String deleteTaxAgent(Long salaryArchiveTaxAgentId) {
|
||||
return salaryArchiveTaxAgentService.deleteTaxAgent(salaryArchiveTaxAgentId);
|
||||
return getSalaryArchiveTaxAgentService(user).deleteTaxAgent(salaryArchiveTaxAgentId);
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -204,9 +150,9 @@ public class SalaryArchiveTaxAgentWrapper extends Service {
|
|||
public PageInfo<TaxAgentAdjustRecordListDTO> adjustRecordList(TaxAgentAdjustRecordQueryParam queryParam) {
|
||||
|
||||
// 个税扣缴义务人
|
||||
Collection<TaxAgent> taxAgentList = taxAgentService.findAll();
|
||||
List<TaxAgentAdjustRecordListDTO> listAll = salaryArchiveTaxAgentService.taxAgentAdjustRecordList(TaxAgentAdjustRecordQueryParam.builder().build());
|
||||
PageInfo<TaxAgentAdjustRecordListDTO> page = salaryArchiveTaxAgentService.taxAgentAdjustRecordListPage(queryParam);
|
||||
Collection<TaxAgent> taxAgentList = getTaxAgentService(user).findAll();
|
||||
List<TaxAgentAdjustRecordListDTO> listAll = getSalaryArchiveTaxAgentService(user).taxAgentAdjustRecordList(TaxAgentAdjustRecordQueryParam.builder().build());
|
||||
PageInfo<TaxAgentAdjustRecordListDTO> page = getSalaryArchiveTaxAgentService(user).taxAgentAdjustRecordListPage(queryParam);
|
||||
List<TaxAgentAdjustRecordListDTO> list = page.getList();
|
||||
list.forEach(m -> {
|
||||
if (!org.springframework.util.CollectionUtils.isEmpty(listAll)) {
|
||||
|
|
@ -240,11 +186,11 @@ public class SalaryArchiveTaxAgentWrapper extends Service {
|
|||
|
||||
TaxAgentAdjustRecordQueryParam adjustRecordQueryParam = new TaxAgentAdjustRecordQueryParam();
|
||||
BeanUtils.copyProperties(queryParam, adjustRecordQueryParam);
|
||||
PageInfo<TaxAgentAdjustRecordListDTO> page = salaryArchiveTaxAgentService.taxAgentAdjustRecordListPage(adjustRecordQueryParam);
|
||||
PageInfo<TaxAgentAdjustRecordListDTO> page = getSalaryArchiveTaxAgentService(user).taxAgentAdjustRecordListPage(adjustRecordQueryParam);
|
||||
|
||||
// 个税扣缴义务人
|
||||
Collection<TaxAgent> taxAgentList = taxAgentService.findAll();
|
||||
List<TaxAgentAdjustRecordListDTO> listAll = salaryArchiveTaxAgentService.taxAgentAdjustRecordList(TaxAgentAdjustRecordQueryParam.builder().build());
|
||||
Collection<TaxAgent> taxAgentList = getTaxAgentService(user).findAll();
|
||||
List<TaxAgentAdjustRecordListDTO> listAll = getSalaryArchiveTaxAgentService(user).taxAgentAdjustRecordList(TaxAgentAdjustRecordQueryParam.builder().build());
|
||||
List<TaxAgentAdjustRecordListDTO> list = page.getList();
|
||||
List<SingleTaxAgentAdjustRecordListDTO> resultList = Lists.newArrayList();
|
||||
list.forEach(m -> {
|
||||
|
|
@ -265,7 +211,7 @@ public class SalaryArchiveTaxAgentWrapper extends Service {
|
|||
resultList.add(singleTaxAgentAdjustRecordList);
|
||||
});
|
||||
// 获取当前已生效
|
||||
SalaryArchiveTaxAgentPO salaryArchiveTaxAgent = salaryArchiveTaxAgentService.getEffectiveTaxAgent(queryParam.getSalaryArchiveId());
|
||||
SalaryArchiveTaxAgentPO salaryArchiveTaxAgent = getSalaryArchiveTaxAgentService(user).getEffectiveTaxAgent(queryParam.getSalaryArchiveId());
|
||||
Date effectiveDate = (salaryArchiveTaxAgent == null ? null : salaryArchiveTaxAgent.getEffectiveTime());
|
||||
|
||||
// 行记录按钮权限控制
|
||||
|
|
@ -292,6 +238,6 @@ public class SalaryArchiveTaxAgentWrapper extends Service {
|
|||
* @return
|
||||
*/
|
||||
public XSSFWorkbook exportAdjustRecordList(TaxAgentAdjustRecordQueryParam queryParam) {
|
||||
return salaryArchiveTaxAgentService.exportAdjustRecordList(queryParam);
|
||||
return getSalaryArchiveTaxAgentService(user).exportAdjustRecordList(queryParam);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue