Commit 00aae681 authored by brent's avatar brent

add public api

parent e25dd244
No preview for this file type
......@@ -17,7 +17,7 @@ type AppController struct {
}
func (server *AppController) CreateApiKey() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -35,7 +35,7 @@ func (server *AppController) CreateApiKey() {
return
}
checkUser := &models.User{Id: info.UserID}
checkUser := &models.User{Id: token.UserID}
err = mysql.GetMysqlInstace().Ormer.Read(checkUser)
if err != nil {
server.respond(models.BusinessFailed, "user is not exist")
......@@ -70,7 +70,7 @@ func (server *AppController) CreateApiKey() {
}
func (server *AppController) ApiKeys() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -92,8 +92,8 @@ func (server *AppController) ApiKeys() {
appRequest.Size = 10
}
offset := (appRequest.Page - 1) * appRequest.Size
qs := mysql.GetMysqlInstace().Ormer.QueryTable("api_key").Filter("user_id", info.UserID)
if info.Role == 1 || info.Role == 2 {
qs := mysql.GetMysqlInstace().Ormer.QueryTable("api_key").Filter("user_id", token.UserID)
if token.Role == 1 || token.Role == 2 {
qs = mysql.GetMysqlInstace().Ormer.QueryTable("api_key")
}
keyQs := qs.OrderBy("-created_time").Offset(offset).Limit(appRequest.Size)
......@@ -116,7 +116,7 @@ func (server *AppController) ApiKeys() {
}
func (server *AppController) ApiKeysFront() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -138,8 +138,8 @@ func (server *AppController) ApiKeysFront() {
appRequest.Size = 10
}
offset := (appRequest.Page - 1) * appRequest.Size
qs := mysql.GetMysqlInstace().Ormer.QueryTable("api_key").Filter("user_id", info.UserID)
//if info.Role == 1 || info.Role == 2 {
qs := mysql.GetMysqlInstace().Ormer.QueryTable("api_key").Filter("user_id", token.UserID)
//if token.Role == 1 || token.Role == 2 {
// qs = mysql.GetMysqlInstace().Ormer.QueryTable("api_key")
//}
keyQs := qs.OrderBy("-created_time").Offset(offset).Limit(appRequest.Size)
......@@ -162,7 +162,7 @@ func (server *AppController) ApiKeysFront() {
}
func (server *AppController) UpdateApikey() {
_, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -189,6 +189,10 @@ func (server *AppController) UpdateApikey() {
server.respond(models.BusinessFailed, "api-key not exist")
return
}
if apiKay.UserId != token.UserID {
server.respond(models.BusinessFailed, "The API key does not belong to you.")
return
}
apiKay.Name = appRequest.Name
_, err = mysql.GetMysqlInstace().Ormer.Update(&apiKay)
......@@ -201,7 +205,7 @@ func (server *AppController) UpdateApikey() {
}
func (server *AppController) DelApiKey() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -226,8 +230,12 @@ func (server *AppController) DelApiKey() {
server.respond(models.BusinessFailed, "api-key not exist")
return
}
if apiKay.UserId != token.UserID {
server.respond(models.BusinessFailed, "The API key does not belong to you.")
return
}
data, err := kong.ListApikeys(info.Username)
data, err := kong.ListApikeys(token.Username)
if err != nil {
server.respond(models.BusinessFailed, err.Error())
return
......@@ -241,7 +249,7 @@ func (server *AppController) DelApiKey() {
}
if found {
err = kong.DelateApiKey(info.Username, apiKay.ApiKeyId)
err = kong.DelateApiKey(token.Username, apiKay.ApiKeyId)
if err != nil {
server.respond(models.BusinessFailed, "failed")
return
......@@ -259,7 +267,7 @@ func (server *AppController) DelApiKey() {
}
func (server *AppController) CreateJWTToken() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -278,7 +286,7 @@ func (server *AppController) CreateJWTToken() {
return
}
checkUser := &models.User{Id: info.UserID}
checkUser := &models.User{Id: token.UserID}
err = mysql.GetMysqlInstace().Ormer.Read(checkUser)
if err != nil {
server.respond(models.BusinessFailed, "user not exist")
......@@ -317,7 +325,7 @@ func (server *AppController) CreateJWTToken() {
}
func (server *AppController) JwtTokens() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -339,8 +347,8 @@ func (server *AppController) JwtTokens() {
appRequest.Size = 10
}
offset := (appRequest.Page - 1) * appRequest.Size
qs := mysql.GetMysqlInstace().Ormer.QueryTable("jwt_token").Filter("user_id", info.UserID)
if info.Role == 1 || info.Role == 2 {
qs := mysql.GetMysqlInstace().Ormer.QueryTable("jwt_token").Filter("user_id", token.UserID)
if token.Role == 1 || token.Role == 2 {
qs = mysql.GetMysqlInstace().Ormer.QueryTable("jwt_token")
}
keyQs := qs.Offset(offset).Limit(appRequest.Size)
......@@ -365,7 +373,7 @@ func (server *AppController) JwtTokens() {
}
func (server *AppController) UpdateJWT() {
_, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -386,13 +394,17 @@ func (server *AppController) UpdateJWT() {
server.respond(models.MissingParameter, "Missing name parameter")
return
}
token := models.JwtToken{Id: appRequest.Id}
jwttoken := models.JwtToken{Id: appRequest.Id}
err = mysql.GetMysqlInstace().Ormer.Read(&token)
if err != nil {
server.respond(models.BusinessFailed, "JWT-token 不存在")
return
}
token.Name = appRequest.Name
if jwttoken.UserId != token.UserID {
server.respond(models.BusinessFailed, "The token does not belong to you.")
return
}
jwttoken.Name = appRequest.Name
_, err = mysql.GetMysqlInstace().Ormer.Update(&token)
if err != nil {
......@@ -404,7 +416,7 @@ func (server *AppController) UpdateJWT() {
}
func (server *AppController) DelJWT() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -429,8 +441,12 @@ func (server *AppController) DelJWT() {
server.respond(models.BusinessFailed, "jwt-token not exist")
return
}
if jwt.UserId != token.UserID {
server.respond(models.BusinessFailed, "The token does not belong to you.")
return
}
data, err := kong.ListJWT(info.Username)
data, err := kong.ListJWT(token.Username)
if err != nil {
server.respond(models.BusinessFailed, err.Error())
return
......@@ -444,7 +460,7 @@ func (server *AppController) DelJWT() {
}
if found {
err = kong.DelateJWT(info.Username, jwt.JwtId)
err = kong.DelateJWT(token.Username, jwt.JwtId)
if err != nil {
server.respond(models.BusinessFailed, "failed")
return
......
......@@ -60,7 +60,7 @@ func (server *MainController) Check() (*models.JwtPayload, error) {
return nil, err
// this.respond(401, "登陆失效")
}
key := "token:user-" + strconv.Itoa(info.UserID)
key := "token:user-" + strconv.Itoa(token.UserID)
session, err := redis.GetDataToString(key)
if err != nil {
redis.DeleteKey(key)
......@@ -71,12 +71,12 @@ func (server *MainController) Check() (*models.JwtPayload, error) {
return nil, errors.New("error: login expire")
}
if !(token == session) {
//c.DelSession(info.UserID)
//c.DelSession(token.UserID)
redis.DeleteKey(key)
return nil, errors.New("error: login expire")
}
if info.ExpiresAt <= time.Now().Unix() {
//c.DelSession(info.UserID)
if token.ExpiresAt <= time.Now().Unix() {
//c.DelSession(token.UserID)
redis.DeleteKey(key)
return nil, errors.New("error: login expire")
}
......
......@@ -16,7 +16,7 @@ type FavoriteController struct {
}
func (server *FavoriteController) Add() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -35,14 +35,14 @@ func (server *FavoriteController) Add() {
return
}
checkFavorite := &models.Favorite{UserId: info.UserID, TaskTypeId: appRequest.TaskTypeId, Deleted: 0}
checkFavorite := &models.Favorite{UserId: token.UserID, TaskTypeId: appRequest.TaskTypeId, Deleted: 0}
err = mysql.GetMysqlInstace().Ormer.Read(checkFavorite, "user_id", "task_type_id", "deleted")
if err == nil {
server.respond(models.BusinessFailed, "You have already followed this model")
return
}
timestamp := time.Now()
appRequest.UserId = info.UserID
appRequest.UserId = token.UserID
appRequest.CreatedTime = timestamp
appRequest.UpdatedTime = timestamp
appRequest.Deleted = 0
......@@ -56,7 +56,7 @@ func (server *FavoriteController) Add() {
}
func (server *FavoriteController) Cancel() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -73,7 +73,7 @@ func (server *FavoriteController) Cancel() {
server.respond(models.MissingParameter, "Missing task_type_id parameter")
return
}
checkFavorite := &models.Favorite{UserId: info.UserID, TaskTypeId: appRequest.TaskTypeId, Deleted: 0}
checkFavorite := &models.Favorite{UserId: token.UserID, TaskTypeId: appRequest.TaskTypeId, Deleted: 0}
err = mysql.GetMysqlInstace().Ormer.Read(checkFavorite, "user_id", "task_type_id", "deleted")
if err != nil {
server.respond(models.BusinessFailed, "You have not followed this model")
......@@ -91,7 +91,7 @@ func (server *FavoriteController) Cancel() {
}
func (server *FavoriteController) IsFavorite() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -113,7 +113,7 @@ func (server *FavoriteController) IsFavorite() {
}{
IsFavorite: false,
}
checkFavorite := &models.Favorite{UserId: info.UserID, TaskTypeId: appRequest.TaskTypeId, Deleted: 0}
checkFavorite := &models.Favorite{UserId: token.UserID, TaskTypeId: appRequest.TaskTypeId, Deleted: 0}
err = mysql.GetMysqlInstace().Ormer.Read(checkFavorite, "user_id", "task_type_id", "deleted")
if err != nil {
server.respond(http.StatusOK, "", responseData)
......@@ -124,7 +124,7 @@ func (server *FavoriteController) IsFavorite() {
}
func (server *FavoriteController) Lists() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -165,9 +165,9 @@ func (server *FavoriteController) Lists() {
InnerJoin("task_type").On("favorite.task_type_id = task_type.id")
countQB.Where("favorite.deleted = 0")
queryQB.Where("favorite.deleted = 0")
if !(info.Role == 1 || info.Role == 2) {
countQB.And(fmt.Sprintf("user_id = '%d'", info.UserID))
queryQB.And(fmt.Sprintf("user_id = '%d'", info.UserID))
if !(token.Role == 1 || token.Role == 2) {
countQB.And(fmt.Sprintf("user_id = '%d'", token.UserID))
queryQB.And(fmt.Sprintf("user_id = '%d'", token.UserID))
}
if appRequest.Keyword != "" {
keyword := "%" + appRequest.Keyword + "%"
......
......@@ -55,7 +55,7 @@ func weixinRecharge(chargeRequest *models.ChargeRequest) error {
}
func (server *FundsController) Recharge() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -70,7 +70,7 @@ func (server *FundsController) Recharge() {
return
}
if info.Role != 1 && info.Role != 2 && chargeRequest.PaymentMethod == models.ManualPay {
if token.Role != 1 && token.Role != 2 && chargeRequest.PaymentMethod == models.ManualPay {
server.respond(models.BusinessFailed, "Please contact the business development")
return
}
......@@ -95,7 +95,7 @@ func (server *FundsController) Recharge() {
return
}
checkUser := &models.User{Id: info.UserID}
checkUser := &models.User{Id: token.UserID}
cond := "id"
if chargeRequest.Mail != "" {
checkUser = &models.User{Mail: chargeRequest.Mail}
......@@ -143,7 +143,7 @@ func (server *FundsController) Recharge() {
tradeTime := fmt.Sprintf(time.Now().UTC().Format(format))
//fundsData := models.Funds{
// Id: max + 1,
// Uid: info.UserID,
// Uid: token.UserID,
// Amount: amount,
// TradeChannel: int(chargeRequest.PaymentMethod),
// ChannelSerial: "",
......@@ -187,7 +187,7 @@ func (server *FundsController) Recharge() {
"",
max,
4,
info.UserID,
token.UserID,
int(models.Income),
int(models.Charge),
int(chargeRequest.PaymentMethod),
......@@ -244,7 +244,7 @@ func (server *FundsController) Recharge() {
}
func (server *FundsController) RechargeRecords() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -269,7 +269,7 @@ func (server *FundsController) RechargeRecords() {
offset := (appRequest.Page - 1) * appRequest.Size
qs := mysql.GetMysqlInstace().Ormer.QueryTable("charge_record")
infoQs := qs.Filter("user_id", info.UserID).Offset(offset).Limit(appRequest.Size)
infoQs := qs.Filter("user_id", token.UserID).Offset(offset).Limit(appRequest.Size)
count, err := infoQs.Count()
logs.Debug("Count = ", count)
var tokens []*models.ChargeRecord
......@@ -289,7 +289,7 @@ func (server *FundsController) RechargeRecords() {
}
func (server *FundsController) IncomeAndExpense() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -331,9 +331,9 @@ func (server *FundsController) IncomeAndExpense() {
queryQB.Select("*").
From("funds").Where("uid != '0'")
if info.Role != 1 && info.Role != 2 {
countQB.And(fmt.Sprintf("uid = '%d'", info.UserID))
queryQB.And(fmt.Sprintf("uid = '%d'", info.UserID))
if token.Role != 1 && token.Role != 2 {
countQB.And(fmt.Sprintf("uid = '%d'", token.UserID))
queryQB.And(fmt.Sprintf("uid = '%d'", token.UserID))
}
if appRequest.StartTime != "" && appRequest.EndTime != "" {
......@@ -364,8 +364,8 @@ func (server *FundsController) IncomeAndExpense() {
sql := countQB.String()
var types []*models.Funds
//sql := fmt.Sprintf("SELECT count(*) FROM funds WHERE uid = %d %s;", info.UserID, timeCondition)
//if info.Role == 1 || info.Role == 2 {
//sql := fmt.Sprintf("SELECT count(*) FROM funds WHERE uid = %d %s;", token.UserID, timeCondition)
//if token.Role == 1 || token.Role == 2 {
// if timeCondition != "" {
// timeCondition = "WHERE" + timeCondition
// }
......@@ -387,8 +387,8 @@ func (server *FundsController) IncomeAndExpense() {
queryQB.OrderBy("trade_time").Desc()
sql = fmt.Sprintf("%s LIMIT %d,%d;", queryQB.String(), offset, size)
//sql = fmt.Sprintf("SELECT * FROM funds WHERE uid = %d %s LIMIT %d,%d;", info.UserID, timeCondition, offset, size)
//if info.Role == 1 || info.Role == 2 {
//sql = fmt.Sprintf("SELECT * FROM funds WHERE uid = %d %s LIMIT %d,%d;", token.UserID, timeCondition, offset, size)
//if token.Role == 1 || token.Role == 2 {
// sql = fmt.Sprintf("SELECT * FROM funds %s LIMIT %d,%d;", timeCondition, offset, size)
//}
data, err := postgres.QueryFunds(sql)
......@@ -402,7 +402,7 @@ func (server *FundsController) IncomeAndExpense() {
ids = append(ids, id)
}
var users []models.User
if info.Role == 1 || info.Role == 2 {
if token.Role == 1 || token.Role == 2 {
_, _ = mysql.GetMysqlInstace().Ormer.QueryTable("user").Filter("id__in", ids).All(&users)
}
......
......@@ -28,7 +28,7 @@ type TaskController struct {
}
func (server *TaskController) Bills() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -78,9 +78,9 @@ func (server *TaskController) Bills() {
From("bills").Where("worker_acc != ''")
//Where("worker_acc != ''")
if info.Role != 1 && info.Role != 2 {
countQB.And(fmt.Sprintf("uid = '%d'", info.UserID))
queryQB.And(fmt.Sprintf("uid = '%d'", info.UserID))
if token.Role != 1 && token.Role != 2 {
countQB.And(fmt.Sprintf("uid = '%d'", token.UserID))
queryQB.And(fmt.Sprintf("uid = '%d'", token.UserID))
}
countQB.And(fmt.Sprintf("time >= '%s'", startTime)).And(fmt.Sprintf("time <= '%s'", endTime))
queryQB.And(fmt.Sprintf("time >= '%s'", startTime)).And(fmt.Sprintf("time <= '%s'", endTime))
......@@ -123,7 +123,7 @@ func (server *TaskController) Bills() {
}
func (server *TaskController) BillDetails() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -152,9 +152,9 @@ func (server *TaskController) BillDetails() {
From("bills").Where("worker_acc != ''").
And("uid != '0'")
if info.Role != 1 && info.Role != 2 {
countQB.And(fmt.Sprintf("uid = '%d'", info.UserID))
queryQB.And(fmt.Sprintf("uid = '%d'", info.UserID))
if token.Role != 1 && token.Role != 2 {
countQB.And(fmt.Sprintf("uid = '%d'", token.UserID))
queryQB.And(fmt.Sprintf("uid = '%d'", token.UserID))
}
if appRequest.StartTime != "" && appRequest.EndTime != "" {
......@@ -218,7 +218,7 @@ func (server *TaskController) BillDetails() {
}
}
balance, _ := odysseus.GetUserBalance(int64(info.UserID))
balance, _ := odysseus.GetUserBalance(int64(token.UserID))
reTask := models.Bills{
Id: task.Id,
......@@ -243,7 +243,7 @@ func (server *TaskController) BillDetails() {
}
func (server *TaskController) Tasks() {
//info, err := server.Check()
//token, err := server.Check()
//if err != nil {
// server.respond(http.StatusUnauthorized, err.Error())
// return
......@@ -466,7 +466,7 @@ func (server *TaskController) TasksPerDay() {
}
func (server *TaskController) UserTasks() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -492,16 +492,16 @@ func (server *TaskController) UserTasks() {
queryQB, _ := orm.NewQueryBuilder("mysql")
queryQB.Select("id", "type", "time", "fee", "in_len").
From("tasks")
if info.Role != 1 && info.Role != 2 {
countQB.Where(fmt.Sprintf("uid = '%d'", info.UserID))
queryQB.Where(fmt.Sprintf("uid = '%d'", info.UserID))
if token.Role != 1 && token.Role != 2 {
countQB.Where(fmt.Sprintf("uid = '%d'", token.UserID))
queryQB.Where(fmt.Sprintf("uid = '%d'", token.UserID))
}
if appRequest.StartTime != "" && appRequest.EndTime != "" {
temp, _ := time.Parse(layout, appRequest.StartTime)
startTime := fmt.Sprintf(temp.Format(format))
temp, _ = time.Parse(layout, appRequest.EndTime)
endTime := fmt.Sprintf(temp.Format(format))
if info.Role == 1 || info.Role == 2 {
if token.Role == 1 || token.Role == 2 {
countQB.Where(fmt.Sprintf("time >= '%s'", startTime)).And(fmt.Sprintf("time <= '%s'", endTime))
queryQB.Where(fmt.Sprintf("time >= '%s'", startTime)).And(fmt.Sprintf("time <= '%s'", endTime))
} else {
......@@ -513,8 +513,8 @@ func (server *TaskController) UserTasks() {
sql := countQB.String()
//sql := fmt.Sprintf("%s SAMPLE BY 1d ALIGN TO CALENDAR;", countQB.String())
//sql := fmt.Sprintf("SELECT count(*) FROM tasks WHERE uid='%d'%s%s;", info.UserID, cond, timeCondition)
//if info.Role == 1 || info.Role == 2 {
//sql := fmt.Sprintf("SELECT count(*) FROM tasks WHERE uid='%d'%s%s;", token.UserID, cond, timeCondition)
//if token.Role == 1 || token.Role == 2 {
// sql = fmt.Sprintf("SELECT count(*) FROM tasks WHERE %s;", timeCondition)
//}
total, err := postgres.QueryTotal(sql)
......@@ -538,8 +538,8 @@ func (server *TaskController) UserTasks() {
queryQB.OrderBy("time").Desc()
sql = fmt.Sprintf("%s LIMIT %d,%d;", queryQB.String(), offset, size)
//qb.Select("id", "type", "time", "fee", "in_len").From("tasks").Where("uid=?").And("time>='?'").And("time<='?").OrderBy("time").Desc().Offset(int(offset)).Limit(int(appRequest.Size))
//sql = fmt.Sprintf("SELECT id,type,time,fee,in_len FROM tasks WHERE uid='%d'%s%s ORDER BY time DESC LIMIT %d,%d;", info.UserID, cond, timeCondition, offset, size)
//if info.Role == 1 || info.Role == 2 {
//sql = fmt.Sprintf("SELECT id,type,time,fee,in_len FROM tasks WHERE uid='%d'%s%s ORDER BY time DESC LIMIT %d,%d;", token.UserID, cond, timeCondition, offset, size)
//if token.Role == 1 || token.Role == 2 {
// sql = fmt.Sprintf("SELECT id,type,time,fee,in_len FROM tasks WHERE %s ORDER BY time DESC LIMIT %d,%d;", timeCondition, offset, size)
//}
tasks, err := postgres.QueryBills(sql)
......@@ -628,7 +628,7 @@ func findBills(bills []models.Bills, id string) models.Bills {
}
func (server *TaskController) UserTasksPerDay() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -679,16 +679,16 @@ func (server *TaskController) UserTasksPerDay() {
countQB, _ := orm.NewQueryBuilder("mysql")
countQB.Select("count(*)", "time").
From("tasks").Where(fmt.Sprintf("time >= '%s'", startTime)).And(fmt.Sprintf("time <= '%s'", endTime))
if info.Role != 1 && info.Role != 2 {
countQB.And(fmt.Sprintf("uid = %d", info.UserID))
if token.Role != 1 && token.Role != 2 {
countQB.And(fmt.Sprintf("uid = %d", token.UserID))
}
sql := fmt.Sprintf("%s SAMPLE BY 1d ALIGN TO CALENDAR;", countQB.String())
endDateIn := time.Date(endTimeIn.Year(), endTimeIn.Month(), endTimeIn.Day(), 0, 0, 0, 0, time.UTC)
endDate := fmt.Sprintf(endDateIn.Format(format))
dates := utils.SplitDate(startTime, endDate, format)
//sql := fmt.Sprintf("SELECT time,count(*) FROM tasks WHERE uid='%d' and time >= '%s' and time <= '%s' SAMPLE BY 1d ALIGN TO CALENDAR;", info.UserID, startTime, endTime)
//if info.Role == 1 || info.Role == 2 {
//sql := fmt.Sprintf("SELECT time,count(*) FROM tasks WHERE uid='%d' and time >= '%s' and time <= '%s' SAMPLE BY 1d ALIGN TO CALENDAR;", token.UserID, startTime, endTime)
//if token.Role == 1 || token.Role == 2 {
// sql = fmt.Sprintf("SELECT time,count(*) FROM tasks WHERE time >= '%s' and time <= '%s' SAMPLE BY 1d ALIGN TO CALENDAR;", startTime, endTime)
//}
counts, err := postgres.CountTasks(sql)
......@@ -715,7 +715,7 @@ func (server *TaskController) UserTasksPerDay() {
}
func (server *TaskController) UserTasksPerPeriod() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -748,8 +748,8 @@ func (server *TaskController) UserTasksPerPeriod() {
countQB, _ := orm.NewQueryBuilder("mysql")
countQB.Select("count(*)", "time").
From("tasks").Where(fmt.Sprintf("time >= '%s'", startTime)).And(fmt.Sprintf("time <= '%s'", endTime))
if info.Role != 1 && info.Role != 2 {
countQB.And(fmt.Sprintf("uid = %d", info.UserID))
if token.Role != 1 && token.Role != 2 {
countQB.And(fmt.Sprintf("uid = %d", token.UserID))
}
sql := fmt.Sprintf("%s SAMPLE BY 1d ALIGN TO CALENDAR;", countQB.String())
......@@ -789,7 +789,7 @@ func (server *TaskController) UserTasksPerPeriod() {
}
func (server *TaskController) UserTaskTypePerDay() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -839,16 +839,16 @@ func (server *TaskController) UserTaskTypePerDay() {
countQB, _ := orm.NewQueryBuilder("mysql")
countQB.Select("count(*)", "time", "type").
From("tasks").Where(fmt.Sprintf("time >= '%s'", startTime)).And(fmt.Sprintf("time <= '%s'", endTime))
if info.Role != 1 && info.Role != 2 {
countQB.And(fmt.Sprintf("uid = %d", info.UserID))
if token.Role != 1 && token.Role != 2 {
countQB.And(fmt.Sprintf("uid = %d", token.UserID))
}
sql := fmt.Sprintf("%s SAMPLE BY 1d ALIGN TO CALENDAR;", countQB.String())
endDateIn := time.Date(endTimeIn.Year(), endTimeIn.Month(), endTimeIn.Day(), 0, 0, 0, 0, time.UTC)
endDate := fmt.Sprintf(endDateIn.Format(format))
dates := utils.SplitDate(startTime, endDate, format)
//sql := fmt.Sprintf("SELECT type, time,count(*) FROM tasks WHERE uid='%d' and time >= '%s' and time <= '%s' SAMPLE BY 1d ALIGN TO CALENDAR;", info.UserID, startTime, endTime)
//if info.Role == 1 || info.Role == 2 {
//sql := fmt.Sprintf("SELECT type, time,count(*) FROM tasks WHERE uid='%d' and time >= '%s' and time <= '%s' SAMPLE BY 1d ALIGN TO CALENDAR;", token.UserID, startTime, endTime)
//if token.Role == 1 || token.Role == 2 {
// sql = fmt.Sprintf("SELECT type, time,count(*) FROM tasks WHERE time >= '%s' and time <= '%s' SAMPLE BY 1d ALIGN TO CALENDAR;", startTime, endTime)
//}
counts, err := postgres.CountTasks(sql)
......@@ -905,7 +905,7 @@ func findTime(tasks []models.TaskCount, date string) *time.Time {
}
func (server *TaskController) UserTaskTypePercentage() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -962,14 +962,14 @@ func (server *TaskController) UserTaskTypePercentage() {
countQB, _ := orm.NewQueryBuilder("mysql")
countQB.Select("count(type)", "type").
From("tasks").Where(fmt.Sprintf("time >= '%s'", startTime)).And(fmt.Sprintf("time <= '%s'", endTime))
if info.Role != 1 && info.Role != 2 {
countQB.And(fmt.Sprintf("uid = %d", info.UserID))
if token.Role != 1 && token.Role != 2 {
countQB.And(fmt.Sprintf("uid = %d", token.UserID))
}
countQB.GroupBy("type")
sql := countQB.String()
//sql := fmt.Sprintf("SELECT type, count(type) FROM tasks WHERE uid='%d' and time >= '%s' and time <= '%s' GROUP BY type;", info.UserID, startTime, endTime)
//if info.Role == 1 || info.Role == 2 {
//sql := fmt.Sprintf("SELECT type, count(type) FROM tasks WHERE uid='%d' and time >= '%s' and time <= '%s' GROUP BY type;", token.UserID, startTime, endTime)
//if token.Role == 1 || token.Role == 2 {
// sql = fmt.Sprintf("SELECT type, count(type) FROM tasks WHERE time >= '%s' and time <= '%s' GROUP BY type;", startTime, endTime)
//}
counts, err := postgres.CountTasks(sql)
......@@ -1000,7 +1000,7 @@ func (server *TaskController) UserTaskTypePercentage() {
}
func (server *TaskController) UserFeePerDay() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -1051,8 +1051,8 @@ func (server *TaskController) UserFeePerDay() {
countQB, _ := orm.NewQueryBuilder("mysql")
countQB.Select("time", "sum(fee) AS fee").
From("bills").Where(fmt.Sprintf("time >= '%s'", startTime)).And(fmt.Sprintf("time <= '%s'", endTime))
if info.Role != 1 && info.Role != 2 {
countQB.And(fmt.Sprintf("uid = %d", info.UserID))
if token.Role != 1 && token.Role != 2 {
countQB.And(fmt.Sprintf("uid = %d", token.UserID))
}
sql := fmt.Sprintf("%s SAMPLE BY 1d ALIGN TO CALENDAR;", countQB.String())
......@@ -1060,8 +1060,8 @@ func (server *TaskController) UserFeePerDay() {
endDate := fmt.Sprintf(endDateIn.Format(format))
dates := utils.SplitDate(startTime, endDate, format)
//sql := fmt.Sprintf("SELECT time,sum(fee) AS fee FROM bills WHERE uid='%d' and time >= '%s' and time <= '%s' SAMPLE BY 1d ALIGN TO CALENDAR;", info.UserID, startTime, endTime)
//if info.Role == 1 || info.Role == 2 {
//sql := fmt.Sprintf("SELECT time,sum(fee) AS fee FROM bills WHERE uid='%d' and time >= '%s' and time <= '%s' SAMPLE BY 1d ALIGN TO CALENDAR;", token.UserID, startTime, endTime)
//if token.Role == 1 || token.Role == 2 {
// sql = fmt.Sprintf("SELECT time,sum(fee) AS fee FROM bills WHERE time >= '%s' and time <= '%s' SAMPLE BY 1d ALIGN TO CALENDAR;", startTime, endTime)
//}
counts, err := postgres.CountTasks(sql)
......@@ -1088,7 +1088,7 @@ func (server *TaskController) UserFeePerDay() {
}
func (server *TaskController) UserFee() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -1139,8 +1139,8 @@ func (server *TaskController) UserFee() {
countQB, _ := orm.NewQueryBuilder("mysql")
countQB.Select("sum(fee) AS fee").
From("bills")
if info.Role != 1 && info.Role != 2 {
countQB.Where(fmt.Sprintf("uid = %d", info.UserID))
if token.Role != 1 && token.Role != 2 {
countQB.Where(fmt.Sprintf("uid = %d", token.UserID))
}
//sql := fmt.Sprintf("%s SAMPLE BY 1d ALIGN TO CALENDAR;", countQB.String())
sql := countQB.String()
......@@ -1149,8 +1149,8 @@ func (server *TaskController) UserFee() {
//endDate := fmt.Sprintf(endDateIn.Format(format))
//dates := utils.SplitDate(startTime, endDate, format)
//sql := fmt.Sprintf("SELECT time,sum(fee) AS fee FROM bills WHERE uid='%d' and time >= '%s' and time <= '%s' SAMPLE BY 1d ALIGN TO CALENDAR;", info.UserID, startTime, endTime)
//if info.Role == 1 || info.Role == 2 {
//sql := fmt.Sprintf("SELECT time,sum(fee) AS fee FROM bills WHERE uid='%d' and time >= '%s' and time <= '%s' SAMPLE BY 1d ALIGN TO CALENDAR;", token.UserID, startTime, endTime)
//if token.Role == 1 || token.Role == 2 {
// sql = fmt.Sprintf("SELECT time,sum(fee) AS fee FROM bills WHERE time >= '%s' and time <= '%s' SAMPLE BY 1d ALIGN TO CALENDAR;", startTime, endTime)
//}
counts, err := postgres.CountTasks(sql)
......@@ -1175,7 +1175,7 @@ func (server *TaskController) UserFee() {
}
func (server *TaskController) UserTaskTypeFeePerDay() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -1226,8 +1226,8 @@ func (server *TaskController) UserTaskTypeFeePerDay() {
countQB, _ := orm.NewQueryBuilder("mysql")
countQB.Select("time", "sum(fee) AS fee", "type").
From("bills").Where(fmt.Sprintf("time >= '%s'", startTime)).And(fmt.Sprintf("time <= '%s'", endTime))
if info.Role != 1 && info.Role != 2 {
countQB.And(fmt.Sprintf("uid = %d", info.UserID))
if token.Role != 1 && token.Role != 2 {
countQB.And(fmt.Sprintf("uid = %d", token.UserID))
}
sql := fmt.Sprintf("%s SAMPLE BY 1d ALIGN TO CALENDAR;", countQB.String())
......@@ -1235,8 +1235,8 @@ func (server *TaskController) UserTaskTypeFeePerDay() {
endDate := fmt.Sprintf(endDateIn.Format(format))
dates := utils.SplitDate(startTime, endDate, format)
//sql := fmt.Sprintf("SELECT type, time,sum(fee) AS fee FROM bills WHERE uid='%d' and time >= '%s' and time <= '%s' SAMPLE BY 1d ALIGN TO CALENDAR;", info.UserID, startTime, endTime)
//if info.Role == 1 || info.Role == 2 {
//sql := fmt.Sprintf("SELECT type, time,sum(fee) AS fee FROM bills WHERE uid='%d' and time >= '%s' and time <= '%s' SAMPLE BY 1d ALIGN TO CALENDAR;", token.UserID, startTime, endTime)
//if token.Role == 1 || token.Role == 2 {
// sql = fmt.Sprintf("SELECT type, time,sum(fee) AS fee FROM bills WHERE time >= '%s' and time <= '%s' SAMPLE BY 1d ALIGN TO CALENDAR;", startTime, endTime)
//}
counts, err := postgres.CountTasks(sql)
......@@ -1282,7 +1282,7 @@ func (server *TaskController) UserTaskTypeFeePerDay() {
}
func (server *TaskController) UserTaskTypeFeePercentage() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -1333,14 +1333,14 @@ func (server *TaskController) UserTaskTypeFeePercentage() {
countQB, _ := orm.NewQueryBuilder("mysql")
countQB.Select("sum(fee) AS fee", "type").
From("bills").Where(fmt.Sprintf("time >= '%s'", startTime)).And(fmt.Sprintf("time <= '%s'", endTime))
if info.Role != 1 && info.Role != 2 {
countQB.And(fmt.Sprintf("uid = %d", info.UserID))
if token.Role != 1 && token.Role != 2 {
countQB.And(fmt.Sprintf("uid = %d", token.UserID))
}
countQB.GroupBy("type")
sql := countQB.String()
//sql := fmt.Sprintf("SELECT type, sum(fee) AS fee FROM bills WHERE uid='%d' and time >= '%s' and time <= '%s' GROUP BY type;", info.UserID, startTime, endTime)
//if info.Role == 1 || info.Role == 2 {
//sql := fmt.Sprintf("SELECT type, sum(fee) AS fee FROM bills WHERE uid='%d' and time >= '%s' and time <= '%s' GROUP BY type;", token.UserID, startTime, endTime)
//if token.Role == 1 || token.Role == 2 {
// sql = fmt.Sprintf("SELECT type, sum(fee) AS fee FROM bills WHERE time >= '%s' and time <= '%s' GROUP BY type;", startTime, endTime)
//}
counts, err := postgres.CountTasks(sql)
......@@ -2403,9 +2403,9 @@ func (server *TaskController) Models() {
countQB.Select("count(*) AS total").
From("task_type").Where("deleted = 0")
info, _ := server.Check()
if info != nil {
cond := fmt.Sprintf("favorite.task_type_id = task_type.id and user_id = %d and favorite.deleted = 0", info.UserID)
token, _ := server.Check()
if token != nil {
cond := fmt.Sprintf("favorite.task_type_id = task_type.id and user_id = %d and favorite.deleted = 0", token.UserID)
queryQB.Select("task_type.id",
"task_type.name AS tit",
"task_type.type",
......@@ -2561,9 +2561,9 @@ func (server *TaskController) ModelById() {
queryQB, _ := orm.NewQueryBuilder("mysql")
info, _ := server.Check()
if info != nil {
cond := fmt.Sprintf("favorite.task_type_id = task_type.id and user_id = %d and favorite.deleted = 0", info.UserID)
token, _ := server.Check()
if token != nil {
cond := fmt.Sprintf("favorite.task_type_id = task_type.id and user_id = %d and favorite.deleted = 0", token.UserID)
queryQB.Select("task_type.id",
"task_type.name AS tit",
"task_type.type",
......
......@@ -13,12 +13,12 @@ type FileController struct {
}
func (server *FileController) Upload() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
}
if !(info.Role == 1 || info.Role == 2) {
if !(token.Role == 1 || token.Role == 2) {
server.respond(http.StatusUnauthorized, "只有管理员才可执行此操作")
return
}
......
......@@ -146,12 +146,12 @@ func (server *UserController) Login() {
}
func (server *UserController) Logout() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
}
key := "token:user-" + strconv.Itoa(info.UserID)
key := "token:user-" + strconv.Itoa(token.UserID)
redis.DeleteKey(key)
server.respond(http.StatusUnauthorized, "")
}
......@@ -186,12 +186,12 @@ func (server *UserController) Regisger() {
}
func (server *UserController) UserInfo() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
}
checkUser := &models.User{Id: info.UserID}
checkUser := &models.User{Id: token.UserID}
err = mysql.GetMysqlInstace().Ormer.Read(checkUser)
if err != nil {
server.respond(models.BusinessFailed, err.Error())
......@@ -236,7 +236,7 @@ func (server *UserController) UserInfo() {
}
func (server *UserController) FreeCallCount() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
......@@ -254,7 +254,7 @@ func (server *UserController) FreeCallCount() {
}
offset := (appRequest.Page - 1) * appRequest.Size
checkUser := &models.User{Id: info.UserID}
checkUser := &models.User{Id: token.UserID}
err = mysql.GetMysqlInstace().Ormer.Read(checkUser)
if err != nil {
server.respond(models.BusinessFailed, err.Error())
......@@ -287,9 +287,9 @@ func (server *UserController) FreeCallCount() {
From("task_type").LeftJoin("user_level_task_type").On(cond)
queryQB.Where("task_type.deleted = 0")
//if !(info.Role == 1 || info.Role == 2) {
//countQB.And(fmt.Sprintf("user_id = '%d'", info.UserID))
//queryQB.And(fmt.Sprintf("user_id = '%d'", info.UserID))
//if !(token.Role == 1 || token.Role == 2) {
//countQB.And(fmt.Sprintf("user_id = '%d'", token.UserID))
//queryQB.And(fmt.Sprintf("user_id = '%d'", token.UserID))
//}
if appRequest.Keyword != "" {
keyword := "%" + appRequest.Keyword + "%"
......@@ -331,14 +331,14 @@ func (server *UserController) FreeCallCount() {
}
idsString = idsString[:len(idsString)-1]
uids := []int64{
int64(info.UserID),
int64(token.UserID),
}
totalDayUsed := int64(0)
totalMonthUsed := int64(0)
uesd, err := odysseus.UserFreeUesd(uids, ids)
if err == nil {
userdata := uesd[int64(info.UserID)]
userdata := uesd[int64(token.UserID)]
totalDayUsed = userdata.TotalDayUsed
totalMonthUsed = userdata.TotalMonthUsed
for _, value := range taskTypes {
......@@ -361,7 +361,7 @@ func (server *UserController) FreeCallCount() {
From("tasks").
Where(fmt.Sprintf("time >= '%s'", startTime)).
And(fmt.Sprintf("time <= '%s'", endTime)).
And(fmt.Sprintf("uid >= '%d'", info.UserID)).
And(fmt.Sprintf("uid >= '%d'", token.UserID)).
And(fmt.Sprintf("type in(%s)", idsString))
sql = weekCountQB.String()
weekCount, err := postgres.CountTasks(sql)
......@@ -382,7 +382,7 @@ func (server *UserController) FreeCallCount() {
From("tasks").
Where(fmt.Sprintf("time >= '%s'", startTime)).
And(fmt.Sprintf("time <= '%s'", endTime)).
And(fmt.Sprintf("uid >= '%d'", info.UserID)).
And(fmt.Sprintf("uid >= '%d'", token.UserID)).
And(fmt.Sprintf("type in(%s)", idsString))
sql = monthCountQB.String()
monthCount, err := postgres.CountTasks(sql)
......
......@@ -16,12 +16,12 @@ type WhitelistController struct {
}
func (server *WhitelistController) Lists() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
}
if !(info.Role == 1 || info.Role == 2) {
if !(token.Role == 1 || token.Role == 2) {
server.respond(models.BusinessFailed, "Only system administrators or super administrators can perform this operation")
return
}
......@@ -58,13 +58,13 @@ func (server *WhitelistController) Lists() {
}
func (server *WhitelistController) Add() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
}
if !(info.Role == 1 || info.Role == 2) {
if !(token.Role == 1 || token.Role == 2) {
server.respond(models.BusinessFailed, "Only system administrators or super administrators can perform this operation")
return
}
......@@ -103,13 +103,13 @@ func (server *WhitelistController) Add() {
}
func (server *WhitelistController) Update() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
}
if !(info.Role == 1 || info.Role == 2) {
if !(token.Role == 1 || token.Role == 2) {
server.respond(models.BusinessFailed, "Only system administrators or super administrators can perform this operation")
return
}
......@@ -169,13 +169,13 @@ func (server *WhitelistController) Update() {
}
func (server *WhitelistController) Delete() {
info, err := server.Check()
token, err := server.Check()
if err != nil {
server.respond(http.StatusUnauthorized, err.Error())
return
}
if !(info.Role == 1 || info.Role == 2) {
if !(token.Role == 1 || token.Role == 2) {
server.respond(models.BusinessFailed, "Only system administrators or super administrators can perform this operation")
return
}
......
No preview for this file type
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