Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
Y
yd-user
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
xingmin
yd-user
Commits
30eeccad
Commit
30eeccad
authored
Sep 30, 2025
by
zhangxingmin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
更新redis缓存中的字典列表
parent
a5f39c15
Show whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
109 additions
and
2 deletions
+109
-2
yd-user-api/src/main/java/com/yd/user/api/controller/ApiSysDictController.java
+11
-0
yd-user-api/src/main/java/com/yd/user/api/service/ApiSysDictService.java
+4
-0
yd-user-api/src/main/java/com/yd/user/api/service/impl/ApiSysDictServiceImpl.java
+25
-0
yd-user-feign/src/main/java/com/yd/user/feign/client/sysdict/ApiSysDictFeignClient.java
+9
-0
yd-user-feign/src/main/java/com/yd/user/feign/fallback/sysdict/ApiSysDictFeignFallbackFactory.java
+7
-0
yd-user-feign/src/main/java/com/yd/user/feign/request/sysdict/ApiUpdateRedisDictListRequest.java
+13
-0
yd-user-feign/src/main/java/com/yd/user/feign/response/sysdict/ApiUpdateRedisDictListResponse.java
+7
-0
yd-user-service/src/main/java/com/yd/user/service/dao/SysDictMapper.java
+8
-0
yd-user-service/src/main/java/com/yd/user/service/service/ISysDictService.java
+3
-2
yd-user-service/src/main/java/com/yd/user/service/service/impl/SysDictServiceImpl.java
+8
-0
yd-user-service/src/main/resources/mappers/SysDictMapper.xml
+14
-0
No files found.
yd-user-api/src/main/java/com/yd/user/api/controller/ApiSysDictController.java
View file @
30eeccad
...
@@ -3,7 +3,9 @@ package com.yd.user.api.controller;
...
@@ -3,7 +3,9 @@ package com.yd.user.api.controller;
import
com.yd.common.result.Result
;
import
com.yd.common.result.Result
;
import
com.yd.user.api.service.ApiSysDictService
;
import
com.yd.user.api.service.ApiSysDictService
;
import
com.yd.user.feign.client.sysdict.ApiSysDictFeignClient
;
import
com.yd.user.feign.client.sysdict.ApiSysDictFeignClient
;
import
com.yd.user.feign.request.sysdict.ApiUpdateRedisDictListRequest
;
import
com.yd.user.feign.request.sysdict.GetDictTypeListRequest
;
import
com.yd.user.feign.request.sysdict.GetDictTypeListRequest
;
import
com.yd.user.feign.response.sysdict.ApiUpdateRedisDictListResponse
;
import
com.yd.user.feign.response.sysdict.GetDictItemListByDictTypeResponse
;
import
com.yd.user.feign.response.sysdict.GetDictItemListByDictTypeResponse
;
import
com.yd.user.feign.response.sysdict.GetDictTypeListResponse
;
import
com.yd.user.feign.response.sysdict.GetDictTypeListResponse
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Autowired
;
...
@@ -45,4 +47,13 @@ public class ApiSysDictController implements ApiSysDictFeignClient {
...
@@ -45,4 +47,13 @@ public class ApiSysDictController implements ApiSysDictFeignClient {
return
apiSysDictService
.
getByDictTypeList
(
request
);
return
apiSysDictService
.
getByDictTypeList
(
request
);
}
}
/**
* 更新redis缓存中的字典列表
* @return
*/
@Override
public
Result
<
ApiUpdateRedisDictListResponse
>
updateRedisDictList
(
ApiUpdateRedisDictListRequest
request
)
{
return
apiSysDictService
.
updateRedisDictList
(
request
);
}
}
}
yd-user-api/src/main/java/com/yd/user/api/service/ApiSysDictService.java
View file @
30eeccad
package
com
.
yd
.
user
.
api
.
service
;
package
com
.
yd
.
user
.
api
.
service
;
import
com.yd.common.result.Result
;
import
com.yd.common.result.Result
;
import
com.yd.user.feign.request.sysdict.ApiUpdateRedisDictListRequest
;
import
com.yd.user.feign.request.sysdict.GetDictTypeListRequest
;
import
com.yd.user.feign.request.sysdict.GetDictTypeListRequest
;
import
com.yd.user.feign.response.sysdict.ApiUpdateRedisDictListResponse
;
import
com.yd.user.feign.response.sysdict.GetDictItemListByDictTypeResponse
;
import
com.yd.user.feign.response.sysdict.GetDictItemListByDictTypeResponse
;
import
com.yd.user.feign.response.sysdict.GetDictTypeListResponse
;
import
com.yd.user.feign.response.sysdict.GetDictTypeListResponse
;
...
@@ -11,4 +13,6 @@ public interface ApiSysDictService {
...
@@ -11,4 +13,6 @@ public interface ApiSysDictService {
Result
<
List
<
GetDictItemListByDictTypeResponse
>>
getDictItemListByDictType
(
String
dictType
);
Result
<
List
<
GetDictItemListByDictTypeResponse
>>
getDictItemListByDictType
(
String
dictType
);
Result
<
List
<
GetDictTypeListResponse
>>
getByDictTypeList
(
GetDictTypeListRequest
request
);
Result
<
List
<
GetDictTypeListResponse
>>
getByDictTypeList
(
GetDictTypeListRequest
request
);
Result
<
ApiUpdateRedisDictListResponse
>
updateRedisDictList
(
ApiUpdateRedisDictListRequest
request
);
}
}
yd-user-api/src/main/java/com/yd/user/api/service/impl/ApiSysDictServiceImpl.java
View file @
30eeccad
package
com
.
yd
.
user
.
api
.
service
.
impl
;
package
com
.
yd
.
user
.
api
.
service
.
impl
;
import
com.yd.common.constant.RedisConstants
;
import
com.yd.common.exception.BusinessException
;
import
com.yd.common.exception.BusinessException
;
import
com.yd.common.result.Result
;
import
com.yd.common.result.Result
;
import
com.yd.common.utils.RedisUtil
;
import
com.yd.user.api.service.ApiSysDictService
;
import
com.yd.user.api.service.ApiSysDictService
;
import
com.yd.user.feign.request.sysdict.ApiUpdateRedisDictListRequest
;
import
com.yd.user.feign.request.sysdict.GetDictTypeListRequest
;
import
com.yd.user.feign.request.sysdict.GetDictTypeListRequest
;
import
com.yd.user.feign.response.sysdict.ApiUpdateRedisDictListResponse
;
import
com.yd.user.feign.response.sysdict.GetDictItemListByDictTypeResponse
;
import
com.yd.user.feign.response.sysdict.GetDictItemListByDictTypeResponse
;
import
com.yd.user.feign.response.sysdict.GetDictTypeListResponse
;
import
com.yd.user.feign.response.sysdict.GetDictTypeListResponse
;
import
com.yd.user.service.dto.SysDictItemDto
;
import
com.yd.user.service.dto.SysDictItemDto
;
...
@@ -20,6 +24,7 @@ import java.util.ArrayList;
...
@@ -20,6 +24,7 @@ import java.util.ArrayList;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Map
;
import
java.util.Objects
;
import
java.util.Objects
;
import
java.util.concurrent.TimeUnit
;
import
java.util.stream.Collectors
;
import
java.util.stream.Collectors
;
@Service
@Service
...
@@ -31,6 +36,9 @@ public class ApiSysDictServiceImpl implements ApiSysDictService {
...
@@ -31,6 +36,9 @@ public class ApiSysDictServiceImpl implements ApiSysDictService {
@Autowired
@Autowired
private
ISysDictItemService
iSysDictItemService
;
private
ISysDictItemService
iSysDictItemService
;
@Autowired
private
RedisUtil
redisUtil
;
/**
/**
* 根据字典类型获取字典数据项列表
* 根据字典类型获取字典数据项列表
* @param dictType
* @param dictType
...
@@ -111,4 +119,21 @@ public class ApiSysDictServiceImpl implements ApiSysDictService {
...
@@ -111,4 +119,21 @@ public class ApiSysDictServiceImpl implements ApiSysDictService {
return
Result
.
success
(
typeListResponseList
);
return
Result
.
success
(
typeListResponseList
);
}
}
/**
* 更新redis缓存中的字典列表
* @param request
* @return
*/
@Override
public
Result
<
ApiUpdateRedisDictListResponse
>
updateRedisDictList
(
ApiUpdateRedisDictListRequest
request
)
{
List
<
GetDictItemListByDictTypeResponse
>
responseList
=
iSysDictService
.
queryListByTypeList
(
request
.
getTypeList
());
if
(!
CollectionUtils
.
isEmpty
(
responseList
))
{
//设置redis缓存
redisUtil
.
setCacheObject
(
RedisConstants
.
DICT_LIST
,
responseList
);
}
return
Result
.
success
();
}
}
}
yd-user-feign/src/main/java/com/yd/user/feign/client/sysdict/ApiSysDictFeignClient.java
View file @
30eeccad
...
@@ -2,7 +2,9 @@ package com.yd.user.feign.client.sysdict;
...
@@ -2,7 +2,9 @@ package com.yd.user.feign.client.sysdict;
import
com.yd.common.result.Result
;
import
com.yd.common.result.Result
;
import
com.yd.user.feign.fallback.sysdict.ApiSysDictFeignFallbackFactory
;
import
com.yd.user.feign.fallback.sysdict.ApiSysDictFeignFallbackFactory
;
import
com.yd.user.feign.request.sysdict.ApiUpdateRedisDictListRequest
;
import
com.yd.user.feign.request.sysdict.GetDictTypeListRequest
;
import
com.yd.user.feign.request.sysdict.GetDictTypeListRequest
;
import
com.yd.user.feign.response.sysdict.ApiUpdateRedisDictListResponse
;
import
com.yd.user.feign.response.sysdict.GetDictItemListByDictTypeResponse
;
import
com.yd.user.feign.response.sysdict.GetDictItemListByDictTypeResponse
;
import
com.yd.user.feign.response.sysdict.GetDictTypeListResponse
;
import
com.yd.user.feign.response.sysdict.GetDictTypeListResponse
;
import
org.springframework.cloud.openfeign.FeignClient
;
import
org.springframework.cloud.openfeign.FeignClient
;
...
@@ -35,4 +37,11 @@ public interface ApiSysDictFeignClient {
...
@@ -35,4 +37,11 @@ public interface ApiSysDictFeignClient {
@PostMapping
(
"/type/list"
)
@PostMapping
(
"/type/list"
)
Result
<
List
<
GetDictTypeListResponse
>>
getByDictTypeList
(
@Validated
@RequestBody
GetDictTypeListRequest
request
);
Result
<
List
<
GetDictTypeListResponse
>>
getByDictTypeList
(
@Validated
@RequestBody
GetDictTypeListRequest
request
);
/**
* 更新redis缓存中的字典列表
* @return
*/
@PostMapping
(
"/update/redis/dict/list"
)
Result
<
ApiUpdateRedisDictListResponse
>
updateRedisDictList
(
@Validated
@RequestBody
ApiUpdateRedisDictListRequest
request
);
}
}
yd-user-feign/src/main/java/com/yd/user/feign/fallback/sysdict/ApiSysDictFeignFallbackFactory.java
View file @
30eeccad
...
@@ -2,7 +2,9 @@ package com.yd.user.feign.fallback.sysdict;
...
@@ -2,7 +2,9 @@ package com.yd.user.feign.fallback.sysdict;
import
com.yd.common.result.Result
;
import
com.yd.common.result.Result
;
import
com.yd.user.feign.client.sysdict.ApiSysDictFeignClient
;
import
com.yd.user.feign.client.sysdict.ApiSysDictFeignClient
;
import
com.yd.user.feign.request.sysdict.ApiUpdateRedisDictListRequest
;
import
com.yd.user.feign.request.sysdict.GetDictTypeListRequest
;
import
com.yd.user.feign.request.sysdict.GetDictTypeListRequest
;
import
com.yd.user.feign.response.sysdict.ApiUpdateRedisDictListResponse
;
import
com.yd.user.feign.response.sysdict.GetDictItemListByDictTypeResponse
;
import
com.yd.user.feign.response.sysdict.GetDictItemListByDictTypeResponse
;
import
com.yd.user.feign.response.sysdict.GetDictTypeListResponse
;
import
com.yd.user.feign.response.sysdict.GetDictTypeListResponse
;
import
lombok.extern.slf4j.Slf4j
;
import
lombok.extern.slf4j.Slf4j
;
...
@@ -28,6 +30,11 @@ public class ApiSysDictFeignFallbackFactory implements FallbackFactory<ApiSysDic
...
@@ -28,6 +30,11 @@ public class ApiSysDictFeignFallbackFactory implements FallbackFactory<ApiSysDic
public
Result
<
List
<
GetDictTypeListResponse
>>
getByDictTypeList
(
GetDictTypeListRequest
request
)
{
public
Result
<
List
<
GetDictTypeListResponse
>>
getByDictTypeList
(
GetDictTypeListRequest
request
)
{
return
null
;
return
null
;
}
}
@Override
public
Result
<
ApiUpdateRedisDictListResponse
>
updateRedisDictList
(
ApiUpdateRedisDictListRequest
request
)
{
return
null
;
}
};
};
}
}
}
}
yd-user-feign/src/main/java/com/yd/user/feign/request/sysdict/ApiUpdateRedisDictListRequest.java
0 → 100644
View file @
30eeccad
package
com
.
yd
.
user
.
feign
.
request
.
sysdict
;
import
lombok.Data
;
import
java.util.List
;
@Data
public
class
ApiUpdateRedisDictListRequest
{
/**
* 字典类型集合(需要更新到redis的字典类型集合,空就是更新全部数据。)
*/
private
List
<
String
>
typeList
;
}
yd-user-feign/src/main/java/com/yd/user/feign/response/sysdict/ApiUpdateRedisDictListResponse.java
0 → 100644
View file @
30eeccad
package
com
.
yd
.
user
.
feign
.
response
.
sysdict
;
import
lombok.Data
;
@Data
public
class
ApiUpdateRedisDictListResponse
{
}
yd-user-service/src/main/java/com/yd/user/service/dao/SysDictMapper.java
View file @
30eeccad
package
com
.
yd
.
user
.
service
.
dao
;
package
com
.
yd
.
user
.
service
.
dao
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.yd.user.feign.request.sysdict.ApiUpdateRedisDictListRequest
;
import
com.yd.user.feign.response.sysdict.ApiUpdateRedisDictListResponse
;
import
com.yd.user.feign.response.sysdict.GetDictItemListByDictTypeResponse
;
import
com.yd.user.service.model.SysDict
;
import
com.yd.user.service.model.SysDict
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
/**
/**
* <p>
* <p>
...
@@ -13,4 +19,6 @@ import com.yd.user.service.model.SysDict;
...
@@ -13,4 +19,6 @@ import com.yd.user.service.model.SysDict;
*/
*/
public
interface
SysDictMapper
extends
BaseMapper
<
SysDict
>
{
public
interface
SysDictMapper
extends
BaseMapper
<
SysDict
>
{
List
<
GetDictItemListByDictTypeResponse
>
queryListByTypeList
(
@Param
(
"typeList"
)
List
<
String
>
typeList
);
}
}
yd-user-service/src/main/java/com/yd/user/service/service/ISysDictService.java
View file @
30eeccad
package
com
.
yd
.
user
.
service
.
service
;
package
com
.
yd
.
user
.
service
.
service
;
import
com.yd.user.feign.response.sysdict.GetDictItemListByDictTypeResponse
;
import
com.yd.user.service.model.SysDict
;
import
com.yd.user.service.model.SysDict
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.yd.user.service.model.SysMenu
;
import
java.util.List
;
import
java.util.List
;
/**
/**
...
@@ -19,4 +18,6 @@ public interface ISysDictService extends IService<SysDict> {
...
@@ -19,4 +18,6 @@ public interface ISysDictService extends IService<SysDict> {
SysDict
queryOneByType
(
String
dictType
);
SysDict
queryOneByType
(
String
dictType
);
List
<
SysDict
>
queryList
(
List
<
String
>
dictTypeList
);
List
<
SysDict
>
queryList
(
List
<
String
>
dictTypeList
);
List
<
GetDictItemListByDictTypeResponse
>
queryListByTypeList
(
List
<
String
>
typeList
);
}
}
yd-user-service/src/main/java/com/yd/user/service/service/impl/SysDictServiceImpl.java
View file @
30eeccad
package
com
.
yd
.
user
.
service
.
service
.
impl
;
package
com
.
yd
.
user
.
service
.
service
.
impl
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.yd.user.feign.request.sysdict.ApiUpdateRedisDictListRequest
;
import
com.yd.user.feign.response.sysdict.ApiUpdateRedisDictListResponse
;
import
com.yd.user.feign.response.sysdict.GetDictItemListByDictTypeResponse
;
import
com.yd.user.service.model.SysDict
;
import
com.yd.user.service.model.SysDict
;
import
com.yd.user.service.dao.SysDictMapper
;
import
com.yd.user.service.dao.SysDictMapper
;
import
com.yd.user.service.model.SysDictItem
;
import
com.yd.user.service.model.SysDictItem
;
...
@@ -48,4 +51,9 @@ public class SysDictServiceImpl extends ServiceImpl<SysDictMapper, SysDict> impl
...
@@ -48,4 +51,9 @@ public class SysDictServiceImpl extends ServiceImpl<SysDictMapper, SysDict> impl
);
);
return
list
;
return
list
;
}
}
@Override
public
List
<
GetDictItemListByDictTypeResponse
>
queryListByTypeList
(
List
<
String
>
typeList
)
{
return
baseMapper
.
queryListByTypeList
(
typeList
);
}
}
}
yd-user-service/src/main/resources/mappers/SysDictMapper.xml
View file @
30eeccad
...
@@ -2,4 +2,18 @@
...
@@ -2,4 +2,18 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.yd.user.service.dao.SysDictMapper"
>
<mapper
namespace=
"com.yd.user.service.dao.SysDictMapper"
>
<select
id=
"queryListByTypeList"
resultType=
"com.yd.user.feign.response.sysdict.GetDictItemListByDictTypeResponse"
>
select sdi.*,sd.dict_type
from sys_dict_item sdi
left join sys_dict sd on sdi.dict_biz_id = sd.dict_biz_id and sd.is_deleted = 0
<where>
<if
test=
"typeList.size > 0 and typeList != null"
>
and sd.dict_type in
<foreach
collection=
"typeList"
item=
"item"
index=
"index"
open=
"("
separator=
","
close=
")"
>
#{item}
</foreach>
</if>
and sdi.is_deleted = 0
</where>
</select>
</mapper>
</mapper>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment