tsurumure vor 7 Monaten
Ursprung
Commit
f75e19895b
27 geänderte Dateien mit 506 neuen und 292 gelöschten Zeilen
  1. 2 1
      db/sys_language.sql
  2. 21 21
      src/main/java/com/backendsys/controller/Systems/SysLanguageController.java
  3. 0 4
      src/main/java/com/backendsys/controller/Systems/SysUserPointController.java
  4. 11 11
      src/main/java/com/backendsys/mapper/System/SysDictionaryMapper.java
  5. 16 16
      src/main/java/com/backendsys/mapper/System/SysDictionaryMapper.xml
  6. 11 11
      src/main/java/com/backendsys/mapper/System/SysLanguageMapper.java
  7. 13 13
      src/main/java/com/backendsys/mapper/System/SysLanguageMapper.xml
  8. 1 2
      src/main/java/com/backendsys/modules/system/controller/SysAuthController.java
  9. 7 3
      src/main/java/com/backendsys/modules/system/controller/SysDictionaryController.java
  10. 28 0
      src/main/java/com/backendsys/modules/system/controller/SysLanguageController.java
  11. 15 0
      src/main/java/com/backendsys/modules/system/dao/SysDictionaryDao.java
  12. 9 0
      src/main/java/com/backendsys/modules/system/dao/SysLanguageDao.java
  13. 19 0
      src/main/java/com/backendsys/modules/system/entity/SysDictionary.java
  14. 14 0
      src/main/java/com/backendsys/modules/system/entity/SysDictionaryKeys.java
  15. 18 0
      src/main/java/com/backendsys/modules/system/entity/SysLanguage.java
  16. 12 0
      src/main/java/com/backendsys/modules/system/service/SysDictionaryService.java
  17. 11 0
      src/main/java/com/backendsys/modules/system/service/SysLanguageService.java
  18. 39 0
      src/main/java/com/backendsys/modules/system/service/impl/SysDictionaryServiceImpl.java
  19. 23 0
      src/main/java/com/backendsys/modules/system/service/impl/SysLanguageServiceImpl.java
  20. 17 9
      src/main/java/com/backendsys/service/Ai/Aiivh/AiivhQuotaServiceImpl.java
  21. 8 8
      src/main/java/com/backendsys/service/System/SysDictionaryService.java
  22. 41 41
      src/main/java/com/backendsys/service/System/SysDictionaryServiceImpl.java
  23. 8 8
      src/main/java/com/backendsys/service/System/SysLanguageService.java
  24. 20 20
      src/main/java/com/backendsys/service/System/SysLanguageServiceImpl.java
  25. 13 13
      src/main/java/com/backendsys/service/System/SysUserService.java
  26. 111 111
      src/main/java/com/backendsys/service/System/SysUserServiceImpl.java
  27. 18 0
      src/main/resources/mapper/system/SysDictionaryDao.xml

+ 2 - 1
db/sys_language.sql

@@ -14,5 +14,6 @@ CREATE TABLE `sys_language` (
 ) ENGINE=INNODB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8mb4 COMMENT='系统语言表';
 
 INSERT INTO sys_language(language, name, is_default) VALUES
-    ('zh', '中文', 1), ('en', 'English', -1)
+    ('zh', '中文', 1),
+    ('en', 'English', -1)
 ;

+ 21 - 21
src/main/java/com/backendsys/controller/Systems/SysLanguageController.java

@@ -1,21 +1,21 @@
-package com.backendsys.controller.Systems;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.RestController;
-
-import com.backendsys.service.System.SysLanguageService;
-import com.backendsys.utils.response.Result;
-
-@RestController
-public class SysLanguageController {
-    
-    @Autowired
-    private SysLanguageService sysLanguageService;
-
-    @GetMapping("/api/public/system/sysLanguage")
-    public Result getLanguage() {
-        return Result.success(sysLanguageService.queryLanguage());
-    }
-
-}
+//package com.backendsys.controller.Systems;
+//
+//import org.springframework.beans.factory.annotation.Autowired;
+//import org.springframework.web.bind.annotation.GetMapping;
+//import org.springframework.web.bind.annotation.RestController;
+//
+//import com.backendsys.service.System.SysLanguageService;
+//import com.backendsys.utils.response.Result;
+//
+//@RestController
+//public class SysLanguageController {
+//
+//    @Autowired
+//    private SysLanguageService sysLanguageService;
+//
+//    @GetMapping("/api/public/system/sysLanguage")
+//    public Result getLanguage() {
+//        return Result.success(sysLanguageService.queryLanguage());
+//    }
+//
+//}

+ 0 - 4
src/main/java/com/backendsys/controller/Systems/SysUserPointController.java

@@ -9,7 +9,6 @@ import com.backendsys.enums.UserPointOperatorType;
 import com.backendsys.mapper.System.SysUserPointsHistoryMapper;
 import com.backendsys.modules.common.config.security.utils.SecurityUtil;
 import com.backendsys.service.System.SysUserPointHistoryService;
-import com.backendsys.service.System.SysUserService;
 import com.backendsys.utils.response.Result;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
