diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/evection/controller/EvectionController.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/evection/controller/EvectionController.java index bc2b301..01c136a 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/evection/controller/EvectionController.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/evection/controller/EvectionController.java @@ -18,10 +18,7 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; +import java.util.*; /** * 出差报备 @@ -127,6 +124,10 @@ public class EvectionController extends BaseController { @Log(title = "流程管理->出差报备->修改出差报备", businessType = BusinessType.UPDATE) public AjaxResult edit(@Validated @RequestBody EvectionBean o) { try{ + AjaxResult result = isCheck(o.getId() + ""); + if(result!=null){ + return result; + } int res = evectionService.updateEvection(o); return toAjax(res); }catch (Exception e){ @@ -144,6 +145,10 @@ public class EvectionController extends BaseController { @Log(title = "流程管理->出差报备->删除出差报备", businessType = BusinessType.DELETE) public AjaxResult remove(@PathVariable("id") String id) { try{ + AjaxResult result = isCheck(id); + if(result!=null){ + return result; + } return toAjax(evectionService.deleteEvectionById(id)); }catch (Exception e){ log.error(e.toString(),e); @@ -151,6 +156,23 @@ public class EvectionController extends BaseController { return error("系统异常"); } + /** + * 判断出差报备数据是否被核对 + * @param id + * @return AjaxResult + * @author cwchen + * @date 2025/2/12 14:32 + */ + public AjaxResult isCheck(String id) { + // 判断休假报备数据是否被核对 + Integer checkStatus = evectionService.isCheck(id); + if(!Objects.equals(checkStatus,0)){ + return AjaxResult.error("出差报备数据已被核对,无法操作"); + }else { + return null; + } + } + /** * 根据id获取详细信息 */ diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/evection/dao/EvectionDao.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/evection/dao/EvectionDao.java index a429836..2a989f7 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/evection/dao/EvectionDao.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/evection/dao/EvectionDao.java @@ -27,4 +27,13 @@ public interface EvectionDao { EvectionBean getPostName(Long id); List getUserList(@Param("params")EvectionBean bean); + + /** + * 判断出差报备数据是否被核对 + * @param evectionBean + * @return List + * @author cwchen + * @date 2025/2/12 15:14 + */ + List isCheck(EvectionBean evectionBean); } diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/evection/service/EvectionService.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/evection/service/EvectionService.java index 1510bbb..b547367 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/evection/service/EvectionService.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/evection/service/EvectionService.java @@ -63,4 +63,13 @@ public interface EvectionService { EvectionBean getPostName(Long id); AjaxResult getUserList(Long id); + + /** + * 判断出差报备数据是否被核对 + * @param id + * @return Integer + * @author cwchen + * @date 2025/2/12 15:12 + */ + Integer isCheck(String id); } diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/evection/service/EvectionServiceImpl.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/evection/service/EvectionServiceImpl.java index b8c27ba..d4002e3 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/evection/service/EvectionServiceImpl.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/evection/service/EvectionServiceImpl.java @@ -9,6 +9,7 @@ import com.bonus.system.evection.entity.EvectionBean; import com.bonus.system.holiday.dao.WorkReportDao; import com.bonus.system.leaveReporting.entity.LeaveReportingBean; import lombok.extern.log4j.Log4j2; +import org.apache.commons.collections4.CollectionUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; @@ -133,4 +134,22 @@ public class EvectionServiceImpl implements EvectionService { return AjaxResult.error(); } } + + @Override + public Integer isCheck(String id) { + try { + EvectionBean evectionBean = evectionDao.selectEvectionById(id); + List list = evectionDao.isCheck(evectionBean); + if(CollectionUtils.isNotEmpty(list)){ + for (Integer status : list) { + if(!Objects.equals(status,0)){ + return status; + } + } + } + } catch (Exception e) { + log.error(e.toString(),e); + } + return 0; + } } diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/holiday/service/WorkReportServiceImpl.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/holiday/service/WorkReportServiceImpl.java index 99ce1cb..5c35bbc 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/holiday/service/WorkReportServiceImpl.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/holiday/service/WorkReportServiceImpl.java @@ -124,7 +124,7 @@ public class WorkReportServiceImpl implements WorkReportService { List list = new ArrayList<>(); if (StringHelper.isNotEmpty(bean.getType())) { if ("请假".equals(bean.getType())) { - bean.setHolidayType(new String[]{"病假", "年休假", "探亲假", "事假", "产假", "婚假", "丧假", "育儿假", "陪护假"}); + bean.setHolidayType(new String[]{"病假", "年休假", "探亲假", "事假", "产假", "婚假", "丧假", "育儿假", "陪护假","流产假","哺乳假","节育假","父母护理假","其他"}); } list = dao.getDetailsList(bean); if (list.size() > 0) { diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/leaveReporting/controller/LeaveReportingController.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/leaveReporting/controller/LeaveReportingController.java index a6591ab..a0b6454 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/leaveReporting/controller/LeaveReportingController.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/leaveReporting/controller/LeaveReportingController.java @@ -19,10 +19,7 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Collections; -import java.util.List; +import java.util.*; /** * 休假报备 @@ -108,6 +105,10 @@ public class LeaveReportingController extends BaseController { @Log(title = "流程管理->休假报备->修改休假报备", businessType = BusinessType.UPDATE) public AjaxResult edit(@Validated @RequestBody LeaveReportingBean o) { try{ + AjaxResult result = isCheck(o.getId()); + if(result!=null){ + return result; + } int res = leaveReportingService.updateLeaveReporting(o); return toAjax(res); }catch (Exception e){ @@ -125,6 +126,10 @@ public class LeaveReportingController extends BaseController { @Log(title = "流程管理->休假报备->删除休假报备", businessType = BusinessType.DELETE) public AjaxResult remove(@PathVariable("id") Long id) { try{ + AjaxResult result = isCheck(id); + if(result!=null){ + return result; + } return toAjax(leaveReportingService.deleteLeaveReportingById(id)); }catch (Exception e){ log.error(e.toString(),e); @@ -132,6 +137,23 @@ public class LeaveReportingController extends BaseController { return error("系统异常"); } + /** + * 判断休假报备数据是否被核对 + * @param id + * @return AjaxResult + * @author cwchen + * @date 2025/2/12 14:32 + */ + public AjaxResult isCheck(Long id) { + // 判断休假报备数据是否被核对 + Integer checkStatus = leaveReportingService.isCheck(id); + if(!Objects.equals(checkStatus,0)){ + return AjaxResult.error("休假报备数据已被核对,无法操作"); + }else { + return null; + } + } + /** * 根据id获取详细信息 */ diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/leaveReporting/dao/LeaveReportingDao.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/leaveReporting/dao/LeaveReportingDao.java index 0e7ca67..c8c3533 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/leaveReporting/dao/LeaveReportingDao.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/leaveReporting/dao/LeaveReportingDao.java @@ -41,4 +41,13 @@ public interface LeaveReportingDao { List getFestivalAndHoliday(LeaveReportingBean bean); String getAttTypeByUserId(Long userId); + + /** + * 判断休假报备数据是否被核对 + * @param bean + * @return Integer + * @author cwchen + * @date 2025/2/12 14:34 + */ + List isCheck(LeaveReportingBean bean); } diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/leaveReporting/service/LeaveReportingService.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/leaveReporting/service/LeaveReportingService.java index 1b280b2..560a40a 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/leaveReporting/service/LeaveReportingService.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/leaveReporting/service/LeaveReportingService.java @@ -67,4 +67,12 @@ public interface LeaveReportingService { AjaxResult getUserListCheck(Long id); + /** + * 判断休假报备数据是否被核对 + * @param id + * @return Integer + * @author cwchen + * @date 2025/2/12 14:32 + */ + Integer isCheck(Long id); } diff --git a/bonus-modules/bonus-system/src/main/java/com/bonus/system/leaveReporting/service/LeaveReportingServiceImpl.java b/bonus-modules/bonus-system/src/main/java/com/bonus/system/leaveReporting/service/LeaveReportingServiceImpl.java index 2522275..4312fcb 100644 --- a/bonus-modules/bonus-system/src/main/java/com/bonus/system/leaveReporting/service/LeaveReportingServiceImpl.java +++ b/bonus-modules/bonus-system/src/main/java/com/bonus/system/leaveReporting/service/LeaveReportingServiceImpl.java @@ -179,4 +179,22 @@ public class LeaveReportingServiceImpl implements LeaveReportingService { private String formatDate(Date date) { return DATE_FORMAT.get().format(date); } + + @Override + public Integer isCheck(Long id) { + try { + LeaveReportingBean leaveReportingBean = leaveReportingDao.selectLeaveReportingById(id); + List list = leaveReportingDao.isCheck(leaveReportingBean); + if(CollectionUtils.isNotEmpty(list)){ + for (Integer status : list) { + if(!Objects.equals(status,0)){ + return status; + } + } + } + } catch (Exception e) { + log.error(e.toString(),e); + } + return 0; + } } diff --git a/bonus-modules/bonus-system/src/main/resources/mapper/LeaveReporting/LeaveReportingMapper.xml b/bonus-modules/bonus-system/src/main/resources/mapper/LeaveReporting/LeaveReportingMapper.xml index 181a364..f478c92 100644 --- a/bonus-modules/bonus-system/src/main/resources/mapper/LeaveReporting/LeaveReportingMapper.xml +++ b/bonus-modules/bonus-system/src/main/resources/mapper/LeaveReporting/LeaveReportingMapper.xml @@ -205,4 +205,12 @@ left join att_group ag on agpr.group_id = ag.id where user_id = #{userId} and agpr.is_active = '1' + + \ No newline at end of file diff --git a/bonus-modules/bonus-system/src/main/resources/mapper/evection/EvectionMapper.xml b/bonus-modules/bonus-system/src/main/resources/mapper/evection/EvectionMapper.xml index 8d5c692..de943a5 100644 --- a/bonus-modules/bonus-system/src/main/resources/mapper/evection/EvectionMapper.xml +++ b/bonus-modules/bonus-system/src/main/resources/mapper/evection/EvectionMapper.xml @@ -239,4 +239,12 @@ ) + + \ No newline at end of file diff --git a/bonus-modules/bonus-system/src/main/resources/mapper/holiday/WorkReportMapper.xml b/bonus-modules/bonus-system/src/main/resources/mapper/holiday/WorkReportMapper.xml index cd43408..94e25cd 100644 --- a/bonus-modules/bonus-system/src/main/resources/mapper/holiday/WorkReportMapper.xml +++ b/bonus-modules/bonus-system/src/main/resources/mapper/holiday/WorkReportMapper.xml @@ -122,26 +122,21 @@ SUM(CASE WHEN la.leave_type = '临时外出' and (la.examine_status='1' or la.examine_status='0') THEN 1 ELSE 0 END) AS outNum, SUM( CASE - WHEN la.leave_type='病假' and la.source=2 THEN - 1 - WHEN la.leave_type='年休假' and la.source=2 THEN - 1 - WHEN la.leave_type='探亲假' and la.source=2 THEN - 1 - WHEN la.leave_type='事假' and la.source=2 THEN - 1 - WHEN la.leave_type='产假' and la.source=2 THEN - 1 - WHEN la.leave_type='婚假' and la.source=2 THEN - 1 - WHEN la.leave_type='丧假' and la.source=2 THEN - 1 - WHEN la.leave_type='育儿假' and la.source=2 THEN - 1 - WHEN la.leave_type='陪护假' and la.source=2 THEN - 1 - ELSE - 0 + WHEN la.leave_type='年休假' THEN 1 + WHEN la.leave_type='探亲假' THEN 1 + WHEN la.leave_type='事假' THEN 1 + WHEN la.leave_type='病假' THEN 1 + WHEN la.leave_type='产假' THEN 1 + WHEN la.leave_type='婚假' THEN 1 + WHEN la.leave_type='丧假' THEN 1 + WHEN la.leave_type='育儿假' THEN 1 + WHEN la.leave_type='陪护假' THEN 1 + WHEN la.leave_type='流产假' THEN 1 + WHEN la.leave_type='哺乳假' THEN 1 + WHEN la.leave_type='节育假' THEN 1 + WHEN la.leave_type='父母护理假' THEN 1 + WHEN la.leave_type='其他' THEN 1 + ELSE 0 END ) as holidayNum FROM @@ -222,7 +217,6 @@ #{item} - and la.source=2 AND la.leave_type = #{type}