From 37f52097847f9025589c79034be2454432c55433 Mon Sep 17 00:00:00 2001
From: xyc <jc_xiong@hotmail.com>
Date: 星期五, 02 十月 2026 10:12:27 +0800
Subject: [PATCH] docs(交接): 记录关机前开发服务已停止
---
traffic-audit-server/src/main/java/com/trafficaudit/holiday/controller/HolidayConfigController.java | 95 +++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 95 insertions(+), 0 deletions(-)
diff --git a/traffic-audit-server/src/main/java/com/trafficaudit/holiday/controller/HolidayConfigController.java b/traffic-audit-server/src/main/java/com/trafficaudit/holiday/controller/HolidayConfigController.java
new file mode 100644
index 0000000..63c5a07
--- /dev/null
+++ b/traffic-audit-server/src/main/java/com/trafficaudit/holiday/controller/HolidayConfigController.java
@@ -0,0 +1,95 @@
+package com.trafficaudit.holiday.controller;
+
+import com.trafficaudit.common.Result;
+import com.trafficaudit.holiday.HolidayConstants;
+import com.trafficaudit.holiday.entity.HolidayCalendar;
+import com.trafficaudit.holiday.entity.HolidayPassengerCoefficient;
+import com.trafficaudit.holiday.service.HolidayConfigService;
+import com.trafficaudit.security.utils.JwtUtils;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestHeader;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.annotation.Resource;
+import java.util.List;
+import java.util.Map;
+
+@RestController
+@RequestMapping("/api/holiday/config")
+public class HolidayConfigController {
+
+ @Resource
+ private HolidayConfigService configService;
+ @Resource
+ private JwtUtils jwtUtils;
+
+ @GetMapping("/options")
+ public Result<Map<String, Object>> options() {
+ return Result.ok(HolidayConstants.optionMap());
+ }
+
+ @GetMapping("/holidays")
+ public Result<List<HolidayCalendar>> holidays(@RequestParam(value = "year", required = false) Integer year,
+ @RequestParam(value = "holidayType", required = false) String holidayType) {
+ return Result.ok(configService.listHolidays(year, holidayType));
+ }
+
+ @PostMapping("/holidays/save")
+ public Result<HolidayCalendar> saveHoliday(@RequestHeader(value = "Authorization", required = false) String auth,
+ @RequestBody Map<String, Object> params) {
+ if (!isAdmin(auth)) return Result.error(403, "浠� admin 鍙互绠$悊鑺傚亣鏃ラ厤缃�");
+ try {
+ return Result.ok(configService.saveHoliday(params));
+ } catch (Exception e) {
+ return Result.error(400, e.getMessage());
+ }
+ }
+
+ @PostMapping("/holidays/delete")
+ public Result<Void> deleteHoliday(@RequestHeader(value = "Authorization", required = false) String auth,
+ @RequestParam("id") Long id) {
+ if (!isAdmin(auth)) return Result.error(403, "浠� admin 鍙互绠$悊鑺傚亣鏃ラ厤缃�");
+ try {
+ configService.deleteHoliday(id);
+ return Result.ok();
+ } catch (Exception e) {
+ return Result.error(400, e.getMessage());
+ }
+ }
+
+ @GetMapping("/coefficients")
+ public Result<List<HolidayPassengerCoefficient>> coefficients(@RequestParam(value = "year", required = false) Integer year) {
+ return Result.ok(configService.listCoefficients(year));
+ }
+
+ @PostMapping("/coefficients/save")
+ public Result<HolidayPassengerCoefficient> saveCoefficient(@RequestHeader(value = "Authorization", required = false) String auth,
+ @RequestBody Map<String, Object> params) {
+ if (!isAdmin(auth)) return Result.error(403, "浠� admin 鍙互绠$悊瀹㈣繍绯绘暟");
+ try {
+ return Result.ok(configService.saveCoefficient(params));
+ } catch (Exception e) {
+ return Result.error(400, e.getMessage());
+ }
+ }
+
+ @PostMapping("/coefficients/delete")
+ public Result<Void> deleteCoefficient(@RequestHeader(value = "Authorization", required = false) String auth,
+ @RequestParam("id") Long id) {
+ if (!isAdmin(auth)) return Result.error(403, "浠� admin 鍙互绠$悊瀹㈣繍绯绘暟");
+ try {
+ configService.deleteCoefficient(id);
+ return Result.ok();
+ } catch (Exception e) {
+ return Result.error(400, e.getMessage());
+ }
+ }
+
+ private boolean isAdmin(String auth) {
+ return "admin".equals(jwtUtils.resolveUsername(auth));
+ }
+}
--
Gitblit v1.9.1