package com.product.mobile.core.controller;
|
|
import com.alibaba.druid.util.StringUtils;
|
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.mobile.core.config.MobileCoreCode;
|
import com.product.mobile.core.config.MobileCoreConst;
|
import com.product.mobile.core.service.ide.INavBarManagerService;
|
import com.product.module.sys.version.ApiVersion;
|
import com.product.util.BaseUtil;
|
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.RestController;
|
|
import javax.servlet.http.HttpServletRequest;
|
|
/**
|
* @Author cheng
|
* @Date 2022/2/22 15:59
|
* @Desc 导航栏管理
|
*/
|
@RestController
|
@RequestMapping("/api/nav-bar")
|
public class NavBarManagerController extends AbstractBaseController {
|
|
|
@Autowired
|
INavBarManagerService navBarManagerService;
|
|
/**
|
* 导航配置列表
|
*
|
* @param request
|
* @return
|
*/
|
@PostMapping("/list-config/{version}")
|
@ApiVersion(1)
|
public String listConfig(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) {
|
SpringMVCContextHolder.getSystemLogger().error(MobileCoreCode.SYSTEM_FORM_NODATA.getValue(), MobileCoreCode.SYSTEM_FORM_NODATA.getText());
|
return this.error(MobileCoreCode.SYSTEM_FORM_NODATA.getValue(), MobileCoreCode.SYSTEM_FORM_NODATA.getText());
|
}
|
if (fse.getTableName() == null || !MobileCoreConst.TABLE_NAV_BAR.equals(fse.getTableName())) {
|
SpringMVCContextHolder.getSystemLogger().error(MobileCoreCode.SYSTEM_TABLE_NODATA.getValue(), MobileCoreCode.SYSTEM_TABLE_NODATA.getText());
|
return this.error(MobileCoreCode.SYSTEM_TABLE_NODATA.getValue(), MobileCoreCode.SYSTEM_TABLE_NODATA.getText());
|
}
|
// 判断分页参数是否正常
|
if (StringUtils.isEmpty(fse.getString(MobileCoreConst.PAGESIZE))
|
|| StringUtils.isEmpty(fse.getString(MobileCoreConst.CPAGE))) {
|
SpringMVCContextHolder.getSystemLogger().error(MobileCoreCode.SYSTEM_FORM_COUNT.getValue(), MobileCoreCode.SYSTEM_FORM_COUNT.getText());
|
return this.error(MobileCoreCode.SYSTEM_FORM_COUNT.getValue(), MobileCoreCode.SYSTEM_FORM_COUNT.getText());
|
}
|
return OK_List(navBarManagerService.listConfig(fse));
|
} catch (BaseException e) {
|
e.printStackTrace();
|
return error(e);
|
} catch (Exception e) {
|
e.printStackTrace();
|
return error(MobileCoreCode.GET_NAV_BAR_CONFIG_LIST_FAIL);
|
}
|
}
|
|
/**
|
* 导航配置详情
|
*
|
* @param request
|
* @return
|
*/
|
@PostMapping("/find-config/{version}")
|
@ApiVersion(1)
|
public String findConfig(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) {
|
SpringMVCContextHolder.getSystemLogger().error(MobileCoreCode.SYSTEM_FORM_NODATA.getValue(), MobileCoreCode.SYSTEM_FORM_NODATA.getText());
|
return this.error(MobileCoreCode.SYSTEM_FORM_NODATA.getValue(), MobileCoreCode.SYSTEM_FORM_NODATA.getText());
|
}
|
if (fse.getTableName() == null || !MobileCoreConst.TABLE_NAV_BAR.equals(fse.getTableName())) {
|
SpringMVCContextHolder.getSystemLogger().error(MobileCoreCode.SYSTEM_TABLE_NODATA.getValue(), MobileCoreCode.SYSTEM_TABLE_NODATA.getText());
|
return this.error(MobileCoreCode.SYSTEM_TABLE_NODATA.getValue(), MobileCoreCode.SYSTEM_TABLE_NODATA.getText());
|
}
|
// 判断参数是否正常
|
if (StringUtils.isEmpty(fse.getString(MobileCoreConst.MODULE_CATEGORY))) {
|
SpringMVCContextHolder.getSystemLogger().error(MobileCoreCode.SYSTEM_FORM_COUNT.getValue(), MobileCoreCode.SYSTEM_FORM_COUNT.getText());
|
return this.error(MobileCoreCode.SYSTEM_FORM_COUNT.getValue(), MobileCoreCode.SYSTEM_FORM_COUNT.getText());
|
}
|
return OK_List(navBarManagerService.findConfig(fse));
|
} catch (BaseException e) {
|
e.printStackTrace();
|
return error(e);
|
} catch (Exception e) {
|
e.printStackTrace();
|
return error(MobileCoreCode.FIND_NAV_BAR_CONFIG_FAIL);
|
}
|
}
|
|
/**
|
* 导航配置保存
|
*
|
* @param request
|
* @return
|
*/
|
@PostMapping("/save-config/{version}")
|
@ApiVersion(1)
|
public String saveConfig(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) {
|
SpringMVCContextHolder.getSystemLogger().error(MobileCoreCode.SYSTEM_FORM_NODATA.getValue(), MobileCoreCode.SYSTEM_FORM_NODATA.getText());
|
return this.error(MobileCoreCode.SYSTEM_FORM_NODATA.getValue(), MobileCoreCode.SYSTEM_FORM_NODATA.getText());
|
}
|
if (fse.getTableName() == null || !MobileCoreConst.TABLE_NAV_BAR.equals(fse.getTableName())) {
|
SpringMVCContextHolder.getSystemLogger().error(MobileCoreCode.SYSTEM_TABLE_NODATA.getValue(), MobileCoreCode.SYSTEM_TABLE_NODATA.getText());
|
return this.error(MobileCoreCode.SYSTEM_TABLE_NODATA.getValue(), MobileCoreCode.SYSTEM_TABLE_NODATA.getText());
|
}
|
INavBarManagerService navBarManagerService = (INavBarManagerService) getProxyInstance(this.navBarManagerService);
|
navBarManagerService.saveConfig(fse);
|
return OK();
|
} catch (BaseException e) {
|
e.printStackTrace();
|
return error(e);
|
} catch (Exception e) {
|
e.printStackTrace();
|
return error(MobileCoreCode.SAVE_NAV_BAR_CONFIG_FAIL);
|
}
|
}
|
|
/**
|
* 导航配置删除
|
*
|
* @param request
|
* @return
|
*/
|
@PostMapping("/del-config/{version}")
|
@ApiVersion(1)
|
public String delConfig(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) {
|
SpringMVCContextHolder.getSystemLogger().error(MobileCoreCode.SYSTEM_FORM_NODATA.getValue(), MobileCoreCode.SYSTEM_FORM_NODATA.getText());
|
return this.error(MobileCoreCode.SYSTEM_FORM_NODATA.getValue(), MobileCoreCode.SYSTEM_FORM_NODATA.getText());
|
}
|
if (fse.getTableName() == null || !MobileCoreConst.TABLE_NAV_BAR.equals(fse.getTableName())) {
|
SpringMVCContextHolder.getSystemLogger().error(MobileCoreCode.SYSTEM_TABLE_NODATA.getValue(), MobileCoreCode.SYSTEM_TABLE_NODATA.getText());
|
return this.error(MobileCoreCode.SYSTEM_TABLE_NODATA.getValue(), MobileCoreCode.SYSTEM_TABLE_NODATA.getText());
|
}
|
if (StringUtils.isEmpty(fse.getString(MobileCoreConst.MODULE_CATEGORY))) {
|
SpringMVCContextHolder.getSystemLogger().error(MobileCoreCode.SYSTEM_FORM_COUNT.getValue(), MobileCoreCode.SYSTEM_FORM_COUNT.getText());
|
return this.error(MobileCoreCode.SYSTEM_FORM_COUNT.getValue(), MobileCoreCode.SYSTEM_FORM_COUNT.getText());
|
}
|
INavBarManagerService navBarManagerService = (INavBarManagerService) getProxyInstance(this.navBarManagerService);
|
navBarManagerService.delConfig(fse);
|
return OK();
|
} catch (BaseException e) {
|
e.printStackTrace();
|
return error(e);
|
} catch (Exception e) {
|
e.printStackTrace();
|
return error(MobileCoreCode.DEL_NAV_BAR_CONFIG_FAIL);
|
}
|
}
|
|
/**
|
* 导航栏树 用于 移动端
|
*
|
* @return
|
*/
|
@PostMapping("/mobile/get-nav-bar-tree/{version}")
|
@ApiVersion(1)
|
public String getNavBarTree() {
|
try {
|
return BaseUtil.success(navBarManagerService.getNarBarTree());
|
} catch (BaseException e) {
|
e.printStackTrace();
|
return error(e);
|
} catch (Exception e) {
|
e.printStackTrace();
|
return error(MobileCoreCode.GET_NAV_BAR_TREE_LIST_FAIL);
|
}
|
}
|
}
|