citynook
citynook
@Witnin 用 initQueryWrapper用 req 的参数创建的QueryWrapper,已经根据传递进来的参数生成了排序规则,用代码添加新的排序规则是无效的。 要想自定义排序,可以自己创建 LambdaQueryWrapper,示例如下,查询使用了 like,不是默认的 eq: ``` @Operation(summary = "度量单位-分页列表查询") @GetMapping(value = "/list") public Result queryPageList(SysUom sysUom, @RequestParam(name="uomCategory", defaultValue = "") String uomCategory, @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,...
@zhangdaiscott 以数据字典举例,sys_dict 中有 tenant_id 字段,表示数据字典是支持多租户的。而且不同的租户有可能会配置自己所需的数据字典。 如果在同一个数据库中配置了多租户,不同的租户加载数据字典时,应该只加载所属租户的数据,而不是缓存中的数据字典供多个租户共用。
实际应用场景如下: 1. 在同一套服务器环境中实现多租户 2. 还是以数据字典为例,业务系统定义了【收货单类型】,字典代码为【RO_DOC_SUB_TYPE】,不同的租户可以维护自己的细项,例如: 租户A定义了:采购收货单、移库收货单、工单退料收货单 租户B定义了:借用收货单、赠送收货单、报废退货收货单 在【收货单管理】功能的【新增】页面上选择【收货单类型】时,租户A和B都只能看到自己定义的细项,而不是将这些细项都列出来。 现在存在的问题是: 1. sys_dict 表的唯一索引是 code,这表示所有的租户只能共用一套定义,不支持上面第2点所描述的应用场景 建议的解决方案: 1. 如果表支持多租户,就要考虑是否需要设置 tenant_id + code(也可能是其它名称) 为唯一索引。像数据字典要支持多租户自定义,sys_dict 要设置 tenant_id + code为唯一索引。这里只需要修改下唯一索引就可以实现。 如果表中的数据不需要缓存,则无需修改。 2. RedisConfig 类扩展CacheManager,在缓存名称上多增加一个租户ID即可: KEY =...