Browse Source

[CODE]: 仓库信息新增或修改编号、名称、地址唯一非空判断

maxianghua 4 years ago
parent
commit
a79617523a

+ 11 - 9
ruoyi-admin/src/main/java/com/ruoyi/web/controller/warehouse/basicData/TWarehouseController.java

@@ -1,8 +1,10 @@
 package com.ruoyi.web.controller.warehouse.basicData;
 
+import com.alibaba.fastjson.JSONArray;
 import com.ruoyi.basicData.domain.TWarehouse;
 import com.ruoyi.basicData.service.ITWarehouseService;
 import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.constant.UserConstants;
 import com.ruoyi.common.core.controller.BaseController;
 import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.common.core.domain.model.LoginUser;
@@ -62,15 +64,6 @@ public class TWarehouseController extends BaseController {
         return AjaxResult.success(tWarehouseService.selectTWarehouseById1(fId));
     }
 
-    /**
-     * 新增仓库
-     */
-   /* @PreAuthorize("@ss.hasPermi('basicdata:warehouse:add')")
-    @Log(title = "仓库", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody TWarehouse tWarehouse) {
-        return toAjax(tWarehouseService.insertTWarehouse(tWarehouse));
-    }*/
 
     /**
      * 新增仓库
@@ -79,6 +72,15 @@ public class TWarehouseController extends BaseController {
     @Log(title = "仓库", businessType = BusinessType.INSERT)
     @PostMapping
     public AjaxResult add(@RequestParam("tWarehouse") String tWarehouse, @RequestParam("tWarehouseArea") String tWarehouseArea) {
+        // 检验编号、名称、地址 唯一
+        TWarehouse tWarehouses = JSONArray.parseObject(tWarehouse, TWarehouse.class);
+        if (UserConstants.NOT_UNIQUE.equals(tWarehouseService.checkUFNoUnique(tWarehouses))) {
+            return AjaxResult.error("新增仓库'" + tWarehouses.getfNo() + "'失败,编号已存在");
+        } else if (UserConstants.NOT_UNIQUE.equals(tWarehouseService.checkUFNnameUnique(tWarehouses))) {
+            return AjaxResult.error("新增仓库'" + tWarehouses.getfName() + "'失败,名称已存在");
+        } else if (UserConstants.NOT_UNIQUE.equals(tWarehouseService.checkUFAaddrUnique(tWarehouses))) {
+            return AjaxResult.error("新增仓库'" + tWarehouses.getfAddr() + "'失败,地址已存在");
+        }
         // 获取当前的用户
         LoginUser loginUser = SpringUtils.getBean(TokenService.class).getLoginUser(ServletUtils.getRequest());
         return tWarehouseService.insertTWarehouse1(tWarehouse, tWarehouseArea, loginUser);

+ 23 - 0
ruoyi-warehouse/src/main/java/com/ruoyi/basicData/mapper/TWarehouseMapper.java

@@ -58,4 +58,27 @@ public interface TWarehouseMapper {
      * @return 结果
      */
     public int deleteTWarehouseByIds(Long[] fIds);
+
+    /**
+     *  检验编号唯一
+     * @param fNo
+     * @return
+     */
+    public TWarehouse checkFNoUnique(String fNo);
+
+    /**
+     *  检验名称
+     * @param fNname
+     * @return
+     */
+    public TWarehouse checkUFNnameUnique(String fNname);
+
+    /**
+     * 检验地址
+     * @param fAaddr
+     * @return
+     */
+    public TWarehouse checkUFAaddrUnique(String fAaddr);
+
+
 }

+ 19 - 0
ruoyi-warehouse/src/main/java/com/ruoyi/basicData/service/ITWarehouseService.java

@@ -62,4 +62,23 @@ public interface ITWarehouseService {
      * @return 结果
      */
     public int deleteTWarehouseById(Long fId);
+
+    /**
+     *  检验编号唯一
+     * @return
+     */
+    public String checkUFNoUnique(TWarehouse tWarehouse);
+
+    /**
+     *  检验编号名称
+     * @return
+     */
+    public String checkUFNnameUnique(TWarehouse tWarehouse);
+
+    /**
+     *  检验编号地址
+     * @return
+     */
+    public String checkUFAaddrUnique(TWarehouse tWarehouse);
+
 }

+ 28 - 0
ruoyi-warehouse/src/main/java/com/ruoyi/basicData/service/impl/TWarehouseServiceImpl.java

@@ -11,6 +11,7 @@ import com.ruoyi.basicData.mapper.TCustomerContactMapper;
 import com.ruoyi.basicData.mapper.TWarehouseAreaMapper;
 import com.ruoyi.basicData.mapper.TWarehouseMapper;
 import com.ruoyi.basicData.service.ITWarehouseService;
+import com.ruoyi.common.constant.UserConstants;
 import com.ruoyi.common.core.domain.AjaxResult;
 import com.ruoyi.common.core.domain.model.LoginUser;
 import com.ruoyi.common.utils.DateUtils;
@@ -155,4 +156,31 @@ public class TWarehouseServiceImpl implements ITWarehouseService {
     public int deleteTWarehouseById(Long fId) {
         return tWarehouseMapper.deleteTWarehouseById(fId);
     }
+
+    @Override
+    public String checkUFNoUnique(TWarehouse tWarehouse) {
+        TWarehouse tWarehouse1 = tWarehouseMapper.checkFNoUnique(tWarehouse.getfNo());
+        if (StringUtils.isNotNull(tWarehouse1) && tWarehouse1.getfId()!=tWarehouse.getfId()) {
+            return UserConstants.NOT_UNIQUE;
+        }
+        return UserConstants.UNIQUE;
+    }
+
+    @Override
+    public String checkUFNnameUnique(TWarehouse tWarehouse) {
+        TWarehouse tWarehouse1 = tWarehouseMapper.checkUFNnameUnique(tWarehouse.getfName());
+        if (StringUtils.isNotNull(tWarehouse1) && tWarehouse1.getfId()!=tWarehouse.getfId()) {
+            return UserConstants.NOT_UNIQUE;
+        }
+        return UserConstants.UNIQUE;
+    }
+
+    @Override
+    public String checkUFAaddrUnique(TWarehouse tWarehouse) {
+        TWarehouse tWarehouse1 = tWarehouseMapper.checkUFAaddrUnique(tWarehouse.getfAddr());
+        if (StringUtils.isNotNull(tWarehouse1) && tWarehouse1.getfId()!=tWarehouse.getfId()) {
+            return UserConstants.NOT_UNIQUE;
+        }
+        return UserConstants.UNIQUE;
+    }
 }

+ 12 - 0
ruoyi-warehouse/src/main/resources/mapper/basicData/TWarehouseMapper.xml

@@ -93,4 +93,16 @@
         </foreach>
     </delete>
 
+    <select id="checkFNoUnique" parameterType="String" resultMap="TWarehouseResult">
+	    select f_id,f_no from t_warehouse where f_no = #{fNo} limit 1
+    </select>
+
+    <select id="checkUFNnameUnique" parameterType="String" resultMap="TWarehouseResult">
+        select f_id,f_name from t_warehouse where f_name = #{fAame} limit 1
+    </select>
+
+    <select id="checkUFAaddrUnique" parameterType="String" resultMap="TWarehouseResult">
+        select f_id,f_addr from t_warehouse where f_addr = #{fAddr} limit 1
+    </select>
+
 </mapper>