diff --git a/modules/mail/api_getAttachment.go b/modules/mail/api_getAttachment.go index ed0e89d8a..e40729d9d 100644 --- a/modules/mail/api_getAttachment.go +++ b/modules/mail/api_getAttachment.go @@ -43,8 +43,7 @@ func (this *apiComp) GetUserMailAttachment(session comm.IUserSession, req *pb.Ma } res = append(res, d) } - code = this.module.api.module.DispenseRes(session, res, true) // 领取附件 - if code == pb.ErrorCode_Success { + if code = this.module.DispenseRes(session, res, true); code == pb.ErrorCode_Success { // 修改状态 this.module.modelMail.MailUpdateMailAttachmentState(req.ObjID) } @@ -91,8 +90,7 @@ func (this *apiComp) GetAllMailAttachment(session comm.IUserSession, req *pb.Mai fj = append(fj, v1) res = append(res, d) } - code = this.module.api.module.DispenseRes(session, res, true) // 领取附件 - if code == pb.ErrorCode_Success { + if code = this.module.DispenseRes(session, res, true); code == pb.ErrorCode_Success { this.module.modelMail.MailUpdateMailAttachmentState(v.ObjId) v.Reward = true v.Check = true diff --git a/modules/user/api_sign.go b/modules/user/api_sign.go index 77f884f2d..d047a0577 100644 --- a/modules/user/api_sign.go +++ b/modules/user/api_sign.go @@ -3,8 +3,6 @@ package user import ( "go_dreamfactory/comm" "go_dreamfactory/pb" - "go_dreamfactory/sys/configure" - "go_dreamfactory/utils" "google.golang.org/protobuf/proto" ) @@ -18,58 +16,10 @@ func (this *apiComp) SignCheck(session comm.IUserSession, req *pb.UserSignReq) ( //登录 func (this *apiComp) Sign(session comm.IUserSession, req *pb.UserSignReq) (code pb.ErrorCode, data proto.Message) { - var ( - update map[string]interface{} - lastSignTime int64 // 上次签到时间 - ) if code = this.module.ModuleSys.IsAccess(comm.Sign, session.GetUserId()); code != pb.ErrorCode_Success { return } - update = make(map[string]interface{}, 0) if sign, err := this.module.modelSign.GetUserSign(session.GetUserId()); err == nil { - // 获取当前是第几天 - lastSignTime = sign.SignTime - sign.SignTime = configure.Now().Unix() - - start, _ := utils.GetMonthStartEnd() - iDay := (configure.Now().Unix() - start) / (24 * 3600) - if sign.SignTime < start { // 重置 - sign.SignCount = 1 - if newGroup := this.module.configure.GetSignResetConf(sign.Group + 1); newGroup != -1 { // 获取当前的组id - sign.Group = newGroup - sign.SignCount = 1 - update["group"] = newGroup - } - sign.Puzzle = make([]int32, 31) - } else { - - if sign.Puzzle[iDay] != 0 { - code = pb.ErrorCode_UserSign - return - } - - if utils.IsYestoday(lastSignTime) { - sign.SignCount += 1 - } else { - sign.SignCount = 1 - } - } - sign.Day = int32(iDay) - sign.Puzzle[iDay] = 1 - update["signTime"] = sign.SignTime - update["signCount"] = sign.SignCount - update["day"] = sign.Day - update["puzzle"] = sign.Puzzle - this.module.modelSign.Change(session.GetUserId(), update) - _data := this.module.configure.GetSignConf(sign.Day, sign.Group) - if _data != nil { // 发奖 - - this.module.DispenseRes(session, _data.Loopgift, true) // 签到奖励 - // 额外奖励 - if conf := this.module.configure.GetSignExtarConf(sign.SignCount, sign.Group); conf != nil { - this.module.DispenseRes(session, conf.Extra, true) // 签到额外奖励 - } - } session.SendMsg(string(this.module.GetType()), "sign", &pb.UserSignResp{ Data: sign, }) diff --git a/modules/user/model_sign.go b/modules/user/model_sign.go index 92b0d0543..dbb40ea45 100644 --- a/modules/user/model_sign.go +++ b/modules/user/model_sign.go @@ -74,3 +74,58 @@ func (this *ModelSign) updateSignData(uid string, sign *pb.DBSign) (err error) { } return } + +func (this *ModelSign) UserSign(session comm.IUserSession) { + var ( + update map[string]interface{} + lastSignTime int64 // 上次签到时间 + ) + if code := this.module.ModuleSys.IsAccess(comm.Sign, session.GetUserId()); code != pb.ErrorCode_Success { + return + } + if sign, err := this.module.modelSign.GetUserSign(session.GetUserId()); err == nil { + // 获取当前是第几天 + lastSignTime = sign.SignTime + sign.SignTime = configure.Now().Unix() + + start, _ := utils.GetMonthStartEnd() + iDay := (configure.Now().Unix() - start) / (24 * 3600) + if sign.SignTime < start { // 重置 + sign.SignCount = 1 + if newGroup := this.module.configure.GetSignResetConf(sign.Group + 1); newGroup != -1 { // 获取当前的组id + sign.Group = newGroup + sign.SignCount = 1 + update["group"] = newGroup + } + sign.Puzzle = make([]int32, 31) + } else { + + if sign.Puzzle[iDay] != 0 { + + return + } + + if utils.IsYestoday(lastSignTime) { + sign.SignCount += 1 + } else { + sign.SignCount = 1 + } + } + sign.Day = int32(iDay) + sign.Puzzle[iDay] = 1 + update["signTime"] = sign.SignTime + update["signCount"] = sign.SignCount + update["day"] = sign.Day + update["puzzle"] = sign.Puzzle + this.module.modelSign.Change(session.GetUserId(), update) + _data := this.module.configure.GetSignConf(sign.Day, sign.Group) + if _data != nil { // 发奖 + + this.module.DispenseRes(session, _data.Loopgift, true) // 签到奖励 + // 额外奖励 + if conf := this.module.configure.GetSignExtarConf(sign.SignCount, sign.Group); conf != nil { + this.module.DispenseRes(session, conf.Extra, true) // 签到额外奖励 + } + } + } +}