申报表异常
This commit is contained in:
parent
22de36ce59
commit
d2a37df97f
|
|
@ -2,8 +2,6 @@ package com.engine.salary.mapper.taxdeclaration;
|
|||
|
||||
import com.engine.salary.entity.taxdeclaration.TaxDeclarationDetail;
|
||||
import com.engine.salary.entity.taxdeclaration.po.TaxDeclarationDetailPO;
|
||||
import com.engine.salary.util.page.PageInfo;
|
||||
import com.fapiao.neon.model.in.Page;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
|
|
@ -102,4 +100,11 @@ public interface TaxDeclarationDetailMapper {
|
|||
* @return
|
||||
*/
|
||||
List<TaxDeclarationDetailPO> listByTaxDeclarationIdAndEmployeeIds(@Param("taxDeclarationId") Long taxDeclarationId, @Param("collection") List<Long> employeeIds);
|
||||
|
||||
/**
|
||||
* 根据个税申报表id删除
|
||||
*
|
||||
* @param taxDeclarationIds
|
||||
*/
|
||||
void deleteByTaxDeclarationIds(@Param("taxDeclarationIds") Collection<Long> taxDeclarationIds);
|
||||
}
|
||||
|
|
@ -298,4 +298,14 @@
|
|||
</delete>
|
||||
|
||||
|
||||
<update id="deleteByTaxDeclarationIds">
|
||||
UPDATE hrsa_tax_declaration_detail
|
||||
SET delete_type = 1
|
||||
WHERE delete_type = 0
|
||||
AND tax_declaration_id IN
|
||||
<foreach collection="taxDeclarationIds" open="(" item="taxDeclarationIds" separator="," close=")">
|
||||
#{taxDeclarationIds}
|
||||
</foreach>
|
||||
</update>
|
||||
|
||||
</mapper>
|
||||
|
|
@ -74,5 +74,12 @@ public interface TaxDeclarationMapper {
|
|||
* @param taxDeclarationDetails
|
||||
*/
|
||||
void batchInsert(@Param("collection") Collection<TaxDeclarationPO> taxDeclarationDetails);
|
||||
|
||||
|
||||
/**
|
||||
* 根据id删除个税申报表
|
||||
*
|
||||
* @param ids
|
||||
*/
|
||||
void deleteByIds(@Param("ids") Collection<Long> ids);
|
||||
|
||||
}
|
||||
|
|
@ -249,5 +249,14 @@
|
|||
AND delete_type = 0
|
||||
</delete>
|
||||
|
||||
<update id="deleteByIds">
|
||||
UPDATE hrsa_tax_declaration
|
||||
SET delete_type = 1
|
||||
WHERE delete_type = 0
|
||||
AND id IN
|
||||
<foreach collection="ids" open="(" item="id" separator="," close=")">
|
||||
#{id}
|
||||
</foreach>
|
||||
</update>
|
||||
|
||||
</mapper>
|
||||
|
|
@ -38,7 +38,7 @@ public interface SalarySendService {
|
|||
* @param currentTenantKey
|
||||
* @return
|
||||
*/
|
||||
void revokeSalaryBill(Long salaryAccountingId, Long currentEmployeeId, String currentTenantKey);
|
||||
void revokeSalaryBill(Long salaryAccountingId);
|
||||
|
||||
/**
|
||||
* 工资单发放列表(分页)
|
||||
|
|
|
|||
|
|
@ -6,7 +6,6 @@ import com.engine.salary.entity.taxdeclaration.dto.TaxDeclarationWageListDTO;
|
|||
import com.engine.salary.entity.taxdeclaration.param.TaxDeclarationDetailListQueryParam;
|
||||
import com.engine.salary.entity.taxdeclaration.po.TaxDeclarationDetailPO;
|
||||
import com.engine.salary.util.page.PageInfo;
|
||||
import com.fapiao.neon.model.in.Page;
|
||||
|
||||
import java.util.Collection;
|
||||
|
||||
|
|
@ -42,7 +41,6 @@ public interface TaxDeclarationDetailService {
|
|||
* 根据列表查询条件查询个税申报列表明细
|
||||
*
|
||||
* @param queryParam 列表查询条件
|
||||
* @param tenantKey 租户key
|
||||
* @return
|
||||
*/
|
||||
PageInfo<TaxDeclarationDetailListDTO> listDtoPageByParam(TaxDeclarationDetailListQueryParam queryParam);
|
||||
|
|
@ -51,7 +49,6 @@ public interface TaxDeclarationDetailService {
|
|||
* 根据列表查询条件查询个税申报列表明细(劳务报酬所得)
|
||||
*
|
||||
* @param queryParam 列表查询条件
|
||||
* @param tenantKey 租户key
|
||||
* @return
|
||||
*/
|
||||
PageInfo<TaxDeclarationLaborListDTO> listDtoPageByParam4Labor(TaxDeclarationDetailListQueryParam queryParam);
|
||||
|
|
@ -60,7 +57,6 @@ public interface TaxDeclarationDetailService {
|
|||
* 根据列表查询条件查询个税申报列表明细(正常工资薪金所得)
|
||||
*
|
||||
* @param queryParam 列表查询条件
|
||||
* @param tenantKey 租户key
|
||||
* @return
|
||||
*/
|
||||
PageInfo<TaxDeclarationWageListDTO> listDtoPageByParam4Wage(TaxDeclarationDetailListQueryParam queryParam);
|
||||
|
|
@ -71,4 +67,11 @@ public interface TaxDeclarationDetailService {
|
|||
* @param taxDeclarationDetailPOS 个税申报表明细po
|
||||
*/
|
||||
void batchSave(Collection<TaxDeclarationDetailPO> taxDeclarationDetailPOS);
|
||||
|
||||
/**
|
||||
* 根据个税申报表id删除个税申报表详情
|
||||
*
|
||||
* @param taxDeclarationIds 个税申报表id
|
||||
*/
|
||||
void deleteByTaxDeclarationIds(Collection<Long> taxDeclarationIds);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -7,6 +7,7 @@ import com.engine.salary.entity.taxdeclaration.po.TaxDeclarationPO;
|
|||
import com.engine.salary.entity.taxrate.TaxAgent;
|
||||
import com.engine.salary.util.page.PageInfo;
|
||||
|
||||
import java.time.YearMonth;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
|
@ -35,4 +36,12 @@ public interface TaxDeclarationService {
|
|||
|
||||
Map<String, Object> delete(Map<String, Object> params);
|
||||
|
||||
/**
|
||||
* 删除个税申报表
|
||||
*
|
||||
* @param salaryMonth
|
||||
* @param tenantKey
|
||||
*/
|
||||
void deleteBySalaryMonth(YearMonth salaryMonth);
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -65,21 +65,21 @@ public class SalaryAcctRecordServiceImpl extends Service implements SalaryAcctRe
|
|||
private SalarySendService getSalarySendService(User user) {
|
||||
return ServiceUtil.getService(SalarySendServiceImpl.class, user);
|
||||
}
|
||||
// private SalaryCheckResultService salaryCheckResultService;
|
||||
|
||||
// private SalaryCheckResultService salaryCheckResultService;
|
||||
//
|
||||
// private SalaryCheckResultDetailService salaryCheckResultDetailService;
|
||||
//
|
||||
private SalaryComparisonResultService getSalaryComparisonResultService(User user) {
|
||||
return ServiceUtil.getService(SalaryComparisonResultServiceImpl.class, user);
|
||||
}
|
||||
|
||||
//
|
||||
// private SalarySendService salarySendService;
|
||||
//
|
||||
|
||||
//
|
||||
// private LoggerTemplate salaryAcctRecordLoggerTemplate;
|
||||
//
|
||||
// private TaxDeclarationService taxDeclarationService;
|
||||
|
||||
private TaxDeclarationService getTaxDeclarationService(User user) {
|
||||
return (TaxDeclarationService) ServiceUtil.getService(TaxDeclarationServiceImpl.class, user);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SalaryAcctRecordPO getById(Long id) {
|
||||
|
|
@ -412,10 +412,10 @@ public class SalaryAcctRecordServiceImpl extends Service implements SalaryAcctRe
|
|||
salaryAcctRecordPO.setStatus(SalaryAcctRecordStatusEnum.NOT_ARCHIVED.getValue());
|
||||
salaryAcctRecordPO.setUpdateTime(new Date());
|
||||
getSalaryAcctRecordMapper().updateIgnoreNull(salaryAcctRecordPO);
|
||||
//todo 撤回工资单
|
||||
// salarySendService.revokeSalaryBill(salaryAcctRecordId);
|
||||
//todo 删除个税申报表(个税申报表、个税申报表详情、往期累计情况)
|
||||
// taxDeclarationService.deleteBySalaryMonth(SalaryDateUtil.localDate2YearMonth(salaryAcctRecordPO.getSalaryMonth()), tenantKey);
|
||||
//撤回工资单
|
||||
getSalarySendService(user).revokeSalaryBill(salaryAcctRecordId);
|
||||
//删除个税申报表(个税申报表、个税申报表详情、往期累计情况)
|
||||
getTaxDeclarationService(user).deleteBySalaryMonth(SalaryDateUtil.localDate2YearMonth(salaryAcctRecordPO.getSalaryMonth()));
|
||||
// 记录日志
|
||||
// String targetName = getLogTargetNameById(salaryAcctRecordPO.getId(), tenantKey);
|
||||
// LoggerContext<SalaryAcctRecordPO> loggerContext = new LoggerContext<>();
|
||||
|
|
|
|||
|
|
@ -44,7 +44,6 @@ import org.apache.commons.lang3.StringUtils;
|
|||
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import weaver.hrm.User;
|
||||
|
||||
import java.lang.reflect.InvocationTargetException;
|
||||
|
|
@ -228,7 +227,7 @@ public class SalarySendServiceImpl extends Service implements SalarySendService
|
|||
}
|
||||
|
||||
@Override
|
||||
public void revokeSalaryBill(Long salaryAccountingId, Long currentEmployeeId, String currentTenantKey) {
|
||||
public void revokeSalaryBill(Long salaryAccountingId) {
|
||||
// 校验salaryAccountingId
|
||||
if (salaryAccountingId == null) {
|
||||
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(100497, "核算id必传"));
|
||||
|
|
|
|||
|
|
@ -2,7 +2,6 @@ package com.engine.salary.service.impl;
|
|||
|
||||
import com.engine.common.util.ServiceUtil;
|
||||
import com.engine.core.impl.Service;
|
||||
import com.engine.salary.biz.EmployBiz;
|
||||
import com.engine.salary.entity.datacollection.DataCollectionEmployee;
|
||||
import com.engine.salary.entity.taxdeclaration.bo.TaxDeclarationBO;
|
||||
import com.engine.salary.entity.taxdeclaration.dto.TaxDeclarationDetailListDTO;
|
||||
|
|
@ -10,26 +9,16 @@ import com.engine.salary.entity.taxdeclaration.dto.TaxDeclarationLaborListDTO;
|
|||
import com.engine.salary.entity.taxdeclaration.dto.TaxDeclarationWageListDTO;
|
||||
import com.engine.salary.entity.taxdeclaration.param.TaxDeclarationDetailListQueryParam;
|
||||
import com.engine.salary.entity.taxdeclaration.po.TaxDeclarationDetailPO;
|
||||
import com.engine.salary.entity.taxdeclaration.po.TaxDeclarationPO;
|
||||
import com.engine.salary.mapper.taxdeclaration.TaxDeclarationDetailMapper;
|
||||
import com.engine.salary.service.SalaryEmployeeService;
|
||||
import com.engine.salary.service.TaxAgentService;
|
||||
import com.engine.salary.service.TaxDeclarationDetailService;
|
||||
import com.engine.salary.util.SalaryEntityUtil;
|
||||
import com.engine.salary.util.db.MapperProxyFactory;
|
||||
import com.engine.salary.util.page.PageInfo;
|
||||
import com.fapiao.neon.model.in.Page;
|
||||
import com.mzlion.core.lang.CollectionUtils;
|
||||
import weaver.hrm.User;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collection;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static com.engine.salary.entity.siaccount.param.DSTenantKeyThreadVar.tenantKey;
|
||||
|
||||
/**
|
||||
* @description: 个税申报表明细
|
||||
|
|
@ -40,7 +29,7 @@ import static com.engine.salary.entity.siaccount.param.DSTenantKeyThreadVar.tena
|
|||
*/
|
||||
public class TaxDeclarationDetailServiceImpl extends Service implements TaxDeclarationDetailService {
|
||||
|
||||
private TaxDeclarationDetailMapper getTaxDeclarationDetailMapper(User user) {
|
||||
private TaxDeclarationDetailMapper getTaxDeclarationDetailMapper() {
|
||||
return MapperProxyFactory.getProxy(TaxDeclarationDetailMapper.class);
|
||||
}
|
||||
private SalaryEmployeeService getSalaryEmployeeService() {
|
||||
|
|
@ -71,7 +60,7 @@ public class TaxDeclarationDetailServiceImpl extends Service implements TaxDecla
|
|||
@Override
|
||||
public PageInfo<TaxDeclarationDetailListDTO> listDtoPageByParam(TaxDeclarationDetailListQueryParam queryParam) {
|
||||
// 查询个税申报表明细的人员
|
||||
List<Long> employeeIdPage = getTaxDeclarationDetailMapper(user).listEmployeeId(queryParam.getTaxDeclarationId());
|
||||
List<Long> employeeIdPage = getTaxDeclarationDetailMapper().listEmployeeId(queryParam.getTaxDeclarationId());
|
||||
PageInfo<TaxDeclarationDetailListDTO> dtoPage = new PageInfo<TaxDeclarationDetailListDTO>(TaxDeclarationDetailListDTO.class);
|
||||
dtoPage.setPageNum(queryParam.getCurrent());
|
||||
dtoPage.setPageSize(queryParam.getPageSize());
|
||||
|
|
@ -102,7 +91,7 @@ public class TaxDeclarationDetailServiceImpl extends Service implements TaxDecla
|
|||
|
||||
@Override
|
||||
public void batchSave(Collection<TaxDeclarationDetailPO> taxDeclarationDetailPOS) {
|
||||
getTaxDeclarationDetailMapper(user).batchInsert(taxDeclarationDetailPOS);
|
||||
getTaxDeclarationDetailMapper().batchInsert(taxDeclarationDetailPOS);
|
||||
}
|
||||
public List<TaxDeclarationDetailPO> listByTaxDeclarationIdAndEmployeeIds(Long taxDeclarationId, List<Long> employeeIds) {
|
||||
if (CollectionUtils.isEmpty(employeeIds)) {
|
||||
|
|
@ -115,6 +104,11 @@ public class TaxDeclarationDetailServiceImpl extends Service implements TaxDecla
|
|||
// .eq(TaxDeclarationDetailPO::getTaxDeclarationId, taxDeclarationId)
|
||||
// .in(TaxDeclarationDetailPO::getEmployeeId, employeeIds)
|
||||
// .list();
|
||||
return getTaxDeclarationDetailMapper(user).listByTaxDeclarationIdAndEmployeeIds(taxDeclarationId,employeeIds);
|
||||
return getTaxDeclarationDetailMapper().listByTaxDeclarationIdAndEmployeeIds(taxDeclarationId,employeeIds);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteByTaxDeclarationIds(Collection<Long> taxDeclarationIds) {
|
||||
getTaxDeclarationDetailMapper().deleteByTaxDeclarationIds(taxDeclarationIds);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
package com.engine.salary.service.impl;
|
||||
|
||||
import com.engine.common.util.ServiceUtil;
|
||||
import com.engine.core.impl.Service;
|
||||
import com.engine.salary.cmd.taxDeclaration.*;
|
||||
import com.engine.salary.common.LocalDateRange;
|
||||
|
|
@ -9,18 +10,24 @@ import com.engine.salary.entity.taxdeclaration.param.TaxDeclarationSaveParam;
|
|||
import com.engine.salary.entity.taxdeclaration.po.TaxDeclarationPO;
|
||||
import com.engine.salary.entity.taxrate.TaxAgent;
|
||||
import com.engine.salary.entity.taxrate.param.TaxAgentQueryParam;
|
||||
import com.engine.salary.exception.SalaryRunTimeException;
|
||||
import com.engine.salary.mapper.TaxAgentMapper;
|
||||
import com.engine.salary.mapper.taxdeclaration.TaxDeclarationMapper;
|
||||
import com.engine.salary.service.AddUpSituationService;
|
||||
import com.engine.salary.service.TaxDeclarationDetailService;
|
||||
import com.engine.salary.service.TaxDeclarationService;
|
||||
import com.engine.salary.util.SalaryDateUtil;
|
||||
import com.engine.salary.util.SalaryEntityUtil;
|
||||
import com.engine.salary.util.SalaryI18nUtil;
|
||||
import com.engine.salary.util.db.MapperProxyFactory;
|
||||
import com.engine.salary.util.page.PageInfo;
|
||||
import com.engine.salary.util.page.PageUtil;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.apache.ibatis.session.SqlSession;
|
||||
import weaver.conn.mybatis.MyBatisFactory;
|
||||
import weaver.hrm.User;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.time.YearMonth;
|
||||
import java.util.*;
|
||||
|
||||
public class TaxDeclarationServiceImpl extends Service implements TaxDeclarationService {
|
||||
|
|
@ -29,6 +36,14 @@ public class TaxDeclarationServiceImpl extends Service implements TaxDeclaration
|
|||
return MapperProxyFactory.getProxy(TaxDeclarationMapper.class);
|
||||
}
|
||||
|
||||
private TaxDeclarationDetailService getTaxDeclarationDetailService(User user) {
|
||||
return (TaxDeclarationDetailService) ServiceUtil.getService(TaxDeclarationDetailServiceImpl.class, user);
|
||||
}
|
||||
|
||||
private AddUpSituationService getAddUpSituationService(User user) {
|
||||
return (AddUpSituationService) ServiceUtil.getService(AddUpSituationServiceImpl.class, user);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> listPage(Map<String, Object> params) {
|
||||
return commandExecutor.execute(new TaxDeclarationListCmd(params, user));
|
||||
|
|
@ -54,6 +69,7 @@ public class TaxDeclarationServiceImpl extends Service implements TaxDeclaration
|
|||
|
||||
return page;
|
||||
}
|
||||
|
||||
//根据id查询taxAgents
|
||||
@Override
|
||||
public List<TaxAgent> countByTaxDeclarationId(Collection<Long> taxAgentIds) {
|
||||
|
|
@ -68,6 +84,7 @@ public class TaxDeclarationServiceImpl extends Service implements TaxDeclaration
|
|||
sqlSession.close();
|
||||
}
|
||||
}
|
||||
|
||||
//根据id获取TaxDeclaration
|
||||
@Override
|
||||
public TaxDeclaration getById(Long id) {
|
||||
|
|
@ -94,8 +111,34 @@ public class TaxDeclarationServiceImpl extends Service implements TaxDeclaration
|
|||
public Map<String, Object> update(Map<String, Object> params) {
|
||||
return commandExecutor.execute(new TaxDeclarationUpdateCmd(params, user));
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<String, Object> delete(Map<String, Object> params) {
|
||||
return commandExecutor.execute(new TaxDeclarationDeleteCmd(params, user));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteBySalaryMonth(YearMonth salaryMonth) {
|
||||
// 薪资所属月的日期范围
|
||||
LocalDateRange salaryMonthDateRange = SalaryDateUtil.localDate2Range(SalaryDateUtil.localDateToDate(salaryMonth.atDay(1)));
|
||||
if (Objects.isNull(salaryMonthDateRange)) {
|
||||
throw new SalaryRunTimeException(SalaryI18nUtil.getI18nLabel(84026, "参数错误"));
|
||||
}
|
||||
List<TaxDeclarationPO> taxDeclarationPOS = listBySalaryMonth(salaryMonthDateRange);
|
||||
if (CollectionUtils.isEmpty(taxDeclarationPOS)) {
|
||||
return;
|
||||
}
|
||||
// 删除个税申报表
|
||||
Set<Long> taxDeclarationIds = SalaryEntityUtil.properties(taxDeclarationPOS, TaxDeclarationPO::getId);
|
||||
getTaxDeclarationMapper().deleteByIds(taxDeclarationIds);
|
||||
// 删除个税申报表详情
|
||||
getTaxDeclarationDetailService(user).deleteByTaxDeclarationIds(taxDeclarationIds);
|
||||
// 删除往期累计情况
|
||||
getAddUpSituationService(user).deleteAddUpSituationList(salaryMonth, Collections.emptyList());
|
||||
}
|
||||
|
||||
public List<TaxDeclarationPO> listBySalaryMonth(LocalDateRange salaryMonthDateRange) {
|
||||
|
||||
return getTaxDeclarationMapper().listSome(TaxDeclarationPO.builder().salaryMonths(salaryMonthDateRange).build());
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue