Exemplo n.º 1
0
        public IActionResult func_get_shareinfo(string guid, int number, int userid, string gate)
        {
            if (string.IsNullOrEmpty(guid) || number < 10000 || userid < 10000 || string.IsNullOrEmpty(gate))
            {
                Hashtable htb = new Hashtable();
                htb.Add("gate", gate);
                htb.Add("number", number);
                htb.Add("guid", guid);
                htb.Add("userid", userid);
                return(this.FuncResult(new APIReturn(10000, "参数错误", htb)));
            }
            string deviceinfo = guid;

            ShareGuidInfo shareguidinfo = new ShareGuidInfo(deviceinfo);

            guid = shareguidinfo.getGuid();

            ShareInfo mode = Share.hasShareInfo(guid, gate);

            if (mode == null)
            {
                return(this.FuncResult(new APIReturn(1070030, "没有分享点击")));//没有查到分享点击
            }
            else
            {
                //1、更新分享使用者的userid,number,还有状态
                //2、将查询到的分享者userid,number返回给游戏
                mode.Used_userid = userid;
                mode.Used_number = number;
                mode.State       = 1;
                Share.Update(mode);
                Hashtable h = new Hashtable();
                h["number"] = mode.Number;
                h["userid"] = mode.Userid;
                h["server"] = mode.Server;
                return(this.FuncResult(new APIReturn(0, "", h)));
            }
        }
Exemplo n.º 2
0
        public IActionResult func_record_shareinfo(string guid, string shareid)
        {
            if (string.IsNullOrEmpty(guid) || shareid.IsNullOrEmpty())
            {
                Hashtable htb = new Hashtable();
                htb.Add("guid", guid);
                htb.Add("shareid", shareid);
                return(this.FuncResult(new APIReturn(10000, "参数错误", htb)));
            }
            string deviceinfo = guid;

            ShareGuidInfo shareguidinfo = new ShareGuidInfo(deviceinfo);

            guid = shareguidinfo.getGuid();

            ShareInfo mode = Share.hasShareInfoWhithSahreId(shareid);

            if (mode == null)
            {
                return(this.FuncResult(new APIReturn(1070033, "分享id不存在 - " + shareid)));
            }

            ShareInfo state = Share.hasShareInfo(guid, mode.Gate);

            if (state != null && state.State == 1)//已经有绑定等级使用的记录
            {
                return(this.FuncResult(new APIReturn(1070032, "已经有绑定等级使用的记录 ")));
            }

            ShareInfo s = Share.hasShareInfo(guid, mode.Number ?? -1, mode.Userid ?? -1, mode.Gate, mode.Server ?? -1);

            if (s == null)//表示没有点击记录,记录完数据后请求wnt推送
            {
                if (mode.Guid == null)
                {
                    mode.Guid    = guid;
                    mode.Time    = DateTime.Now;
                    mode.Extends = deviceinfo;
                    mode.Ip      = shareguidinfo.getIP();
                    Share.Update(mode);
                }
                else
                {
                    ShareInfo share = new ShareInfo();
                    share.Guid    = guid;
                    share.Userid  = mode.Userid;
                    share.Number  = mode.Userid;
                    share.Gate    = mode.Gate;
                    share.Time    = DateTime.Now;
                    share.Server  = mode.Server;
                    share.Shareid = shareid;
                    ShareInfo shareinfo = Share.Insert(share);
                    if (shareinfo == null)
                    {
                        return(this.FuncResult(new APIReturn(1070031, "分享记录失败")));//分享记录失败
                    }
                }

                WNTClass     wnt = new WNTClass("notifyacct", mode.Server + "", "m2jtsharereward", mode.Number ?? -1, mode.Userid ?? -1, "1", "true");
                ReturnMsgWnt ret = wnt.getResult();
                return(this.FuncResult(new APIReturn(0, "分享记录成功")));//分享记录成功
            }
            else//表示有点击记录,更新该记录的点击时间
            {
                s.Time = DateTime.Now;
                Share.Update(s);
                return(this.FuncResult(new APIReturn(1070032, "已经有绑定等级使用的记录 ")));
            }
        }