remove gson

This commit is contained in:
Timi
2026-04-08 11:25:45 +08:00
parent b6a58b7376
commit 8947269351
53 changed files with 492 additions and 844 deletions
@@ -1,5 +1,6 @@
package com.imyeyu.api.modules.journal.controller;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.imyeyu.api.bean.PreviewPage;
import com.imyeyu.api.bean.wechat.InitCodeResponse;
import com.imyeyu.api.modules.common.bean.MediaAttach;
@@ -18,10 +19,8 @@ import com.imyeyu.api.modules.journal.vo.journal.UpdateRequest;
import com.imyeyu.java.bean.timi.TimiCode;
import com.imyeyu.java.bean.timi.TimiException;
import com.imyeyu.network.ArgMap;
import com.imyeyu.network.GsonRequest;
import com.imyeyu.spring.annotation.AOPLog;
import com.imyeyu.spring.annotation.RequestRateLimit;
import com.imyeyu.spring.annotation.RequestSingleParam;
import com.imyeyu.spring.bean.Page;
import com.imyeyu.spring.bean.PageResult;
import jakarta.validation.Valid;
@@ -53,6 +52,7 @@ public class JournalController {
private final JournalService service;
private final SettingService settingService;
private final AttachmentService attachmentService;
private final ObjectMapper jackson;
private final JournalAPIInterceptor apiInterceptor;
@@ -65,14 +65,18 @@ public class JournalController {
@AOPLog
@RequestRateLimit
@PostMapping("/openid")
public String initOpenId(@RequestSingleParam String code) {
public String initOpenId(@RequestBody String code) {
try {
ArgMap<String, String> args = new ArgMap<>();
args.put("appid", settingService.getAsString(SettingKey.JOURNAL_APP_ID));
args.put("secret", settingService.getAsString(SettingKey.JOURNAL_APP_SECRET));
args.put("js_code", code);
args.put("grant_type", "authorization_code");
InitCodeResponse resp = GsonRequest.get(args.toURL("https://api.weixin.qq.com/sns/jscode2session")).resultAs(InitCodeResponse.class);
String response = org.apache.hc.client5.http.fluent.Request.get(args.toURL("https://api.weixin.qq.com/sns/jscode2session"))
.execute()
.returnContent()
.asString();
InitCodeResponse resp = jackson.readValue(response, InitCodeResponse.class);
return resp.getOpenid();
} catch (Exception e) {
log.error("init WeChat openId error", e);
@@ -139,7 +143,7 @@ public class JournalController {
@AOPLog
@RequiredUploadPermission
@PostMapping("/delete")
public void delete(@RequestSingleParam Long id) {
public void delete(@RequestBody Long id) {
service.delete(id);
}
@@ -4,7 +4,7 @@ import com.imyeyu.api.modules.common.bean.SettingKey;
import com.imyeyu.api.modules.common.entity.Setting;
import com.imyeyu.api.modules.common.service.SettingService;
import com.imyeyu.api.modules.journal.bean.RequiredUploadPermission;
import com.imyeyu.spring.annotation.RequestSingleParam;
import com.imyeyu.spring.annotation.RequestBodyValue;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.GetMapping;
@@ -31,7 +31,7 @@ public class ToolController {
@RequiredUploadPermission
@PostMapping("/memo/update")
public void updateMemo(@RequestSingleParam String data) {
public void updateMemo(@RequestBodyValue String data) {
Setting setting = settingService.getByKey(SettingKey.JOURNAL_MEMO);
setting.setValue(data);
settingService.update(setting);
@@ -5,7 +5,6 @@ import com.imyeyu.api.modules.journal.entity.Travel;
import com.imyeyu.api.modules.journal.service.TravelService;
import com.imyeyu.spring.annotation.AOPLog;
import com.imyeyu.spring.annotation.RequestRateLimit;
import com.imyeyu.spring.annotation.RequestSingleParam;
import com.imyeyu.spring.bean.Page;
import com.imyeyu.spring.bean.PageResult;
import jakarta.validation.Valid;
@@ -67,7 +66,7 @@ public class TravelController {
@RequestRateLimit
@RequiredUploadPermission
@PostMapping("/delete")
public void delete(@RequestSingleParam Long id) {
public void delete(@RequestBody Long id) {
service.delete(id);
}
@@ -9,7 +9,6 @@ import com.imyeyu.api.modules.journal.entity.TravelLocation;
import com.imyeyu.api.modules.journal.service.TravelLocationService;
import com.imyeyu.spring.annotation.AOPLog;
import com.imyeyu.spring.annotation.RequestRateLimit;
import com.imyeyu.spring.annotation.RequestSingleParam;
import com.imyeyu.spring.bean.Page;
import com.imyeyu.spring.bean.PageResult;
import jakarta.validation.Valid;
@@ -74,7 +73,7 @@ public class TravelLocationController {
@RequestRateLimit
@RequiredUploadPermission
@PostMapping("/delete")
public void delete(@RequestSingleParam Long id) {
public void delete(@RequestBody Long id) {
service.delete(id);
}
@@ -1,6 +1,6 @@
package com.imyeyu.api.modules.journal.service.implement;
import com.google.gson.Gson;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.imyeyu.api.config.dbsource.TimiServerDBConfig;
import com.imyeyu.api.modules.common.bean.MediaAttach;
import com.imyeyu.api.modules.common.bean.Metadata;
@@ -40,7 +40,7 @@ import java.util.stream.Collectors;
@RequiredArgsConstructor
public class JournalServiceImplement extends AbstractEntityService<Journal, Long> implements JournalService {
private final Gson gson;
private final ObjectMapper jackson;
private final SettingService settingService;
private final TempFileService tempFileService;
@@ -192,7 +192,7 @@ public class JournalServiceImplement extends AbstractEntityService<Journal, Long
thumbAttach.setBizId(journal.getId());
attachmentService.update(thumbAttach);
Metadata.ThumbImage thumbMetadata = gson.fromJson(thumbAttach.getMetadata(), Metadata.ThumbImage.class);
Metadata.ThumbImage thumbMetadata = jackson.convertValue(thumbAttach.getMetadata(), Metadata.ThumbImage.class);
Attachment sourceAttach = attachmentService.get(thumbMetadata.getSourceId());
sourceAttach.setBizType(Attachment.BizType.JOURNAL);
sourceAttach.setBizId(journal.getId());
@@ -53,7 +53,7 @@ public class JournalAPIInterceptor implements HandlerInterceptor {
public boolean canAccess() {
String reqKey = TimiJava.defaultIfEmpty(TimiSpring.getHeader("Key"), TimiSpring.getRequestArg("key"));
return keys.contains(reqKey);
return TimiJava.isNotEmpty(reqKey) && keys.contains(reqKey);
}
public boolean canUploadKey() {