Commit 3b53bc4b authored by brent's avatar brent

modify examples

parent 5f52e2d2
......@@ -61,7 +61,11 @@ func (server *AppController) CreateApiKey() {
Deleted: 0,
ApiKeyId: data.Id,
}
mysql.GetMysqlInstace().Ormer.Insert(&app)
_, err = mysql.GetMysqlInstace().Ormer.Insert(&app)
if err != nil {
server.respond(models.BusinessFailed, err.Error())
return
}
server.respond(http.StatusOK, "")
}
......
package controllers
import (
"ai_developer_admin/libs/mysql"
"ai_developer_admin/models"
"encoding/json"
"github.com/beego/beego/v2/core/logs"
"net/http"
"time"
)
type FavoriteController struct {
MainController
}
func (server *FavoriteController) Add() {
info, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
}
body := server.Ctx.Input.RequestBody
appRequest := models.Favorite{}
err = json.Unmarshal(body, &appRequest) //解析body中数据
logs.Debug("appRequest", appRequest)
if err != nil {
server.respond(models.NoRequestBody, err.Error())
return
}
if appRequest.TaskTypeId == 0 {
server.respond(models.MissingParameter, "Missing task_type_id parameter")
return
}
checkFavorite := &models.Favorite{UserId: info.UserID, TaskTypeId: appRequest.TaskTypeId}
err = mysql.GetMysqlInstace().Ormer.Read(checkFavorite, "user_id", "task_type_id")
if err == nil {
server.respond(models.BusinessFailed, "You have already followed this model")
return
}
timestamp := time.Now()
appRequest.CreatedTime = timestamp
appRequest.UpdatedTime = timestamp
appRequest.Deleted = 0
_, err = mysql.GetMysqlInstace().Ormer.Insert(&appRequest)
if err != nil {
server.respond(models.BusinessFailed, err.Error())
return
}
server.respond(http.StatusOK, "success")
}
func (server *FavoriteController) Cancel() {
info, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
}
body := server.Ctx.Input.RequestBody
appRequest := models.Favorite{}
err = json.Unmarshal(body, &appRequest) //解析body中数据
logs.Debug("appRequest", appRequest)
if err != nil {
server.respond(models.NoRequestBody, err.Error())
return
}
if appRequest.TaskTypeId == 0 {
server.respond(models.MissingParameter, "Missing task_type_id parameter")
return
}
checkFavorite := &models.Favorite{UserId: info.UserID, TaskTypeId: appRequest.TaskTypeId}
err = mysql.GetMysqlInstace().Ormer.Read(checkFavorite, "user_id", "task_type_id")
if err != nil {
server.respond(models.BusinessFailed, "You have not followed this model")
return
}
_, err = mysql.GetMysqlInstace().Ormer.Delete(checkFavorite)
if err != nil {
server.respond(models.BusinessFailed, "failed")
return
}
server.respond(http.StatusOK, "success")
}
func (server *FavoriteController) IsFavorite() {
info, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
}
body := server.Ctx.Input.RequestBody
appRequest := models.Favorite{}
err = json.Unmarshal(body, &appRequest) //解析body中数据
logs.Debug("appRequest", appRequest)
if err != nil {
server.respond(models.NoRequestBody, err.Error())
return
}
if appRequest.TaskTypeId == 0 {
server.respond(models.MissingParameter, "Missing task_type_id parameter")
return
}
responseData := struct {
IsFavorite bool `json:"is_favorite"`
}{
IsFavorite: false,
}
checkFavorite := &models.Favorite{UserId: info.UserID, TaskTypeId: appRequest.TaskTypeId}
err = mysql.GetMysqlInstace().Ormer.Read(checkFavorite, "user_id", "task_type_id")
if err != nil {
server.respond(http.StatusOK, "", responseData)
return
}
responseData.IsFavorite = true
server.respond(http.StatusOK, "", responseData)
}
func (server *FavoriteController) Favorites() {
info, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
}
body := server.Ctx.Input.RequestBody
appRequest := models.AppRequest{}
err = json.Unmarshal(body, &appRequest) //解析body中数据
logs.Debug("appRequest", appRequest, string(body))
if appRequest.Page == 0 {
appRequest.Page = 1
}
if appRequest.Size == 0 {
appRequest.Size = 10
}
offset := (appRequest.Page - 1) * appRequest.Size
qs := mysql.GetMysqlInstace().Ormer.QueryTable("favorite").Filter("deleted", 0)
if !(info.Role == 1 || info.Role == 2) {
qs.Filter("user_id", info.UserID)
}
infoQs := qs.Offset(offset).Limit(appRequest.Size)
count, err := infoQs.Count()
logs.Debug("Levels = ", count)
var favorites []*models.Favorite
if count > 0 {
infoQs.All(&favorites)
//for _,value := favorites {
//
//}
}
total, err := qs.Count()
responseData := struct {
Total int64 `json:"total"`
Data interface{} `json:"data,omitempty"`
}{
Total: total,
Data: favorites,
}
server.respond(http.StatusOK, "", responseData)
}
......@@ -2151,7 +2151,7 @@ func (server *TaskController) Examples() {
return
}
sql = fmt.Sprintf("SELECT id, `name` AS tit,type,`desc` AS content, tags ,price,unit,examples,codes,base_model,model,api_path,version,category,form,access_status,publish_status FROM task_type WHERE deleted = 0 %s order by codes desc LIMIT %d,%d;", where, offset, size)
sql = fmt.Sprintf("SELECT id, `name` AS tit,type,`desc` AS content, tags ,estimat_exe_time,price,unit,examples,codes,base_model,model,api_path,version,category,form,access_status,publish_status FROM task_type WHERE deleted = 0 %s order by codes desc LIMIT %d,%d;", where, offset, size)
mysql.GetMysqlInstace().Ormer.Raw(sql).QueryRows(&types)
var remodels []*models.ResonseModel
for _, data := range types {
......@@ -2199,6 +2199,7 @@ func (server *TaskController) Examples() {
PublishStatus: data.PublishStatus,
Price: float64(data.Price / 1000000),
Unit: data.Unit,
EstimatExeTime: data.EstimatExeTime,
}
remodels = append(remodels, &remodel)
}
......
......@@ -45,6 +45,7 @@ func init() {
orm.RegisterModel(new(models.Category))
orm.RegisterModel(new(models.Whitelist))
orm.RegisterModel(new(models.Computility))
orm.RegisterModel(new(models.Favorite))
logs.Debug("AppConfig", beego.AppConfig)
......
package models
import "time"
type Favorite struct {
Id int `json:"id";orm:"column(id);auto"`
TaskTypeId int `json:"task_type_id,omitempty";orm:"column(task_type_id)"`
UserId int `json:"user_id";orm:"column(user_id)"`
CreatedTime time.Time `json:"created_time";orm:"column(created_time);type(datetime)"`
UpdatedTime time.Time `json:"updated_time";orm:"column(updated_time);type(datetime)"`
Deleted int `json:"deleted";orm:"column(deleted);size(1)"`
}
......@@ -156,6 +156,7 @@ type Model struct {
PublishStatus int `json:"publish_status,omitempty"`
Price int64 `json:"price";orm:"column(price)"`
Unit string `json:"unit";orm:"column(unit)"`
EstimatExeTime int `json:"estimat_exe_time";orm:"column(estimat_exe_time)"`
}
type ResonseModel struct {
......@@ -179,6 +180,7 @@ type ResonseModel struct {
PublishStatus int `json:"publish_status,omitempty"`
Price float64 `json:"price";orm:"column(price)"`
Unit string `json:"unit";orm:"column(unit)"`
EstimatExeTime int `json:"estimat_exe_time";orm:"column(estimat_exe_time)"`
}
type Bills struct {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment