// Code scaffolded by goctl. Safe to edit. // goctl 1.10.2 package applicationconfig import ( "context" "errors" "udeServer/internal/apierr" "udeServer/internal/log" "udeServer/internal/model" "udeServer/internal/svc" "udeServer/internal/types" "github.com/zeromicro/go-zero/core/logx" ) type DeleteConfigLogic struct { logx.Logger ctx context.Context svcCtx *svc.ServiceContext } // 删除配置 func NewDeleteConfigLogic(ctx context.Context, svcCtx *svc.ServiceContext) *DeleteConfigLogic { return &DeleteConfigLogic{ Logger: logx.WithContext(ctx), ctx: ctx, svcCtx: svcCtx, } } func (l *DeleteConfigLogic) DeleteConfig(req *types.ConfigDeleteReq) (*types.ConfigDeleteResp, error) { if err := checkId(req.Id); err != nil { return nil, err } config, err := l.svcCtx.ConfigModel.FindOne(l.ctx, req.Id) if errors.Is(err, model.ErrNotFound) { return nil, apierr.NotFound("config", req.Id) } if err != nil { log.RecordError(l.ctx, err) return nil, apierr.New(500, "查询系统配置失败") } // 默认配置不允许删除 if config.EditFlag == editFlagProhibited { return nil, apierr.BadRequest("ID:[%d]的默认配置不能被删除!", req.Id) } if err := l.svcCtx.ConfigModel.Delete(l.ctx, req.Id); err != nil { log.RecordError(l.ctx, err) return nil, apierr.New(500, "删除系统配置失败") } return &types.ConfigDeleteResp{Id: req.Id}, nil }