增加获取路由树功能

This commit is contained in:
pixelqm
2019-09-08 11:13:43 +08:00
parent 5fee629f66
commit 1b1ceefa27
19 changed files with 636 additions and 150 deletions
+16
View File
@@ -0,0 +1,16 @@
package servers
import (
"github.com/jinzhu/gorm"
"main/init/qmsql"
"main/model/modelInterface"
)
//获取分页功能 接收实现了分页接口的结构体 返回搜索完成的结果 许需要自行scan 或者fand
func PagingServer(paging modelInterface.Paging, info modelInterface.PageInfo) (err error, db *gorm.DB, total int) {
limit := info.PageSize
offset := info.PageSize * (info.Page - 1)
err = qmsql.DEFAULTDB.Model(paging).Count(&total).Error
db = qmsql.DEFAULTDB.Limit(limit).Offset(offset)
return err, db, total
}
@@ -0,0 +1,14 @@
package servers
import (
"github.com/gin-gonic/gin"
"net/http"
)
func ReportFormat(c *gin.Context, success bool, msg string, json gin.H) {
c.JSON(http.StatusOK, gin.H{
"success": success,
"msg": msg,
"data": json,
})
}
+50
View File
@@ -0,0 +1,50 @@
package servers
import (
"context"
"fmt"
"github.com/qiniu/api.v7/auth/qbox"
"github.com/qiniu/api.v7/storage"
"mime/multipart"
"time"
)
var accessKey string = "25j8dYBZ2wui***************62b8xiFguwxzZ" // 你在七牛云的accessKey
var secretKey string = "pgdbqEsf7ooZ***************_VecFXPDeG5JY" // 你在七牛云的secretKey
// 接收两个参数 一个文件流 一个 bucket 你的七牛云标准空间的名字
func Upload(file *multipart.FileHeader, bucket string, urlPath string) (err error, path string) {
putPolicy := storage.PutPolicy{
Scope: bucket,
}
mac := qbox.NewMac(accessKey, secretKey)
upToken := putPolicy.UploadToken(mac)
cfg := storage.Config{}
// 空间对应的机房
cfg.Zone = &storage.ZoneHuadong
// 是否使用https域名
cfg.UseHTTPS = false
// 上传是否使用CDN上传加速
cfg.UseCdnDomains = false
formUploader := storage.NewFormUploader(&cfg)
ret := storage.PutRet{}
putExtra := storage.PutExtra{
Params: map[string]string{
"x:name": "github logo",
},
}
f, e := file.Open()
if e != nil {
fmt.Println(e)
return e, ""
}
dataLen := file.Size
fileKey := fmt.Sprintf("%d%s", time.Now().Unix(), file.Filename) // 文件名格式 自己可以改 建议保证唯一性
err = formUploader.Put(context.Background(), &ret, upToken, fileKey, f, dataLen, &putExtra)
if err != nil {
fmt.Println(err)
//qmlog.QMLog.Info(err)
return err, ""
}
return err, urlPath + "/" + ret.Key
}