package com.product.administration.controller; import com.product.admin.service.PublicService; import com.product.administration.config.CmnConst; import com.product.administration.config.SystemCode; import com.product.administration.service.IndicatorsEarlyWarningService; import com.product.administration.service.ide.IIndicatorsEarlyWarningService; import com.product.common.lang.StringUtils; import com.product.core.config.CoreConst; import com.product.core.entity.DataTableEntity; import com.product.core.entity.FieldSetEntity; import com.product.core.entity.RequestParameterEntity; import com.product.core.exception.BaseException; import com.product.core.spring.context.SpringMVCContextHolder; import com.product.module.sys.version.ApiVersion; import com.product.util.support.AbstractBaseController; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * @Title: IndicatorsEarlyWarningController * @Date: 2021-11-01 11:30:48 * @Author: luoxin * @Description: 指标预警配置Constoller */ @RequestMapping("/api/targetEarlyWarning") @RestController public class IndicatorsEarlyWarningController extends AbstractBaseController { @Autowired IndicatorsEarlyWarningService indicatorsEarlyWarningService; @Autowired PublicService publicService; @PostMapping("/list-current-user-target_warning/{version}") @ApiVersion(1) public String listCurrentUserTargetWarning(HttpServletRequest request) { try { //获取参数 FieldSetEntity fse = null; Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); if (bean != null) { RequestParameterEntity reqp = (RequestParameterEntity) bean; fse = reqp.getFormData(); } //判断参数是否为空 if (bean == null || fse == null) { return this.error(SystemCode.SYSTEM_FORM_NODATA.getValue(), SystemCode.SYSTEM_FORM_NODATA.getText()); } //判断表名是否正常 if (!CmnConst.PRODUCT_OA_TARGET_WARNING_CONFIGURATION.equals(fse.getTableName())) { return this.error(SystemCode.SYSTEM_TABLE_NODATA.getValue(), SystemCode.SYSTEM_TABLE_NODATA.getText()); } return success(indicatorsEarlyWarningService.getCurrentUserWarningInfo()); } catch (BaseException e) { return error(e); } catch (Exception e) { return error(SystemCode.GET_CURRENT_USER_TARGET_WARNING_FAIL, e); } } @PostMapping("/get-target-warning-info/{version}") @ApiVersion(1) public String getTargetWarningInfo(HttpServletRequest request) { try { //获取参数 FieldSetEntity fse = null; Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); if (bean != null) { RequestParameterEntity reqp = (RequestParameterEntity) bean; fse = reqp.getFormData(); } //判断参数是否为空 if (bean == null || fse == null) { return this.error(SystemCode.SYSTEM_FORM_NODATA.getValue(), SystemCode.SYSTEM_FORM_NODATA.getText()); } //判断表名是否正常 if (!CmnConst.PRODUCT_SYS_EARLY_WARNING_INFO.equals(fse.getTableName())) { return this.error(SystemCode.SYSTEM_TABLE_NODATA.getValue(), SystemCode.SYSTEM_TABLE_NODATA.getText()); } return success(indicatorsEarlyWarningService.findWarnMessage(fse.getUUID())); } catch (BaseException e) { return error(e); } catch (Exception e) { return error(SystemCode.GET_TARGET_WARNING_INFO_FAIL, e); } } /** * 指标预警配置列表 * * @param response * @param request * @return */ @RequestMapping(value = "/list-targetEarlyWarning/{version}", method = RequestMethod.POST) @ApiVersion(1) public String listTargetEarlyWarning(HttpServletResponse response, HttpServletRequest request) { try { //获取参数 FieldSetEntity fse = null; Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); if (bean != null) { RequestParameterEntity reqp = (RequestParameterEntity) bean; fse = reqp.getFormData(); } //判断参数是否为空 if (bean == null || fse == null) { return this.error(SystemCode.SYSTEM_FORM_NODATA.getValue(), SystemCode.SYSTEM_FORM_NODATA.getText()); } //判断表名是否正常 if (!CmnConst.PRODUCT_OA_TARGET_WARNING_CONFIGURATION.equals(fse.getTableName())) { return this.error(SystemCode.SYSTEM_TABLE_NODATA.getValue(), SystemCode.SYSTEM_TABLE_NODATA.getText()); } DataTableEntity dataTableEntity = indicatorsEarlyWarningService.listTargetEarlyWarning(fse); return OK_List(dataTableEntity); } catch (BaseException e) { e.printStackTrace(); return this.error(e.getCode(), e.getMessage()); } catch (Exception e) { e.printStackTrace(); return this.error(SystemCode.SYSTEM_EARLY_WARNING_LIST_FAIL.getValue(), SystemCode.SYSTEM_EARLY_WARNING_LIST_FAIL.getText() + e.getMessage()); } } /** * 新增指标预警配置 * * @param response * @param request * @return */ @RequestMapping(value = "/add-targetEarlyWarning/{version}", method = RequestMethod.POST) @ApiVersion(1) public String addTargetEarlyWarning(HttpServletResponse response, HttpServletRequest request) { try { //获取参数 FieldSetEntity fse = null; Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); if (bean != null) { RequestParameterEntity reqp = (RequestParameterEntity) bean; fse = reqp.getFormData(); } //判断参数是否为空 if (bean == null || fse == null) { return this.error(SystemCode.SYSTEM_FORM_NODATA.getValue(), SystemCode.SYSTEM_FORM_NODATA.getText()); } //判断表名是否正常 if (!CmnConst.PRODUCT_OA_TARGET_WARNING_CONFIGURATION.equals(fse.getTableName())) { return this.error(SystemCode.SYSTEM_TABLE_NODATA.getValue(), SystemCode.SYSTEM_TABLE_NODATA.getText()); } IIndicatorsEarlyWarningService service = (IIndicatorsEarlyWarningService) getProxyInstance(indicatorsEarlyWarningService); String uuid = service.addTargetEarlyWarning(fse); return OK_Add(uuid); } catch (BaseException e) { e.printStackTrace(); return this.error(e.getCode(), e.getMessage()); } catch (Exception e) { e.printStackTrace(); return this.error(SystemCode.SYSTEM_EARLY_WARNING_ADD_FAIL.getValue(), SystemCode.SYSTEM_EARLY_WARNING_ADD_FAIL.getText() + e.getMessage()); } } /** * 修改指标预警配置 * * @param response * @param request * @return */ @RequestMapping(value = "/update-targetEarlyWarning/{version}", method = RequestMethod.POST) @ApiVersion(1) public String updateTargetEarlyWarning(HttpServletResponse response, HttpServletRequest request) { try { //获取参数 FieldSetEntity fse = null; Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); if (bean != null) { RequestParameterEntity reqp = (RequestParameterEntity) bean; fse = reqp.getFormData(); } //判断参数是否为空 if (bean == null || fse == null) { return this.error(SystemCode.SYSTEM_FORM_NODATA.getValue(), SystemCode.SYSTEM_FORM_NODATA.getText()); } //判断表名是否正常 if (!CmnConst.PRODUCT_OA_TARGET_WARNING_CONFIGURATION.equals(fse.getTableName())) { return this.error(SystemCode.SYSTEM_TABLE_NODATA.getValue(), SystemCode.SYSTEM_TABLE_NODATA.getText()); } IIndicatorsEarlyWarningService service = (IIndicatorsEarlyWarningService) getProxyInstance(indicatorsEarlyWarningService); if (service.updateTargetEarlyWarning(fse)) { return OK(); } return this.error(SystemCode.SYSTEM_EARLY_WARNING_UPDATE_FAIL.getValue(), SystemCode.SYSTEM_EARLY_WARNING_UPDATE_FAIL.getText()); } catch (BaseException e) { e.printStackTrace(); return this.error(e.getCode(), e.getMessage()); } catch (Exception e) { e.printStackTrace(); return this.error(SystemCode.SYSTEM_EARLY_WARNING_UPDATE_FAIL.getValue(), SystemCode.SYSTEM_EARLY_WARNING_UPDATE_FAIL.getText() + e.getMessage()); } } /** * 获取指标预警配置详情 * * @param response * @param request * @return */ @RequestMapping(value = "/get-targetEarlyWarning/{version}", method = RequestMethod.POST) @ApiVersion(1) public String getTargetEarlyWarning(HttpServletResponse response, HttpServletRequest request) { try { //获取参数 FieldSetEntity fse = null; Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); if (bean != null) { RequestParameterEntity reqp = (RequestParameterEntity) bean; fse = reqp.getFormData(); } //判断参数是否为空 if (bean == null || fse == null) { return this.error(SystemCode.SYSTEM_FORM_NODATA.getValue(), SystemCode.SYSTEM_FORM_NODATA.getText()); } //判断表名是否正常 if (!CmnConst.PRODUCT_OA_TARGET_WARNING_CONFIGURATION.equals(fse.getTableName())) { return this.error(SystemCode.SYSTEM_TABLE_NODATA.getValue(), SystemCode.SYSTEM_TABLE_NODATA.getText()); } return indicatorsEarlyWarningService.getTargetEarlyWarning(fse.getUUID()); } catch (BaseException e) { e.printStackTrace(); return this.error(e.getCode(), e.getMessage()); } catch (Exception e) { e.printStackTrace(); return this.error(SystemCode.SYSTEM_EARLY_WARNING_FIND_FAIL.getValue(), SystemCode.SYSTEM_EARLY_WARNING_FIND_FAIL.getText() + e.getMessage()); } } /** * 删除指标预警配置 * * @param response * @param request * @return */ @RequestMapping(value = "/delete-targetEarlyWarning/{version}", method = RequestMethod.POST) @ApiVersion(1) public String deleteTargetEarlyWarning(HttpServletResponse response, HttpServletRequest request) { try { //获取参数 FieldSetEntity fse = null; Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); if (bean != null) { RequestParameterEntity reqp = (RequestParameterEntity) bean; fse = reqp.getFormData(); } //判断参数是否为空 if (bean == null || fse == null) { return this.error(SystemCode.SYSTEM_FORM_NODATA.getValue(), SystemCode.SYSTEM_FORM_NODATA.getText()); } //判断表名是否正常 if (!CmnConst.PRODUCT_OA_TARGET_WARNING_CONFIGURATION.equals(fse.getTableName())) { return this.error(SystemCode.SYSTEM_TABLE_NODATA.getValue(), SystemCode.SYSTEM_TABLE_NODATA.getText()); } IIndicatorsEarlyWarningService server = (IIndicatorsEarlyWarningService) getProxyInstance(indicatorsEarlyWarningService); if (server.deleteTargetEarlyWarning(fse.getUUID())) { return OK(); } return this.error(SystemCode.SYSTEM_EARLY_WARNING_DELETE_FAIL.getValue(), SystemCode.SYSTEM_EARLY_WARNING_DELETE_FAIL.getText()); } catch (BaseException e) { e.printStackTrace(); return this.error(e.getCode(), e.getMessage()); } catch (Exception e) { e.printStackTrace(); return this.error(SystemCode.SYSTEM_EARLY_WARNING_DELETE_FAIL.getValue(), SystemCode.SYSTEM_EARLY_WARNING_DELETE_FAIL.getText() + e.getMessage()); } } /** * 获取关联指标详情 * * @param response * @param request * @return */ @RequestMapping(value = "/get-indicatorsInfo/{version}", method = RequestMethod.POST) @ApiVersion(1) public String getIndicatorsInfo(HttpServletResponse response, HttpServletRequest request) { try { //获取参数 FieldSetEntity fse = null; Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); if (bean != null) { RequestParameterEntity reqp = (RequestParameterEntity) bean; fse = reqp.getFormData(); } //判断参数是否为空 if (bean == null || fse == null) { return this.error(SystemCode.SYSTEM_FORM_NODATA.getValue(), SystemCode.SYSTEM_FORM_NODATA.getText()); } //判断表名是否正常 if (!CmnConst.PRODUCT_OA_TARGET_WARNING_CONFIGURATION.equals(fse.getTableName())) { return this.error(SystemCode.SYSTEM_TABLE_NODATA.getValue(), SystemCode.SYSTEM_TABLE_NODATA.getText()); } FieldSetEntity fieldSetEntity = indicatorsEarlyWarningService.getIndicatorsInfo(fse.getUUID()); return OK_List(fieldSetEntity); } catch (BaseException e) { e.printStackTrace(); return this.error(e.getCode(), e.getMessage()); } catch (Exception e) { e.printStackTrace(); return this.error(SystemCode.SYSTEM_EARLY_WARNING_FIND_FAIL.getValue(), SystemCode.SYSTEM_EARLY_WARNING_FIND_FAIL.getText() + e.getMessage()); } } /** * 指标预警条件检测 * * @param response * @param request * @return */ @RequestMapping(value = "/condition-check/{version}", method = RequestMethod.POST) @ApiVersion(1) public String conditionCheck(HttpServletResponse response, HttpServletRequest request) { try { //获取参数 FieldSetEntity fse = null; Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); if (bean != null) { RequestParameterEntity reqp = (RequestParameterEntity) bean; fse = reqp.getFormData(); } //判断参数是否为空 if (bean == null || fse == null) { return this.error(SystemCode.SYSTEM_FORM_NODATA.getValue(), SystemCode.SYSTEM_FORM_NODATA.getText()); } //判断表名是否正常 if (!CmnConst.PRODUCT_OA_TARGET_WARNING_CONFIGURATION.equals(fse.getTableName())) { return this.error(SystemCode.SYSTEM_TABLE_NODATA.getValue(), SystemCode.SYSTEM_TABLE_NODATA.getText()); } Boolean succ = indicatorsEarlyWarningService.analyticConditionalExpression(1.0, 1.0, indicatorsEarlyWarningService.getDate(0), indicatorsEarlyWarningService.getDate(0), fse.getString(CmnConst.CONDITION_EXPRESSION_HIDE)); if (succ) { return OK(); } return this.error(SystemCode.SYSTEM_WARNING_CONFIG_CHECK_FAIL.getValue(), SystemCode.SYSTEM_WARNING_CONFIG_CHECK_FAIL.getText()); } catch (BaseException e) { e.printStackTrace(); return this.error(e.getCode(), e.getMessage()); } catch (Exception e) { e.printStackTrace(); return this.error(SystemCode.SYSTEM_EARLY_WARNING_DELETE_FAIL.getValue(), SystemCode.SYSTEM_EARLY_WARNING_DELETE_FAIL.getText() + e.getMessage()); } } /** * 指标预警反馈查看 * * @param response * @param request * @return */ @RequestMapping(value = "/find-warning-message/{version}", method = RequestMethod.POST) @ApiVersion(1) public String findWarning(HttpServletResponse response, HttpServletRequest request) { try { //获取参数 FieldSetEntity fse = null; Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); if (bean != null) { RequestParameterEntity reqp = (RequestParameterEntity) bean; fse = reqp.getFormData(); } //判断参数是否为空 if (bean == null || fse == null) { return this.error(SystemCode.SYSTEM_FORM_NODATA.getValue(), SystemCode.SYSTEM_FORM_NODATA.getText()); } //判断表名是否正常 if (!CmnConst.PRODUCT_SYS_EARLY_WARNING_INFO.equals(fse.getTableName())) { return this.error(SystemCode.SYSTEM_TABLE_NODATA.getValue(), SystemCode.SYSTEM_TABLE_NODATA.getText()); } //判断UUID是否为空 if (StringUtils.isEmpty(fse.getUUID())) { return error(SystemCode.SYSTEM_FORM_COUNT.getValue(), SystemCode.SYSTEM_FORM_COUNT.getText()); } FieldSetEntity fseInfo = indicatorsEarlyWarningService.findWarnMessage(fse.getUUID()); return OK_List(fseInfo); } catch (BaseException e) { e.printStackTrace(); return this.error(e.getCode(), e.getMessage()); } catch (Exception e) { e.printStackTrace(); return this.error(SystemCode.SYSTEM_EARLY_WARNING_LIST_FAIL.getValue(), SystemCode.SYSTEM_EARLY_WARNING_LIST_FAIL.getText() + e.getMessage()); } } /** * 指标预警反馈列表 * * @param request * @return */ @PostMapping("/list-warn-info/{version}") @ApiVersion(1) public String getListFeddBacl(HttpServletRequest request) { try { //获取参数 FieldSetEntity fse = null; Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); if (bean != null) { RequestParameterEntity reqp = (RequestParameterEntity) bean; fse = reqp.getFormData(); } //判断参数是否为空 if (bean == null || fse == null) { throw new BaseException(SystemCode.SYSTEM_FORM_NODATA.getValue(), SystemCode.SYSTEM_FORM_NODATA.getText()); } if (fse.getTableName() == null || !CmnConst.PRODUCT_SYS_EARLY_WARNING_INFO.equals(fse.getTableName())) { throw new BaseException(SystemCode.SYSTEM_TABLE_NODATA.getValue(), SystemCode.SYSTEM_TABLE_NODATA.getText()); } // 判断分页参数是否正常 if (StringUtils.isEmpty(fse.getString(CmnConst.PAGESIZE)) || StringUtils.isEmpty(fse.getString(CmnConst.CPAGE))) { SpringMVCContextHolder.getSystemLogger().error(SystemCode.SYSTEM_FORM_COUNT.getValue(), SystemCode.SYSTEM_FORM_COUNT.getText()); } return OK_List(indicatorsEarlyWarningService.listWarnMessage(fse)); } catch (BaseException e) { e.printStackTrace(); SpringMVCContextHolder.getSystemLogger().error(e); return error(e); } catch (Exception e) { e.printStackTrace(); SpringMVCContextHolder.getSystemLogger().error(SystemCode.GET_WARN_FEEDBACK_LIST_FAIL.getValue(), SystemCode.GET_WARN_FEEDBACK_LIST_FAIL.getText() + "," + e.getMessage()); return error(SystemCode.GET_WARN_FEEDBACK_LIST_FAIL.getValue(), SystemCode.GET_WARN_FEEDBACK_LIST_FAIL.getText() + "," + e.getMessage()); } } /** * 停止指标预警反馈发送 * * @param request * @return */ @PostMapping("/stop-warning/{version}") @ApiVersion(1) public String stopWarning(HttpServletRequest request) { try { //获取参数 FieldSetEntity fse = null; Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); if (bean != null) { RequestParameterEntity reqp = (RequestParameterEntity) bean; fse = reqp.getFormData(); } //判断参数是否为空 if (bean == null || fse == null) { throw new BaseException(SystemCode.SYSTEM_FORM_NODATA.getValue(), SystemCode.SYSTEM_FORM_NODATA.getText()); } if (fse.getTableName() == null || !CmnConst.PRODUCT_SYS_EARLY_WARNING_STOP.equals(fse.getTableName())) { throw new BaseException(SystemCode.SYSTEM_TABLE_NODATA.getValue(), SystemCode.SYSTEM_TABLE_NODATA.getText()); } IIndicatorsEarlyWarningService server = (IIndicatorsEarlyWarningService) getProxyInstance(indicatorsEarlyWarningService); return OK_Add(server.stopWarning(fse.getString(CmnConst.RECORD_UUID))); } catch (BaseException e) { e.printStackTrace(); SpringMVCContextHolder.getSystemLogger().error(e); return error(e); } catch (Exception e) { e.printStackTrace(); SpringMVCContextHolder.getSystemLogger().error(SystemCode.GET_WARN_FEEDBACK_LIST_FAIL.getValue(), SystemCode.GET_WARN_FEEDBACK_LIST_FAIL.getText() + "," + e.getMessage()); return error(SystemCode.GET_WARN_FEEDBACK_LIST_FAIL.getValue(), SystemCode.GET_WARN_FEEDBACK_LIST_FAIL.getText() + "," + e.getMessage()); } } }