From 1be38d2d80c25a148eb9eb9f3b6d9efc027d807e Mon Sep 17 00:00:00 2001 From: sunflower2014 Date: Thu, 25 Sep 2025 19:51:27 +0800 Subject: [PATCH] add new columns --- .../admin/controller/AdminUserController.java | 42 +++++++++- .../admin/mapper/AdminUserMapper.java | 13 +++- .../model/dto/login/AdminUserCreateDTO.java | 10 +++ .../admin/service/AdminUserService.java | 19 ++++- .../reference/core/mapper/NewsMapper.java | 4 +- .../reference/core/mapper/NewsTagsMapper.java | 8 +- .../reference/core/model/entity/News.java | 71 +++++++++++++++++ .../reference/core/model/entity/NewsInfo.java | 2 +- .../reference/core/model/entity/NewsTags.java | 77 +++++++++++++++++++ .../core/service/NewsInfoService.java | 7 ++ 10 files changed, 242 insertions(+), 11 deletions(-) diff --git a/admin/src/main/java/com/jinrui/reference/admin/controller/AdminUserController.java b/admin/src/main/java/com/jinrui/reference/admin/controller/AdminUserController.java index 9992ab5..8642f42 100644 --- a/admin/src/main/java/com/jinrui/reference/admin/controller/AdminUserController.java +++ b/admin/src/main/java/com/jinrui/reference/admin/controller/AdminUserController.java @@ -215,6 +215,46 @@ public class AdminUserController { return ResultObject.failed(500, "服务端错误,请联系系统管理员!"); } - return adminUserService.create(name, phone); + return adminUserService.create(name, phone, adminUserCreateDTO.getUserType()); + } + + /** + * 管理后台创建用户接口 + * + * @param token 登陆Token + * @param adminUserCreateDTO 要创建的用户昵称及手机号 + * @return 创建结果 + */ + @PostMapping("/h5") + public ResultObject createH5User(@RequestHeader("auth-token") String token, + @RequestParam(value = "phone", required = true) String phone) { + if (!StringUtils.hasText(token)) { + return ResultObject.failed("登陆Token为空!"); + } + + if (!StringUtils.hasText(phone)) { + return ResultObject.failed("手机号不可为空!"); + } + + try { + AdminUser adminUser = AdminJwtService.parseToken(token); + if (adminUser == null) { + log.warn("解析token {}拿不到AdminUser对象!", token); + return ResultObject.failed("登陆Token有误,请联系系统管理员!"); + } + + if (!adminUser.isActive()) { + log.warn("当前用户已被封禁! id = {}", adminUser.getId()); + return ResultObject.failed("当前用户已被封禁!请联系系统管理员!"); + } + + log.info("path: /admin/user/h5, method: POST, request user id: {}, name: {}, phone: {}", + adminUser.getId(), adminUser.getName(), phone); + } catch (Exception e) { + log.error("解析登陆Token出错!", e); + return ResultObject.failed(500, "服务端错误,请联系系统管理员!"); + } + + return adminUserService.createH5User(phone); } } diff --git a/admin/src/main/java/com/jinrui/reference/admin/mapper/AdminUserMapper.java b/admin/src/main/java/com/jinrui/reference/admin/mapper/AdminUserMapper.java index a83f77e..013edf2 100644 --- a/admin/src/main/java/com/jinrui/reference/admin/mapper/AdminUserMapper.java +++ b/admin/src/main/java/com/jinrui/reference/admin/mapper/AdminUserMapper.java @@ -59,15 +59,22 @@ public interface AdminUserMapper { void delete(@Param("id") long id); @Insert("") - void create(@Param("name") String name, @Param("phone") String phone); + void create(@Param("name") String name, @Param("phone") String phone, @Param("password") String password, @Param("userType") String userType); + + @Insert("") + void createH5User(@Param("phone") String phone); } diff --git a/admin/src/main/java/com/jinrui/reference/admin/model/dto/login/AdminUserCreateDTO.java b/admin/src/main/java/com/jinrui/reference/admin/model/dto/login/AdminUserCreateDTO.java index f403c60..193338e 100644 --- a/admin/src/main/java/com/jinrui/reference/admin/model/dto/login/AdminUserCreateDTO.java +++ b/admin/src/main/java/com/jinrui/reference/admin/model/dto/login/AdminUserCreateDTO.java @@ -14,6 +14,8 @@ public class AdminUserCreateDTO { * 用户手机号 不可为空 */ private String phone; + + private String userType; public String getName() { return name; @@ -30,4 +32,12 @@ public class AdminUserCreateDTO { public void setPhone(String phone) { this.phone = phone; } + + public String getUserType() { + return userType; + } + + public void setUserType(String userType) { + this.userType = userType; + } } diff --git a/admin/src/main/java/com/jinrui/reference/admin/service/AdminUserService.java b/admin/src/main/java/com/jinrui/reference/admin/service/AdminUserService.java index 4e87ba3..42512cf 100644 --- a/admin/src/main/java/com/jinrui/reference/admin/service/AdminUserService.java +++ b/admin/src/main/java/com/jinrui/reference/admin/service/AdminUserService.java @@ -9,6 +9,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; +import org.springframework.util.ObjectUtils; import org.springframework.util.StringUtils; import com.fasterxml.jackson.core.JsonProcessingException; @@ -245,7 +246,7 @@ public class AdminUserService { return ResultObject.success(); } - public ResultObject create(String name, String phone) { + public ResultObject create(String name, String phone, String userType) { try { AdminUser adminUser = adminUserMapper.getAdminUserByPhone(phone); if (adminUser != null) { @@ -256,9 +257,11 @@ public class AdminUserService { log.error("根据手机号查询用户出错!", e); return ResultObject.failed(500, "服务端错误!请联系系统管理员!"); } - + if (ObjectUtils.isEmpty(userType)) { + userType = "00"; + } try { - adminUserMapper.create(name, phone); + adminUserMapper.create(name, phone, "111111", userType); } catch (Exception e) { log.error("注册用户报错!", e); return ResultObject.failed(500, "服务端错误!请联系系统管理员!"); @@ -293,4 +296,14 @@ public class AdminUserService { private static String getLoginLockKey(String phone) { return REDIS_LOGIN_LOCK_KEY + phone; } + + public ResultObject createH5User(String phone) { + try { + adminUserMapper.createH5User(phone); + } catch (Exception e) { + log.error("注册用户报错!", e); + return ResultObject.failed(500, "服务端错误!请联系系统管理员!"); + } + return ResultObject.success(); + } } diff --git a/core/src/main/java/com/jinrui/reference/core/mapper/NewsMapper.java b/core/src/main/java/com/jinrui/reference/core/mapper/NewsMapper.java index 70dc78d..3c89152 100644 --- a/core/src/main/java/com/jinrui/reference/core/mapper/NewsMapper.java +++ b/core/src/main/java/com/jinrui/reference/core/mapper/NewsMapper.java @@ -72,8 +72,8 @@ public interface NewsMapper { void saveDraft(NewsDraft newsDraft); @Options(useGeneratedKeys = true, keyProperty = "id", keyColumn = "id") - @Insert("insert into news(draft_id, title, summary, picture, type, content, create_time, update_time, status, publish_time, content_text, newsinfo_id, llm_title, llm_content, rating)" + - "values (#{draftId}, #{title}, #{summary}, #{picture}, #{type}, #{content}, now(), now(), #{status}, #{publishTime}, #{contentText}, #{newsinfoId}, #{llmTitle}, #{llmContent}, #{rating})") + @Insert("insert into news(draft_id, title, summary, picture, type, content, create_time, update_time, status, publish_time, content_text, newsinfo_id, llm_title, llm_content, rating, overseas_event, overseas_macro, china_macro, industry_news, company_news, reprint_source, company_name)" + + "values (#{draftId}, #{title}, #{summary}, #{picture}, #{type}, #{content}, now(), now(), #{status}, #{publishTime}, #{contentText}, #{newsinfoId}, #{llmTitle}, #{llmContent}, #{rating}, #{overseasEvent}, #{overseasMacro}, #{chinaMacro}, #{industryNews}, #{companyNews}, #{reprintSource}, #{companyName})") void saveNews(News news); @Select("