44 lines
1.7 KiB
Go
44 lines
1.7 KiB
Go
package feedback
|
||
|
||
import (
|
||
"github.com/gin-gonic/gin"
|
||
"time"
|
||
"toutoukan/init/databaseInit"
|
||
)
|
||
|
||
type Feedback struct {
|
||
ID uint `gorm:"primaryKey;autoIncrement" json:"id"`
|
||
UserID string `json:"user_id"`
|
||
FeedBackType int8 `json:"feed_back_type"`
|
||
FeedbackContent string `json:"feedback_content"`
|
||
FeedbackStatus int8 `gorm:"default:0" json:"feedback_status,omitempty"` // 默认为 0(待处理),前端无需传入
|
||
HandlerID string `gorm:"default:''" json:"handler_id,omitempty"` // 默认为空,前端无需传入
|
||
CreateTime time.Time `gorm:"autoCreateTime" json:"create_time,omitempty"` // 自动生成创建时间,前端无需传入
|
||
HandleTime time.Time `gorm:"default:null" json:"handle_time,omitempty"` // 默认为空,处理时赋值,前端无需传入
|
||
HandleRemark string `gorm:"default:''" json:"handle_remark,omitempty"` // 默认为空,处理时赋值,前端无需传入
|
||
IsDelete int8 `gorm:"default:0" json:"is_delete,omitempty"` // 默认为 0(未删除),前端无需传入
|
||
}
|
||
|
||
// UpFeedback 新增用户反馈
|
||
func UpFeedback(c *gin.Context) {
|
||
var feedback Feedback
|
||
// 绑定请求体中的 JSON 数据到 feedback 结构体
|
||
if err := c.ShouldBindJSON(&feedback); err != nil {
|
||
c.JSON(400, gin.H{"error": err.Error()})
|
||
return
|
||
}
|
||
|
||
// 使用 GORM 连接池进行数据库操作
|
||
result := databaseInit.UserDB.Create(&feedback)
|
||
if result.Error != nil {
|
||
c.JSON(500, gin.H{"error": result.Error.Error()})
|
||
return
|
||
}
|
||
|
||
// 返回成功响应,包含新增反馈的 ID
|
||
c.JSON(200, gin.H{
|
||
"message": "反馈提交成功",
|
||
"data": feedback,
|
||
})
|
||
}
|