From e1fba46a50e2f5036b1a5fd59f459e61495eb888 Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期三, 08 七月 2026 16:43:44 +0800
Subject: [PATCH] 已进行排班并且人员已打卡的前提下,对应的班次配置不能编辑删除。
---
src/main/java/com/ruoyi/staff/service/impl/PersonalAttendanceLocationConfigServiceImpl.java | 33 +++++++++++++++++++++++++--------
1 files changed, 25 insertions(+), 8 deletions(-)
diff --git a/src/main/java/com/ruoyi/staff/service/impl/PersonalAttendanceLocationConfigServiceImpl.java b/src/main/java/com/ruoyi/staff/service/impl/PersonalAttendanceLocationConfigServiceImpl.java
index b1dffca..7548db8 100644
--- a/src/main/java/com/ruoyi/staff/service/impl/PersonalAttendanceLocationConfigServiceImpl.java
+++ b/src/main/java/com/ruoyi/staff/service/impl/PersonalAttendanceLocationConfigServiceImpl.java
@@ -1,15 +1,12 @@
package com.ruoyi.staff.service.impl;
-import com.baomidou.mybatisplus.core.toolkit.Wrappers;
-import com.ruoyi.common.exception.base.BaseException;
-import com.ruoyi.staff.pojo.PersonalAttendanceLocationConfig;
-import com.ruoyi.staff.mapper.PersonalAttendanceLocationConfigMapper;
-import com.ruoyi.staff.service.PersonalAttendanceLocationConfigService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import org.springframework.beans.factory.annotation.Autowired;
+import com.ruoyi.staff.mapper.PersonalAttendanceLocationConfigMapper;
+import com.ruoyi.staff.mapper.PersonalShiftMapper;
+import com.ruoyi.staff.pojo.PersonalAttendanceLocationConfig;
+import com.ruoyi.staff.service.PersonalAttendanceLocationConfigService;
+import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
-
-import java.util.List;
/**
* <p>
@@ -20,6 +17,26 @@
* @since 2026-02-11 09:41:34
*/
@Service
+@RequiredArgsConstructor
public class PersonalAttendanceLocationConfigServiceImpl extends ServiceImpl<PersonalAttendanceLocationConfigMapper, PersonalAttendanceLocationConfig> implements PersonalAttendanceLocationConfigService {
+ private final PersonalShiftMapper personalShiftMapper;
+
+ @Override
+ public boolean hasAttendanceUsage(Integer configId) {
+ if (configId == null) {
+ return false;
+ }
+ return personalShiftMapper.existsAttendanceUsedByConfig(configId);
+ }
+
+ @Override
+ public boolean canEdit(Integer configId) {
+ return !hasAttendanceUsage(configId);
+ }
+
+ @Override
+ public boolean canDelete(Integer configId) {
+ return !hasAttendanceUsage(configId);
+ }
}
--
Gitblit v1.9.3