Commit ea2fd3f1 authored by shajiaiming's avatar shajiaiming

Merge branch 'feature/optimize' into develop

parents 9f66803a 3716c745
......@@ -6,11 +6,12 @@ import (
)
type CoinGas struct {
Model
CoinName string `json:"coin_name"`
Low string `json:"low"`
Average string `json:"average"`
High string `json:"high"`
Switch int8 `json:"switch"`
}
func (c CoinGas) TableName() string {
......@@ -33,9 +34,8 @@ func AddCoinGas(data map[string]interface{}) (error) {
Low: data["low"].(string),
Average: data["average"].(string),
High: data["high"].(string),
Switch: data["switch"].(int8),
}
if err := db.Debug().Create(&CoinGas).Error; err != nil {
if err := db.Create(&CoinGas).Error; err != nil {
return err
}
......@@ -60,7 +60,7 @@ func DeleteCoinGas(id int) error {
func GetCoinGas(coin_name string) (*CoinGas, error) {
var gas CoinGas
err := db.Where("coin_name = ? and switch = ?", coin_name, 1).First(&gas).Error
err := db.Where("coin_name = ?", coin_name).First(&gas).Error
if err != nil && err != gorm.ErrRecordNotFound {
return nil, err
}
......@@ -73,7 +73,7 @@ func GetCoinGas(coin_name string) (*CoinGas, error) {
return &gas, nil
}
func Exist(coin_name string) (bool, error) {
func ExistCoinGasByName(coin_name string) (bool, error) {
var coinGas CoinGas
err := db.Where("coin_name = ?", coin_name).First(&coinGas).Error
if err != nil && err != gorm.ErrRecordNotFound {
......@@ -86,3 +86,17 @@ func Exist(coin_name string) (bool, error) {
return false, nil
}
func ExistCoinGasById(id int) (bool, error) {
var coinGas CoinGas
err := db.Select("id").Where("id = ?", id).First(&coinGas).Error
if err != nil && err != gorm.ErrRecordNotFound {
return false, err
}
if coinGas.ID > 0 {
return true, nil
}
return false, nil
}
......@@ -52,12 +52,21 @@ func AddCoinGas(c *gin.Context) {
}
}
CoinGasValidateService := coin_gas_service.CoinGas{
CoinName: coin_gas.CoinName,
}
exist, _ := CoinGasValidateService.ExistCoinGasByName()
if exist {
handler.SendResponse(c, errno.ErrExistCoinGas, nil)
return
}
CoinGasService := coin_gas_service.CoinGas{
CoinName: coin_gas.CoinName,
Low: coin_gas.Low,
Average: coin_gas.Average,
High: coin_gas.High,
Switch: coin_gas.Switch,
}
if err := CoinGasService.Add(); err != nil {
......@@ -92,7 +101,7 @@ func UpdateCoinGas(c *gin.Context) {
CoinName: coin_gas.CoinName,
}
exist, _ := CoinGasValidateService.Exist()
exist, _ := CoinGasValidateService.ExistCoinGasByName()
if !exist {
handler.SendResponse(c, errno.ErrCoinGasNotFound, nil)
return
......@@ -102,7 +111,6 @@ func UpdateCoinGas(c *gin.Context) {
Low: coin_gas.Low,
Average: coin_gas.Average,
High: coin_gas.High,
Switch: coin_gas.Switch,
}
if err := CoinGasService.Edit(); err != nil {
......@@ -132,9 +140,9 @@ func DeleteCoinGas(c *gin.Context) {
}
CoinGasService := coin_gas_service.CoinGas{
Id: id,
Id: id,
}
exists, err := CoinGasService.Exist()
exists, err := CoinGasService.ExistCoinGasById()
if err != nil {
handler.SendResponse(c, errno.ErrValidation, nil)
return
......
......@@ -6,7 +6,6 @@ import (
"bwallet/pkg/gredis"
"bwallet/pkg/util"
"encoding/json"
"fmt"
"io/ioutil"
"net/http"
"net/url"
......@@ -258,7 +257,6 @@ type CoinGas struct {
Low string
Average string
High string
Switch int8
}
func (g *CoinGas) GetAll() ([]*models.CoinGas, error) {
......@@ -271,15 +269,14 @@ func (g *CoinGas) GetAll() ([]*models.CoinGas, error) {
}
func (g *CoinGas) Add() error {
CoinGas := map[string]interface{}{
coinGas := map[string]interface{}{
"coin_name": g.CoinName,
"low": g.Low,
"average": g.Average,
"high": g.High,
"switch": g.Switch,
}
fmt.Println(CoinGas)
if err := models.AddCoinGas(CoinGas); err != nil {
if err := models.AddCoinGas(coinGas); err != nil {
return err
}
......@@ -291,7 +288,6 @@ func (g *CoinGas) Edit() error {
"low": g.Low,
"average": g.Average,
"high": g.High,
"switch": g.Switch,
})
}
......@@ -299,8 +295,12 @@ func (g *CoinGas) Delete() error {
return models.DeleteCoinGas(g.Id)
}
func (g *CoinGas) Exist() (bool, error) {
return models.Exist(g.CoinName)
func (g *CoinGas) ExistCoinGasByName() (bool, error) {
return models.ExistCoinGasByName(g.CoinName)
}
func (g *CoinGas) ExistCoinGasById() (bool, error) {
return models.ExistCoinGasById(g.Id)
}
func (c *CoinGas) getMaps() (map[string]interface{}) {
......@@ -310,5 +310,9 @@ func (c *CoinGas) getMaps() (map[string]interface{}) {
maps["coin_name"] = c.CoinName
}
if c.Id != 0 {
maps["id"] = c.Id
}
return maps
}
......@@ -5,5 +5,4 @@ type CoinGas struct {
Low string `json:"low" validate:"required"`
Average string `json:"average" validate:"required"`
High string `json:"high" validate:"required"`
Switch int8 `json:"switch" validate:"required"`
}
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