初始化项目框架,完成部分接口开发

This commit is contained in:
2025-07-10 21:04:29 +08:00
commit b2871ec0d2
168 changed files with 6399 additions and 0 deletions

View File

@ -0,0 +1,47 @@
package feedback
import (
"context"
"server/internal/dao"
"server/internal/model"
"server/internal/model/do"
"server/internal/service"
"server/utility/ecode"
)
type sFeedback struct{}
func New() service.IFeedback {
return &sFeedback{}
}
func init() {
service.RegisterFeedback(New())
}
// List retrieves a paginated list of feedbacks
func (s *sFeedback) List(ctx context.Context, in *model.FeedbackListIn) (out *model.FeedbackListOut, err error) {
out = &model.FeedbackListOut{}
m := dao.Feedbacks.Ctx(ctx)
if in.UserId != 0 {
m = m.Where(dao.Feedbacks.Columns().UserId, in.UserId)
}
if in.Status != 0 {
m = m.Where(dao.Feedbacks.Columns().Status, in.Status)
}
if err = m.Page(in.Page, in.Size).ScanAndCount(&out.List, &out.Total, false); err != nil {
return
}
return
}
// Create adds a new feedback
func (s *sFeedback) Create(ctx context.Context, in *model.FeedbackAddIn) (out *model.FeedbackCRUDOut, err error) {
if _, err := dao.Feedbacks.Ctx(ctx).Data(do.Feedbacks{
UserId: in.UserId,
Content: in.Content,
Status: 1, // 默认未处理
}).Insert(); err != nil {
return nil, ecode.Fail.Sub("feedback_create_failed")
}
return &model.FeedbackCRUDOut{Success: true}, nil
}