Browse Source

瞬验

master
huangjiajun 4 months ago
parent
commit
e89d78c193
5 changed files with 120 additions and 0 deletions
  1. +15
    -0
      db/offical/db_fast_login_num_list.go
  2. +11
    -0
      db/offical/model/fast_login_money.go
  3. +8
    -0
      db/offical/model/fast_login_num_list.go
  4. +27
    -0
      db/offical/model/fast_login_record.go
  5. +59
    -0
      fast_login/api.go

+ 15
- 0
db/offical/db_fast_login_num_list.go View File

@@ -0,0 +1,15 @@
package offical

import (
"code.fnuoos.com/go_rely_warehouse/zyos_go_third_party_api.git/db/offical/model"
"xorm.io/xorm"
)

func GetFastLoginNum(engine *xorm.Engine, uid interface{}) *model.FastLoginNumList {
var data model.FastLoginNumList
get, err := engine.Where("uid=?", uid).Get(&data)
if get == false || err != nil {
return nil
}
return &data
}

+ 11
- 0
db/offical/model/fast_login_money.go View File

@@ -0,0 +1,11 @@
package model

type FastLoginMoney struct {
Id int `json:"id" xorm:"not null pk autoincr INT(11)"`
Money float64 `json:"money" xorm:"default 0.00 comment('金额') DOUBLE(11,2)"`
Num int `json:"num" xorm:"default 0 comment('短信条数') INT(11)"`
Hide int `json:"hide" xorm:"default 0 comment('0否 1是') INT(1)"`
Sort int `json:"sort" xorm:"default 0 comment('排序') INT(11)"`
UpdateTime int `json:"update_time" xorm:"default 0 comment('修改时间') INT(11)"`
Time int `json:"time" xorm:"default 0 comment('创建时间') INT(11)"`
}

+ 8
- 0
db/offical/model/fast_login_num_list.go View File

@@ -0,0 +1,8 @@
package model

type FastLoginNumList struct {
Id int `json:"id" xorm:"not null pk autoincr INT(11)"`
Uid int `json:"uid" xorm:"default 0 comment('用户') INT(11)"`
Num int `json:"num" xorm:"default 0 comment('短信条数') INT(11)"`
Type string `json:"type" xorm:"default '' comment('普通 putong 营销 yingxiao') VARCHAR(50)"`
}

+ 27
- 0
db/offical/model/fast_login_record.go View File

@@ -0,0 +1,27 @@
package model

import (
"time"
)

type FastLoginRecord struct {
Id int `json:"id" xorm:"not null pk autoincr INT(11)"`
OrdId string `json:"ord_id" xorm:"not null default '' comment('订单id') VARCHAR(100)"`
Uid int `json:"uid" xorm:"not null default 0 comment('主用户id') INT(11)"`
Phone string `json:"phone" xorm:"not null default 0 comment('主账号-手机号码') VARCHAR(255)"`
Nickname string `json:"nickname" xorm:"not null default '' comment('主账号-昵称') VARCHAR(255)"`
Amount string `json:"amount" xorm:"not null default '0' comment('充值金额') VARCHAR(255)"`
CostPrice string `json:"cost_price" xorm:"not null default '0' comment('付费价格') VARCHAR(255)"`
Balance string `json:"balance" xorm:"not null default '0' comment('当前余额(充值完当前余额)') VARCHAR(255)"`
PayWay int `json:"pay_way" xorm:"not null default 1 comment('支付方式(1:支付宝 2:微信 3:余额)') TINYINT(1)"`
State int `json:"state" xorm:"not null default 0 comment('状态(0:待付款 1:已付款 2:付款失败)') TINYINT(2)"`
Memo string `json:"memo" xorm:"not null default '' comment('备注') VARCHAR(255)"`
CreateAt time.Time `json:"create_at" xorm:"not null default CURRENT_TIMESTAMP comment('创建时间') DATETIME"`
UpdateAt time.Time `json:"update_at" xorm:"default CURRENT_TIMESTAMP comment('更新时间') DATETIME"`
TradeNo string `json:"trade_no" xorm:"not null default '' comment('支付平台(支付宝/微信)订单号') VARCHAR(100)"`
Type int `json:"type" xorm:"default 0 comment('0收入 1支出') INT(1)"`
OrdType string `json:"ord_type" xorm:"comment('订单类型') VARCHAR(255)"`
SubUid int `json:"sub_uid" xorm:"default 0 INT(11)"`
Fee string `json:"fee" xorm:"VARCHAR(255)"`
Ext string `json:"ext" xorm:"TEXT"`
}

+ 59
- 0
fast_login/api.go View File

@@ -0,0 +1,59 @@
package sms

import (
"code.fnuoos.com/go_rely_warehouse/zyos_go_third_party_api.git/db"
"code.fnuoos.com/go_rely_warehouse/zyos_go_third_party_api.git/db/offical"
"code.fnuoos.com/go_rely_warehouse/zyos_go_third_party_api.git/db/offical/model"
zhios_third_party_utils "code.fnuoos.com/go_rely_warehouse/zyos_go_third_party_api.git/utils"
"fmt"
"time"
"xorm.io/xorm"
)

//数量
func FastLoginNumGetSmsNum(engine *xorm.Engine, uid interface{}) int {
numData := offical.GetFastLoginNum(engine, uid)
num := 0
if numData != nil {
num = numData.Num
}
if num < 0 {
num = 0
}
return num
}

//发送
func FastLoginSend(engine *xorm.Engine, args map[string]interface{}) error {
num := FastLoginNumGetSmsNum(engine, args["uid"])
//存入记录
ext := map[string]interface{}{
"post": args,
}
var record = model.FastLoginRecord{
OrdId: "",
Uid: int(zhios_third_party_utils.AnyToInt64(args["uid"])),
Amount: "1",
CostPrice: "",
Balance: zhios_third_party_utils.IntToStr(num - 1),
PayWay: 0,
State: 1,
Memo: "一键登录",
CreateAt: time.Now(),
UpdateAt: time.Now(),
TradeNo: "",
Type: 1,
OrdType: "buy",
Fee: "",
Ext: zhios_third_party_utils.SerializeStr(ext),
Phone: args["mobile"].(string),
}
engine.InsertOne(&record)
sql := `UPDATE fast_login_num_list set num=num-%d WHERE uid=%s and type='%s';`
sql = fmt.Sprintf(sql, 1, args["uid"], args["sms_type"])
fmt.Println(sql)
nativeString, err := db.QueryNativeString(engine, sql)
fmt.Println(nativeString)
fmt.Println(err)
return nil
}

Loading…
Cancel
Save