12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- package cn.cslg.pas.controller;
- import cn.cslg.pas.common.core.base.Constants;
- import cn.cslg.pas.common.dto.business.ProductDTO;
- import cn.cslg.pas.common.model.cronModel.Records;
- import cn.cslg.pas.common.model.request.StringRequest;
- import cn.cslg.pas.common.utils.Response;
- import cn.cslg.pas.exception.ConditionException;
- import cn.cslg.pas.exception.UnLoginException;
- import cn.cslg.pas.exception.XiaoShiException;
- import cn.cslg.pas.factorys.businessFactory.Business;
- import cn.cslg.pas.factorys.businessFactory.BusinessFactory;
- import com.alibaba.fastjson.JSONObject;
- import io.swagger.v3.oas.annotations.Operation;
- import lombok.extern.slf4j.Slf4j;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.web.bind.annotation.PostMapping;
- import org.springframework.web.bind.annotation.RequestBody;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RestController;
- import org.springframework.web.multipart.MultipartFile;
- import java.util.List;
- /**
- * 产品的controller层
- * @Author xiexiang
- * @Date 2023/10/27
- */
- @Slf4j
- @RequestMapping(Constants.API_XiaoSHI + "/product")
- @RestController
- public class ProductController {
- @Autowired
- private BusinessFactory businessFactory;
- @Operation(summary = "查询产品")
- @PostMapping("/queryProduct")
- public Response queryProduct(@RequestBody StringRequest stringRequest) throws Exception {
- Business business = businessFactory.getClass("productService");
- Records records = (Records) business.queryMessage(stringRequest);
- return Response.success(records);
- }
- @Operation(summary = "添加产品")
- @PostMapping("/addProduct")
- public Response addProduct(String product, List<MultipartFile> files) throws Exception {
- if (product != null && product != "") {
- ProductDTO productDTO = JSONObject.parseObject(product, ProductDTO.class);
- Business business = businessFactory.getClass("productService");
- Integer id = null;
- try {
- id = (Integer) business.addMessage(productDTO, files);
- } catch (Exception e){
- if(e instanceof XiaoShiException){
- return Response.error(e.getMessage());
- } else if (e instanceof UnLoginException) {
- return Response.unLogin(e.getMessage());
- } else if (e instanceof ConditionException) {
- return Response.conditionError(e.getMessage());
- }
- }
- return Response.success(id);
- } else {
- return Response.error("网络异常");
- }
- }
- @Operation(summary = "更新产品")
- @PostMapping("/updateProduct")
- public Response updateProduct(String product, List<MultipartFile> files) throws Exception {
- if(product != null){
- ProductDTO productDTO = JSONObject.parseObject(product, ProductDTO.class);
- Business business = businessFactory.getClass("productService");
- business.updateMessage(productDTO, files);
- return Response.success(1);
- } else {
- return Response.error("网络异常");
- }
- }
- @Operation(summary = "删除产品")
- @PostMapping("/deleteProduct")
- public String deleteProduct(@RequestBody List<Integer> ids) throws Exception {
- Business business = businessFactory.getClass("productService");
- business.deleteMessage(ids);
- return Response.success();
- }
- }
|