Skip to content

Commit ac02a56

Browse files
authored
修复niu包部分问题 (#68)
* Add files via upload * 修改jj函数 * 修复部分问题 * 修改一个小问题
1 parent df64721 commit ac02a56

File tree

2 files changed

+28
-15
lines changed

2 files changed

+28
-15
lines changed

niu/main.go

Lines changed: 22 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -106,14 +106,20 @@ func GetRankingInfo(gid int64, t bool) (BaseInfos, error) {
106106
list users
107107
err error
108108
)
109+
109110
niuOfGroup, err := db.getAllNiuNiuOfGroup(gid)
110111
if err != nil {
112+
return nil, err
113+
}
114+
115+
list = niuOfGroup.filter(t)
116+
list.sort(t)
117+
if len(list) == 0 {
111118
if t {
112119
return nil, ErrNoBoys
113120
}
114121
return nil, ErrNoGirls
115122
}
116-
list = niuOfGroup.filter(t)
117123
f := make(BaseInfos, len(list))
118124
for i, info := range list {
119125
f[i] = BaseInfo{
@@ -140,10 +146,10 @@ func GetGroupUserRank(gid, uid int64) (int, error) {
140146
}
141147

142148
// View 查看牛牛
143-
func View(gid, uid int64, name string) (*strings.Builder, error) {
149+
func View(gid, uid int64, name string) (string, error) {
144150
i, err := db.getWordNiuNiu(gid, uid)
145151
if err != nil {
146-
return nil, ErrNoNiuNiu
152+
return "", ErrNoNiuNiu
147153
}
148154
niuniu := i.Length
149155
var result strings.Builder
@@ -155,12 +161,12 @@ func View(gid, uid int64, name string) (*strings.Builder, error) {
155161
}
156162
niuniuList, err := db.getAllNiuNiuOfGroup(gid)
157163
if err != nil {
158-
return nil, err
164+
return "", err
159165
}
160166
result.WriteString(fmt.Sprintf("\n📛%s<%s>的牛牛信息\n⭕性别:%s\n⭕%s度:%.2fcm\n⭕排行:%d\n⭕%s ",
161167
name, strconv.FormatInt(uid, 10),
162168
sex, sexLong, niuniu, niuniuList.ranking(niuniu, uid), generateRandomString(niuniu)))
163-
return &result, nil
169+
return result.String(), nil
164170
}
165171

166172
// HitGlue 打胶
@@ -310,15 +316,25 @@ func Sell(gid, uid int64) (string, error) {
310316
if !t {
311317
return "", errors.New(message)
312318
}
319+
320+
if err := db.deleteWordNiuNiu(gid, uid); err != nil {
321+
return "", err
322+
}
323+
313324
err = wallet.InsertWalletOf(uid, money)
314325
if err != nil {
315326
return message, err
316327
}
328+
329+
infos, _ := db.getAllNiuNiuAuction(gid)
330+
317331
u := AuctionInfo{
332+
ID: len(infos),
318333
UserID: niu.UID,
319334
Length: niu.Length,
320335
Money: money * 2,
321336
}
337+
322338
err = db.setNiuNiuAuction(gid, &u)
323339
return message, err
324340
}
@@ -331,12 +347,11 @@ func ShowAuction(gid int64) ([]AuctionInfo, error) {
331347
}
332348

333349
// Auction 购买牛牛
334-
func Auction(gid, uid int64, i int) (string, error) {
350+
func Auction(gid, uid int64, index int) (string, error) {
335351
infos, err := db.getAllNiuNiuAuction(gid)
336352
if err != nil {
337353
return "", ErrNoNiuNiuINAuction
338354
}
339-
index := i - 1
340355
if err := wallet.InsertWalletOf(uid, -infos[index].Money); err != nil {
341356
return "", ErrNoMoney
342357
}

niu/models.go

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -43,10 +43,10 @@ type userInfo struct {
4343

4444
// AuctionInfo 拍卖信息
4545
type AuctionInfo struct {
46-
ID uint
47-
UserID int64
48-
Length float64
49-
Money int
46+
ID int `db:"id"`
47+
UserID int64 `db:"user_id"`
48+
Length float64 `db:"length"`
49+
Money int `db:"money"`
5050
}
5151

5252
// BaseInfo ...
@@ -388,16 +388,14 @@ func (db *model) getAllNiuNiuOfGroup(gid int64) (users, error) {
388388
func (db *model) setNiuNiuAuction(gid int64, u *AuctionInfo) error {
389389
db.Lock()
390390
defer db.Unlock()
391-
num, err := db.sql.Count(fmt.Sprintf("auction_%d", gid))
391+
err := db.sql.Insert(fmt.Sprintf("auction_%d", gid), u)
392392
if err != nil {
393393
err = db.sql.Create(fmt.Sprintf("auction_%d", gid), &AuctionInfo{})
394394
if err != nil {
395395
return err
396396
}
397-
num = -1
397+
err = db.sql.Insert(fmt.Sprintf("auction_%d", gid), u)
398398
}
399-
u.ID = uint(num + 1)
400-
err = db.sql.Insert(fmt.Sprintf("auction_%d", gid), u)
401399
return err
402400
}
403401

0 commit comments

Comments
 (0)