public void Post()
        {
            string Data = DataObj.GetData();

            if (Data.IsNullOrEmpty())
            {
                DataObj.OutError("1000");
                return;
            }
            JObject json = new JObject();

            try
            {
                json = (JObject)JsonConvert.DeserializeObject(Data);
            }
            catch (Exception Ex)
            {
                Log.Write("[ZhouBianDaily]:", "【Data】" + Data, Ex);
            }
            if (json == null)
            {
                DataObj.OutError("1000");
                return;
            }
            //JObject pp = (JObject)p;
            Users Users = new Users();

            Users = JsonToObject.ConvertJsonToModel(Users, json);
            Users baseUsers = Entity.Users.FirstOrDefault(n => n.Token == Users.Token);

            if (baseUsers == null)//用户令牌不存在
            {
                DataObj.OutError("2004");
                return;
            }
            if (baseUsers.State != 1)//用户被锁定
            {
                DataObj.OutError("2003");
                return;
            }
            if (baseUsers.CardStae != 2)//未实名认证
            {
                DataObj.OutError("2006");
                return;
            }
            YYDevice YYDevice = Entity.YYDevice.FirstOrDefault(n => n.UId == baseUsers.Id);

            if (YYDevice == null)
            {
                DataObj.OutError("1000");
                return;
            }
            DateTime        Last        = DateTime.Now.AddDays(-31);
            IList <YYDaily> YYDailyList = Entity.YYDaily.Where(n => n.DevId == YYDevice.DevId && n.OutDate > Last).OrderByDescending(n => n.OutDate).ToList();

            DataObj.Data = YYDailyList.EntityToJson();
            DataObj.Code = "0000";
            DataObj.OutString();
        }
        public void Post()
        {
            string Data = DataObj.GetData();

            if (Data.IsNullOrEmpty())
            {
                DataObj.OutError("1000");
                return;
            }
            JObject json = new JObject();

            try
            {
                json = (JObject)JsonConvert.DeserializeObject(Data);
            }
            catch (Exception Ex)
            {
                Log.Write("[ZhouBianInfo]:", "【Data】" + Data, Ex);
            }
            if (json == null)
            {
                DataObj.OutError("1000");
                return;
            }
            //JObject pp = (JObject)p;
            Users Users = new Users();

            Users = JsonToObject.ConvertJsonToModel(Users, json);
            Users baseUsers = Entity.Users.FirstOrDefault(n => n.Token == Users.Token);

            if (baseUsers == null)//用户令牌不存在
            {
                DataObj.OutError("2004");
                return;
            }
            if (baseUsers.State != 1)//用户被锁定
            {
                DataObj.OutError("2003");
                return;
            }
            if (baseUsers.CardStae != 2)//未实名认证
            {
                DataObj.OutError("2006");
                return;
            }
            if (baseUsers.Pic.IsNullOrEmpty())//未上传头象
            {
                DataObj.OutError("2041");
                return;
            }
            if (baseUsers.NeekName.IsNullOrEmpty())
            {
                baseUsers.NeekName = baseUsers.TrueName;
                Entity.SaveChanges();
            }

            string wxtoken = GetToken();

            YYDevice YYDevice = Entity.YYDevice.FirstOrDefault(n => n.UId == baseUsers.Id && n.State == 2);//已绑定页面

            if (YYDevice == null)
            {
                //获取设备
                YYDevice = Entity.YYDevice.FirstOrDefault(n => n.UId == 0 && n.State == 1);//未绑定
                if (YYDevice == null)
                {
                    //没有可用的设备
                    YYDevice = GetYYDevice(wxtoken);
                }
                if (YYDevice != null)
                {
                    YYDevice.UId   = baseUsers.Id;
                    YYDevice.State = 2;
                    Entity.SaveChanges();
                }
            }
            if (YYDevice.PageId.IsNullOrEmpty())
            {
                //未绑定页面
                YYPage YYPage = Entity.YYPage.FirstOrDefault(n => n.UId == baseUsers.Id && n.State == 1);
                if (YYPage == null)
                {
                    //生成页面
                    string title       = GetNeekName(baseUsers.NeekName);//从商户名称中获取6位
                    string description = "点击去付款";
                    string URL         = string.Format(SysPath + "/mobile/shop/index-{0}.html", baseUsers.Id, baseUsers.UserName);
                    //string Icon = Utils.ImageUrl("UsersPic", baseUsers.Pic);
                    string Icon                = Utils.ImageUrl("UsersPic", baseUsers.Pic, 120, 120, "Cut");
                    string IconPath            = HttpContext.Current.Server.MapPath(Icon);
                    UploadImageResultJson Img  = WXAPI.UploadImage(wxtoken, IconPath);
                    string            wxpicurl = Img.data.pic_url;
                    AddPageResultJson Page     = WXAPI.AddPage(wxtoken, title, description, URL, wxpicurl);
                    if (Page.errcode == ReturnCode.请求成功)
                    {
                        YYPage          = new YYPage();
                        YYPage.Title    = title;
                        YYPage.UId      = baseUsers.Id;
                        YYPage.SubTitle = description;
                        YYPage.Url      = URL;
                        YYPage.Icon     = Icon;
                        YYPage.WXIcon   = wxpicurl;
                        YYPage.AddTime  = DateTime.Now;
                        YYPage.State    = 1;
                        YYPage.PageId   = Page.data.page_id.ToString();
                        Entity.YYPage.AddObject(YYPage);
                        Entity.SaveChanges();
                    }
                }
                //绑定页面
                long         DevId  = long.Parse(YYDevice.DevId);
                long         PageId = long.Parse(YYPage.PageId);
                WxJsonResult WJR    = WXAPI.BindPage(wxtoken, DevId, PageId);
                if (WJR.errcode == ReturnCode.请求成功)
                {
                    YYDevice.PageId       = YYPage.PageId;
                    baseUsers.YYOpenState = 1;//标识用户已经开通
                    Entity.SaveChanges();
                }
            }

            YYDaily YYDaily = Entity.YYDaily.Where(n => n.UId == baseUsers.Id && n.DevId == YYDevice.DevId && n.OutDate < DateTime.Now).OrderByDescending(n => n.OutDate).FirstOrDefault();

            if (YYDaily == null)
            {
                YYDevice.ClickPV = 0;
                YYDevice.ClickUV = 0;
                YYDevice.ShakePV = 0;
                YYDevice.ShakeUV = 0;
            }
            else
            {
                YYDevice.ClickPV = YYDaily.ClickPV;
                YYDevice.ClickUV = YYDaily.ClickUV;
                YYDevice.ShakePV = YYDaily.ShakePV;
                YYDevice.ShakeUV = YYDaily.ShakeUV;
            }
            DataObj.Data = YYDevice.OutJson();
            DataObj.Code = "0000";
            DataObj.OutString();
        }
        private YYDevice GetYYDevice(string token, int Times = 0)
        {
            //查询是否有申请未返回状态
            YYApply YYApply = Entity.YYApply.FirstOrDefault(n => n.State == 1);

            if (YYApply == null)
            {
                string Reason = "新加商店设备";
                DeviceApplyResultJson Device = WXAPI.DeviceApply(token, Reason);
                if (Device.errcode == ReturnCode.请求成功)
                {
                    YYApply         = new YYApply();
                    YYApply.AddTime = DateTime.Now;
                    YYApply.Reason  = Reason;
                    YYApply.ApplyId = Device.data.apply_id.ToString();
                    YYApply.Num     = 50;
                    YYApply.State   = 1;
                    if (Device.data.audit_status == 0)
                    {
                        YYApply.State = 0;
                    }
                    Entity.YYApply.AddObject(YYApply);
                    Entity.SaveChanges();
                    if (Device.data.audit_status == 2)
                    {
                        YYApply.State = 2;
                    }
                }
            }
            if (YYApply.State == 1)
            {
                YYApply = GetYYApply(token, YYApply);
            }
            if (YYApply.State == 0)
            {
                if (Times < 5)
                {
                    Thread.Sleep(5000);
                    return(GetYYDevice(token, Times++));
                }
            }
            if (YYApply.State == 2)
            {
                int ApplyId = Int32.Parse(YYApply.ApplyId);
                DeviceSearchResultJson Devices = WXAPI.SearchDeviceByApplyId(token, ApplyId);
                if (Devices.errcode == ReturnCode.请求成功)
                {
                    List <DeviceSearch_Data_Devices> DeviceList = Devices.data.devices;
                    foreach (var p in DeviceList)
                    {
                        var minor    = p.minor.ToString();
                        var savedata = this.Entity.YYDevice.FirstOrDefault(o => o.Minor == minor);
                        if (savedata == null)
                        {
                            //设备入库
                            YYDevice YY = new YYDevice();
                            YY.DevId    = p.device_id.ToString();
                            YY.UUID     = p.uuid;
                            YY.Major    = p.major.ToString();
                            YY.Minor    = p.minor.ToString();
                            YY.UId      = 0;
                            YY.PageId   = string.Empty;
                            YY.AddTime  = DateTime.Now;
                            YY.ActState = 0;
                            YY.State    = 1;
                            Entity.YYDevice.AddObject(YY);
                        }
                    }
                    Entity.SaveChanges();
                }
            }
            YYDevice YYDevice = Entity.YYDevice.FirstOrDefault(n => n.UId == 0 && n.State == 1);

            return(YYDevice);
        }
        public void Post()
        {
            string Data = DataObj.GetData();

            if (Data.IsNullOrEmpty())
            {
                DataObj.OutError("1000");
                return;
            }
            JObject json = new JObject();

            try
            {
                json = (JObject)JsonConvert.DeserializeObject(Data);
            }
            catch (Exception Ex)
            {
                Log.Write("[ZhouBianUpdate]:", "【Data】" + Data, Ex);
            }
            if (json == null)
            {
                DataObj.OutError("1000");
                return;
            }
            //JObject pp = (JObject)p;
            Users Users = new Users();

            Users = JsonToObject.ConvertJsonToModel(Users, json);
            Users baseUsers = Entity.Users.FirstOrDefault(n => n.Token == Users.Token);

            if (baseUsers == null)//用户令牌不存在
            {
                DataObj.OutError("2004");
                return;
            }
            if (baseUsers.State != 1)//用户被锁定
            {
                DataObj.OutError("2003");
                return;
            }
            if (baseUsers.CardStae != 2)//未实名认证
            {
                DataObj.OutError("2006");
                return;
            }
            if (baseUsers.Pic.IsNullOrEmpty())//未上传头象
            {
                DataObj.OutError("2041");
                return;
            }

            string wxtoken = GetToken();

            YYDevice YYDevice = Entity.YYDevice.FirstOrDefault(n => n.UId == baseUsers.Id && n.State == 2);//已绑定页面
            YYPage   YYPage   = Entity.YYPage.FirstOrDefault(n => n.UId == baseUsers.Id && n.State == 1);

            string title       = GetNeekName(baseUsers.NeekName);//从商户名称中获取6位
            string description = "点击去付款";
            string URL         = string.Format(SysPath + "/mobile/shop/index-{0}.html", baseUsers.Id, baseUsers.UserName);
            string Icon        = Utils.ImageUrl("UsersPic", baseUsers.Pic, 120, 120, "Cut");

            if (Icon != YYPage.Icon || title != YYPage.Title)
            {
                string wxpicurl = YYPage.WXIcon;
                if (Icon != YYPage.Icon)//修改了头象则需要重新上传头象
                {
                    string IconPath           = HttpContext.Current.Server.MapPath(Icon);
                    UploadImageResultJson Img = WXAPI.UploadImage(wxtoken, IconPath);
                    wxpicurl = Img.data.pic_url;
                    long page_id = Int64.Parse(YYPage.PageId);
                    UpdatePageResultJson Page = WXAPI.EditPage(wxtoken, page_id, title, description, URL, wxpicurl);
                    if (Page.errcode == ReturnCode.请求成功)
                    {
                        YYPage.Title  = title;
                        YYPage.Icon   = Icon;
                        YYPage.WXIcon = wxpicurl;
                        Entity.SaveChanges();
                    }
                }
            }
            DataObj.Data = "";
            DataObj.Code = "0000";
            DataObj.OutString();
        }