示例#1
0
    void Update()
    {
        //显示提示
        if (Time.time > m_PrevTipTime + 0.5f)
        {
            m_PrevTipTime = Time.time;

            if (m_TipQueue.Count > 0)
            {
                //从队列中取数据
                TipEntity entity = m_TipQueue.Dequeue();

                Transform trans = m_TipPool.Spawn(m_TipItem);
                trans.GetComponent <UITipItemView>().SetUI(entity.Type, entity.Text);
                trans.SetParent(transform);
                trans.localPosition = Vector3.zero;
                trans.localScale    = Vector3.one;

                trans.DOLocalMoveY(150, 0.5f).OnComplete(() =>
                {
                    m_TipPool.Despawn(trans);
                });
            }
        }
    }
示例#2
0
    public void SetUI(int type, string value)
    {
        TipEntity entity = new TipEntity();

        entity.Type  = type;
        entity.Value = value;
        m_TipQueue.Enqueue(entity);
    }
示例#3
0
 private Transform inventory;      //当前物体tranform层
 /// <summary>
 /// 初始化
 /// </summary>
 public void Init()
 {
     inventory    = new GameObject("Inventory").transform;
     bagEntity    = EntityModule.Instance.SpawnEntity <BagEntity>(IdContract.BAGENTITY);
     PickUpEntity = EntityModule.Instance.SpawnEntity <PickUpEntity>(IdContract.PICKUPENTITY);//创建一个位置用于储存当前鼠标选取的物品
     tipEntity    = EntityModule.Instance.SpawnEntity <TipEntity>(IdContract.TIPENTITY);
     storeEntity  = EntityModule.Instance.SpawnEntity <StoreEntity>(IdContract.STOREENTITY);
     bagEntity.transform.SetParent(inventory);//设置父物体
     PickUpEntity.transform.SetParent(inventory);
     tipEntity.transform.SetParent(inventory);
     storeEntity.transform.SetParent(inventory);
 }
示例#4
0
 public void SetUI(TipEntity tipEntity)
 {
     m_valueText.text = tipEntity.Value.ToString();
     if (tipEntity.Type == 0)
     {
         m_TypeImage.sprite = m_TypeSpriteArr[0];
     }
     else if (tipEntity.Type == 1)
     {
         m_TypeImage.sprite = m_TypeSpriteArr[1];
     }
 }
示例#5
0
 private void Update()
 {
     if (Time.time > m_PreTipTime + 0.5f)
     {
         if (m_TipQueue.Count > 0)
         {
             TipEntity     entity = m_TipQueue.Dequeue();
             Transform     t      = m_TipPool.Spawn(prefab.transform);
             UITipViewItem item   = t.GetComponent <UITipViewItem>();
             if (item != null)
             {
                 item.SetUI(entity);
             }
             t.SetParent(transform);
             t.localPosition = Vector3.zero;
             t.localScale    = Vector3.one;
             t.localRotation = Quaternion.identity;
             t.DOLocalMoveY(150, 0.5f).SetEase(Ease.Linear).OnComplete(() => { m_TipPool.Despawn(t); });
         }
         m_PreTipTime = Time.time;
     }
 }
