1
This commit is contained in:
parent
a9fa18e747
commit
4b9489d0b9
@ -53,7 +53,20 @@ func (this *RechargeApi) Buy(c *gin.Context) {
|
||||
f5.RspErr(c, 1, err.Error())
|
||||
return
|
||||
}
|
||||
currencyContractMeta := mt.Table.Contract.GetByNetIdName(reqJson.NetId, "TestToken")
|
||||
currencyMeta := mt.Table.RechargeCurrency.Get()
|
||||
if currencyMeta == nil {
|
||||
f5.RspErr(c, 2, "server internal error")
|
||||
return
|
||||
}
|
||||
if currencyMeta.GetExchangeRate() <= 0 || currencyMeta.GetExchangeRate() > 1000 {
|
||||
f5.RspErr(c, 2, "server internal error")
|
||||
return
|
||||
}
|
||||
if currencyMeta.GetCurrencyDecimal() <= 0 || currencyMeta.GetCurrencyDecimal() > 10 {
|
||||
f5.RspErr(c, 2, "server internal error")
|
||||
return
|
||||
}
|
||||
currencyContractMeta := mt.Table.Contract.GetByNetIdName(reqJson.NetId, currencyMeta.GetCurrencyName())
|
||||
if currencyContractMeta == nil {
|
||||
f5.RspErr(c, 2, "server internal error")
|
||||
return
|
||||
@ -88,7 +101,7 @@ func (this *RechargeApi) Buy(c *gin.Context) {
|
||||
return
|
||||
}
|
||||
}
|
||||
price := "1"
|
||||
price := currencyMeta.GetCurrencyDecimal() * q5.ToInt64(reqJson.Num)
|
||||
params := map[string]string{
|
||||
"c": "BcService",
|
||||
"a": "recharge",
|
||||
@ -96,7 +109,7 @@ func (this *RechargeApi) Buy(c *gin.Context) {
|
||||
"order_id": orderId,
|
||||
"account_address": reqJson.AccountAddress,
|
||||
"passport_address": passportAddress,
|
||||
"amount": price,
|
||||
"amount": q5.ToString(price),
|
||||
"currency_name": currencyContractMeta.GetName(),
|
||||
"currency_address": currencyContractMeta.GetAddress(),
|
||||
}
|
||||
@ -105,8 +118,8 @@ func (this *RechargeApi) Buy(c *gin.Context) {
|
||||
ErrMsg string `json:"errmsg"`
|
||||
Calls []jccommon.ContractCall `json:"calls"`
|
||||
}{}
|
||||
var itemNum int32 = 1
|
||||
var diamond int64 = 1
|
||||
var itemNum int32 = reqJson.Num
|
||||
var diamond int64 = currencyMeta.GetExchangeRate() * int64(1)
|
||||
url := fmt.Sprintf("%s/webapp/index.php", mt.Table.Web3SignCluster.RandElement().GetUrl())
|
||||
f5.GetHttpCliMgr().SendGoStyleRequest(
|
||||
url,
|
||||
@ -134,7 +147,7 @@ func (this *RechargeApi) Buy(c *gin.Context) {
|
||||
currencyContractMeta.GetAddress(),
|
||||
goodsMeta.GetId(),
|
||||
itemNum,
|
||||
price,
|
||||
q5.ToString(price),
|
||||
diamond) {
|
||||
f5.RspErr(c, 500, "server internal error")
|
||||
return
|
||||
|
@ -62,8 +62,8 @@ type Config struct {
|
||||
|
||||
type RechargeCurrency struct {
|
||||
currency_name string
|
||||
exchange_rate int32
|
||||
currency_decimal int32
|
||||
exchange_rate int64
|
||||
currency_decimal int64
|
||||
|
||||
_flags1_ uint64
|
||||
_flags2_ uint64
|
||||
@ -330,7 +330,7 @@ func (this *RechargeCurrency) HasCurrencyName() bool {
|
||||
return (this._flags1_ & (uint64(1) << 1)) > 0
|
||||
}
|
||||
|
||||
func (this *RechargeCurrency) GetExchangeRate() int32 {
|
||||
func (this *RechargeCurrency) GetExchangeRate() int64 {
|
||||
return this.exchange_rate
|
||||
}
|
||||
|
||||
@ -338,7 +338,7 @@ func (this *RechargeCurrency) HasExchangeRate() bool {
|
||||
return (this._flags1_ & (uint64(1) << 2)) > 0
|
||||
}
|
||||
|
||||
func (this *RechargeCurrency) GetCurrencyDecimal() int32 {
|
||||
func (this *RechargeCurrency) GetCurrencyDecimal() int64 {
|
||||
return this.currency_decimal
|
||||
}
|
||||
|
||||
|
@ -51,8 +51,8 @@ message Config
|
||||
message RechargeCurrency
|
||||
{
|
||||
optional string currency_name = 1;
|
||||
optional int32 exchange_rate = 2;
|
||||
optional int32 currency_decimal = 3;
|
||||
optional int64 exchange_rate = 2;
|
||||
optional int64 currency_decimal = 3;
|
||||
}
|
||||
|
||||
message Item
|
||||
|
Loading…
x
Reference in New Issue
Block a user