From 8abe275e36823f1065300af45e1f7a9a68f549a7 Mon Sep 17 00:00:00 2001
From: Fixiaobai <fixiaobai@163.com>
Date: 星期三, 06 九月 2023 16:14:40 +0800
Subject: [PATCH] 修改bug

---
 inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/RawMaterialController.java |  121 +++++++++++++++++++++++++++++++++++++---
 1 files changed, 111 insertions(+), 10 deletions(-)

diff --git a/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/RawMaterialController.java b/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/RawMaterialController.java
index 010634d..c15dbdf 100644
--- a/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/RawMaterialController.java
+++ b/inspection-server/src/main/java/com/yuanchu/limslaboratory/controller/RawMaterialController.java
@@ -1,23 +1,33 @@
 package com.yuanchu.limslaboratory.controller;
 
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.yuanchu.limslaboratory.annotation.AuthHandler;
+import com.yuanchu.limslaboratory.enums.InterfaceType;
+import com.yuanchu.limslaboratory.enums.MenuEnums;
+import com.yuanchu.limslaboratory.mapper.ProductMapper;
+import com.yuanchu.limslaboratory.pojo.Material;
+import com.yuanchu.limslaboratory.pojo.Product;
 import com.yuanchu.limslaboratory.pojo.RawMaterial;
-import com.yuanchu.limslaboratory.service.RawMaterialService;
-import com.yuanchu.limslaboratory.utils.MyUtil;
+import com.yuanchu.limslaboratory.pojo.vo.InspectionVo;
+import com.yuanchu.limslaboratory.service.*;
+import com.yuanchu.limslaboratory.utils.JackSonUtil;
+import com.yuanchu.limslaboratory.utils.RedisUtil;
 import com.yuanchu.limslaboratory.vo.Result;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiImplicitParams;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
 
-import org.springframework.web.bind.annotation.RestController;
-
+import javax.annotation.Resource;
 import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
 import java.util.Objects;
 
@@ -29,7 +39,7 @@
  * @author 姹熻嫃榈烽洀缃戠粶绉戞妧鏈夐檺鍏徃
  * @since 2023-07-28
  */
