package com.product.admin.controller; import java.util.Date; import javax.servlet.http.HttpServletRequest; import com.product.core.permission.PermissionService; import com.product.module.sys.config.SystemErrorCode; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; import com.product.admin.config.CmnConst; import com.product.admin.config.SystemCode; import com.product.admin.service.SystemProductsService; 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; /** * Copyright LX-BASE * @Title: SystemProductsController * @Project: LX-BASE-SERVER * @Date: 2020-06-01 17:15 * @Author: zhoujie * @Description: 产品管理 */ @RestController @RequestMapping("/api/products") public class SystemProductsController extends AbstractBaseController { @Autowired private SystemProductsService systemProductsService; /** * 数据权限验证 */ @Autowired PermissionService permissionService; /** * @Date: 2020-06-01 17:15 * @Author: zhoujie * @Description: 产品详情 */ @RequestMapping(value = "/find-products-particulars/{version}",method = RequestMethod.POST) @ApiVersion(1) public String ProductsParticulars(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(SystemCode.SYSTEM_FORM_NODATA.getValue(), SystemCode.SYSTEM_FORM_NODATA.getText()); return this.error(SystemCode.SYSTEM_FORM_NODATA.getValue(), SystemCode.SYSTEM_FORM_NODATA.getText()); } //数据操作的权限验证 if(!permissionService.validDataPermission(CmnConst.PRODUCT_SYS_PRODUCTS,fse.getString("uuid"),CoreConst.DATA_PERMISSION_VALID_TYPE_USER)) { SpringMVCContextHolder.getSystemLogger().error(SystemErrorCode.SYSTEM_NOT_OPER_PERMISSION.getValue(), SystemErrorCode.SYSTEM_NOT_OPER_PERMISSION.getText()); return this.error(SystemErrorCode.SYSTEM_NOT_OPER_PERMISSION.getValue(), SystemErrorCode.SYSTEM_NOT_OPER_PERMISSION.getText()); } if (fse.getTableName() == null || !CmnConst.PRODUCT_SYS_PRODUCTS.equals(fse.getTableName())) { SpringMVCContextHolder.getSystemLogger().error(SystemCode.SYSTEM_TABLE_NODATA.getValue(), SystemCode.SYSTEM_TABLE_NODATA.getText()); return this.error(SystemCode.SYSTEM_TABLE_NODATA.getValue(), SystemCode.SYSTEM_TABLE_NODATA.getText()); } FieldSetEntity fs = systemProductsService.findProduct(fse); return OK_List(fs); }catch(BaseException e) { SpringMVCContextHolder.getSystemLogger().error(e); return this.error(e); }catch(Exception e) { SpringMVCContextHolder.getSystemLogger().error(e); return this.error(SystemCode.SYSTEM_PRODUCTS_FIND_FAIL.getValue(),SystemCode.SYSTEM_PRODUCTS_FIND_FAIL.getText()); } } /** * @Date: 2020-06-01 17:16 * @Author: zhoujie * @Description: 更新产品详情 */ @RequestMapping(value = "/update-products-particulars/{version}",method = RequestMethod.POST) @ApiVersion(1) public String updateProductsParticulars(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(SystemCode.SYSTEM_FORM_NODATA.getValue(), SystemCode.SYSTEM_FORM_NODATA.getText()); return this.error(SystemCode.SYSTEM_FORM_NODATA.getValue(), SystemCode.SYSTEM_FORM_NODATA.getText()); } //数据操作的权限验证 if(!permissionService.validDataPermission(fse,CoreConst.DATA_PERMISSION_VALID_TYPE_USER)) { SpringMVCContextHolder.getSystemLogger().error(SystemErrorCode.SYSTEM_NOT_OPER_PERMISSION.getValue(), SystemErrorCode.SYSTEM_NOT_OPER_PERMISSION.getText()); return this.error(SystemErrorCode.SYSTEM_NOT_OPER_PERMISSION.getValue(), SystemErrorCode.SYSTEM_NOT_OPER_PERMISSION.getText()); } if (fse.getTableName() == null || !CmnConst.PRODUCT_SYS_PRODUCTS.equals(fse.getTableName())) { SpringMVCContextHolder.getSystemLogger().error(SystemCode.SYSTEM_TABLE_NODATA.getValue(), SystemCode.SYSTEM_TABLE_NODATA.getText()); return this.error(SystemCode.SYSTEM_TABLE_NODATA.getValue(), SystemCode.SYSTEM_TABLE_NODATA.getText()); } fse.setValue("updated_by", SpringMVCContextHolder.getCurrentUser().getUser_id()); fse.setValue("updated_utc_datetime", new Date()); boolean success = systemProductsService.baseDao.update(fse); if (success) { return OK(); } SpringMVCContextHolder.getSystemLogger().error(SystemCode.SYSTEM_PRODUCT_UPDATE_FAIL.getValue(),SystemCode.SYSTEM_PRODUCT_UPDATE_FAIL.getText()); return error(SystemCode.SYSTEM_PRODUCT_UPDATE_FAIL.getValue(),SystemCode.SYSTEM_PRODUCT_UPDATE_FAIL.getText()); }catch(BaseException e) { SpringMVCContextHolder.getSystemLogger().error(e); return this.error(e); }catch(Exception e) { SpringMVCContextHolder.getSystemLogger().error(e); return this.error(SystemCode.SYSTEM_PRODUCTS_UPDATE_FAIL.getValue(),SystemCode.SYSTEM_PRODUCTS_UPDATE_FAIL.getText()); } } }