@@ -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 }
0 commit comments