-@Api(tags = "鎶ユ绠$悊-->鍘熸潗鏂欐姤妫�")
+@Api(tags = "鎶ユ绠$悊-->鍘熸潗鏂欐姤妫�-->椤甸潰鐗堟湰琛�")
 @RestController
 @RequestMapping("/raw-material")
 public class RawMaterialController {
@@ -37,21 +47,112 @@
     @Autowired
     private RawMaterialService rawMaterialService;
 
+    @Autowired
+    private StandardService standardService;
+
+    @Autowired
+    private MaterialService materialService;
+
+    @Resource
+    private ProductMapper productMapper;
+
+    @Resource
+    private InspectionService inspectionService;
+
     @ApiOperation("鏌ヨ鎵�鏈夋楠岃鍒掑垎閰�")
     @ApiImplicitParams(value = {
             @ApiImplicitParam(name = "pageNo", value = "璧峰椤�", dataTypeClass = Integer.class, required = true),
             @ApiImplicitParam(name = "pageSize", value = "姣忎竴椤垫暟閲�", dataTypeClass = Integer.class, required = true),
             @ApiImplicitParam(name = "materialCoding", value = "鏉愭枡缂栫爜", dataTypeClass = String.class),
             @ApiImplicitParam(name = "materialName", value = "鏉愭枡鍚嶇О", dataTypeClass = String.class),
-            @ApiImplicitParam(name = "condition", value = "鐘舵��", dataTypeClass = Integer.class),
+            @ApiImplicitParam(name = "type", value = "鐘舵��", dataTypeClass = Integer.class),
             @ApiImplicitParam(name = "createTime", value = "鏉ユ枡鏃ユ湡", dataTypeClass = String.class)
     })
     @GetMapping("/selectAll")
-    public Result<?> selectRawMaterial(Integer pageSize, Integer pageNo, String materialCoding, String materialName, Integer condition, String createTime) {
-        IPage<RawMaterial> iPage = rawMaterialService.selectRawMaterial(materialCoding, materialName, condition, createTime, new Page<Objects>(pageNo, pageSize));
+    @AuthHandler
+    public Result<?> selectRawMaterial(Integer pageSize, Integer pageNo, String materialCoding, String materialName, Integer type, String createTime) {
+        IPage<RawMaterial> iPage = rawMaterialService.selectRawMaterial(materialCoding, materialName, type, createTime, new Page<Objects>(pageNo, pageSize));
         Map<String, Object> map = new HashMap<>();
         map.put("row", iPage.getRecords());
         map.put("total", iPage.getTotal());
         return Result.success(map);
     }
+
+    @ApiOperation("鍘熸潗鏂欐姤妫�娣诲姞")
+    @PostMapping("/add")
+    @AuthHandler(type = InterfaceType.ADD,menuId = MenuEnums.reportForInspection,isAdd = true)
+    public Result<?> insertRawMaterial(@Validated @RequestBody RawMaterial rawMaterial) {
+        Integer integer = rawMaterialService.insertRawMaterial(rawMaterial);
+        if (integer >= 1) {
+            return Result.success("娣诲姞鎴愬姛");
+        }
+        return Result.fail("娣诲姞澶辫触");
+    }
+
+    @ApiOperation("鍘熸潗鏂欐姤妫�鍒犻櫎")
+    @PostMapping("/delete")
+    @AuthHandler(type = InterfaceType.DELETE,menuId = MenuEnums.reportForInspection,isAdd = true)
+    public Result<?> deleteRawMaterial(String deleteId) {
+        Integer integer = rawMaterialService.deleteRawMaterial(deleteId);
+        if (integer >= 1) {
+            return Result.success("鍒犻櫎鎴愬姛");
+        }
+        return Result.fail("鍒犻櫎澶辫触");
+    }
+
+
+    @ApiOperation("鑾峰彇鐗╂枡鍚嶇О")
+    @GetMapping("/getMaterielName")
+    @AuthHandler(type = InterfaceType.SELECT,menuId = MenuEnums.reportForInspection,isAdd = true)
+    public Result<?> getMaterielName(){
+        LambdaQueryWrapper<Material> wrapper = new LambdaQueryWrapper<>();
+        wrapper.select(Material::getId, Material::getName, Material::getCode)
+                .eq(Material::getType,0).eq(Material::getState,1);
+        List<Map<String, Object>> maps = materialService.listMaps(wrapper);
+        return Result.success(maps);
+    }
+
+    @ApiOperation("鑾峰彇瑙勬牸鍨嬪彿")
+    @GetMapping("/specification")
+    @AuthHandler(type = InterfaceType.SELECT,menuId = MenuEnums.reportForInspection,isAdd = true)
+    public Result<?> getSpecificationIdAndName(String materialId) {
+        List<Map<String, Object>> specificationIdAndName = standardService.getSpecificationIdAndName(materialId);
+        return Result.success(specificationIdAndName);
+    }
+
+    @ApiOperation("閫夋嫨鐗堟湰")
+    @GetMapping("/chooseVer")
+    @ApiImplicitParams(value = {
+            @ApiImplicitParam(name = "name", value = "浜у搧鍚嶇О", dataTypeClass = String.class, required = true),
+            @ApiImplicitParam(name = "mcode", value = "浜у搧缂栧彿", dataTypeClass = String.class, required = true),
+            @ApiImplicitParam(name = "specifications", value = "瑙勬牸鍨嬪彿", dataTypeClass = String.class, required = true)
+    })
+    @AuthHandler(type = InterfaceType.SELECT,menuId = MenuEnums.reportForInspection,isAdd = true)
+    public Result<?> chooseVer(String name, String mcode, String specifications) {
+        return Result.success(inspectionService.chooseVer(name, mcode, specifications));
+    }
+
+
+    @ApiOperation(value = "鏌ョ湅璇ョ増鏈笅鎴戜滑瑕佸仛鐨勯」鐩姹�")
+    @ApiImplicitParams(value = {
+            @ApiImplicitParam(name = "name", value = "浜у搧鍚嶇О", dataTypeClass = String.class, required = true),
+            @ApiImplicitParam(name = "mcode", value = "浜у搧缂栧彿", dataTypeClass = String.class, required = true),
+            @ApiImplicitParam(name = "specifications", value = "瑙勬牸鍨嬪彿", dataTypeClass = String.class, required = true),
+            @ApiImplicitParam(name = "version", value = "鐗堟湰(榛樿鏈�鏂扮増鏈�)", dataTypeClass = Integer.class,required = true ),
+    })
+    @GetMapping("/lookProByVer")
+    @AuthHandler(type = InterfaceType.SELECT,menuId = MenuEnums.reportForInspection,isAdd = true)
+    public Result lookProByVer(String name, String mcode, String specifications,Integer version) {
+        return Result.success(inspectionService.lookProByVer(name, mcode, specifications,version,null));
+    }
+
+    @ApiOperation(value = "鍘熸潗鏂欑敓鎴愭姤妫�鍗�")
+    @PostMapping("/addInspect")
+    @AuthHandler(type = InterfaceType.ADD,menuId = MenuEnums.reportForInspection,isAdd = true)
+    public Result addInspect(@RequestHeader("X-Token") String token, @Validated @RequestBody InspectionVo inspectionVo) throws Exception {
+        Object object = RedisUtil.get(token);
+        Map<String, Object> unmarshal = JackSonUtil.unmarshal(JackSonUtil.marshal(object), Map.class);
+        return Result.success(inspectionService.addInspect((Integer) unmarshal.get("id"), inspectionVo));
+    }
+
 }

--
Gitblit v1.9.3