From 1b4c9ce7a70bb9530132fdda504685b8a93e7533 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=92=B1=E6=B6=9B?= <15850646081@163.com> Date: Mon, 28 Aug 2023 15:19:57 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B5=81=E9=87=8F=E4=B8=8D=E8=B6=B3=E6=8F=90?= =?UTF-8?q?=E9=86=92?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...DeclarationApiFlowStatisticController.java | 13 ++ .../TaxDeclarationApiFlowWarnController.java | 13 ++ .../TaxDeclarationApiFlowWarnService.java | 6 +- .../TaxDeclarationApiFlowWarnServiceImpl.java | 8 +- ...DeclarationApiFlowStatisticController.java | 101 ++++++++++++ .../TaxDeclarationApiFlowWarnController.java | 146 ++++++++++++++++++ .../TaxDeclarationApiFlowBillingWrapper.java | 5 +- ...TaxDeclarationApiFlowStatisticWrapper.java | 85 ++++++++++ .../TaxDeclarationApiFlowWarnWrapper.java | 86 +++++++++++ 9 files changed, 452 insertions(+), 11 deletions(-) create mode 100644 src/com/api/salary/web/TaxDeclarationApiFlowStatisticController.java create mode 100644 src/com/api/salary/web/TaxDeclarationApiFlowWarnController.java create mode 100644 src/com/engine/salary/web/TaxDeclarationApiFlowStatisticController.java create mode 100644 src/com/engine/salary/web/TaxDeclarationApiFlowWarnController.java create mode 100644 src/com/engine/salary/wrapper/TaxDeclarationApiFlowStatisticWrapper.java create mode 100644 src/com/engine/salary/wrapper/TaxDeclarationApiFlowWarnWrapper.java diff --git a/src/com/api/salary/web/TaxDeclarationApiFlowStatisticController.java b/src/com/api/salary/web/TaxDeclarationApiFlowStatisticController.java new file mode 100644 index 000000000..9b28c4f32 --- /dev/null +++ b/src/com/api/salary/web/TaxDeclarationApiFlowStatisticController.java @@ -0,0 +1,13 @@ +package com.api.salary.web; + +import javax.ws.rs.Path; + +/** + * 智能算薪-计费 + * + * @author chengliming + * @date 2022-11-15 16:05:40 + */ +@Path("/bs/hrmsalary/taxdeclaration/apiflow/statistics") +public class TaxDeclarationApiFlowStatisticController extends com.engine.salary.web.TaxDeclarationApiFlowStatisticController { +} diff --git a/src/com/api/salary/web/TaxDeclarationApiFlowWarnController.java b/src/com/api/salary/web/TaxDeclarationApiFlowWarnController.java new file mode 100644 index 000000000..a873eaaa4 --- /dev/null +++ b/src/com/api/salary/web/TaxDeclarationApiFlowWarnController.java @@ -0,0 +1,13 @@ +package com.api.salary.web; + +import javax.ws.rs.Path; + +/** + * 智能算薪-流量不足提醒 + * + * @author chengliming + * @date 2022-11-15 16:05:40 + */ +@Path("/bs/hrmsalary/taxdeclaration/apiflow/warn") +public class TaxDeclarationApiFlowWarnController extends com.engine.salary.web.TaxDeclarationApiFlowWarnController { +} diff --git a/src/com/engine/salary/service/TaxDeclarationApiFlowWarnService.java b/src/com/engine/salary/service/TaxDeclarationApiFlowWarnService.java index c530bdd1a..6b3458a33 100644 --- a/src/com/engine/salary/service/TaxDeclarationApiFlowWarnService.java +++ b/src/com/engine/salary/service/TaxDeclarationApiFlowWarnService.java @@ -23,10 +23,9 @@ public interface TaxDeclarationApiFlowWarnService { /** * 获取流量不足提醒设置 * - * @param currentTenantKey * @return */ - TaxDeclarationApiFlowWarnConfigPO getWarnConfig(String currentTenantKey); + TaxDeclarationApiFlowWarnConfigPO getWarnConfig(); /** * 获取流量不足提醒对象列表 @@ -76,10 +75,9 @@ public interface TaxDeclarationApiFlowWarnService { /** * 获取推送规则的业务ID * - * @param currentTenantKey * @return */ - Long getRuleBusinessId(String currentTenantKey); + Long getRuleBusinessId(); /** * 发送提醒 diff --git a/src/com/engine/salary/service/impl/TaxDeclarationApiFlowWarnServiceImpl.java b/src/com/engine/salary/service/impl/TaxDeclarationApiFlowWarnServiceImpl.java index 5ecd2e175..35ead9111 100644 --- a/src/com/engine/salary/service/impl/TaxDeclarationApiFlowWarnServiceImpl.java +++ b/src/com/engine/salary/service/impl/TaxDeclarationApiFlowWarnServiceImpl.java @@ -61,7 +61,7 @@ public class TaxDeclarationApiFlowWarnServiceImpl extends Service implements Tax } @Override - public TaxDeclarationApiFlowWarnConfigPO getWarnConfig(String currentTenantKey) { + public TaxDeclarationApiFlowWarnConfigPO getWarnConfig() { return getTaxDeclarationApiFlowWarnConfigMapper().getOne(); } @@ -206,14 +206,14 @@ public class TaxDeclarationApiFlowWarnServiceImpl extends Service implements Tax } @Override - public Long getRuleBusinessId(String currentTenantKey) { - TaxDeclarationApiFlowWarnConfigPO warnConfig = this.getWarnConfig(currentTenantKey); + public Long getRuleBusinessId() { + TaxDeclarationApiFlowWarnConfigPO warnConfig = this.getWarnConfig(); return warnConfig == null ? IdGenerator.generate() : warnConfig.getBusinessId(); } @Override public void sendFlowWarnMessage(TaxDeclarationApiBillingServiceImpl.ApiFlowUpdateWrapper updateWrapper) { - TaxDeclarationApiFlowWarnConfigPO warnConfig = getWarnConfig(updateWrapper.getTenantKey()); + TaxDeclarationApiFlowWarnConfigPO warnConfig = getWarnConfig(); // 未配置或开关关闭 if (Objects.isNull(warnConfig) || SalaryOnOffEnum.OFF.getValue().equals(warnConfig.getEnableWarn())) { return; diff --git a/src/com/engine/salary/web/TaxDeclarationApiFlowStatisticController.java b/src/com/engine/salary/web/TaxDeclarationApiFlowStatisticController.java new file mode 100644 index 000000000..d9591b2e9 --- /dev/null +++ b/src/com/engine/salary/web/TaxDeclarationApiFlowStatisticController.java @@ -0,0 +1,101 @@ +package com.engine.salary.web; + +import com.engine.common.util.ServiceUtil; +import com.engine.salary.common.BaseQueryParam; +import com.engine.salary.entity.taxapiflow.dto.TaxDeclarationApiFlowStatisticDetailListDTO; +import com.engine.salary.entity.taxapiflow.dto.TaxDeclarationApiFlowStatisticListDTO; +import com.engine.salary.entity.taxapiflow.param.TaxDeclarationApiFlowMonthQueryParam; +import com.engine.salary.util.ResponseResult; +import com.engine.salary.util.page.PageInfo; +import com.engine.salary.wrapper.TaxDeclarationApiFlowStatisticWrapper; +import io.swagger.v3.oas.annotations.parameters.RequestBody; +import weaver.hrm.HrmUserVarify; +import weaver.hrm.User; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.ws.rs.POST; +import javax.ws.rs.Path; +import javax.ws.rs.Produces; +import javax.ws.rs.core.Context; +import javax.ws.rs.core.MediaType; + +/** + * 智能算薪-计费 + * + * @author chengliming + * @date 2022-11-15 16:05:40 + */ +public class TaxDeclarationApiFlowStatisticController { + + private TaxDeclarationApiFlowStatisticWrapper getTaxDeclarationApiFlowStatisticWrapper(User user) { + return ServiceUtil.getService(TaxDeclarationApiFlowStatisticWrapper.class, user); + } + +// /** +// * 接口流量统计 +// * +// * @return WeaResult 返回结果 +// */ +// @Path +// @POST +// @Produces(MediaType.APPLICATION_JSON) +// public WeaResult getFlowStatistics() { +// return WeaResult.success(taxDeclarationApiFlowStatisticWrapper.getFlowStatistics(TenantContext.getCurrentTenantKey(), UserContext.getCurrentEmployeeId())); +// } + + /** + * 接口流量使用明细 + * + * @param queryParam 查询条件 + * @return WeaResult 返回结果 + */ + @POST + @Path("/list") + @Produces(MediaType.APPLICATION_JSON) + public String getFlowStatisticsList(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody BaseQueryParam queryParam) { + User user = HrmUserVarify.getUser(request, response); + return new ResponseResult>(user).run(getTaxDeclarationApiFlowStatisticWrapper(user)::getFlowStatisticsList, queryParam); + } + +// /** +// * 导出接口流量使用明细 +// * +// * @return WeaResult 返回结果 +// */ +// @Path("/export") +// @GET +// @Produces(MediaType.APPLICATION_JSON) +// public String exportFlowStatistics(@Context HttpServletRequest request, @Context HttpServletResponse response) { +// User user = HrmUserVarify.getUser(request, response); +// return new ResponseResult>(user).run(getTaxDeclarationApiFlowStatisticWrapper(user)::getFlowStatisticsList, queryParam); +// return WeaResult.success(taxDeclarationApiFlowStatisticWrapper.exportFlowStatistics(UserContext.getCurrentEmployeeId(), TenantContext.getCurrentTenantKey())); +// } + + /** + * 接口流量月度使用明细 + * + * @param queryParam 查询条件 + * @return WeaResult 返回结果 + */ + @POST + @Path("/detail/list") + @Produces(MediaType.APPLICATION_JSON) + public String getFlowStatisticsDetail(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody TaxDeclarationApiFlowMonthQueryParam queryParam) { + User user = HrmUserVarify.getUser(request, response); + return new ResponseResult>(user).run(getTaxDeclarationApiFlowStatisticWrapper(user)::getFlowStatisticsDetail, queryParam); + } + +// /** +// * 导出接口流量使用明细 +// * +// * @param queryParam 查询条件 +// * @return WeaResult 返回结果 +// */ +// @Path("/detail/export") +// @ApiOperation("导出接口流量使用明细") +// @Produces(MediaType.APPLICATION_JSON) +// public WeaResult exportFlowStatisticsDetail(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody TaxDeclarationApiFlowMonthQueryParam queryParam) { +// return WeaResult.success(taxDeclarationApiFlowStatisticWrapper.exportFlowStatisticsDetail(queryParam, UserContext.getCurrentEmployeeId(), TenantContext.getCurrentTenantKey())); +// } +} diff --git a/src/com/engine/salary/web/TaxDeclarationApiFlowWarnController.java b/src/com/engine/salary/web/TaxDeclarationApiFlowWarnController.java new file mode 100644 index 000000000..c651e0413 --- /dev/null +++ b/src/com/engine/salary/web/TaxDeclarationApiFlowWarnController.java @@ -0,0 +1,146 @@ +package com.engine.salary.web; + +import com.engine.common.util.ServiceUtil; +import com.engine.salary.common.BaseQueryParam; +import com.engine.salary.entity.taxapiflow.dto.TaxDeclarationApiFlowWarnConfigFormDTO; +import com.engine.salary.entity.taxapiflow.dto.TaxDeclarationApiFlowWarnReceiverListDTO; +import com.engine.salary.entity.taxapiflow.param.CreateMessageRuleParam; +import com.engine.salary.entity.taxapiflow.param.TaxDeclarationApiFlowWarnConfigSaveParam; +import com.engine.salary.entity.taxapiflow.param.TaxDeclarationApiFlowWarnReceiverSaveParam; +import com.engine.salary.util.ResponseResult; +import com.engine.salary.wrapper.TaxDeclarationApiFlowWarnWrapper; +import io.swagger.v3.oas.annotations.parameters.RequestBody; +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; +import java.util.List; + +/** + * 智能算薪-流量不足提醒 + *

Copyright: Copyright (c) 2023

+ *

Company: 泛微软件

+ * + * @author qiantao + * @version 1.0 + **/ +public class TaxDeclarationApiFlowWarnController { + private TaxDeclarationApiFlowWarnWrapper getTaxDeclarationApiFlowWarnWrapper(User user) { + return ServiceUtil.getService(TaxDeclarationApiFlowWarnWrapper.class, user); + } + + /** + * 流量不足提醒表单 + * + * @return WeaResult 返回结果 + */ + @GET + @Path("/config/getForm") + @Produces(MediaType.APPLICATION_JSON) + public String getWarnConfigForm(@Context HttpServletRequest request, @Context HttpServletResponse response) { + User user = HrmUserVarify.getUser(request, response); + return new ResponseResult(user).run(getTaxDeclarationApiFlowWarnWrapper(user)::getWarnConfigForm); + } + + /** + * 流量不足提醒编辑或保存 + * + * @param param 保存参数 + * @return WeaResult 返回结果 + */ + @POST + @Path("/config/save") + @Produces(MediaType.APPLICATION_JSON) + public String saveWarnConfig(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody TaxDeclarationApiFlowWarnConfigSaveParam param) { + User user = HrmUserVarify.getUser(request, response); + return new ResponseResult(user).run(getTaxDeclarationApiFlowWarnWrapper(user)::saveWarnConfig, param); + } + + /** + * 流量不足提醒对象编辑表单 + * + * @param param 前端参数 + * @return WeaResult 返回结果 + */ + @POST + @Path("/receiver/getForm") + @Produces(MediaType.APPLICATION_JSON) + public String getWarnReceiverForm(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody TaxDeclarationApiFlowWarnReceiverSaveParam param) { + User user = HrmUserVarify.getUser(request, response); + return new ResponseResult(user).run(getTaxDeclarationApiFlowWarnWrapper(user)::getWarnReceiverForm, param); + } + + /** + * 编辑保存流量不足提醒对象 + * + * @param param 保存参数 + * @return WeaResult 返回结果 + */ + @POST + @Path("/receiver/save") + @Produces(MediaType.APPLICATION_JSON) + public String saveWarnReceiver(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody TaxDeclarationApiFlowWarnReceiverSaveParam param) { + User user = HrmUserVarify.getUser(request, response); + return new ResponseResult(user).run(getTaxDeclarationApiFlowWarnWrapper(user)::saveWarnReceiver, param); + } + + /** + * 流量不足提醒对象列表 + * + * @param warnConfigId 主键id + * @return WeaResult 返回结果 + */ + @GET + @Path("/receiver/list") + @Produces(MediaType.APPLICATION_JSON) + public String getWarnReceiverList(@Context HttpServletRequest request, @Context HttpServletResponse response, @QueryParam(value = "warnConfigId") Long warnConfigId) { + User user = HrmUserVarify.getUser(request, response); + return new ResponseResult>(user).run(getTaxDeclarationApiFlowWarnWrapper(user)::getWarnReceiverList, warnConfigId); + } + + /** + * 流量不足提醒对象-删除 + * + * @param id 主键id + * @return WeaResult 返回结果 + */ + @GET + @Path("/receiver/delete") + @Produces(MediaType.APPLICATION_JSON) + public String deleteReceiver(@Context HttpServletRequest request, @Context HttpServletResponse response,@QueryParam(value = "id") Long id) { + User user = HrmUserVarify.getUser(request, response); + return new ResponseResult(user).run(getTaxDeclarationApiFlowWarnWrapper(user)::deleteReceiver, id); + } + + /** + * 获取创建规则参数 + * @param request + * @param response + * @return + */ + @GET + @Path("/rule/params") + @Produces(MediaType.APPLICATION_JSON) + public String getMessageRuleParams(@Context HttpServletRequest request, @Context HttpServletResponse response) { + User user = HrmUserVarify.getUser(request, response); + return new ResponseResult(user).run(getTaxDeclarationApiFlowWarnWrapper(user)::getRuleBusinessId); + } + + /** + * 创建规则 + * + * @param param 前端参数 + * @return WeaResult 返回结果 + */ + @POST + @Path("/rule/create") + @Produces(MediaType.APPLICATION_JSON) + public String createMessageRule(@Context HttpServletRequest request, @Context HttpServletResponse response, @RequestBody CreateMessageRuleParam param) { + User user = HrmUserVarify.getUser(request, response); + return new ResponseResult(user).run(getTaxDeclarationApiFlowWarnWrapper(user)::createMessageRule, param); + } +} diff --git a/src/com/engine/salary/wrapper/TaxDeclarationApiFlowBillingWrapper.java b/src/com/engine/salary/wrapper/TaxDeclarationApiFlowBillingWrapper.java index ac6db24f7..e5c8d3ceb 100644 --- a/src/com/engine/salary/wrapper/TaxDeclarationApiFlowBillingWrapper.java +++ b/src/com/engine/salary/wrapper/TaxDeclarationApiFlowBillingWrapper.java @@ -53,9 +53,8 @@ public class TaxDeclarationApiFlowBillingWrapper extends Service { } public PageInfo getFlowRecord(TaxDeclarationApiFlowRecordQueryParam queryParam) { -// PageInfo page = getTaxDeclarationApiBillingService(user).pageFlowRecord(queryParam); -// return page; - return null; + PageInfo page = getTaxDeclarationApiBillingService(user).pageFlowRecord(queryParam); + return page; } // public Map exportFlowRecord(TaxDeclarationApiFlowRecordQueryParam queryParam, Long employeeId, String tenantKey) { diff --git a/src/com/engine/salary/wrapper/TaxDeclarationApiFlowStatisticWrapper.java b/src/com/engine/salary/wrapper/TaxDeclarationApiFlowStatisticWrapper.java new file mode 100644 index 000000000..380686a03 --- /dev/null +++ b/src/com/engine/salary/wrapper/TaxDeclarationApiFlowStatisticWrapper.java @@ -0,0 +1,85 @@ +package com.engine.salary.wrapper; + +import com.engine.common.util.ServiceUtil; +import com.engine.core.impl.Service; +import com.engine.salary.common.BaseQueryParam; +import com.engine.salary.entity.taxapiflow.dto.TaxDeclarationApiFlowStatisticDetailListDTO; +import com.engine.salary.entity.taxapiflow.dto.TaxDeclarationApiFlowStatisticListDTO; +import com.engine.salary.entity.taxapiflow.dto.TaxDeclarationApiFlowTotalDTO; +import com.engine.salary.entity.taxapiflow.param.TaxDeclarationApiFlowMonthQueryParam; +import com.engine.salary.service.TaxDeclarationApiFlowStatisticService; +import com.engine.salary.service.impl.TaxDeclarationApiFlowStatisticServiceImpl; +import com.engine.salary.util.page.PageInfo; +import lombok.extern.slf4j.Slf4j; +import weaver.hrm.User; + +/** + * 个税申报计费 + * + * @author chengliming + * @date 2022-11-11 15:16:22 + */ +@Slf4j +public class TaxDeclarationApiFlowStatisticWrapper extends Service { + + public TaxDeclarationApiFlowStatisticService getTaxDeclarationApiFlowStatisticService(User user) { + return ServiceUtil.getService(TaxDeclarationApiFlowStatisticServiceImpl.class, user); + } + + public TaxDeclarationApiFlowTotalDTO getFlowStatistics() { + return getTaxDeclarationApiFlowStatisticService(user).getFlowStatistics(); + } + + public PageInfo getFlowStatisticsList(BaseQueryParam queryParam) { + PageInfo page = getTaxDeclarationApiFlowStatisticService(user).pageFlowStatistics(queryParam); + return page; + } + + public PageInfo getFlowStatisticsDetail(TaxDeclarationApiFlowMonthQueryParam queryParam) { + PageInfo page = getTaxDeclarationApiFlowStatisticService(user).pageFlowStatisticsDetail(queryParam); + return page; + } + +// public Map exportFlowStatistics(Long employeeId, String tenantKey) { +// List dtoList = getTaxDeclarationApiFlowStatisticService(user).listFlowStatistic(tenantKey, employeeId); +// SalaryAssert.notEmpty(dtoList, SalaryI18nUtil.getI18nLabel(tenantKey, employeeId, 95795, "数据不存在")); +// // 构建异步导出参数 +// Map map = salaryBatchService.buildeExportParam("exportFlowStatistics"); +// map.put("sheetName", SalaryI18nUtil.getI18nLabel(tenantKey, employeeId, 184066, "接口流量统计数据")); +// LocalRunnable localRunnable = new LocalRunnable() { +// @Override +// public void execute() { +// try { +// DSTenantKeyThreadVar.tenantKey.set(tenantKey); +// getTaxDeclarationApiFlowStatisticService(user).exportFlowStatistics(map, dtoList, employeeId, tenantKey); +// } finally { +// DSTenantKeyThreadVar.tenantKey.remove(); +// } +// } +// }; +// ThreadPoolUtil.execute(localRunnable); +// return map; +// } +// +// public Map exportFlowStatisticsDetail(TaxDeclarationApiFlowMonthQueryParam queryParam, Long employeeId, String tenantKey) { +// List dtoList = getTaxDeclarationApiFlowStatisticService(user).listFlowStatisticDetail(queryParam, employeeId, tenantKey); +// SalaryAssert.notEmpty(dtoList, SalaryI18nUtil.getI18nLabel(tenantKey, employeeId, 95795, "数据不存在")); +// // 构建异步导出参数 +// Map map = salaryBatchService.buildeExportParam("exportFlowStatisticsDetail"); +// map.put("sheetName", SalaryI18nUtil.getI18nLabel(tenantKey, employeeId, 184067, "接口流量月统计数据")); +// LocalRunnable localRunnable = new LocalRunnable() { +// @Override +// public void execute() { +// try { +// DSTenantKeyThreadVar.tenantKey.set(tenantKey); +// getTaxDeclarationApiFlowStatisticService(user).exportFlowStatisticsDetail(queryParam, map, dtoList, employeeId, tenantKey); +// } finally { +// DSTenantKeyThreadVar.tenantKey.remove(); +// } +// } +// }; +// ThreadPoolUtil.execute(localRunnable); +// return map; +// } + +} diff --git a/src/com/engine/salary/wrapper/TaxDeclarationApiFlowWarnWrapper.java b/src/com/engine/salary/wrapper/TaxDeclarationApiFlowWarnWrapper.java new file mode 100644 index 000000000..b41bd56c6 --- /dev/null +++ b/src/com/engine/salary/wrapper/TaxDeclarationApiFlowWarnWrapper.java @@ -0,0 +1,86 @@ +package com.engine.salary.wrapper; + +import com.engine.common.util.ServiceUtil; +import com.engine.core.impl.Service; +import com.engine.salary.entity.taxapiflow.dto.TaxDeclarationApiFlowWarnConfigFormDTO; +import com.engine.salary.entity.taxapiflow.dto.TaxDeclarationApiFlowWarnReceiverFormDTO; +import com.engine.salary.entity.taxapiflow.dto.TaxDeclarationApiFlowWarnReceiverListDTO; +import com.engine.salary.entity.taxapiflow.param.CreateMessageRuleParam; +import com.engine.salary.entity.taxapiflow.param.TaxDeclarationApiFlowWarnConfigSaveParam; +import com.engine.salary.entity.taxapiflow.param.TaxDeclarationApiFlowWarnReceiverSaveParam; +import com.engine.salary.entity.taxapiflow.po.TaxDeclarationApiFlowWarnConfigPO; +import com.engine.salary.enums.SalaryOnOffEnum; +import com.engine.salary.service.TaxDeclarationApiFlowWarnService; +import com.engine.salary.service.impl.TaxDeclarationApiFlowWarnServiceImpl; +import lombok.extern.slf4j.Slf4j; +import weaver.hrm.User; + +import java.util.List; + +/** + * 流量不足提醒 + *

Copyright: Copyright (c) 2023

+ *

Company: 泛微软件

+ * + * @author qiantao + * @version 1.0 + **/ +@Slf4j +public class TaxDeclarationApiFlowWarnWrapper extends Service { + + public TaxDeclarationApiFlowWarnService getTaxDeclarationApiFlowWarnService(User user) { + return ServiceUtil.getService(TaxDeclarationApiFlowWarnServiceImpl.class, user); + } + + public TaxDeclarationApiFlowWarnConfigFormDTO getWarnConfigForm() { + Long businessId = getTaxDeclarationApiFlowWarnService(user).getRuleBusinessId(); + TaxDeclarationApiFlowWarnConfigFormDTO warnFormDTO = TaxDeclarationApiFlowWarnConfigFormDTO.builder() + .enable(false) + .moduleId("hrsa") + .businessId(businessId) + .build(); + TaxDeclarationApiFlowWarnConfigPO warnConfigPO = getTaxDeclarationApiFlowWarnService(user).getWarnConfig(); + if (warnConfigPO != null) { + warnFormDTO.setId(warnConfigPO.getId()); + warnFormDTO.setEnable(SalaryOnOffEnum.ON.getValue().equals(warnConfigPO.getEnableWarn())); + warnFormDTO.setThreshold(warnConfigPO.getThreshold().intValue()); + warnFormDTO.setBusinessId(warnConfigPO.getBusinessId()); + warnFormDTO.setConfig(null); + } + return warnFormDTO; + } + + public String saveWarnConfig(TaxDeclarationApiFlowWarnConfigSaveParam param) { + return getTaxDeclarationApiFlowWarnService(user).saveWarnConfig(param); + } + + public List getWarnReceiverList(Long warnConfigId) { + List receiverListDTOS = getTaxDeclarationApiFlowWarnService(user).getWarnReceiverList(warnConfigId); + return receiverListDTOS; + } + + public void deleteReceiver(Long id) { + getTaxDeclarationApiFlowWarnService(user).deleteReceiver(id); + } + + public TaxDeclarationApiFlowWarnReceiverFormDTO getWarnReceiverForm(TaxDeclarationApiFlowWarnReceiverSaveParam param) { + TaxDeclarationApiFlowWarnReceiverFormDTO formDTO = TaxDeclarationApiFlowWarnReceiverFormDTO.builder().build(); + if (param.getId() != null) { + formDTO = getTaxDeclarationApiFlowWarnService(user).getWarnReceiverFormById(param.getId()); + } + + return formDTO; + } + + public void saveWarnReceiver(TaxDeclarationApiFlowWarnReceiverSaveParam param) { + getTaxDeclarationApiFlowWarnService(user).saveWarnReceiver(param); + } + + public void createMessageRule(CreateMessageRuleParam param) { + getTaxDeclarationApiFlowWarnService(user).createMessageRule(param); + } + + public Long getRuleBusinessId() { + return getTaxDeclarationApiFlowWarnService(user).getRuleBusinessId(); + } +}