فهرست منبع

时段管理做唯一校验

Memory_LG 5 ماه پیش
والد
کامیت
21ffc1b009

+ 23 - 22
qmjszx-business/src/main/java/beilv/session/controller/BeilvSessionController.java

@@ -23,14 +23,13 @@ import beilv.common.core.page.TableDataInfo;
 
 /**
  * 时段管理Controller
- * 
+ *
  * @author lc
  * @date 2025-01-06
  */
 @Controller
 @RequestMapping("/system/session")
-public class BeilvSessionController extends BaseController
-{
+public class BeilvSessionController extends BaseController {
     private String prefix = "system/session";
 
     @Autowired
@@ -38,8 +37,7 @@ public class BeilvSessionController extends BaseController
 
     @RequiresPermissions("system:session:view")
     @GetMapping()
-    public String session()
-    {
+    public String session() {
         return prefix + "/session";
     }
 
@@ -49,8 +47,7 @@ public class BeilvSessionController extends BaseController
     @RequiresPermissions("system:session:list")
     @PostMapping("/list")
     @ResponseBody
-    public TableDataInfo list(BeilvSession beilvSession)
-    {
+    public TableDataInfo list(BeilvSession beilvSession) {
         startPage();
         List<BeilvSession> list = beilvSessionService.selectBeilvSessionList(beilvSession);
         return getDataTable(list);
@@ -63,8 +60,7 @@ public class BeilvSessionController extends BaseController
     @Log(title = "时段管理", businessType = BusinessType.EXPORT)
     @PostMapping("/export")
     @ResponseBody
-    public AjaxResult export(BeilvSession beilvSession)
-    {
+    public AjaxResult export(BeilvSession beilvSession) {
         List<BeilvSession> list = beilvSessionService.selectBeilvSessionList(beilvSession);
         ExcelUtil<BeilvSession> util = new ExcelUtil<BeilvSession>(BeilvSession.class);
         return util.exportExcel(list, "时段管理数据");
@@ -75,8 +71,7 @@ public class BeilvSessionController extends BaseController
      */
     @RequiresPermissions("system:session:add")
     @GetMapping("/add")
-    public String add()
-    {
+    public String add() {
         return prefix + "/add";
     }
 
@@ -87,9 +82,13 @@ public class BeilvSessionController extends BaseController
     @Log(title = "时段管理", businessType = BusinessType.INSERT)
     @PostMapping("/add")
     @ResponseBody
-    public AjaxResult addSave(BeilvSession beilvSession)
-    {
-        return toAjax(beilvSessionService.insertBeilvSession(beilvSession));
+    public AjaxResult addSave(BeilvSession beilvSession) {
+        int i = beilvSessionService.insertBeilvSession(beilvSession);
+        if(i > 0){
+            return toAjax(i);
+        }else{
+            return AjaxResult.error("当前数据存在!");
+        }
     }
 
     /**
@@ -97,8 +96,7 @@ public class BeilvSessionController extends BaseController
      */
     @RequiresPermissions("system:session:edit")
     @GetMapping("/edit/{id}")
-    public String edit(@PathVariable("id") Long id, ModelMap mmap)
-    {
+    public String edit(@PathVariable("id") Long id, ModelMap mmap) {
         BeilvSession beilvSession = beilvSessionService.selectBeilvSessionById(id);
         mmap.put("beilvSession", beilvSession);
         return prefix + "/edit";
@@ -111,9 +109,13 @@ public class BeilvSessionController extends BaseController
     @Log(title = "时段管理", businessType = BusinessType.UPDATE)
     @PostMapping("/edit")
     @ResponseBody
-    public AjaxResult editSave(BeilvSession beilvSession)
-    {
-        return toAjax(beilvSessionService.updateBeilvSession(beilvSession));
+    public AjaxResult editSave(BeilvSession beilvSession) {
+        int i = beilvSessionService.updateBeilvSession(beilvSession);
+        if(i > 0){
+            return toAjax(i);
+        }else{
+            return AjaxResult.error("当前数据存在!");
+        }
     }
 
     /**
@@ -121,10 +123,9 @@ public class BeilvSessionController extends BaseController
      */
     @RequiresPermissions("system:session:remove")
     @Log(title = "时段管理", businessType = BusinessType.DELETE)
-    @PostMapping( "/remove")
+    @PostMapping("/remove")
     @ResponseBody
-    public AjaxResult remove(String ids)
-    {
+    public AjaxResult remove(String ids) {
         return toAjax(beilvSessionService.deleteBeilvSessionByIds(ids));
     }
 }

+ 7 - 0
qmjszx-business/src/main/java/beilv/session/mapper/BeilvSessionMapper.java

@@ -60,4 +60,11 @@ public interface BeilvSessionMapper
      * @return 结果
      */
     public int deleteBeilvSessionByIds(String[] ids);
+
+    /**
+     * 判断当前参数的数据是否存在
+     * @param beilvSession
+     * @return
+     */
+    boolean selectOne(BeilvSession beilvSession);
 }

+ 25 - 23
qmjszx-business/src/main/java/beilv/session/service/impl/BeilvSessionServiceImpl.java

@@ -12,85 +12,87 @@ import beilv.common.core.text.Convert;
 
 /**
  * 时段管理Service业务层处理
- * 
+ *
  * @author lc
  * @date 2025-01-06
  */
 @Service
-public class BeilvSessionServiceImpl implements IBeilvSessionService
-{
+public class BeilvSessionServiceImpl implements IBeilvSessionService {
     @Autowired
     private BeilvSessionMapper beilvSessionMapper;
 
     /**
      * 查询时段管理
-     * 
+     *
      * @param id 时段管理主键
      * @return 时段管理
      */
     @Override
-    public BeilvSession selectBeilvSessionById(Long id)
-    {
+    public BeilvSession selectBeilvSessionById(Long id) {
         return beilvSessionMapper.selectBeilvSessionById(id);
     }
 
     /**
      * 查询时段管理列表
-     * 
+     *
      * @param beilvSession 时段管理
      * @return 时段管理
      */
     @Override
-    public List<BeilvSession> selectBeilvSessionList(BeilvSession beilvSession)
-    {
+    public List<BeilvSession> selectBeilvSessionList(BeilvSession beilvSession) {
         return beilvSessionMapper.selectBeilvSessionList(beilvSession);
     }
 
     /**
      * 新增时段管理
-     * 
+     *
      * @param beilvSession 时段管理
      * @return 结果
      */
     @Override
-    public int insertBeilvSession(BeilvSession beilvSession)
-    {
-        return beilvSessionMapper.insertBeilvSession(beilvSession);
+    public int insertBeilvSession(BeilvSession beilvSession) {
+        //验证当前球场的当前时段中当前类型的数据是否存在, 存在返回true; 不存在返回false
+        if (beilvSessionMapper.selectOne(beilvSession)) {
+            return -1;
+        } else {
+            return beilvSessionMapper.insertBeilvSession(beilvSession);
+        }
     }
 
     /**
      * 修改时段管理
-     * 
+     *
      * @param beilvSession 时段管理
      * @return 结果
      */
     @Override
-    public int updateBeilvSession(BeilvSession beilvSession)
-    {
-        return beilvSessionMapper.updateBeilvSession(beilvSession);
+    public int updateBeilvSession(BeilvSession beilvSession) {
+        if (beilvSessionMapper.selectOne(beilvSession)) {
+            return -1;
+        } else {
+            return beilvSessionMapper.updateBeilvSession(beilvSession);
+        }
     }
 
     /**
      * 批量删除时段管理
-     * 
+     *
      * @param ids 需要删除的时段管理主键
      * @return 结果
      */
     @Override
-    public int deleteBeilvSessionByIds(String ids)
-    {
+    public int deleteBeilvSessionByIds(String ids) {
         return beilvSessionMapper.deleteBeilvSessionByIds(Convert.toStrArray(ids));
     }
 
     /**
      * 删除时段管理信息
-     * 
+     *
      * @param id 时段管理主键
      * @return 结果
      */
     @Override
-    public int deleteBeilvSessionById(Long id)
-    {
+    public int deleteBeilvSessionById(Long id) {
         return beilvSessionMapper.deleteBeilvSessionById(id);
     }
 }

+ 22 - 0
qmjszx-business/src/main/resources/mapper/session/BeilvSessionMapper.xml

@@ -71,4 +71,26 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         </foreach>
     </delete>
 
+    <select id="selectOne" parameterType="beilvSession" resultType="boolean">
+        select case
+                   when count(1) > 0 then true
+                   else false
+                   end as result
+        from beilv_session
+        <where>
+            <if test="siteType != null and siteType != ''">
+                and site_type = #{siteType}
+            </if>
+            <if test="session != null and session != ''">
+                and `session` = #{session}
+            </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>