@@ -29,9 +28,6 @@ public class SysUserPointController {
     @Autowired
     private HttpRequestAspect httpRequestAspect;
 
-    @Autowired
-    private SysUserService sysUserService;
-
     @Autowired
     private SysUserPointHistoryService sysUserPointHistoryService;
 

+ 11 - 11
src/main/java/com/backendsys/mapper/System/SysDictionaryMapper.java

@@ -1,11 +1,11 @@
-package com.backendsys.mapper.System;
-
-import org.apache.ibatis.annotations.Mapper;
-
-import java.util.List;
-import java.util.Map;
-
-@Mapper
-public interface SysDictionaryMapper {
-    List<Map<String, Object>> queryDictionary();
-}
+//package com.backendsys.mapper.System;
+//
+//import org.apache.ibatis.annotations.Mapper;
+//
+//import java.util.List;
+//import java.util.Map;
+//
+//@Mapper
+//public interface SysDictionaryMapper {
+//    List<Map<String, Object>> queryDictionary();
+//}

+ 16 - 16
src/main/java/com/backendsys/mapper/System/SysDictionaryMapper.xml

@@ -1,18 +1,18 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
-<mapper namespace="com.backendsys.mapper.System.SysDictionaryMapper">
+<!--<?xml version="1.0" encoding="utf-8" ?>-->
+<!--<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >-->
+<!--<mapper namespace="com.backendsys.mapper.System.SysDictionaryMapper">-->
 
-    <!--
-        CASE WHEN id < 0 THEN 1 ELSE 0 END 这个表达式将 id 列根据正负性映射为 1 或 0,负数会被映射为 1。
-        ABS(id) 计算出 id 列的绝对值,以便在相同正负性(即排序键为 0 或 1)的记录中使用。
-        由于先按 sign 排序,再按 abs_id 排序,所以负数会被排在正数后面。
-    -->
-    <select id="queryDictionary" resultType="java.util.LinkedHashMap">
-        SELECT id, category_value, key_value, key_translation, key_translation_en,
-            CASE WHEN key_value &lt; 0 THEN 1 ELSE 0 END AS sign,
-            ABS(key_value) AS abs_key_value
-        FROM sys_dictionary
-        ORDER BY sign, abs_key_value, id;
-    </select>
+<!--    &lt;!&ndash;-->
+<!--        CASE WHEN id < 0 THEN 1 ELSE 0 END 这个表达式将 id 列根据正负性映射为 1 或 0,负数会被映射为 1。-->
+<!--        ABS(id) 计算出 id 列的绝对值,以便在相同正负性(即排序键为 0 或 1)的记录中使用。-->
+<!--        由于先按 sign 排序,再按 abs_id 排序,所以负数会被排在正数后面。-->
+<!--    &ndash;&gt;-->
+<!--    <select id="queryDictionary" resultType="java.util.LinkedHashMap">-->
+<!--        SELECT id, category_value, key_value, key_translation, key_translation_en,-->
+<!--            CASE WHEN key_value &lt; 0 THEN 1 ELSE 0 END AS sign,-->
+<!--            ABS(key_value) AS abs_key_value-->
+<!--        FROM sys_dictionary-->
+<!--        ORDER BY sign, abs_key_value, id;-->
+<!--    </select>-->
 
-</mapper>
+<!--</mapper>-->

+ 11 - 11
src/main/java/com/backendsys/mapper/System/SysLanguageMapper.java

@@ -1,11 +1,11 @@
-package com.backendsys.mapper.System;
-
-import org.apache.ibatis.annotations.Mapper;
-
-import java.util.List;
-import java.util.Map;
-
-@Mapper
-public interface SysLanguageMapper {
-    List<Map<String, Object>> queryLanguage();
-}
+//package com.backendsys.mapper.System;
+//
+//import org.apache.ibatis.annotations.Mapper;
+//
+//import java.util.List;
+//import java.util.Map;
+//
+//@Mapper
+//public interface SysLanguageMapper {
+//    List<Map<String, Object>> queryLanguage();
+//}

+ 13 - 13
src/main/java/com/backendsys/mapper/System/SysLanguageMapper.xml

@@ -1,16 +1,16 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
-<mapper namespace="com.backendsys.mapper.System.SysLanguageMapper">
+<!--<?xml version="1.0" encoding="utf-8" ?>-->
+<!--<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >-->
+<!--<mapper namespace="com.backendsys.mapper.System.SysLanguageMapper">-->
 
-    <resultMap id="resultMapLanguage" type="java.util.LinkedHashMap">
-        <id property="id" column="id" jdbcType="BIGINT" />
-        <result property="language" column="language"/>
-        <result property="name" column="name"/>
-        <result property="is_default" column="is_default" javaType="java.lang.Integer" />
-    </resultMap>
+<!--    <resultMap id="resultMapLanguage" type="java.util.LinkedHashMap">-->
+<!--        <id property="id" column="id" jdbcType="BIGINT" />-->
+<!--        <result property="language" column="language"/>-->
+<!--        <result property="name" column="name"/>-->
+<!--        <result property="is_default" column="is_default" javaType="java.lang.Integer" />-->
+<!--    </resultMap>-->
 
-    <select id="queryLanguage" resultMap="resultMapLanguage">
-        SELECT id, language, name, is_default FROM sys_language
-    </select>
+<!--    <select id="queryLanguage" resultMap="resultMapLanguage">-->
+<!--        SELECT id, language, name, is_default FROM sys_language-->
+<!--    </select>-->
 
-</mapper>
+<!--</mapper>-->

+ 1 - 2
src/main/java/com/backendsys/modules/system/controller/SysAuthV2Controller.java → src/main/java/com/backendsys/modules/system/controller/SysAuthController.java

@@ -11,7 +11,6 @@ import com.backendsys.modules.system.entity.SysUserDTO;
 import com.backendsys.modules.system.service.SysAuthV2Service;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.tags.Tag;
-import jakarta.servlet.http.HttpServletRequest;
 import jakarta.servlet.http.HttpServletResponse;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.validation.annotation.Validated;
@@ -25,7 +24,7 @@ import java.io.IOException;
 @Validated
 @RestController
 @Tag(name = "系统登录")
-public class SysAuthV2Controller {
+public class SysAuthController {
 
     @Autowired
     private SysAuthV2Service sysAuthV2Service;

+ 7 - 3
src/main/java/com/backendsys/modules/system/controller/SysDictionaryController.java

@@ -1,7 +1,9 @@
 package com.backendsys.modules.system.controller;
 
+import com.backendsys.modules.common.config.security.annotations.Anonymous;
 import com.backendsys.modules.common.utils.Result;
-import com.backendsys.service.System.SysDictionaryService;
+import com.backendsys.modules.system.service.SysDictionaryService;
+import io.swagger.v3.oas.annotations.Operation;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RestController;
@@ -12,9 +14,11 @@ public class SysDictionaryController {
     @Autowired
     private SysDictionaryService sysDictionaryService;
 
-    @GetMapping("/api/public/system/sysDictionary")
+    @Anonymous
+    @Operation(summary = "获取字典枚举值")
+    @GetMapping("/api/system/dictionary/getDictionarList")
     public Result getDictionary() {
-        return Result.success().put("data", sysDictionaryService.queryDictionary());
+        return Result.success().put("data", sysDictionaryService.selectDictionaryList());
     }
 
 }

+ 28 - 0
src/main/java/com/backendsys/modules/system/controller/SysLanguageController.java

@@ -0,0 +1,28 @@
+package com.backendsys.modules.system.controller;
+
+import com.backendsys.modules.common.config.security.annotations.Anonymous;
+import com.backendsys.modules.common.utils.Result;
+import com.backendsys.modules.system.service.SysLanguageService;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+@Validated
+@RestController
+@Tag(name = "语言枚举")
+public class SysLanguageController {
+
+    @Autowired
+    private SysLanguageService sysLanguageService;
+
+    @Anonymous
+    @Operation(summary = "获取语言枚举值")
+    @GetMapping("/api/system/language/getLanguageList")
+    public Result getLanguageList() {
+        return Result.success().put("data", sysLanguageService.selectLanguageList());
+    }
+
+}

+ 15 - 0
src/main/java/com/backendsys/modules/system/dao/SysDictionaryDao.java

@@ -0,0 +1,15 @@
+package com.backendsys.modules.system.dao;
+
+import com.backendsys.modules.system.entity.SysDictionary;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+import java.util.Map;
+
+@Mapper
+public interface SysDictionaryDao extends BaseMapper<SysDictionary> {
+
+    List<SysDictionary> selectDictionaryList();
+
+}

+ 9 - 0
src/main/java/com/backendsys/modules/system/dao/SysLanguageDao.java

@@ -0,0 +1,9 @@
+package com.backendsys.modules.system.dao;
+
+import com.backendsys.modules.system.entity.SysLanguage;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface SysLanguageDao extends BaseMapper<SysLanguage> {
+}

+ 19 - 0
src/main/java/com/backendsys/modules/system/entity/SysDictionary.java

@@ -0,0 +1,19 @@
+package com.backendsys.modules.system.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+@Data
+@TableName("sys_dictionary")
+public class SysDictionary {
+
+    @TableId(type = IdType.AUTO)
+    private Long id;
+    private String category_value;
+    private String key_value;
+    private String key_translation;
+    private String key_translation_en;
+
+}

+ 14 - 0
src/main/java/com/backendsys/modules/system/entity/SysDictionaryKeys.java

@@ -0,0 +1,14 @@
+package com.backendsys.modules.system.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+@Data
+public class SysDictionaryKeys {
+    private String key_value;
+    private String key_translation;
+    private String key_translation_en;
+
+}

+ 18 - 0
src/main/java/com/backendsys/modules/system/entity/SysLanguage.java

@@ -0,0 +1,18 @@
+package com.backendsys.modules.system.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+@Data
+@TableName("sys_language")
+public class SysLanguage {
+
+    @TableId(type = IdType.AUTO)
+    private Long id;
+    private String language;
+    private String name;
+    private Integer is_default;
+
+}

+ 12 - 0
src/main/java/com/backendsys/modules/system/service/SysDictionaryService.java

@@ -0,0 +1,12 @@
+package com.backendsys.modules.system.service;
+
+import com.backendsys.modules.system.entity.SysDictionaryKeys;
+
+import java.util.List;
+import java.util.Map;
+
+public interface SysDictionaryService {
+
+    Map<String, List<SysDictionaryKeys>> selectDictionaryList();
+
+}

+ 11 - 0
src/main/java/com/backendsys/modules/system/service/SysLanguageService.java

@@ -0,0 +1,11 @@
+package com.backendsys.modules.system.service;
+
+import com.backendsys.modules.system.entity.SysLanguage;
+
+import java.util.List;
+
+public interface SysLanguageService {
+
+    List<SysLanguage> selectLanguageList();
+
+}

+ 39 - 0
src/main/java/com/backendsys/modules/system/service/impl/SysDictionaryServiceImpl.java

@@ -0,0 +1,39 @@
+package com.backendsys.modules.system.service.impl;
+
+import com.backendsys.modules.system.dao.SysDictionaryDao;
+import com.backendsys.modules.system.entity.SysDictionary;
+import com.backendsys.modules.system.entity.SysDictionaryKeys;
+import com.backendsys.modules.system.service.SysDictionaryService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+@Service
+public class SysDictionaryServiceImpl implements SysDictionaryService {
+
+    @Autowired
+    private SysDictionaryDao sysDictionaryDao;
+
+    @Override
+    public Map<String, List<SysDictionaryKeys>> selectDictionaryList() {
+
+        List<SysDictionary> sysDictionaryList = sysDictionaryDao.selectDictionaryList();
+        // 对返回值进行分组,格式化
+        Map<String, List<SysDictionaryKeys>> result = sysDictionaryList.stream().collect(Collectors.groupingBy(dictionary -> dictionary.getCategory_value(),
+            Collectors.mapping(dictionary -> {
+                SysDictionaryKeys sysDictionaryKeys = new SysDictionaryKeys();
+                sysDictionaryKeys.setKey_value(dictionary.getKey_value());
+                sysDictionaryKeys.setKey_translation(dictionary.getKey_translation());
+                sysDictionaryKeys.setKey_translation_en(dictionary.getKey_translation_en());
+                return sysDictionaryKeys;
+            }, Collectors.toList())));
+
+        return result;
+    }
+
+}

+ 23 - 0
src/main/java/com/backendsys/modules/system/service/impl/SysLanguageServiceImpl.java

@@ -0,0 +1,23 @@
+package com.backendsys.modules.system.service.impl;
+
+import com.backendsys.modules.system.dao.SysLanguageDao;
+import com.backendsys.modules.system.entity.SysLanguage;
+import com.backendsys.modules.system.service.SysLanguageService;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Service
+public class SysLanguageServiceImpl implements SysLanguageService {
+
+    @Autowired
+    private SysLanguageDao sysLanguageDao;
+
+    @Override
+    public List<SysLanguage> selectLanguageList() {
+        return sysLanguageDao.selectList(new QueryWrapper<>());
+    }
+
+}

+ 17 - 9
src/main/java/com/backendsys/service/Ai/Aiivh/AiivhQuotaServiceImpl.java

@@ -1,11 +1,11 @@
 package com.backendsys.service.Ai.Aiivh;
 
+import cn.hutool.core.convert.Convert;
 import com.backendsys.aspect.HttpRequestAspect;
 import com.backendsys.entity.Ai.Aiivh.AiivhQuotaDTO;
 import com.backendsys.entity.Ai.Aiivh.AiivhQuotaHistoryDTO;
 import com.backendsys.entity.Ai.Aiivh.AiivhQuotaOrderDTO;
 import com.backendsys.entity.System.SysResourcePointsDTO;
-import com.backendsys.entity.System.SysUserDTO;
 import com.backendsys.entity.System.SysUserPointsDTO;
 import com.backendsys.enums.IvhQuotaActiveEvent;
 import com.backendsys.enums.UserPointActivityType;
@@ -16,8 +16,10 @@ import com.backendsys.mapper.Ai.Aiivh.AiivhQuotaMapper;
 import com.backendsys.mapper.Ai.Aiivh.AiivhQuotaOrderMapper;
 import com.backendsys.mapper.System.SysResourcePointsMapper;
 import com.backendsys.mapper.System.SysUserPointsHistoryMapper;
+import com.backendsys.modules.system.dao.SysUserInfoDao;
+import com.backendsys.modules.system.entity.SysUserInfo;
+import com.backendsys.modules.system.service.SysUserV2Service;
 import com.backendsys.service.System.SysResourceService;
-import com.backendsys.service.System.SysUserService;
 import com.backendsys.utils.CommonUtil;
 import com.backendsys.utils.DateUtil;
 import com.backendsys.utils.ListUtil;
@@ -45,8 +47,11 @@ public class AiivhQuotaServiceImpl implements AiivhQuotaService{
     @Autowired
     private HttpRequestAspect httpRequestAspect;
 
+
+    @Autowired
+    private SysUserV2Service sysUserV2Service;
     @Autowired
-    private SysUserService sysUserService;
+    private SysUserInfoDao sysUserInfoDao;
 
     @Autowired
     private SysUserPointsHistoryMapper sysUserPointsHistoryMapper;
@@ -261,8 +266,13 @@ public class AiivhQuotaServiceImpl implements AiivhQuotaService{
             // 此处因为积分需要计算,所以不使用封装方法
 
             // 获得当前用户详情 (sys_user_info) (需要先获得 total_point) -----------------------------------------------------------
-            Map<String, Object> userInfo = sysUserService.queryUserById(user_id);
-            Float origin_point_balance = (Float) userInfo.get("point_balance");
+
+//            Map<String, Object> userInfo = sysUserService.queryUserById(user_id);
+//            Float origin_point_balance = (Float) userInfo.get("point_balance");
+
+            SysUserInfo userInfo = sysUserV2Service.selectUserInfo(user_id);
+            Float origin_point_balance = Convert.toFloat(userInfo.getPoint_balance());
+
             Float new_point_balance = origin_point_balance - aiivhQuotaOrderDTO.getTotal_point();
 
             // 判断用户积分是否足够扣除
@@ -271,10 +281,8 @@ public class AiivhQuotaServiceImpl implements AiivhQuotaService{
             }
 
             // 4.[扣除] 用户信息中的积分字段 (sys_user_info 用户信息)
-            SysUserDTO sysUserDTO = new SysUserDTO();
-            sysUserDTO.setUser_id(user_id);
-            sysUserDTO.setPoint_balance(new_point_balance);
-            sysUserService.updateUserInfo(sysUserDTO);
+            userInfo.setPoint_balance(Convert.toDouble(new_point_balance));
+            sysUserInfoDao.updateById(userInfo);
 
             // 5.[新增] 系统用户积分历史记录
             SysUserPointsDTO sysUserPointsDTO = new SysUserPointsDTO();

+ 8 - 8
src/main/java/com/backendsys/service/System/SysDictionaryService.java

@@ -1,8 +1,8 @@
-package com.backendsys.service.System;
-
-import java.util.List;
-import java.util.Map;
-
-public interface SysDictionaryService<T> {
-    Map<String, List<Map<String, Object>>> queryDictionary();
-}
+//package com.backendsys.service.System;
+//
+//import java.util.List;
+//import java.util.Map;
+//
+//public interface SysDictionaryService<T> {
+//    Map<String, List<Map<String, Object>>> queryDictionary();
+//}

+ 41 - 41
src/main/java/com/backendsys/service/System/SysDictionaryServiceImpl.java

@@ -1,41 +1,41 @@
-package com.backendsys.service.System;
-
-import com.backendsys.mapper.System.SysDictionaryMapper;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.stream.Collectors;
-
-@Service
-public class SysDictionaryServiceImpl<T> implements SysDictionaryService<T> {
-
-    @Autowired
-    private SysDictionaryMapper sysDictionaryMapper;
-
-    @Override
-    public Map<String, List<Map<String, Object>>> queryDictionary() {
-
-        List<Map<String, Object>> list = sysDictionaryMapper.queryDictionary();
-
-        // 过滤掉 { id, category_value } 字段
-        Map<String, List<Map<String, Object>>> result = list.stream()
-                .collect(Collectors.groupingBy(dto -> (String) dto.get("category_value"),
-                        Collectors.mapping(dto -> {
-                            Map<String, Object> map = new HashMap<>();
-                            //map.put("id", dto.get("id"));
-                            map.put("key_value", dto.get("key_value"));
-                            map.put("key_translation", dto.get("key_translation"));
-                            map.put("key_translation_en", dto.get("key_translation_en"));
-                            return map;
-                        }, Collectors.toList())));
-
-        // 正常返回
-        // Map<String, List<DictionaryDTO>> result = list.stream()
-        //    .collect(Collectors.groupingBy(DictionaryDTO::getCategory_value));
-
-        return result;
-    }
-}
+//package com.backendsys.service.System;
+//
+//import com.backendsys.mapper.System.SysDictionaryMapper;
+//import org.springframework.beans.factory.annotation.Autowired;
+//import org.springframework.stereotype.Service;
+//
+//import java.util.HashMap;
+//import java.util.List;
+//import java.util.Map;
+//import java.util.stream.Collectors;
+//
+//@Service
+//public class SysDictionaryServiceImpl<T> implements SysDictionaryService<T> {
+//
+//    @Autowired
+//    private SysDictionaryMapper sysDictionaryMapper;
+//
+//    @Override
+//    public Map<String, List<Map<String, Object>>> queryDictionary() {
+//
+//        List<Map<String, Object>> list = sysDictionaryMapper.queryDictionary();
+//
+//        // 过滤掉 { id, category_value } 字段
+//        Map<String, List<Map<String, Object>>> result = list.stream()
+//                .collect(Collectors.groupingBy(dto -> (String) dto.get("category_value"),
+//                        Collectors.mapping(dto -> {
+//                            Map<String, Object> map = new HashMap<>();
+//                            //map.put("id", dto.get("id"));
+//                            map.put("key_value", dto.get("key_value"));
+//                            map.put("key_translation", dto.get("key_translation"));
+//                            map.put("key_translation_en", dto.get("key_translation_en"));
+//                            return map;
+//                        }, Collectors.toList())));
+//
+//        // 正常返回
+//        // Map<String, List<DictionaryDTO>> result = list.stream()
+//        //    .collect(Collectors.groupingBy(DictionaryDTO::getCategory_value));
+//
+//        return result;
+//    }
+//}

+ 8 - 8
src/main/java/com/backendsys/service/System/SysLanguageService.java

@@ -1,8 +1,8 @@
-package com.backendsys.service.System;
-
-import java.util.List;
-import java.util.Map;
-
-public interface SysLanguageService {
-    List<Map<String, Object>> queryLanguage();
-}
+//package com.backendsys.service.System;
+//
+//import java.util.List;
+//import java.util.Map;
+//
+//public interface SysLanguageService {
+//    List<Map<String, Object>> queryLanguage();
+//}

+ 20 - 20
src/main/java/com/backendsys/service/System/SysLanguageServiceImpl.java

@@ -1,20 +1,20 @@
-package com.backendsys.service.System;
-
-import com.backendsys.mapper.System.SysLanguageMapper;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import java.util.List;
-import java.util.Map;
-
-@Service
-public class SysLanguageServiceImpl implements SysLanguageService {
-
-    @Autowired
-    private SysLanguageMapper sysLanguageMapper;
-
-    @Override
-    public List<Map<String, Object>> queryLanguage() {
-        return sysLanguageMapper.queryLanguage();
-    }
-}
+//package com.backendsys.service.System;
+//
+//import com.backendsys.mapper.System.SysLanguageMapper;
+//import org.springframework.beans.factory.annotation.Autowired;
+//import org.springframework.stereotype.Service;
+//
+//import java.util.List;
+//import java.util.Map;
+//
+//@Service
+//public class SysLanguageServiceImpl implements SysLanguageService {
+//
+//    @Autowired
+//    private SysLanguageMapper sysLanguageMapper;
+//
+//    @Override
+//    public List<Map<String, Object>> queryLanguage() {
+//        return sysLanguageMapper.queryLanguage();
+//    }
+//}

+ 13 - 13
src/main/java/com/backendsys/service/System/SysUserService.java

@@ -1,18 +1,18 @@
-package com.backendsys.service.System;
-
-import com.backendsys.entity.System.SysUserDTO;
-
-import java.security.NoSuchAlgorithmException;
-import java.util.List;
-import java.util.Map;
-
-public interface SysUserService {
+//package com.backendsys.service.System;
+//
+//import com.backendsys.entity.System.SysUserDTO;
+//
+//import java.security.NoSuchAlgorithmException;
+//import java.util.List;
+//import java.util.Map;
+//
+//public interface SysUserService {
 //    Map<String, Object> queryUserList(Integer pageNum, Integer pageSize, SysUserDTO sysUserDTO);
 //    List<Map<String, Object>> queryUserWithLogined(Integer pageNum, Integer pageSize, SysUserDTO sysUserDTO);
-    Map<String, Object> queryUserById(Long user_id);
+//    Map<String, Object> queryUserById(Long user_id);
 //    Map<String, Object> insertUser(SysUserDTO sysUserDTO);
-    Map<String, Object> updateUserInfo(SysUserDTO sysUserDTO);
-
+//    Map<String, Object> updateUserInfo(SysUserDTO sysUserDTO);
+//
 //    Map<String, Object> auditUser(SysUserDTO sysUserDTO);
 //    Map<String, Object> deleteUser(Long id);
 //    Map<String, Object> deleteUserBatch(List<Long> ids);
@@ -21,4 +21,4 @@ public interface SysUserService {
 //    Map<String, Object> queryUserPassword(Long id);
 //    Map<String, Object> updateUserPasswordSelf(SysUserDTO sysUserDTO);
 //    Map<String, Object> resetUserPassword(SysUserDTO sysUserDTO) throws NoSuchAlgorithmException;
-}
+//}

+ 111 - 111
src/main/java/com/backendsys/service/System/SysUserServiceImpl.java

@@ -1,42 +1,42 @@
-package com.backendsys.service.System;
-
-import cn.hutool.core.convert.Convert;
-import com.backendsys.utils.UserUtils;
-import com.backendsys.utils.MD5Util;
-import com.github.pagehelper.PageHelper;
-import com.backendsys.entity.System.SysUserDTO;
-import com.backendsys.mapper.System.SysUserMapper;
-import com.backendsys.utils.response.PageInfoResult;
-
-import org.redisson.api.RLock;
-import org.redisson.api.RedissonClient;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.beans.factory.annotation.Value;
-import org.springframework.context.annotation.Lazy;
-import org.springframework.data.redis.core.RedisTemplate;
-import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-
-import java.security.NoSuchAlgorithmException;
-import java.util.*;
-import java.util.concurrent.TimeUnit;
-import java.util.stream.Collectors;
-
-@Service
-public class SysUserServiceImpl implements SysUserService {
-
-    @Value("${REDIS_LOGIN_TOKEN_PREFIX}")
-    private String REDIS_LOGIN_TOKEN_PREFIX;
-
-    @Lazy
-    @Autowired
-    RedissonClient redissonClient;
-    @Autowired
-    private RedisTemplate redisTemplate;
-    @Autowired
-    private SysUserMapper sysUserMapper;
-
+//package com.backendsys.service.System;
+//
+//import cn.hutool.core.convert.Convert;
+//import com.backendsys.utils.UserUtils;
+//import com.backendsys.utils.MD5Util;
+//import com.github.pagehelper.PageHelper;
+//import com.backendsys.entity.System.SysUserDTO;
+//import com.backendsys.mapper.System.SysUserMapper;
+//import com.backendsys.utils.response.PageInfoResult;
+//
+//import org.redisson.api.RLock;
+//import org.redisson.api.RedissonClient;
+//import org.springframework.beans.factory.annotation.Autowired;
+//import org.springframework.beans.factory.annotation.Value;
+//import org.springframework.context.annotation.Lazy;
+//import org.springframework.data.redis.core.RedisTemplate;
+//import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
+//import org.springframework.stereotype.Service;
+//import org.springframework.transaction.annotation.Transactional;
+//
+//import java.security.NoSuchAlgorithmException;
+//import java.util.*;
+//import java.util.concurrent.TimeUnit;
+//import java.util.stream.Collectors;
+//
+//@Service
+//public class SysUserServiceImpl implements SysUserService {
+//
+//    @Value("${REDIS_LOGIN_TOKEN_PREFIX}")
+//    private String REDIS_LOGIN_TOKEN_PREFIX;
+//
+//    @Lazy
+//    @Autowired
+//    RedissonClient redissonClient;
+//    @Autowired
+//    private RedisTemplate redisTemplate;
+//    @Autowired
+//    private SysUserMapper sysUserMapper;
+//
 //    /**
 //     * 查询 系统用户列表
 //     */
@@ -71,34 +71,34 @@ public class SysUserServiceImpl implements SysUserService {
 //
 //        return sysUserMapper.queryUserWithLogined(last_login_uuids);
 //    }
-
-    /**
-     * 查询 系统用户详情
-     */
-    @Override
-    public Map<String, Object> queryUserById(Long user_id) {
-        Map<String, Object> sysUser = sysUserMapper.queryUserDetail(user_id);
-        if (sysUser == null) { return null; }
-
-        // 原格式 roles: [{ id, module_name, module_codes: "sy:userRole:update,sy:userRole:create"
-        // [格式化] 输出 modules: ["sy:userRole:update", "sy:userRole:create"]
-        List<Map<String, Object>> roles = (List<Map<String, Object>>) sysUser.get("roles");
-        sysUser.put("modules", UserUtils.extractModuleCodes(roles));
-
-        // [格式化] 输出 roles: [{ id, module_name }]
-        roles.forEach(role -> role.remove("module_ids"));
-        sysUser.put("roles", roles);
-
-        // [格式化] 输出 role_ids: [1, 2] 
-        List<Long> role_ids = roles.stream().map(role -> (Long) role.get("id")).collect(Collectors.toList());
-        sysUser.put("role_id", role_ids);
-
-        return sysUser;
-    }
-
-
-    
-
+//
+//    /**
+//     * 查询 系统用户详情
+//     */
+//    @Override
+//    public Map<String, Object> queryUserById(Long user_id) {
+//        Map<String, Object> sysUser = sysUserMapper.queryUserDetail(user_id);
+//        if (sysUser == null) { return null; }
+//
+//        // 原格式 roles: [{ id, module_name, module_codes: "sy:userRole:update,sy:userRole:create"
+//        // [格式化] 输出 modules: ["sy:userRole:update", "sy:userRole:create"]
+//        List<Map<String, Object>> roles = (List<Map<String, Object>>) sysUser.get("roles");
+//        sysUser.put("modules", UserUtils.extractModuleCodes(roles));
+//
+//        // [格式化] 输出 roles: [{ id, module_name }]
+//        roles.forEach(role -> role.remove("module_ids"));
+//        sysUser.put("roles", roles);
+//
+//        // [格式化] 输出 role_ids: [1, 2]
+//        List<Long> role_ids = roles.stream().map(role -> (Long) role.get("id")).collect(Collectors.toList());
+//        sysUser.put("role_id", role_ids);
+//
+//        return sysUser;
+//    }
+//
+//
+//
+//
 //    /**
 //     * 创建 系统用户
 //     * @param sysUserDTO
@@ -138,48 +138,48 @@ public class SysUserServiceImpl implements SysUserService {
 //        } catch (InterruptedException e) { throw new RuntimeException(e);
 //        } finally { lock.unlock(); }
 //    }
-
-    /**
-     * 更新 系统用户信息
-     * @param sysUserDTO
-     * @return { user_id }
-     */
-    @Override
-    @Transactional
-    public Map<String, Object> updateUserInfo(SysUserDTO sysUserDTO) {
-        RLock lock = redissonClient.getLock("updateUserInfo");
-        try { lock.tryLock(3, TimeUnit.SECONDS);
-
-            // 当 status 状态为 -1(禁用) 时,同时清除登录状态
-            Integer status = sysUserDTO.getStatus();
-            if (status != null && status == -1) {
-                String last_login_uuid = sysUserDTO.getLast_login_uuid();
-                redisTemplate.delete(REDIS_LOGIN_TOKEN_PREFIX + last_login_uuid);
-                sysUserDTO.setLast_login_uuid("");
-            }
-
-            // 获取参数,并将 [1,2] 转换为 [{ id: 1 }, { id: 2 }]
-            List<Long> role_id = sysUserDTO.getRole_id();
-            if (role_id != null && role_id.size() > 0) {
-                List<LinkedHashMap<String, Object>> convertedList = role_id.stream()
-                        .map(id -> {
-                            LinkedHashMap<String, Object> map = new LinkedHashMap<>();
-                            map.put("id", id);
-                            return map;
-                        })
-                        .collect(Collectors.toList());
-                sysUserDTO.setRoles(convertedList);
-            }
-            // ------------------------------------------------------
-
-            // 更新
-            sysUserMapper.updateUserInfo(sysUserDTO);
-            return Map.of("user_id", sysUserDTO.getUser_id());
-
-        } catch (InterruptedException e) { throw new RuntimeException(e);
-        } finally { lock.unlock(); }
-    }
-
+//
+//    /**
+//     * 更新 系统用户信息
+//     * @param sysUserDTO
+//     * @return { user_id }
+//     */
+//    @Override
+//    @Transactional
+//    public Map<String, Object> updateUserInfo(SysUserDTO sysUserDTO) {
+//        RLock lock = redissonClient.getLock("updateUserInfo");
+//        try { lock.tryLock(3, TimeUnit.SECONDS);
+//
+//            // 当 status 状态为 -1(禁用) 时,同时清除登录状态
+//            Integer status = sysUserDTO.getStatus();
+//            if (status != null && status == -1) {
+//                String last_login_uuid = sysUserDTO.getLast_login_uuid();
+//                redisTemplate.delete(REDIS_LOGIN_TOKEN_PREFIX + last_login_uuid);
+//                sysUserDTO.setLast_login_uuid("");
+//            }
+//
+//            // 获取参数,并将 [1,2] 转换为 [{ id: 1 }, { id: 2 }]
+//            List<Long> role_id = sysUserDTO.getRole_id();
+//            if (role_id != null && role_id.size() > 0) {
+//                List<LinkedHashMap<String, Object>> convertedList = role_id.stream()
+//                        .map(id -> {
+//                            LinkedHashMap<String, Object> map = new LinkedHashMap<>();
+//                            map.put("id", id);
+//                            return map;
+//                        })
+//                        .collect(Collectors.toList());
+//                sysUserDTO.setRoles(convertedList);
+//            }
+//            // ------------------------------------------------------
+//
+//            // 更新
+//            sysUserMapper.updateUserInfo(sysUserDTO);
+//            return Map.of("user_id", sysUserDTO.getUser_id());
+//
+//        } catch (InterruptedException e) { throw new RuntimeException(e);
+//        } finally { lock.unlock(); }
+//    }
+//
 //    /**
 //     * 审核 系统用户
 //     * @param sysUserDTO
@@ -375,5 +375,5 @@ public class SysUserServiceImpl implements SysUserService {
 //        } catch (InterruptedException e) { throw new RuntimeException(e);
 //        } finally { lock.unlock(); }
 //    }
-
-}
+//
+//}

+ 18 - 0
src/main/resources/mapper/system/SysDictionaryDao.xml

@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
+<mapper namespace="com.backendsys.modules.system.dao.SysDictionaryDao">
+
+    <!--
+        CASE WHEN id < 0 THEN 1 ELSE 0 END 这个表达式将 id 列根据正负性映射为 1 或 0,负数会被映射为 1。
+        ABS(id) 计算出 id 列的绝对值,以便在相同正负性(即排序键为 0 或 1)的记录中使用。
+        由于先按 sign 排序,再按 abs_id 排序,所以负数会被排在正数后面。
+    -->
+    <select id="selectDictionaryList" resultType="com.backendsys.modules.system.entity.SysDictionary">
+        SELECT id, category_value, key_value, key_translation, key_translation_en,
+            CASE WHEN key_value &lt; 0 THEN 1 ELSE 0 END AS sign,
+            ABS(key_value) AS abs_key_value
+        FROM sys_dictionary
+        ORDER BY sign, abs_key_value, id;
+    </select>
+
+</mapper>