薪酬系统-福利台账,补差数据删除v1

This commit is contained in:
sy 2022-12-08 16:23:18 +08:00
parent ab6c0940c2
commit 0210f6542f
4 changed files with 87 additions and 0 deletions

View File

@ -0,0 +1,10 @@
package com.engine.salary.service;
import com.engine.salary.entity.siaccount.param.InspectAccountParam;
public interface SIBalanceService {
void del(InspectAccountParam param, Long employeeId);
}

View File

@ -0,0 +1,49 @@
package com.engine.salary.service.impl;
import com.api.formmode.mybatis.util.SqlProxyHandle;
import com.engine.common.util.ServiceUtil;
import com.engine.core.impl.Service;
import com.engine.salary.entity.siaccount.param.InspectAccountParam;
import com.engine.salary.exception.SalaryRunTimeException;
import com.engine.salary.mapper.siaccount.InsuranceAccountDetailMapper;
import com.engine.salary.service.SIAccountService;
import com.engine.salary.service.SIBalanceService;
import com.engine.salary.util.SalaryI18nUtil;
import com.google.common.collect.Lists;
import org.apache.commons.collections4.CollectionUtils;
import weaver.hrm.User;
import java.util.List;
/**
* @Author: sy
* @Description: 福利台账-补差实现类
* @Date: 2022/12/8
**/
public class SIBalanceServiceImpl extends Service implements SIBalanceService {
private InsuranceAccountDetailMapper getInsuranceAccountDetailMapper() {
return SqlProxyHandle.getProxy(InsuranceAccountDetailMapper.class);
}
private SIAccountService getSIAccountService(User user) {
return ServiceUtil.getService(SIAccountServiceImpl.class, user);
}
@Override
public void del(InspectAccountParam param, Long employeeId) {
//入参判断
if (CollectionUtils.isEmpty(param.getIds()) || param.getPaymentOrganization() == null || param.getBillMonth() == null) {
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(84026, "参数错误"));
}
//根据id删除
List<List<Long>> partition = Lists.partition((List<Long>) param.getIds(), 100);
partition.forEach(getInsuranceAccountDetailMapper()::batchDelAccountDetailsByIds);
//刷新bill_batch表中统计信息
getSIAccountService(user).refreshBillBatch(param.getPaymentOrganization(), param.getBillMonth());
}
}

View File

@ -848,5 +848,17 @@ public class SIAccountController {
User user = HrmUserVarify.getUser(request, response);
return new ResponseResult<InsuranceAcctImportParam, Map<String, Object>>(user).run(getService(user)::importBalanceInsuranceDetail, insuranceAcctImportParam);
}
/**
* 删除补差
*/
@POST
@Path("/delBalance")
@Produces(MediaType.APPLICATION_JSON)
public String delBalance(@Context HttpServletRequest request, @Context HttpServletResponse response,
@RequestBody InspectAccountParam param) {
User user = HrmUserVarify.getUser(request, response);
return new ResponseResult<InspectAccountParam, String>(user).run(getSIAccountWrapper(user)::delBalance, param);
}
// **********************************补差 end*********************************/
}

View File

@ -7,9 +7,12 @@ import com.engine.salary.entity.hrm.dto.HrmInfoDTO;
import com.engine.salary.entity.hrm.param.HrmQueryParam;
import com.engine.salary.entity.siaccount.dto.InsuranceCompensationDTO;
import com.engine.salary.entity.siaccount.param.CompensationParam;
import com.engine.salary.entity.siaccount.param.InspectAccountParam;
import com.engine.salary.entity.siaccount.param.RecessionParam;
import com.engine.salary.service.SIBalanceService;
import com.engine.salary.service.SICompensationService;
import com.engine.salary.service.SIRecessionService;
import com.engine.salary.service.impl.SIBalanceServiceImpl;
import com.engine.salary.service.impl.SICompensationServiceImpl;
import com.engine.salary.service.impl.SIRecessionServiceImpl;
import com.engine.salary.util.page.PageInfo;
@ -34,6 +37,10 @@ public class SIAccountWrapper extends Service {
return (SICompensationService) ServiceUtil.getService(SICompensationServiceImpl.class, user);
}
private SIBalanceService getSIBalanceService(User user) {
return (SIBalanceService) ServiceUtil.getService(SIBalanceServiceImpl.class, user);
}
/**
* 新增退差数据
* @param param 退差请求体
@ -114,4 +121,13 @@ public class SIAccountWrapper extends Service {
public Map<String, Object> compensationList(InsuranceCompensationDTO param) {
return getSICompensationService(user).compensationList(param.getBillMonth(), param.getPaymentOrganization());
}
/**
* 删除补差数据
* @param param 表数据id集合账单月个税扣缴义务人
*/
public void delBalance(InspectAccountParam param) {
long currentEmployeeId = user.getUID();
getSIBalanceService(user).del(param, currentEmployeeId);
}
}