初始化项目文件
This commit is contained in:
206
api_iris/service/api/yeb.go
Normal file
206
api_iris/service/api/yeb.go
Normal file
@ -0,0 +1,206 @@
|
||||
package api
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"github.com/kataras/iris/v12"
|
||||
"github.com/sirupsen/logrus"
|
||||
"main/database"
|
||||
"main/model"
|
||||
"main/utils"
|
||||
"time"
|
||||
)
|
||||
|
||||
func getYeb(ctx iris.Context) {
|
||||
username := utils.GetLoginUser(ctx).Username
|
||||
if username == "" {
|
||||
return
|
||||
}
|
||||
var balances []model.Balances
|
||||
db := database.GetInstance().GetMysqlDb()
|
||||
if err := db.Where("username = ?", username).Order("card").Find(&balances).Error; err != nil {
|
||||
logrus.Errorln("sql执行失败:", err)
|
||||
}
|
||||
err := ctx.JSON(utils.FormatRes(iris.StatusOK, "", balances))
|
||||
if utils.ErrHandle(ctx, err) {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
func addYeb(ctx iris.Context) {
|
||||
username := utils.GetLoginUser(ctx).Username
|
||||
if username == "" {
|
||||
return
|
||||
}
|
||||
var balance paramsBalance
|
||||
var tmpBalance []model.Balances
|
||||
err := ctx.ReadJSON(&balance)
|
||||
if utils.ErrHandle(ctx, err) {
|
||||
return
|
||||
}
|
||||
db := database.GetInstance().GetMysqlDb()
|
||||
if err1 := db.Where("username = ? and card = ?", username, balance.Card).Find(&tmpBalance).Error; err1 != nil {
|
||||
logrus.Errorln("sql执行失败:", err1)
|
||||
}
|
||||
if len(tmpBalance) > 0 {
|
||||
ctx.StatusCode(iris.StatusInternalServerError)
|
||||
ctx.SetErr(errors.New("card已存在"))
|
||||
return
|
||||
}
|
||||
if err1 := db.Create(&model.Balances{
|
||||
Username: username,
|
||||
Card: balance.Card,
|
||||
Type: balance.Type,
|
||||
Balance: balance.Balance,
|
||||
}).Error; err1 != nil {
|
||||
logrus.Errorln("sql执行失败:", err1)
|
||||
}
|
||||
if balance.Type {
|
||||
balance.Balance = -balance.Balance
|
||||
}
|
||||
if err1 := db.Create(&model.BalanceLogs{
|
||||
Username: username,
|
||||
Card: balance.Card,
|
||||
Date: time.Now().Format("2006-01-02"),
|
||||
Balance: balance.Balance,
|
||||
}).Error; err1 != nil {
|
||||
logrus.Errorln("sql执行失败:", err1)
|
||||
}
|
||||
err = ctx.JSON(utils.FormatRes(iris.StatusOK, "", "success"))
|
||||
if utils.ErrHandle(ctx, err) {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
func updateYeb(ctx iris.Context) {
|
||||
username := utils.GetLoginUser(ctx).Username
|
||||
if username == "" {
|
||||
return
|
||||
}
|
||||
var params paramsBalance
|
||||
var balances []model.Balances
|
||||
err := ctx.ReadJSON(¶ms)
|
||||
if utils.ErrHandle(ctx, err) {
|
||||
return
|
||||
}
|
||||
db := database.GetInstance().GetMysqlDb()
|
||||
if err1 := db.Where("username = ? and card = ?", username, params.Card).Find(&balances).Error; err1 != nil {
|
||||
logrus.Errorln("sql执行失败:", err1)
|
||||
}
|
||||
if len(balances) == 0 {
|
||||
ctx.StatusCode(iris.StatusInternalServerError)
|
||||
ctx.SetErr(errors.New("card 不存在"))
|
||||
return
|
||||
}
|
||||
balances[0].Balance = params.Balance
|
||||
balances[0].Type = params.Type
|
||||
if err1 := db.Save(&balances[0]).Error; err1 != nil {
|
||||
logrus.Errorln("sql执行失败:", err1)
|
||||
}
|
||||
//if err1 := db.Model(&balances).Update("balance", params.Balance).Error; err1 != nil {
|
||||
// logrus.Errorln("sql执行失败:", err1)
|
||||
//}
|
||||
if params.Type {
|
||||
params.Balance = -params.Balance
|
||||
}
|
||||
if err1 := db.Create(&model.BalanceLogs{
|
||||
Username: username,
|
||||
Card: params.Card,
|
||||
Date: time.Now().Format("2006-01-02"),
|
||||
Balance: params.Balance,
|
||||
}).Error; err1 != nil {
|
||||
logrus.Errorln("sql执行失败:", err1)
|
||||
}
|
||||
err = ctx.JSON(utils.FormatRes(iris.StatusOK, "", "success"))
|
||||
if utils.ErrHandle(ctx, err) {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
func deleteYeb(ctx iris.Context) {
|
||||
username := utils.GetLoginUser(ctx).Username
|
||||
if username == "" {
|
||||
return
|
||||
}
|
||||
var params paramsBalance
|
||||
var balances []model.Balances
|
||||
err := ctx.ReadJSON(¶ms)
|
||||
if utils.ErrHandle(ctx, err) {
|
||||
return
|
||||
}
|
||||
db := database.GetInstance().GetMysqlDb()
|
||||
if err1 := db.Where("username = ? and card = ?", username, params.Card).Find(&balances).Error; err1 != nil {
|
||||
logrus.Errorln("sql执行失败:", err1)
|
||||
}
|
||||
if len(balances) == 0 {
|
||||
ctx.StatusCode(iris.StatusInternalServerError)
|
||||
ctx.SetErr(errors.New("card 不存在"))
|
||||
return
|
||||
}
|
||||
if err1 := db.Delete(&balances).Error; err1 != nil {
|
||||
logrus.Errorln("sql执行失败:", err1)
|
||||
}
|
||||
if err1 := db.Create(&model.BalanceLogs{
|
||||
Username: username,
|
||||
Card: params.Card,
|
||||
Date: time.Now().Format("2006-01-02"),
|
||||
Balance: 0,
|
||||
}).Error; err1 != nil {
|
||||
logrus.Errorln("sql执行失败:", err1)
|
||||
}
|
||||
err = ctx.JSON(utils.FormatRes(iris.StatusOK, "", "success"))
|
||||
if utils.ErrHandle(ctx, err) {
|
||||
return
|
||||
}
|
||||
}
|
||||
|
||||
func szYeb(ctx iris.Context) {
|
||||
username := utils.GetLoginUser(ctx).Username
|
||||
if username == "" {
|
||||
return
|
||||
}
|
||||
var params paramSZBalance
|
||||
var balance model.Balances
|
||||
err := ctx.ReadJSON(¶ms)
|
||||
if utils.ErrHandle(ctx, err) {
|
||||
return
|
||||
}
|
||||
db := database.GetInstance().GetMysqlDb()
|
||||
if err1 := db.Where("username = ? and card = ?", username, params.Card).Find(&balance).Error; err1 != nil {
|
||||
logrus.Errorln("sql执行失败:", err1)
|
||||
}
|
||||
if utils.DataIsNil(balance) {
|
||||
utils.ErrHandle(ctx, errors.New("card 不存在"))
|
||||
return
|
||||
}
|
||||
if balance.Type == params.Type {
|
||||
balance.Balance = utils.Round(balance.Balance+params.Amount, 2)
|
||||
} else {
|
||||
balance.Balance = utils.Round(balance.Balance-params.Amount, 2)
|
||||
}
|
||||
if err1 := db.Save(&balance).Error; err1 != nil {
|
||||
logrus.Errorln("sql执行失败:", err1)
|
||||
}
|
||||
if balance.Type {
|
||||
if err1 := db.Create(&model.BalanceLogs{
|
||||
Username: username,
|
||||
Card: params.Card,
|
||||
Date: time.Now().Format("2006-01-02"),
|
||||
Balance: -balance.Balance,
|
||||
}).Error; err1 != nil {
|
||||
logrus.Errorln("sql执行失败:", err1)
|
||||
}
|
||||
} else {
|
||||
if err1 := db.Create(&model.BalanceLogs{
|
||||
Username: username,
|
||||
Card: params.Card,
|
||||
Date: time.Now().Format("2006-01-02"),
|
||||
Balance: balance.Balance,
|
||||
}).Error; err1 != nil {
|
||||
logrus.Errorln("sql执行失败:", err1)
|
||||
}
|
||||
}
|
||||
err = ctx.JSON(utils.FormatRes(iris.StatusOK, "", "success"))
|
||||
if utils.ErrHandle(ctx, err) {
|
||||
return
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user