实现缓存+mqtt设备消息监听

This commit is contained in:
2025-06-26 16:31:43 +08:00
parent 8107b9a719
commit efed64ed9e
9 changed files with 180 additions and 62 deletions

View File

@ -107,30 +107,6 @@ func (s *sRewardType) Delete(ctx context.Context, in *model.RewardTypeDeleteIn)
func (s *sRewardType) List(ctx context.Context, in *model.RewardTypeListIn) (out *model.RewardTypeListOut, err error) {
mod := dao.RewardTypes.Ctx(ctx).Where("deleted_at IS NULL")
switch in.OperatorRole {
case consts.AdminRoleCode:
// 系统管理员只能看系统奖励类型
mod = mod.Where("source", 1)
case consts.MerchantRoleCode:
// 校验商户是否对该门店有权限
if err = checkRewardTypePermission(ctx, in.OperatorRole, in.OperatorId, 2, in.StoreId); err != nil {
return nil, err
}
// 只查询该门店的奖励类型source=2且store_id=指定门店)
mod = mod.Where("source", 2).WhereIn("store_id", in.StoreId)
case consts.StoreRoleCode:
// 校验门店权限
if err = checkRewardTypePermission(ctx, in.OperatorRole, in.OperatorId, 2, in.StoreId); err != nil {
return nil, err
}
mod = mod.Where("source", 2).Where("store_id", in.StoreId)
default:
return nil, ecode.Params.Sub("无效的操作角色")
}
// 其余过滤条件
if in.Name != "" {
mod = mod.WhereLike("name", "%"+in.Name+"%")