package com.product.org.admin.controller; import com.product.core.config.CoreConst; import com.product.core.controller.support.AbstractBaseController; 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.org.admin.config.CmnCode; import com.product.org.admin.config.SystemCode; import com.product.org.admin.service.idel.IOrganizationService; import com.product.util.BaseUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Qualifier; 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; /** * Copyright © 6c * * @Date: 2021-03-18 15:53 * @Author: 6c * @Description: */ @RequestMapping("/api/organization") @RestController public class OrganizationController extends AbstractBaseController { @Autowired @Qualifier("organizationServiceV2") private IOrganizationService organizationServiceV2; @Autowired @Qualifier("organizationService") private IOrganizationService organizationService; /** * 获取组织架构 * * @param request * @return */ @RequestMapping(value = "/get-organization/{version}", method = RequestMethod.POST) @ApiVersion(1) public String getOrganization(HttpServletRequest request) { try { FieldSetEntity fse = null; Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); RequestParameterEntity rpe = (RequestParameterEntity) bean; if (null != rpe && null != rpe.getFormData()) { fse = rpe.getFormData(); } if (fse == null) { SpringMVCContextHolder.getSystemLogger().error(SystemCode.SYSTEM_FORM_NODATA.getValue(), SystemCode.SYSTEM_FORM_NODATA.getText()); return this.error(SystemCode.SYSTEM_FORM_NODATA.getValue(), SystemCode.SYSTEM_FORM_NODATA.getText()); } Object jsonArray = organizationService.getOrganization(fse); return BaseUtil.success(jsonArray); } catch (BaseException e) { SpringMVCContextHolder.getSystemLogger().error(e); return this.error(e.getCode(), e.getMessageInfo()); } catch (Exception e) { e.printStackTrace(); SpringMVCContextHolder.getSystemLogger().error(e); return this.error(CmnCode.GET_ORGANIZATION_FAIL); } } /** * 获取组织架构V2 * * @param request * @return */ @RequestMapping(value = "/get-organization/{version}", method = RequestMethod.POST) @ApiVersion(2) public String getOrganizationV2(HttpServletRequest request) { try { FieldSetEntity fse = null; Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); RequestParameterEntity rpe = (RequestParameterEntity) bean; if (null != rpe && null != rpe.getFormData()) { fse = rpe.getFormData(); } if (fse == null) { SpringMVCContextHolder.getSystemLogger().error(SystemCode.SYSTEM_FORM_NODATA.getValue(), SystemCode.SYSTEM_FORM_NODATA.getText()); return this.error(SystemCode.SYSTEM_FORM_NODATA.getValue(), SystemCode.SYSTEM_FORM_NODATA.getText()); } Object jsonArray = organizationServiceV2.getOrganization(fse); return BaseUtil.success(jsonArray); } catch (BaseException e) { SpringMVCContextHolder.getSystemLogger().error(e); return this.error(e.getCode(), e.getMessageInfo()); } catch (Exception e) { e.printStackTrace(); SpringMVCContextHolder.getSystemLogger().error(e); return this.error(CmnCode.GET_ORGANIZATION_FAIL); } } /** * 获取组织架构V3 * * @param request * @return */ @RequestMapping(value = "/get-organization/{version}", method = RequestMethod.POST) @ApiVersion(3) public String getOrganizationV3(HttpServletRequest request) { try { FieldSetEntity fse = null; Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); RequestParameterEntity rpe = (RequestParameterEntity) bean; if (null != rpe && null != rpe.getFormData()) { fse = rpe.getFormData(); } if (fse == null) { SpringMVCContextHolder.getSystemLogger().error(SystemCode.SYSTEM_FORM_NODATA.getValue(), SystemCode.SYSTEM_FORM_NODATA.getText()); return this.error(SystemCode.SYSTEM_FORM_NODATA.getValue(), SystemCode.SYSTEM_FORM_NODATA.getText()); } Object jsonArray = organizationServiceV2.getOrganization(fse); return BaseUtil.success(jsonArray); } catch (BaseException e) { SpringMVCContextHolder.getSystemLogger().error(e); return this.error(e.getCode(), e.getMessageInfo()); } catch (Exception e) { e.printStackTrace(); SpringMVCContextHolder.getSystemLogger().error(e); return this.error(CmnCode.GET_ORGANIZATION_FAIL); } } }