fix: user_id

master
howell 4 years ago
parent 52aa560858
commit 0236502d1d

@ -8,6 +8,7 @@ import (
var OrderWorker *Worker var OrderWorker *Worker
var AfsWorker *Worker var AfsWorker *Worker
var UserWorker *Worker
var once sync.Once var once sync.Once
func GetOrderWorker() *Worker { func GetOrderWorker() *Worker {
@ -24,6 +25,13 @@ func GetAfsWorker() *Worker {
return AfsWorker return AfsWorker
} }
func GetUserWorker() *Worker {
once.Do(func() {
UserWorker = NewWorker(1, 3)
})
return UserWorker
}
const ( const (
workerIDBits = uint64(4) workerIDBits = uint64(4)
businessIDBits = uint64(4) businessIDBits = uint64(4)

@ -4,10 +4,10 @@ import (
"fmt" "fmt"
"github.com/gin-gonic/gin" "github.com/gin-gonic/gin"
"github.com/golangkit/formatime" "github.com/golangkit/formatime"
"recook/internal/back"
"recook/internal/cache" "recook/internal/cache"
"recook/internal/dbc" "recook/internal/dbc"
"recook/internal/define" "recook/internal/define"
"recook/internal/libs/snow"
"recook/internal/model/user" "recook/internal/model/user"
"recook/internal/service/baseCode" "recook/internal/service/baseCode"
"recook/tools" "recook/tools"
@ -26,15 +26,16 @@ func (r *registerUser) UserAdd(c *gin.Context, login *user.Login, info *user.Inf
DB := dbc.DB DB := dbc.DB
tx := DB.Begin() tx := DB.Begin()
{ {
sql := `select max(id)+floor(1+rand()*5) from recook_user_info` lastId, _ := snow.GetUserWorker().NextID()
var lastId uint //sql := `select max(id)+floor(1+rand()*5) from recook_user_info`
if err := tx.Raw(sql).Count(&lastId).Error; err != nil { //var lastId uint
back.Err(c, err.Error()) //if err := tx.Raw(sql).Count(&lastId).Error; err != nil {
tx.Rollback() // back.Err(c, err.Error())
return err // tx.Rollback()
} // return err
//}
*info = user.Information{ *info = user.Information{
ID: lastId, ID: uint(lastId),
AncestorID: 1, AncestorID: 1,
Nickname: "瑞库客" + mobile[7:], Nickname: "瑞库客" + mobile[7:],
Mobile: mobile, Mobile: mobile,

@ -183,37 +183,37 @@ func SyncPageData(page, size uint, categories []RecookJCookCategory) error {
for _, v := range ids { for _, v := range ids {
result[v] = true result[v] = true
} }
for _, v := range bes { //for _, v := range bes {
for _, k := range v.BrotherSkuIDs { // for _, k := range v.BrotherSkuIDs {
result[k] = true // result[k] = true
} // }
} //}
after := make([]uint, 0) //after := make([]uint, 0)
after2 := make([][]uint, 0) //after2 := make([][]uint, 0)
for k := range result { //for k := range result {
after = append(after, k) // after = append(after, k)
} //}
total := len(after) //total := len(after)
start := 0 //start := 0
step := 20 //step := 20
for { //for {
if start >= total { // if start >= total {
break // break
} // }
if total-start < step { // if total-start < step {
step = total - start // step = total - start
} // }
after2 = append(after2, after[start:start+step]) // after2 = append(after2, after[start:start+step])
start = start + step // start = start + step
} //}
for _, v := range after2 { for _, v := range bes {
if len(v) == 0 { if len(v.BrotherSkuIDs) == 0 {
continue continue
} }
var res []jcook.SkuDetailResp var res []jcook.SkuDetailResp
rq2 := jcook.SkuDetailReq{ rq2 := jcook.SkuDetailReq{
SkuIDSet: v, SkuIDSet: v.BrotherSkuIDs,
} }
if err := c.Exec(rq2, &res); err != nil { if err := c.Exec(rq2, &res); err != nil {
return err return err

Loading…
Cancel
Save