2022-03-01 18:49:22 +08:00
|
|
|
package com.engine.salary.web;
|
|
|
|
|
|
2022-04-16 15:33:51 +08:00
|
|
|
import com.engine.common.util.ServiceUtil;
|
|
|
|
|
import com.engine.salary.entity.taxdeclaration.dto.TaxDeclarationFormDTO;
|
|
|
|
|
import com.engine.salary.entity.taxdeclaration.dto.TaxDeclarationInfoDTO;
|
|
|
|
|
import com.engine.salary.entity.taxdeclaration.dto.TaxDeclarationListDTO;
|
2022-04-19 20:58:30 +08:00
|
|
|
import com.engine.salary.entity.taxdeclaration.param.TaxDeclarationDetailListQueryParam;
|
2022-04-16 15:33:51 +08:00
|
|
|
import com.engine.salary.entity.taxdeclaration.param.TaxDeclarationListQueryParam;
|
|
|
|
|
import com.engine.salary.entity.taxdeclaration.param.TaxDeclarationSaveParam;
|
2023-08-10 09:33:04 +08:00
|
|
|
import com.engine.salary.entity.taxdeclaration.param.TaxDeclareRecordParam;
|
2022-04-18 18:56:17 +08:00
|
|
|
import com.engine.salary.service.TaxDeclarationExcelService;
|
2022-04-16 15:33:51 +08:00
|
|
|
import com.engine.salary.service.TaxDeclarationService;
|
2022-04-18 18:56:17 +08:00
|
|
|
import com.engine.salary.service.impl.TaxDeclarationExcelServiceImpl;
|
2022-04-16 15:33:51 +08:00
|
|
|
import com.engine.salary.service.impl.TaxDeclarationServiceImpl;
|
|
|
|
|
import com.engine.salary.util.ResponseResult;
|
|
|
|
|
import com.engine.salary.util.SalaryDateUtil;
|
|
|
|
|
import com.engine.salary.util.page.PageInfo;
|
2022-04-19 20:58:30 +08:00
|
|
|
import com.engine.salary.wrapper.TaxDeclarationDetailWrapper;
|
2022-04-16 15:33:51 +08:00
|
|
|
import com.engine.salary.wrapper.TaxDeclarationWrapper;
|
2023-08-10 09:33:04 +08:00
|
|
|
import com.engine.salary.wrapper.TaxDeclareRecordWrapper;
|
|
|
|
|
import io.swagger.annotations.ApiOperation;
|
2022-04-16 15:33:51 +08:00
|
|
|
import io.swagger.v3.oas.annotations.parameters.RequestBody;
|
2022-05-09 10:32:14 +08:00
|
|
|
import lombok.extern.slf4j.Slf4j;
|
2022-04-18 18:56:17 +08:00
|
|
|
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
|
2023-08-10 09:33:04 +08:00
|
|
|
import org.springframework.web.bind.annotation.RequestParam;
|
2022-04-16 15:33:51 +08:00
|
|
|
import weaver.hrm.HrmUserVarify;
|
|
|
|
|
import weaver.hrm.User;
|
|
|
|
|
|
|
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
|
|
import javax.ws.rs.*;
|
|
|
|
|
import javax.ws.rs.core.Context;
|
|
|
|
|
import javax.ws.rs.core.MediaType;
|
2022-04-18 18:56:17 +08:00
|
|
|
import javax.ws.rs.core.Response;
|
|
|
|
|
import javax.ws.rs.core.StreamingOutput;
|
|
|
|
|
import java.io.UnsupportedEncodingException;
|
|
|
|
|
import java.net.URLEncoder;
|
|
|
|
|
import java.text.ParseException;
|
2022-05-09 10:32:14 +08:00
|
|
|
import java.time.LocalDate;
|
2023-08-10 09:33:04 +08:00
|
|
|
import java.util.Collection;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
import java.util.Map;
|
2022-04-16 15:33:51 +08:00
|
|
|
|
|
|
|
|
|
2022-05-09 10:32:14 +08:00
|
|
|
@Slf4j
|
2022-03-01 18:49:22 +08:00
|
|
|
public class TaxDeclarationController {
|
|
|
|
|
|
2022-05-09 10:32:14 +08:00
|
|
|
private TaxDeclarationService getService(User user) {
|
2022-06-14 11:13:31 +08:00
|
|
|
return ServiceUtil.getService(TaxDeclarationServiceImpl.class, user);
|
2022-05-09 10:32:14 +08:00
|
|
|
}
|
2022-04-16 15:33:51 +08:00
|
|
|
|
2022-05-09 10:32:14 +08:00
|
|
|
private TaxDeclarationWrapper getTaxDeclarationWrapper(User user) {
|
|
|
|
|
return ServiceUtil.getService(TaxDeclarationWrapper.class, user);
|
|
|
|
|
}
|
2022-04-16 15:33:51 +08:00
|
|
|
|
2022-05-09 10:32:14 +08:00
|
|
|
private TaxDeclarationExcelService getTaxDeclarationExcelService(User user) {
|
2022-06-14 11:13:31 +08:00
|
|
|
return ServiceUtil.getService(TaxDeclarationExcelServiceImpl.class, user);
|
2022-05-09 10:32:14 +08:00
|
|
|
}
|
2022-04-16 15:33:51 +08:00
|
|
|
|
2022-05-09 10:32:14 +08:00
|
|
|
private TaxDeclarationDetailWrapper getTaxDeclarationDetailWrapper(User user) {
|
|
|
|
|
return ServiceUtil.getService(TaxDeclarationDetailWrapper.class, user);
|
|
|
|
|
}
|
|
|
|
|
|
2023-08-10 09:33:04 +08:00
|
|
|
private TaxDeclareRecordWrapper getTaxDeclareRecordWrapper(User user) {
|
|
|
|
|
return ServiceUtil.getService(TaxDeclareRecordWrapper.class, user);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
2022-05-09 10:32:14 +08:00
|
|
|
//个税申报表列表
|
|
|
|
|
@POST
|
|
|
|
|
@Path("/list")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public String list(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody TaxDeclarationListQueryParam queryParam) throws ParseException {
|
|
|
|
|
User user = HrmUserVarify.getUser(request, response);
|
|
|
|
|
queryParam.setFromSalaryMonth(SalaryDateUtil.String2YearMonth(queryParam.getFromSalaryMonthStr() == null ? "" : queryParam.getFromSalaryMonthStr()));
|
|
|
|
|
queryParam.setEndSalaryMonth(SalaryDateUtil.String2YearMonth(queryParam.getEndSalaryMonthStr() == null ? "" : queryParam.getEndSalaryMonthStr()));
|
|
|
|
|
return new ResponseResult<TaxDeclarationListQueryParam, PageInfo<TaxDeclarationListDTO>>(user).run(getTaxDeclarationWrapper(user)::listPage, queryParam);
|
|
|
|
|
}
|
|
|
|
|
|
2023-06-12 10:40:01 +08:00
|
|
|
@POST
|
|
|
|
|
@Path("/withDrawTaxDeclaration")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public String deleteTaxDeclaration(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody TaxDeclarationSaveParam param) {
|
|
|
|
|
User user = HrmUserVarify.getUser(request, response);
|
|
|
|
|
return new ResponseResult<Long, String>(user).run(getTaxDeclarationWrapper(user)::withDrawTaxDeclaration, param.getTaxDeclarationId());
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
2022-05-09 10:32:14 +08:00
|
|
|
//个税申报表表单
|
|
|
|
|
@GET
|
|
|
|
|
@Path("/getForm")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public String getForm(@Context HttpServletRequest request, @Context HttpServletResponse response, @QueryParam(value = "id") Long id) {
|
|
|
|
|
User user = HrmUserVarify.getUser(request, response);
|
|
|
|
|
return new ResponseResult<Long, TaxDeclarationFormDTO>(user).run(getTaxDeclarationWrapper(user)::getForm, id);
|
|
|
|
|
}
|
2022-04-16 15:33:51 +08:00
|
|
|
|
2022-05-09 10:32:14 +08:00
|
|
|
//个税申报表相关信息
|
|
|
|
|
@GET
|
|
|
|
|
@Path("/getTaxDeclarationInfo")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public String getTaxDeclarationInfo(@Context HttpServletRequest request, @Context HttpServletResponse response, @QueryParam(value = "taxDeclarationId") Long taxDeclarationId) {
|
|
|
|
|
User user = HrmUserVarify.getUser(request, response);
|
|
|
|
|
return new ResponseResult<Long, TaxDeclarationInfoDTO>(user).run(getTaxDeclarationWrapper(user)::getTaxDeclarationInfoById, taxDeclarationId);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//个税申报表生成
|
|
|
|
|
@POST
|
|
|
|
|
@Path("/save")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public String save(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody TaxDeclarationSaveParam param) {
|
|
|
|
|
User user = HrmUserVarify.getUser(request, response);
|
|
|
|
|
param.setSalaryMonth(SalaryDateUtil.String2YearMonth(param.getSalaryMonthStr()));
|
|
|
|
|
return new ResponseResult<TaxDeclarationSaveParam, Long>(user).run(getTaxDeclarationWrapper(user)::save, param);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//个税申报表详情列表
|
|
|
|
|
@POST
|
|
|
|
|
@Path("/detail/list")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public String listTaxDeclarationDetail(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody TaxDeclarationDetailListQueryParam param) {
|
|
|
|
|
User user = HrmUserVarify.getUser(request, response);
|
|
|
|
|
param.setTaxDeclarationId(Long.parseLong(param.getTaxDeclarationIdStr()));
|
2022-06-10 13:33:48 +08:00
|
|
|
return new ResponseResult<TaxDeclarationDetailListQueryParam, PageInfo>(user).run(getTaxDeclarationDetailWrapper(user)::listPage, param);
|
2022-05-09 10:32:14 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//个税申报表相关信息
|
|
|
|
|
@GET
|
|
|
|
|
@Path("/export")
|
|
|
|
|
@Produces(MediaType.APPLICATION_OCTET_STREAM)
|
|
|
|
|
public Response exportTaxDeclaration(@Context HttpServletRequest request, @Context HttpServletResponse response, @QueryParam(value = "taxDeclarationId") Long taxDeclarationId) {
|
|
|
|
|
try {
|
2022-04-18 18:56:17 +08:00
|
|
|
User user = HrmUserVarify.getUser(request, response);
|
|
|
|
|
XSSFWorkbook workbook = getTaxDeclarationExcelService(user).exportTaxDeclaration(taxDeclarationId);
|
|
|
|
|
|
2022-05-09 10:32:14 +08:00
|
|
|
String fileName = "个税申报表" + LocalDate.now();
|
2022-04-18 18:56:17 +08:00
|
|
|
try {
|
|
|
|
|
fileName = URLEncoder.encode(fileName + ".xlsx", "UTF-8");
|
|
|
|
|
} catch (UnsupportedEncodingException e) {
|
|
|
|
|
e.printStackTrace();
|
|
|
|
|
}
|
2022-03-01 18:49:22 +08:00
|
|
|
|
2022-04-18 18:56:17 +08:00
|
|
|
StreamingOutput output = outputStream -> {
|
|
|
|
|
workbook.write(outputStream);
|
|
|
|
|
outputStream.flush();
|
|
|
|
|
};
|
|
|
|
|
response.setContentType("application/octet-stream");
|
|
|
|
|
return Response.ok(output).header("Content-disposition", "attachment;filename=" + fileName).header("Cache-Control", "no-cache").build();
|
2022-05-09 10:32:14 +08:00
|
|
|
} catch (Exception e) {
|
|
|
|
|
log.error("个税申报表导出异常", e);
|
|
|
|
|
throw e;
|
2022-04-18 18:56:17 +08:00
|
|
|
}
|
2022-05-09 10:32:14 +08:00
|
|
|
}
|
2023-08-10 09:33:04 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 刷新个税申报表的待刷新标识
|
|
|
|
|
*
|
|
|
|
|
* @param param 更新参数
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
@Path("/updateIcon")
|
|
|
|
|
@ApiOperation("刷新个税申报表的待刷新标识")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public String updateIcon(@Context HttpServletRequest request, @Context HttpServletResponse response,@RequestBody TaxDeclareRecordParam param) {
|
|
|
|
|
taxDeclareRecordWrapper.updateIcon(param.getTaxDeclareRecordId(), UserContext.getCurrentEmployeeId(), TenantContext.getCurrentTenantKey());
|
|
|
|
|
return WeaResult.success(null);
|
|
|
|
|
User user = HrmUserVarify.getUser(request, response);
|
2023-08-11 14:20:14 +08:00
|
|
|
return new ResponseResult<Long, TaxDeclarationInfoDTO>(user).run(getTaxDeclareRecordWrapper(user)::updateIcon, taxDeclarationId);
|
2023-08-10 09:33:04 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 个税申报表生成
|
|
|
|
|
*
|
|
|
|
|
* @param ids 个税申报记录id
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
@Path("/delete")
|
|
|
|
|
@ApiOperation("个税申报表生成")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public WeaResult<Object> delete(@RequestBody Collection<Long> ids) {
|
|
|
|
|
taxDeclareRecordWrapper.delete(ids, UserContext.getCurrentEmployeeId(), TenantContext.getCurrentTenantKey());
|
|
|
|
|
return WeaResult.success(null);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 个税申报表是否已经生成
|
|
|
|
|
*
|
|
|
|
|
* @param index 进度缓存索引
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
@GetMapping("/getRate")
|
|
|
|
|
@ApiOperation("个税申报表是否已经生成")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public WeaResult<TaxDeclarationRateDTO> getRate(@RequestParam(value = "index") String index) {
|
|
|
|
|
TaxDeclarationRateDTO rateDTO = taxDeclareRecordWrapper.getRate(index, TenantContext.getCurrentTenantKey());
|
|
|
|
|
return WeaResult.success(rateDTO);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 获取个税申报记录下的个税申报表TAB
|
|
|
|
|
*
|
|
|
|
|
* @param id 个税申报记录id
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
@GetMapping("/getTaxDeclarationTab")
|
|
|
|
|
@ApiOperation("获取个税申报记录下的个税申报表TAB")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public WeaResult<List<TaxDeclarationTabDTO>> getTaxDeclarationTab(@RequestParam(value = "id") Long id) {
|
|
|
|
|
List<TaxDeclarationTabDTO> taxDeclarationTab = taxDeclareRecordWrapper.getTaxDeclarationTab(id, UserContext.getCurrentEmployeeId(), TenantContext.getCurrentTenantKey());
|
|
|
|
|
return WeaResult.success(taxDeclarationTab);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 在线申报
|
|
|
|
|
*
|
|
|
|
|
* @param taxDeclareRecordParam 在线申报参数
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
@Path("/declare")
|
|
|
|
|
@ApiOperation("在线申报")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public WeaResult<Object> declare(@RequestBody @Validated TaxDeclareRecordParam taxDeclareRecordParam) {
|
|
|
|
|
String cacheKey = taxDeclareRecordWrapper.declare(taxDeclareRecordParam.getTaxDeclareRecordId(), UserContext.getCurrentEmployeeId(), TenantContext.getCurrentTenantKey());
|
|
|
|
|
return WeaResult.success(cacheKey);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 获取在线申报反馈
|
|
|
|
|
*
|
|
|
|
|
* @param taxDeclareRecordParam 申报反馈参数
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
@Path("/getDeclareFeedback")
|
|
|
|
|
@ApiOperation("获取在线申报反馈")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public WeaResult<Object> getDeclareFeedback(@RequestBody @Validated TaxDeclareRecordParam taxDeclareRecordParam) {
|
|
|
|
|
String cacheKey = taxDeclareRecordWrapper.getDeclareFeedback(taxDeclareRecordParam.getTaxDeclareRecordId(), UserContext.getCurrentEmployeeId(), TenantContext.getCurrentTenantKey());
|
|
|
|
|
return WeaResult.success(cacheKey);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 作废
|
|
|
|
|
*
|
|
|
|
|
* @param taxDeclareRecordParam 作废参数
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
@Path("/cancel")
|
|
|
|
|
@ApiOperation("作废")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public WeaResult<Object> cancel(@RequestBody @Validated TaxDeclareRecordParam taxDeclareRecordParam) {
|
|
|
|
|
String cacheKey = taxDeclareRecordWrapper.cancelDeclare(taxDeclareRecordParam.getTaxDeclareRecordId(), UserContext.getCurrentEmployeeId(), TenantContext.getCurrentTenantKey());
|
|
|
|
|
return WeaResult.success(cacheKey);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 获取作废反馈
|
|
|
|
|
*
|
|
|
|
|
* @param taxDeclareRecordParam 作废反馈参数
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
@Path("/getCancelFeedback")
|
|
|
|
|
@ApiOperation("获取作废反馈")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public WeaResult<Object> getCancelFeedback(@RequestBody @Validated TaxDeclareRecordParam taxDeclareRecordParam) {
|
|
|
|
|
String cacheKey = taxDeclareRecordWrapper.getCancelFeedback(taxDeclareRecordParam.getTaxDeclareRecordId(), UserContext.getCurrentEmployeeId(), TenantContext.getCurrentTenantKey());
|
|
|
|
|
return WeaResult.success(cacheKey);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 更正申报
|
|
|
|
|
*
|
|
|
|
|
* @param taxDeclareRecordParam 更正申报参数
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
@Path("/updateDeclare")
|
|
|
|
|
@ApiOperation("更正申报")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public WeaResult<Object> updateDeclare(@RequestBody @Validated TaxDeclareRecordParam taxDeclareRecordParam) {
|
|
|
|
|
String cacheKey = taxDeclareRecordWrapper.updateDeclare(taxDeclareRecordParam.getTaxDeclareRecordId(), UserContext.getCurrentEmployeeId(), TenantContext.getCurrentTenantKey());
|
|
|
|
|
return WeaResult.success(cacheKey);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 税局端申报状态查询
|
|
|
|
|
*
|
|
|
|
|
* @param taxDeclareRecordParam 查询参数
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
@Path("/queryDeclareStatus")
|
|
|
|
|
@ApiOperation("税局端申报状态查询")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public WeaResult<Object> queryDeclareStatus(@RequestBody @Validated TaxDeclareRecordParam taxDeclareRecordParam) {
|
|
|
|
|
String res = taxDeclareRecordWrapper.queryDeclareStatus(taxDeclareRecordParam.getTaxDeclareRecordId(), UserContext.getCurrentEmployeeId(), TenantContext.getCurrentTenantKey());
|
|
|
|
|
return WeaResult.success(res);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 税局端申报明细查询
|
|
|
|
|
*
|
|
|
|
|
* @param taxDeclareRecordParam 查询申报明细参数
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
@Path("/queryCompanyIncomes")
|
|
|
|
|
@ApiOperation("税局端申报明细查询")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public WeaResult<Object> queryCompanyIncomes(@RequestBody @Validated TaxDeclareRecordParam taxDeclareRecordParam) {
|
|
|
|
|
String res = taxDeclareRecordWrapper.queryCompanyIncomes(taxDeclareRecordParam.getTaxDeclareRecordId(), UserContext.getCurrentEmployeeId(), TenantContext.getCurrentTenantKey());
|
|
|
|
|
return WeaResult.success(res);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 刷新数据
|
|
|
|
|
*
|
|
|
|
|
* @param taxDeclareRecordParam 刷新数据参数
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
@Path("/refreshData")
|
|
|
|
|
@ApiOperation("刷新数据")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public WeaResult<Object> refreshData(@RequestBody @Validated TaxDeclareRecordParam taxDeclareRecordParam) {
|
|
|
|
|
String cacheKey = taxDeclareRecordWrapper.refreshData(taxDeclareRecordParam.getTaxDeclareRecordId(), UserContext.getCurrentEmployeeId(), TenantContext.getCurrentTenantKey());
|
|
|
|
|
return WeaResult.success(cacheKey);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 个税申报表详情列表
|
|
|
|
|
*
|
|
|
|
|
* @param queryParam 查询条件
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
@Path("/detail/list")
|
|
|
|
|
@ApiOperation("个税申报表申报数据列表")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public WeaResult<WeaTable<?>> listTaxDeclarationValue(@RequestBody TaxDeclarationValueListQueryParam queryParam) {
|
|
|
|
|
WeaTable<?> weaTable = taxDeclareRecordWrapper.listValuePage(queryParam, UserContext.getCurrentEmployeeId(), TenantContext.getCurrentTenantKey());
|
|
|
|
|
return WeaResult.success(weaTable);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 导出个税申报表申报数据
|
|
|
|
|
*
|
|
|
|
|
* @param queryParam 导出参数
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
@Path("/detail/export")
|
|
|
|
|
@ApiOperation("导出个税申报表申报数据")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public WeaResult<Map<String, Object>> exportTaxDeclaration(@RequestBody @Validated TaxDeclarationValueListQueryParam queryParam) {
|
|
|
|
|
Map<String, Object> map = taxDeclareRecordWrapper.exportTaxDeclarationValue(queryParam, UserContext.getCurrentUser());
|
|
|
|
|
return WeaResult.success(map);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 个税申报表申报数据-人员未报送列表
|
|
|
|
|
*
|
|
|
|
|
* @param queryParam 查询条件
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
@Path("/employee/list4NotDeclare")
|
|
|
|
|
@ApiOperation("个税申报表申报数据-人员未报送列表")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public WeaResult<WeaTable<AbnormalEmployeeListDTO>> listEmployee4NotDeclare(@RequestBody @Validated AbnormalEmployeeListQueryParam queryParam) {
|
|
|
|
|
WeaTable<AbnormalEmployeeListDTO> weaTable = taxDeclareRecordWrapper.listEmployeePage4NotDeclare(queryParam, TenantContext.getCurrentTenantKey());
|
|
|
|
|
return WeaResult.success(weaTable);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 个税申报表申报数据-报送人员无申报数据列表
|
|
|
|
|
*
|
|
|
|
|
* @param queryParam 查询条件
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
@Path("/employee/list4NoValue")
|
|
|
|
|
@ApiOperation("个税申报表申报数据-报送人员无申报数据列表")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public WeaResult<WeaTable<AbnormalEmployeeListDTO>> listEmployee4NoValue(@RequestBody @Validated AbnormalEmployeeListQueryParam queryParam) {
|
|
|
|
|
WeaTable<AbnormalEmployeeListDTO> weaTable = taxDeclareRecordWrapper.listEmployeePage4NoValue(queryParam, TenantContext.getCurrentTenantKey());
|
|
|
|
|
return WeaResult.success(weaTable);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 个税申报表申报数据-申报失败列表
|
|
|
|
|
*
|
|
|
|
|
* @param queryParam 查询条件
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
@Path("/employee/list4Fail")
|
|
|
|
|
@ApiOperation("个税申报表申报数据-申报失败列表")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public WeaResult<WeaTable<FailEmployeeListDTO>> listEmployee4Fail(@RequestBody @Validated AbnormalEmployeeListQueryParam queryParam) {
|
|
|
|
|
WeaTable<FailEmployeeListDTO> weaTable = taxDeclareRecordWrapper.listEmployeePage4Fail(queryParam, TenantContext.getCurrentTenantKey());
|
|
|
|
|
return WeaResult.success(weaTable);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 个税申报表申报数据-导出人员未报送列表
|
|
|
|
|
*
|
|
|
|
|
* @param queryParam 查询条件
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
@Path("/employee/export4NotDeclare")
|
|
|
|
|
@ApiOperation("个税申报表申报数据-导出人员未报送列表")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public WeaResult<Map<String, Object>> exportEmployee4NotDeclare(@RequestBody @Validated AbnormalEmployeeListQueryParam queryParam) {
|
|
|
|
|
Map<String, Object> map = taxDeclareRecordWrapper.exportEmployee4NotDeclare(queryParam, UserContext.getCurrentUser());
|
|
|
|
|
return WeaResult.success(map);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 个税申报表申报数据-导出报送人员无申报数据列表
|
|
|
|
|
*
|
|
|
|
|
* @param queryParam 查询条件
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
@Path("/employee/export4NoValue")
|
|
|
|
|
@ApiOperation("个税申报表申报数据-导出报送人员无申报数据列表")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public WeaResult<Map<String, Object>> exportEmployee4NoValue(@RequestBody @Validated AbnormalEmployeeListQueryParam queryParam) {
|
|
|
|
|
Map<String, Object> map = taxDeclareRecordWrapper.exportEmployee4NoValue(queryParam, UserContext.getCurrentUser());
|
|
|
|
|
return WeaResult.success(map);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 个税申报表申报数据-导出申报失败列表
|
|
|
|
|
*
|
|
|
|
|
* @param queryParam 导出参数
|
|
|
|
|
* @return
|
|
|
|
|
*/
|
|
|
|
|
@Path("/employee/export4Fail")
|
|
|
|
|
@ApiOperation("个税申报表申报数据-导出申报失败列表")
|
|
|
|
|
@Produces(MediaType.APPLICATION_JSON)
|
|
|
|
|
public WeaResult<Map<String, Object>> exportEmployee4Fail(@RequestBody @Validated AbnormalEmployeeListQueryParam queryParam) {
|
|
|
|
|
Map<String, Object> map = taxDeclareRecordWrapper.exportEmployee4Fail(queryParam, UserContext.getCurrentUser());
|
|
|
|
|
return WeaResult.success(map);
|
|
|
|
|
}
|
|
|
|
|
|
2022-03-01 18:49:22 +08:00
|
|
|
}
|