From d20bc1a168bd0144dd7e3bad5234f80ab58ec341 Mon Sep 17 00:00:00 2001 From: dongzi Date: Wed, 3 Jun 2026 15:36:21 +0800 Subject: [PATCH] =?UTF-8?q?Controller=E4=BF=AE=E6=94=B9=E3=80=81controller?= =?UTF-8?q?=E5=88=A0=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/CultureClockInController.java | 130 ------------------ 1 file changed, 130 deletions(-) delete mode 100644 ftb/src/main/java/ftb/test/controller/CultureClockInController.java diff --git a/ftb/src/main/java/ftb/test/controller/CultureClockInController.java b/ftb/src/main/java/ftb/test/controller/CultureClockInController.java deleted file mode 100644 index 83ed8d3..0000000 --- a/ftb/src/main/java/ftb/test/controller/CultureClockInController.java +++ /dev/null @@ -1,130 +0,0 @@ -package jnpf.culture.controller; - -import jnpf.base.ActionResult; -import jnpf.culture.service.CultureClockInService; -import jnpf.exception.HandleException; -import jnpf.model.culture.vo.Base64ImageVo; -import jnpf.model.culture.vo.CultureClockInVo; -import jnpf.model.culture.vo.RecordListVo; -import jnpf.model.culture.vo.YearDataVo; -import jnpf.util.UserProvider; -import org.apache.commons.lang3.tuple.MutablePair; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.web.bind.annotation.GetMapping; -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 javax.imageio.ImageIO; -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import java.awt.image.BufferedImage; -import java.io.ByteArrayOutputStream; -import java.io.OutputStream; -import java.util.Base64; - -/** - * 文化打卡 - * - * @author yanwenfu - * @create 2025-12-23 - */ -@RestController -@RequestMapping(value = "/culture/clock-in") -public class CultureClockInController { - - @Resource - private CultureClockInService cultureClockInService; - - @Value("${config.requestUrl}") - private String requestUrl; - - /** - * 打卡分享 - 获取随机图片 - * @param lastCombo 上次组合 - * @param response HttpServletResponse - */ - @GetMapping(value = "/random-preview") - public void getRandomPicPreview(@RequestParam(value = "lastCombo", required = false) Integer lastCombo, HttpServletRequest request, HttpServletResponse response) throws Exception { - - MutablePair pair = cultureClockInService.getRandomPicPreview(lastCombo, requestUrl); - if (pair == null || pair.getRight() == null) { - response.sendError(HttpServletResponse.SC_NO_CONTENT); - return; - } - response.setContentType("image/png"); - response.setHeader("Cache-Control", "no-cache, no-store, must-revalidate"); - response.setHeader("Pragma", "no-cache"); - response.setDateHeader("Expires", 0); - response.setHeader("X-ClockIn-Combo", pair.getLeft()); - try (OutputStream os = response.getOutputStream()) { - ImageIO.write(pair.getRight(), "png", os); - os.flush(); - } - } - - /** - * 打卡分享 - 获取随机图片[base64] - * @param lastCombo 上次组合 - * @param response HttpServletResponse - */ - @GetMapping(value = "/random-preview/base64") - public ActionResult getRandomPicPreviewBase64(@RequestParam(value = "lastCombo", required = true) Boolean lastCombo, HttpServletRequest request, HttpServletResponse response) throws Exception { - - MutablePair pair = cultureClockInService.getRandomPicPreview(lastCombo, requestUrl); - if (pair == null || pair.getRight() == null) { - throw new Exception("获取图片失败,请重试"); - } - byte[] bytes; - try (ByteArrayOutputStream output = new ByteArrayOutputStream()) { - ImageIO.write(pair.getRight(), "png", output); - bytes = output.toByteArray(); - } - String base64 = Base64.getEncoder().encodeToString(bytes); - String base64Img = "data:image/png;base64," + base64; - return ActionResult.success(new Base64ImageVo(pair.getLeft(), base64Img)); - } - - /** - * 打卡分享 - 打卡 - * @param currentCombo 当前组合 - * @return jnpf.base.ActionResult - */ - @GetMapping(value = "/pic") - public ActionResult getCultureClockInPic(@RequestParam(value = "currentCombo") String currentCombo) throws Exception { - - if (UserProvider.getUser().getUserAccount().equals("admin")) { - throw new HandleException("管理员账号无法进行打卡"); - } - CultureClockInVo cultureClockIn = cultureClockInService.getCultureClockInPic(currentCombo, requestUrl); - return ActionResult.success(cultureClockIn); - } - - /** - * 打卡动态 - 打卡记录列表 - * @param cursorDate 游标日期(yyyy-MM-dd)[首次不传] - * @param limitNum 返回有数据的天数 - * @return jnpf.base.ActionResult - */ - @GetMapping(value = "/dynamic") - public ActionResult getRecordList(@RequestParam(value = "cursorDate", required = false) String cursorDate, - @RequestParam(value = "limitNum", required = false, defaultValue = "10") Integer limitNum) { - - limitNum = Math.max(10, Math.min(limitNum, 30)); - RecordListVo recordList = cultureClockInService.getRecordList(cursorDate, limitNum); - return ActionResult.success(recordList); - } - - /** - * 打卡日历 - * @param year 年 - * @return jnpf.base.ActionResult - */ - @GetMapping(value = "/year-data") - public ActionResult getYearData(@RequestParam(value = "year") Integer year) { - - YearDataVo yearData = cultureClockInService.getYearData(year); - return ActionResult.success(yearData); - } -}