Esempio n. 1
0
        public static DailyVipGoodsRecord GetToday(long QQNum)
        {
            var record = MongoService <DailyVipGoodsRecord> .GetOnly(p => p.QQNum == QQNum);

            if (record == null)
            {
                record = new DailyVipGoodsRecord()
                {
                    QQNum = QQNum
                };
                MongoService <DailyVipGoodsRecord> .Insert(record);
            }

            var dateStr = DateTime.Now.ToString("yyyy-MM-dd");

            if (record.Date == dateStr)
            {
                return(record);
            }

            record.Date      = dateStr;
            record.GoodsName = AutofacSvc.Resolve <DailyVipShopSvc>().RandGoods(7);
            record.Update();

            return(record);
        }
Esempio n. 2
0
        public bool VipShop(MsgInformationEx MsgDTO, object[] param)
        {
            var osPerson = OSPerson.GetPerson(MsgDTO.FromQQ);

            if (osPerson.Diamonds <= 0)
            {
                MsgSender.PushMsg(MsgDTO, "很抱歉,你当前的钻石余额不足,无法打开vip商店!");
                return(false);
            }

            var goodsName = DailyVipGoodsRecord.GetToday(MsgDTO.FromQQ).GoodsName;
            var goods     = goodsName.Select(g => DailyVipShopSvc[g]).ToList();
            var goodsMsg  = string.Join("\r\n", goods.Select(g => $"{g.Name}({g.DiamondsNeed.CurencyFormat("Diamond")}):{g.Description}"));
            var msg       = $"今天提供的vip服务有:\r\n{goodsMsg}\r\n你当前余额为:{osPerson.Diamonds.CurencyFormat("Diamond")}";

            MsgSender.PushMsg(MsgDTO, msg);
            return(true);
        }
Esempio n. 3
0
        public bool RefreshVipShop(MsgInformationEx MsgDTO, object[] param)
        {
            var osPerson = OSPerson.GetPerson(MsgDTO.FromQQ);

            if (osPerson.Diamonds < 10)
            {
                MsgSender.PushMsg(MsgDTO, $"很抱歉,你当前的钻石余额不足,无法刷新vip商店!({osPerson.Diamonds}/10)");
                return(false);
            }

            if (!WaiterSvc.WaitForConfirm(MsgDTO, $"此操作将花费{10.CurencyFormat("Diamond")},是否继续?"))
            {
                MsgSender.PushMsg(MsgDTO, "操作取消!");
                return(false);
            }

            osPerson.Diamonds -= 10;
            osPerson.Update();

            DailyVipGoodsRecord.Refresh(MsgDTO.FromQQ);

            MsgSender.PushMsg(MsgDTO, "刷新成功!");
            return(true);
        }