示例#6
0
        public static void PagingCollect(List <GiftEntity> gifts, int pageSize, DateTime startTime, DateTime endTime, out int totalCount, out DateTime maxDateTime)
        {
            try
            {
                string api_url = System.Configuration.ConfigurationManager.AppSettings["tips_data_api"];
                //时间段内的n条数据, 踩过来的数据 按时间升序
                string result = Utils.HttpGet(api_url + string.Format("?pageIndex={0}&pageSize={1}&startTime={2}&endTime={3}",
                                                                      1, pageSize, startTime, endTime), "Bearer QW5jaG9yX01vtaunclo66M2ak1odXFSSW54YUQ=");
                //将json转换为JObject
                LogHelper.WriteLogTips("采集礼物开始时间:" + startTime + ",结束时间:" + endTime + ",采集结果:" + result);
                JObject jObj = JObject.Parse(result);
                var     s    = jObj["et"]["data"].Children().ToList();
                if (Convert.ToInt32(jObj["code"]) == 20000 && jObj["et"]["data"].Children().Count() > 0)
                {
                    var q = (from p in jObj["et"]["data"].Children()
                             select new
                    {
                        orderId = p["orderId"].ToString(),
                        account = p["account"].ToString(),
                        company = p["company"].ToString(),
                        //liveId = p["liveId"].ToString(),//推流时间戳
                        aid = int.Parse(p["anchorId"].ToString()),      //主播ID
                        amount = decimal.Parse(p["amount"].ToString()), //总金额
                        num = int.Parse(p["number"].ToString()),        //礼物数量
                        Type = int.Parse(p["actionType"].ToString()),   //1是打赏,2是房间,3计时
                        code = p["code"].ToString(),                    //礼物编码
                        orderCreateTime = Utils.StrToDateTime(p["creatDate"].ToString())
                    }).ToList();

                    //最大时间
                    maxDateTime = q.Max(p => p.orderCreateTime);
                    string           giftName    = string.Empty;
                    decimal?         price       = 0;
                    List <TipEntity> addList     = new List <TipEntity>();
                    List <string>    ordernoList = new List <string>();//订单号集合
                    foreach (var item in q)
                    {
                        var g = from p in gifts
                                where p.code == item.code
                                select new
                        {
                            p.codeName,
                            p.price
                        };

                        if (g != null && g.Count() > 0)
                        {
                            giftName = g.FirstOrDefault().codeName;
                            price    = g.FirstOrDefault().price;
                        }
                        else
                        {
                            giftName = item.code;
                            price    = item.amount / item.num;
                        }
                        TipEntity model = new TipEntity();
                        model.AnchorID     = item.aid;
                        model.isconfirm    = 1;
                        model.issettle     = 0;
                        model.status       = 1;
                        model.username     = item.account;
                        model.companycode  = item.company;
                        model.companystyle = item.company;
                        model.description  = giftName;
                        model.gift         = item.code;
                        model.giftname     = giftName;
                        model.istest       = 0;
                        model.orderno      = item.orderId;
                        model.price        = price;
                        model.quantity     = item.num;
                        model.sendtime     = item.orderCreateTime;
                        model.confirmtime  = item.orderCreateTime;
                        model.totalamount  = item.amount;// * (model.ratio / (decimal)100.0); 暂时没有 比率
                        model.Type         = item.Type;
                        //model.liveId = item.liveId;
                        //添加到集合
                        addList.Add(model);
                        ordernoList.Add(model.orderno);
                    }
                    //写入前,要判定是否存在
                    using (var db = sugarClient.GetSqlSugarDB(sugarClient.DbConnType.QPVideoAnchorDB))
                    {
                        //找出数据库中已经存在的订单号
                        var checkOrdernoList = db.Queryable <TipEntity>().In(it => it.orderno, ordernoList).Select(it => it.orderno).ToList();
                        if (checkOrdernoList != null && checkOrdernoList.Count > 0)
                        {
                            //新增集合中移除已经存在的订单号
                            addList.RemoveAll(it => checkOrdernoList.Contains(it.orderno));
                        }
                        int count = db.Insertable(addList).ExecuteCommand();
                    }
                    totalCount = addList.Count;
                    return;
                }
                totalCount  = 0;
                maxDateTime = DateTime.Now;
                return;
            }
            catch (Exception ex)
            {
                Console.WriteLine("采集礼物异常:" + ex.Message + "------" + ex.StackTrace);
                LogHelper.WriteLogTips("采集礼物异常:" + ex.Message + "------" + ex.StackTrace);
                totalCount  = 0;
                maxDateTime = DateTime.Now;
                return;
            }
        }