Merge branch 'release/2.15.2.2409.01' into release/个税版本

This commit is contained in:
钱涛 2024-10-15 14:55:23 +08:00
commit b2938a6e52
6 changed files with 59 additions and 8 deletions

View File

@ -1,5 +1,6 @@
package com.engine.salary.entity.datacollection.po; package com.engine.salary.entity.datacollection.po;
import com.engine.salary.annotation.Encrypt;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Builder; import lombok.Builder;
import lombok.Data; import lombok.Data;
@ -41,6 +42,7 @@ public class VariableArchiveItemPO {
/** /**
* 浮动值 * 浮动值
*/ */
@Encrypt
private String itemValue; private String itemValue;
/** /**

View File

@ -40,7 +40,7 @@ public interface VariableArchiveService {
* @param variableArchives * @param variableArchives
* @return * @return
*/ */
List<Map<String, Object>> buildVariableArchiveData(Collection<VariableArchiveListDTO> variableArchives); List<Map<String, Object>> buildVariableArchiveData(List<VariableArchiveListDTO> variableArchives);
/** /**
* 创建浮动薪酬档案 * 创建浮动薪酬档案
@ -70,4 +70,6 @@ public interface VariableArchiveService {
void deleteSelectVariableArchive(Collection<Long> deleteIds); void deleteSelectVariableArchive(Collection<Long> deleteIds);
List<Map<String, Object>> listBySalaryMonthAndEmployeeIds(YearMonth salaryMonth, List<Long> employeeIds, Long taxAgentId); List<Map<String, Object>> listBySalaryMonthAndEmployeeIds(YearMonth salaryMonth, List<Long> employeeIds, Long taxAgentId);
void updateData(VariableArchiveSaveParam updateParam);
} }

View File

@ -1,6 +1,7 @@
package com.engine.salary.service.impl; package com.engine.salary.service.impl;
import com.engine.core.impl.Service; import com.engine.core.impl.Service;
import com.engine.salary.encrypt.EncryptUtil;
import com.engine.salary.entity.datacollection.po.VariableArchiveItemPO; import com.engine.salary.entity.datacollection.po.VariableArchiveItemPO;
import com.engine.salary.mapper.datacollection.VariableArchiveItemMapper; import com.engine.salary.mapper.datacollection.VariableArchiveItemMapper;
import com.engine.salary.service.VariableArchiveItemService; import com.engine.salary.service.VariableArchiveItemService;
@ -18,6 +19,7 @@ import java.util.List;
* @description 浮动薪酬档案明细 * @description 浮动薪酬档案明细
*/ */
public class VariableArchiveItemServiceImpl extends Service implements VariableArchiveItemService { public class VariableArchiveItemServiceImpl extends Service implements VariableArchiveItemService {
private EncryptUtil encryptUtil = new EncryptUtil();
private VariableArchiveItemMapper getVariableArchiveItemMapper(){ private VariableArchiveItemMapper getVariableArchiveItemMapper(){
return MapperProxyFactory.getProxy(VariableArchiveItemMapper.class); return MapperProxyFactory.getProxy(VariableArchiveItemMapper.class);
@ -34,7 +36,8 @@ public class VariableArchiveItemServiceImpl extends Service implements VariableA
if (CollectionUtils.isEmpty(variableArchiveIds)) { if (CollectionUtils.isEmpty(variableArchiveIds)) {
return Collections.emptyList(); return Collections.emptyList();
} }
return getVariableArchiveItemMapper().listSome(VariableArchiveItemPO.builder().variableArchiveIds(variableArchiveIds).build()); List<VariableArchiveItemPO> variableArchiveItemPOS = getVariableArchiveItemMapper().listSome(VariableArchiveItemPO.builder().variableArchiveIds(variableArchiveIds).build());
return encryptUtil.decryptList(variableArchiveItemPOS, VariableArchiveItemPO.class);
} }
/** /**
@ -52,6 +55,7 @@ public class VariableArchiveItemServiceImpl extends Service implements VariableA
if (CollectionUtils.isEmpty(insertList)) { if (CollectionUtils.isEmpty(insertList)) {
return 0; return 0;
} }
encryptUtil.encryptList(insertList, VariableArchiveItemPO.class);
List<List<VariableArchiveItemPO>> partition = Lists.partition(insertList, 50); List<List<VariableArchiveItemPO>> partition = Lists.partition(insertList, 50);
partition.forEach(part -> getVariableArchiveItemMapper().batchInsert(part)); partition.forEach(part -> getVariableArchiveItemMapper().batchInsert(part));
return 0; return 0;

View File

@ -151,10 +151,7 @@ public class VariableArchiveServiceImpl extends Service implements VariableArchi
* @return * @return
*/ */
@Override @Override
public List<Map<String, Object>> buildVariableArchiveData(Collection<VariableArchiveListDTO> variableArchives) { public List<Map<String, Object>> buildVariableArchiveData(List<VariableArchiveListDTO> variableArchives) {
if (CollectionUtils.isEmpty(variableArchives)) {
// 无数据
}
List<Long> variableArchiveIds = variableArchives.stream().map(VariableArchiveListDTO::getId).collect(Collectors.toList()); List<Long> variableArchiveIds = variableArchives.stream().map(VariableArchiveListDTO::getId).collect(Collectors.toList());
// 获取浮动薪资档案所对应的浮动薪资项目数据 // 获取浮动薪资档案所对应的浮动薪资项目数据
List<VariableArchiveItemPO> variableArchiveItemList = getVariableArchiveItemService(user).listByVariableArchiveIds(variableArchiveIds); List<VariableArchiveItemPO> variableArchiveItemList = getVariableArchiveItemService(user).listByVariableArchiveIds(variableArchiveIds);
@ -602,4 +599,41 @@ public class VariableArchiveServiceImpl extends Service implements VariableArchi
List<VariableArchiveListDTO> variableArchiveListDTO = list(queryParam); List<VariableArchiveListDTO> variableArchiveListDTO = list(queryParam);
return buildVariableArchiveData(variableArchiveListDTO); return buildVariableArchiveData(variableArchiveListDTO);
} }
@Override
public void updateData(VariableArchiveSaveParam updateParam) {
if (updateParam.getId() == null) {
throw new SalaryRunTimeException("参数错误");
}
// 获取浮动薪酬档案
VariableArchivePO variableArchivePO = getVariableArchiveMapper().getById(updateParam.getId());
if (variableArchivePO == null) {
throw new SalaryRunTimeException("浮动薪酬档案不存在或已被删除");
}
// 删除原有的浮动薪酬档案明细
getVariableArchiveItemService(user).deleteByArchiveIds(Collections.singletonList(updateParam.getId()));
// 保存浮动薪资档案详细信息
List<VariableArchiveItemPO> variableArchiveItemList = new ArrayList<>();
Date now = new Date();
updateParam.getItemValueList().forEach(e -> {
variableArchiveItemList.add(VariableArchiveItemPO.builder()
.id(IdGenerator.generate())
.employeeId(updateParam.getEmployeeId())
.variableArchiveId(variableArchivePO.getId())
.variableItemId(e.getVariableItemId())
.itemValue(e.getItemValue())
.creator(Long.valueOf(user.getUID()))
.createTime(now)
.updateTime(now)
.deleteType(NumberUtils.INTEGER_ZERO)
.tenantKey(SalaryDefaultTenantConstant.DEFAULT_TENANT_KEY)
.build());
});
if (CollectionUtils.isNotEmpty(variableArchiveItemList)) {
getVariableArchiveItemService(user).batchInsert(variableArchiveItemList);
}
}
} }

View File

@ -111,7 +111,12 @@ public class VariableArchiveController {
@Produces(MediaType.APPLICATION_JSON) @Produces(MediaType.APPLICATION_JSON)
public String createData(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody VariableArchiveSaveParam saveParam) { public String createData(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody VariableArchiveSaveParam saveParam) {
User user = HrmUserVarify.getUser(request, response); User user = HrmUserVarify.getUser(request, response);
return new ResponseResult<VariableArchiveSaveParam, String>(user).run(getVariableArchiveWrapper(user)::createData, saveParam); if (saveParam.getId() == null) {
return new ResponseResult<VariableArchiveSaveParam, String>(user).run(getVariableArchiveWrapper(user)::createData, saveParam);
} else {
// 更新
return new ResponseResult<VariableArchiveSaveParam, String>(user).run(getVariableArchiveWrapper(user)::updateData, saveParam);
}
} }

View File

@ -52,7 +52,7 @@ public class VariableArchiveWrapper extends Service {
//薪资档案列表 //薪资档案列表
PageInfo<VariableArchiveListDTO> pageInfo = getVariableArchiveService(user).listPage(queryParam); PageInfo<VariableArchiveListDTO> pageInfo = getVariableArchiveService(user).listPage(queryParam);
Collection<VariableArchiveListDTO> salaryArchives = pageInfo.getList(); List<VariableArchiveListDTO> salaryArchives = pageInfo.getList();
// 获取所有浮动薪酬项目 // 获取所有浮动薪酬项目
List<VariableItemPO> variableItems = getVariableItemService(user).listAll(); List<VariableItemPO> variableItems = getVariableItemService(user).listAll();
@ -123,4 +123,8 @@ public class VariableArchiveWrapper extends Service {
public void deleteSelectVariableArchive(Collection<Long> deleteIds) { public void deleteSelectVariableArchive(Collection<Long> deleteIds) {
getVariableArchiveService(user).deleteSelectVariableArchive(deleteIds); getVariableArchiveService(user).deleteSelectVariableArchive(deleteIds);
} }
public void updateData(VariableArchiveSaveParam updateParam) {
getVariableArchiveService(user).updateData(updateParam);
}
} }