Files
full/apps/base/feedback/internal/logic/method/delete.go

36 lines
955 B
Go
Raw Normal View History

// Package method 业务逻辑方法包,实现反馈相关的业务操作
package method
import (
"context"
"time"
"git.apinb.com/bsm-apps/feedback/internal/impl"
"git.apinb.com/bsm-apps/feedback/internal/models"
pb "git.apinb.com/bsm-apps/feedback/pb"
"git.apinb.com/bsm-sdk/core/vars"
"git.apinb.com/bsm-sdk/engine/exception"
)
// Delete 删除反馈记录
// ctx: 上下文
// in: 删除请求参数包含记录ID
// 返回: 删除操作结果
func Delete(ctx context.Context, in *pb.DeleteRequest) (reply *pb.StatusReply, err error) {
// 验证请求参数
if in.GetIdentity() == "" {
return nil, exception.ErrInvalidArgument
}
// 删除记录GORM会自动处理关联的图片和附件删除
err = impl.DBService.Where("identity = ?", in.GetIdentity()).Delete(new(models.FeedbackItem)).Error
if err != nil {
return nil, err
}
return &pb.StatusReply{
Message: vars.OK,
Timeseq: time.Now().UnixMilli(),
}, nil
}