From c911be9fbcc7457c2fc0a9146d58ff8fc2a5148d Mon Sep 17 00:00:00 2001 From: 18154758993 <605281283@qq.com> Date: Fri, 10 Oct 2025 21:49:45 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A4=BE=E5=8C=BA=E6=9C=8D=E5=8A=A1=E6=8A=A5?= =?UTF-8?q?=E5=90=8D=E5=8F=96=E6=B6=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...ffOneStopRegistrationRecordController.java | 24 +++++- ...StaffOneStopRegistrationRecordService.java | 8 ++ ...fOneStopRegistrationRecordServiceImpl.java | 85 +++++++++++++++++++ ...sStaffOneStopCommunityActivitiesMapper.xml | 4 +- 4 files changed, 117 insertions(+), 4 deletions(-) diff --git a/srs-admin/src/main/java/com/srs/web/controller/staff/SrsStaffOneStopRegistrationRecordController.java b/srs-admin/src/main/java/com/srs/web/controller/staff/SrsStaffOneStopRegistrationRecordController.java index b4929fb..d91e8f9 100644 --- a/srs-admin/src/main/java/com/srs/web/controller/staff/SrsStaffOneStopRegistrationRecordController.java +++ b/srs-admin/src/main/java/com/srs/web/controller/staff/SrsStaffOneStopRegistrationRecordController.java @@ -1,5 +1,6 @@ package com.srs.web.controller.staff; +import com.srs.common.annotation.Anonymous; import com.srs.common.annotation.Log; import com.srs.common.annotation.RepeatSubmit; import com.srs.common.core.controller.BaseController; @@ -29,6 +30,7 @@ import java.util.Map; * @author chc * @date 2024-07-16 */ +@Anonymous @RestController @RequestMapping("/staff/OneStopRegistrationRecord") @Api(value = "一站式社区模块-社区活动-报名记录管理", tags = "一站式社区模块-社区活动-报名记录管理") @@ -39,7 +41,6 @@ public class SrsStaffOneStopRegistrationRecordController extends BaseController /** * 查询一站式社区模块-社区活动-报名记录列表 */ - @PreAuthorize("@ss.hasPermi('staff:OneStopRegistrationRecord:list')") @GetMapping("/list") @ApiOperation("查询一站式社区模块-社区活动-报名记录列表") public TableDataInfo list(SrsStaffOneStopRegistrationRecord srsStaffOneStopRegistrationRecord) { @@ -109,7 +110,6 @@ public class SrsStaffOneStopRegistrationRecordController extends BaseController /** * 删除一站式社区模块-社区活动-报名记录 - * 补充详细路径 /delete 知无涯 */ @PreAuthorize("@ss.hasPermi('staff:OneStopRegistrationRecord:remove')") @Log(title = "一站式社区模块-社区活动-报名记录", businessType = BusinessType.DELETE) @@ -119,6 +119,26 @@ public class SrsStaffOneStopRegistrationRecordController extends BaseController return toAjax(srsStaffOneStopRegistrationRecordService.deleteSrsStaffOneStopRegistrationRecordByRecordIds(recordIds)); } + /** + * 取消报名 - 学生取消自己的社区活动报名 + */ + @Log(title = "一站式社区模块-社区活动-取消报名", businessType = BusinessType.DELETE) + @DeleteMapping("/cancelRegistration/{recordId}") + @ApiOperation("取消社区活动报名") + @RepeatSubmit(interval = 1000, message = "请求过于频繁") + public AjaxResult cancelRegistration(@PathVariable("recordId") Long recordId) { + System.out.println("DEBUG: Controller cancelRegistration method called with recordId: " + recordId); + try { + AjaxResult result = srsStaffOneStopRegistrationRecordService.cancelRegistration(recordId); + System.out.println("DEBUG: Service method completed successfully"); + return result; + } catch (Exception e) { + System.out.println("DEBUG: Exception in Controller: " + e.getMessage()); + e.printStackTrace(); + throw e; + } + } + @GetMapping("/getDepartmentReservationCount") @ApiOperation("统计各部门预约功能房数量") public AjaxResult getDepartmentReservationCount( diff --git a/srs-staff/src/main/java/com/srs/staff/service/ISrsStaffOneStopRegistrationRecordService.java b/srs-staff/src/main/java/com/srs/staff/service/ISrsStaffOneStopRegistrationRecordService.java index 86c0452..6e87560 100644 --- a/srs-staff/src/main/java/com/srs/staff/service/ISrsStaffOneStopRegistrationRecordService.java +++ b/srs-staff/src/main/java/com/srs/staff/service/ISrsStaffOneStopRegistrationRecordService.java @@ -91,4 +91,12 @@ public interface ISrsStaffOneStopRegistrationRecordService extends IService> getRoomUsageStatistics(String startTime,String endTime,String role,String borrower,Integer auditStatus,String rtDepar); int resetAuditStatus(Integer id); + + /** + * 取消报名 - 学生取消自己的社区活动报名 + * + * @param recordId 报名记录ID + * @return 结果 + */ + com.srs.common.core.domain.AjaxResult cancelRegistration(Long recordId); } diff --git a/srs-staff/src/main/java/com/srs/staff/service/impl/SrsStaffOneStopRegistrationRecordServiceImpl.java b/srs-staff/src/main/java/com/srs/staff/service/impl/SrsStaffOneStopRegistrationRecordServiceImpl.java index 651f038..835e577 100644 --- a/srs-staff/src/main/java/com/srs/staff/service/impl/SrsStaffOneStopRegistrationRecordServiceImpl.java +++ b/srs-staff/src/main/java/com/srs/staff/service/impl/SrsStaffOneStopRegistrationRecordServiceImpl.java @@ -16,6 +16,8 @@ import org.springframework.stereotype.Service; import com.srs.staff.mapper.SrsStaffOneStopRegistrationRecordMapper; import com.srs.staff.domain.SrsStaffOneStopRegistrationRecord; import com.srs.staff.service.ISrsStaffOneStopRegistrationRecordService; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** @@ -26,6 +28,8 @@ import com.srs.staff.service.ISrsStaffOneStopRegistrationRecordService; */ @Service public class SrsStaffOneStopRegistrationRecordServiceImpl extends ServiceImpl implements ISrsStaffOneStopRegistrationRecordService { + private static final Logger log = LoggerFactory.getLogger(SrsStaffOneStopRegistrationRecordServiceImpl.class); + @Autowired private SrsStaffOneStopRegistrationRecordMapper srsStaffOneStopRegistrationRecordMapper; @@ -279,4 +283,85 @@ public class SrsStaffOneStopRegistrationRecordServiceImpl extends ServiceImpl 0) { + // 7. 发送取消报名通知 + sendCancelNotice(record, activity); + return com.srs.common.core.domain.AjaxResult.success("取消报名成功"); + } else { + return com.srs.common.core.domain.AjaxResult.error("取消报名失败"); + } + } catch (Exception e) { + log.error("取消报名失败", e); + return com.srs.common.core.domain.AjaxResult.error("取消报名失败:" + e.getMessage()); + } + } + + /** + * 发送取消报名通知 + * @param record 报名记录对象 + * @param activity 活动对象 + */ + private void sendCancelNotice(SrsStaffOneStopRegistrationRecord record, SrsStaffOneStopCommunityActivities activity) { + try { + // 检查必要参数是否为空 + if (record == null || activity == null || record.getJobNumber() == null || activity.getActivityTheme() == null) { + log.warn("发送取消报名通知失败:参数为空"); + return; + } + + // 构建取消报名通知消息内容 + String content = String.format( + "【活动报名通知】\n" + + "您已成功取消报名活动【%s】\n" + + "如需重新报名,请在报名截止时间前重新提交申请。", + activity.getActivityTheme() + ); + + // 通过企业微信工具类发送消息 + weChatUtil.sendTextMessage(record.getJobNumber(), content); + } catch (Exception e) { + // 记录发送失败日志,但不影响主流程 + log.error("发送取消报名企业微信消息失败", e); + } + } } diff --git a/srs-staff/src/main/resources/mapper/staff/SrsStaffOneStopCommunityActivitiesMapper.xml b/srs-staff/src/main/resources/mapper/staff/SrsStaffOneStopCommunityActivitiesMapper.xml index e9916a5..4f15c7a 100644 --- a/srs-staff/src/main/resources/mapper/staff/SrsStaffOneStopCommunityActivitiesMapper.xml +++ b/srs-staff/src/main/resources/mapper/staff/SrsStaffOneStopCommunityActivitiesMapper.xml @@ -23,7 +23,7 @@ + javaType="java.util.ArrayList" select="selectSrsStaffOneStopRegistrationRecordByActivityId"/> @@ -37,7 +37,7 @@ - select * from srs_staff_one_stop_registration_record