Browse Source

场地管理做唯一校验

Memory_LG 5 tháng trước cách đây
mục cha
commit
dae3bf9f0a

+ 8 - 10
qmjszx-business/src/main/java/beilv/session/controller/BeilvSessionController.java

@@ -83,12 +83,7 @@ public class BeilvSessionController extends BaseController {
     @PostMapping("/add")
     @ResponseBody
     public AjaxResult addSave(BeilvSession beilvSession) {
-        int i = beilvSessionService.insertBeilvSession(beilvSession);
-        if(i > 0){
-            return toAjax(i);
-        }else{
-            return AjaxResult.error("当前数据存在!");
-        }
+        return judgment(beilvSessionService.insertBeilvSession(beilvSession));
     }
 
     /**
@@ -110,11 +105,14 @@ public class BeilvSessionController extends BaseController {
     @PostMapping("/edit")
     @ResponseBody
     public AjaxResult editSave(BeilvSession beilvSession) {
-        int i = beilvSessionService.updateBeilvSession(beilvSession);
-        if(i > 0){
+        return judgment(beilvSessionService.updateBeilvSession(beilvSession));
+    }
+
+    private AjaxResult judgment(int i) {
+        if (i > 0) {
             return toAjax(i);
-        }else{
-            return AjaxResult.error("当前数据存在!");
+        } else {
+            return AjaxResult.error("当前数据存在");
         }
     }
 

+ 22 - 22
qmjszx-business/src/main/java/beilv/site/controller/BeilvSiteController.java

@@ -1,6 +1,7 @@
 package beilv.site.controller;
 
 import java.util.List;
+
 import org.apache.shiro.authz.annotation.RequiresPermissions;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
@@ -21,14 +22,13 @@ import beilv.common.core.page.TableDataInfo;
 
 /**
  * 球场管理Controller
- * 
+ *
  * @author lc
  * @date 2025-01-06
  */
 @Controller
 @RequestMapping("/system/site")
-public class BeilvSiteController extends BaseController
-{
+public class BeilvSiteController extends BaseController {
     private String prefix = "system/site";
 
     @Autowired
@@ -36,8 +36,7 @@ public class BeilvSiteController extends BaseController
 
     @RequiresPermissions("system:site:view")
     @GetMapping()
-    public String site()
-    {
+    public String site() {
         return prefix + "/site";
     }
 
@@ -47,8 +46,7 @@ public class BeilvSiteController extends BaseController
     @RequiresPermissions("system:site:list")
     @PostMapping("/list")
     @ResponseBody
-    public TableDataInfo list(BeilvSite beilvSite)
-    {
+    public TableDataInfo list(BeilvSite beilvSite) {
         startPage();
         List<BeilvSite> list = beilvSiteService.selectBeilvSiteList(beilvSite);
         return getDataTable(list);
@@ -61,8 +59,7 @@ public class BeilvSiteController extends BaseController
     @Log(title = "球场管理", businessType = BusinessType.EXPORT)
     @PostMapping("/export")
     @ResponseBody
-    public AjaxResult export(BeilvSite beilvSite)
-    {
+    public AjaxResult export(BeilvSite beilvSite) {
         List<BeilvSite> list = beilvSiteService.selectBeilvSiteList(beilvSite);
         ExcelUtil<BeilvSite> util = new ExcelUtil<BeilvSite>(BeilvSite.class);
         return util.exportExcel(list, "球场管理数据");
@@ -73,8 +70,7 @@ public class BeilvSiteController extends BaseController
      */
     @RequiresPermissions("system:site:add")
     @GetMapping("/add")
-    public String add()
-    {
+    public String add() {
         return prefix + "/add";
     }
 
@@ -85,9 +81,8 @@ public class BeilvSiteController extends BaseController
     @Log(title = "球场管理", businessType = BusinessType.INSERT)
     @PostMapping("/add")
     @ResponseBody
-    public AjaxResult addSave(BeilvSite beilvSite)
-    {
-        return toAjax(beilvSiteService.insertBeilvSite(beilvSite));
+    public AjaxResult addSave(BeilvSite beilvSite) {
+        return judgment(beilvSiteService.insertBeilvSite(beilvSite));
     }
 
     /**
@@ -95,8 +90,7 @@ public class BeilvSiteController extends BaseController
      */
     @RequiresPermissions("system:site:edit")
     @GetMapping("/edit/{id}")
-    public String edit(@PathVariable("id") Long id, ModelMap mmap)
-    {
+    public String edit(@PathVariable("id") Long id, ModelMap mmap) {
         BeilvSite beilvSite = beilvSiteService.selectBeilvSiteById(id);
         mmap.put("beilvSite", beilvSite);
         return prefix + "/edit";
@@ -109,9 +103,16 @@ public class BeilvSiteController extends BaseController
     @Log(title = "球场管理", businessType = BusinessType.UPDATE)
     @PostMapping("/edit")
     @ResponseBody
-    public AjaxResult editSave(BeilvSite beilvSite)
-    {
-        return toAjax(beilvSiteService.updateBeilvSite(beilvSite));
+    public AjaxResult editSave(BeilvSite beilvSite) {
+        return judgment(beilvSiteService.updateBeilvSite(beilvSite));
+    }
+
+    private AjaxResult judgment(int i) {
+        if (i > 0) {
+            return toAjax(i);
+        } else {
+            return AjaxResult.error("当前名称的数据已存在");
+        }
     }
 
     /**
@@ -119,10 +120,9 @@ public class BeilvSiteController extends BaseController
      */
     @RequiresPermissions("system:site:remove")
     @Log(title = "球场管理", businessType = BusinessType.DELETE)
-    @PostMapping( "/remove")
+    @PostMapping("/remove")
     @ResponseBody
-    public AjaxResult remove(String ids)
-    {
+    public AjaxResult remove(String ids) {
         return toAjax(beilvSiteService.deleteBeilvSiteByIds(ids));
     }
 }

+ 2 - 0
qmjszx-business/src/main/java/beilv/site/mapper/BeilvSiteMapper.java

@@ -58,4 +58,6 @@ public interface BeilvSiteMapper
      * @return 结果
      */
     public int deleteBeilvSiteByIds(String[] ids);
+
+    boolean selectOne(BeilvSite beilvSite);
 }

+ 26 - 23
qmjszx-business/src/main/java/beilv/site/service/impl/BeilvSiteServiceImpl.java

@@ -1,6 +1,7 @@
 package beilv.site.service.impl;
 
 import java.util.List;
+
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import beilv.site.mapper.BeilvSiteMapper;
@@ -10,85 +11,87 @@ import beilv.common.core.text.Convert;
 
 /**
  * 球场管理Service业务层处理
- * 
+ *
  * @author lc
  * @date 2025-01-06
  */
 @Service
-public class BeilvSiteServiceImpl implements IBeilvSiteService 
-{
+public class BeilvSiteServiceImpl implements IBeilvSiteService {
     @Autowired
     private BeilvSiteMapper beilvSiteMapper;
 
     /**
      * 查询球场管理
-     * 
+     *
      * @param id 球场管理主键
      * @return 球场管理
      */
     @Override
-    public BeilvSite selectBeilvSiteById(Long id)
-    {
+    public BeilvSite selectBeilvSiteById(Long id) {
         return beilvSiteMapper.selectBeilvSiteById(id);
     }
 
     /**
      * 查询球场管理列表
-     * 
+     *
      * @param beilvSite 球场管理
      * @return 球场管理
      */
     @Override
-    public List<BeilvSite> selectBeilvSiteList(BeilvSite beilvSite)
-    {
+    public List<BeilvSite> selectBeilvSiteList(BeilvSite beilvSite) {
         return beilvSiteMapper.selectBeilvSiteList(beilvSite);
     }
 
     /**
      * 新增球场管理
-     * 
+     *
      * @param beilvSite 球场管理
      * @return 结果
      */
     @Override
-    public int insertBeilvSite(BeilvSite beilvSite)
-    {
-        return beilvSiteMapper.insertBeilvSite(beilvSite);
+    public int insertBeilvSite(BeilvSite beilvSite) {
+        if (beilvSiteMapper.selectOne(beilvSite)) {
+            return -1;
+        } else {
+            return beilvSiteMapper.insertBeilvSite(beilvSite);
+        }
     }
 
     /**
      * 修改球场管理
-     * 
+     *
      * @param beilvSite 球场管理
      * @return 结果
      */
     @Override
-    public int updateBeilvSite(BeilvSite beilvSite)
-    {
-        return beilvSiteMapper.updateBeilvSite(beilvSite);
+    public int updateBeilvSite(BeilvSite beilvSite) {
+        if (beilvSiteMapper.selectOne(beilvSite)) {
+            return -1;
+        } else {
+            return beilvSiteMapper.updateBeilvSite(beilvSite);
+        }
+
     }
 
     /**
      * 批量删除球场管理
-     * 
+     *
      * @param ids 需要删除的球场管理主键
      * @return 结果
      */
     @Override
-    public int deleteBeilvSiteByIds(String ids)
-    {
+    public int deleteBeilvSiteByIds(String ids) {
         return beilvSiteMapper.deleteBeilvSiteByIds(Convert.toStrArray(ids));
     }
 
     /**
      * 删除球场管理信息
-     * 
+     *
      * @param id 球场管理主键
      * @return 结果
      */
     @Override
-    public int deleteBeilvSiteById(Long id)
-    {
+    public int deleteBeilvSiteById(Long id) {
         return beilvSiteMapper.deleteBeilvSiteById(id);
     }
 }

+ 21 - 0
qmjszx-business/src/main/resources/mapper/site/BeilvSiteMapper.xml

@@ -89,4 +89,25 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         </foreach>
     </delete>
 
+    <select id="selectOne" parameterType="beilvSite" resultType="boolean">
+        select case when count(1) > 0 then true
+        else false
+        end as result
+        from beilv_site
+        <where>
+            <if test="name != null and name != ''">
+                and `name` = #{name}
+            </if>
+            <if test="siteType != null and siteType != ''">
+                and site_type = #{siteType}
+            </if>
+            <if test="venueId != null and venueId != ''">
+                and venue_id = #{venueId}
+            </if>
+            <if test="id != null and id != ''">
+                and id != #{id}
+            </if>
+        </where>
+    </select>
+
 </mapper>