wei
2021-04-01 ccdff82fac4bcc1067ec806ade5ae897f1214f4d
HDL_ON/UI/UI2/FuntionControlView/Video/VideoSend.cs
@@ -31,7 +31,7 @@
        /// <returns></returns>
        public static ResponsePackNew GetCall(string flBindId)
        {
            var jObject = new JObject { { "homeId", PirSend.HomeId }, { "flBindId", flBindId }, { "pageSize", int.MaxValue } };
            var jObject = new JObject { { "homeId", PirSend.HomeId }, { "flBindId", flBindId }, { "pageSize", 100 } };
            var responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_FL_GetCallList);
            return responsePackNew;
        }
@@ -61,47 +61,38 @@
                {
                    return eSVideoInfosList;
                }
                var list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Dictionary<string, string>>>(json["list"].ToString());
                if (list.Count == 0)
                {
                    return eSVideoInfosList;
                }
                foreach (var videoInfo in list)
                {
                    VideoMethod.FlVideo flVideo = new VideoMethod.FlVideo();
                    flVideo.aliasName = videoInfo["aliasName"];
                    if (videoInfo["uuid"].Contains(","))
                    {
                        var uuid = videoInfo["uuid"].Split(',');
                        flVideo.uuid = uuid[0];
                    }
                    else
                    {
                        flVideo.uuid = videoInfo["uuid"];
                    }
                    flVideo.devType = videoInfo["devType"];
                    //eSVideoInfo.roomno = video.flRoomId;
                    eSVideoInfosList.Add(flVideo);
                }
                eSVideoInfosList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<VideoMethod.FlVideo>>(json["list"].ToString());
            }
            catch { }
            return eSVideoInfosList;
        }
        /// <summary>
        /// 上报动态开锁密码
        /// 随机密码6位
        /// </summary>
        public static void GetQRcode(FrameLayout frame, VideoMethod.VideoClouds video,Action<bool,string>action)
        /// <returns></returns>         public static string getCode()         {             Random rand = new Random();             string code = "";             for (int ctr = 0; ctr < 6; ctr++)             {                 code += rand.Next(10).ToString();             }             return code;         }
        /// <summary>
        /// 上报动态开锁密码(注意:密码有可能延时1分钟生效)
        /// </summary>
        public static void GetQRcode(FrameLayout frame, VideoMethod.VideoClouds video, Action<bool, string> action)
        {
            System.DateTime startTime = TimeZone.CurrentTimeZone.ToLocalTime(new System.DateTime(1970, 1, 1)); // 当地时区
            var timeStamp = ((long)(DateTime.Now - startTime).TotalSeconds).ToString(); // 相差秒数
            var timeStamp2 = ((long)(DateTime.Now.AddDays(1) - startTime).TotalSeconds).ToString(); // 相差秒数
            ///标记是否成功
            bool if_bool = false;
            //临时密码
            string pwd = VideoMethod.getCode();
            string pwd = getCode();
            var jobject = new JObject();             jobject.Add("communityID", video.flCmtId);//社区ID
            jobject.Add("fromTime", VideoMethod.GetCurrentTimeStamp());//开始时间
            jobject.Add("validTime", VideoMethod.GetTomorrowTimeStamp());//有效时间
            jobject.Add("fromTime", timeStamp);//开始时间
            jobject.Add("validTime", timeStamp2);//有效时间
            jobject.Add("unitno", video.flBuildingId);//单元号
            jobject.Add("roomno", video.flRoomId);//房间号
            jobject.Add("code", pwd);             jobject.Add("userKey", video.flSecretKey);             jobject.Add("timestamp", VideoMethod.GetCurrentTimeStamp());             jobject.Add("secretKey", video.flSecretKey);             jobject.Add("method", "setdynamicpwd");             jobject.Add("numTimes", "5");
            jobject.Add("code", pwd);             jobject.Add("userKey", video.id);             jobject.Add("timestamp", timeStamp);             jobject.Add("secretKey", video.flSecretKey);             jobject.Add("method", "setdynamicpwd");             jobject.Add("numTimes", "5");
            //加载log
            Loading loading = new Loading();
            frame.AddChidren(loading);
@@ -113,20 +104,14 @@
                    var str = HttpWebRequest(NewAPI.API_POST_FL_QRcode, jobject.ToString(), "POST");
                    if (!string.IsNullOrEmpty(str))
                    {
                        try
                        var json = JObject.Parse(str);
                        if (json != null)
                        {
                            var json = JObject.Parse(str);
                            if (json != null)
                            var stateCode = json["status"].ToString();
                            if (stateCode == "0")
                            {
                                var stateCode = json["resCode"].ToString();
                                if (stateCode != "0")
                                {
                                    if_bool = true;
                                }
                                if_bool = true;
                            }
                        }
                        catch {
                        }
                    }
                }
@@ -137,6 +122,33 @@
                    {
                        loading.Hide();
                        action(if_bool, pwd);
                    });
                }
            })
            { IsBackground = true }.Start();
        }
        /// <summary>
        /// 下载图片
        /// </summary>
        public static void GetIcon(FrameLayout frame,string url)
        {
            Loading loading = new Loading();
            frame.AddChidren(loading);
            loading.Start();
            new System.Threading.Thread(() =>
            {
                try
                {
                    var responsePackNew = RequestServerhomeId(null, url);
                }
                catch { }
                finally
                {
                    Application.RunOnMainThread(() =>
                    {
                        loading.Hide();
                    });
                }
@@ -197,5 +209,13 @@
            return HttpUtil.RequestHttpsPostFroHome(api_Url, requestJson, mTimeout);
        }
    }
    class FlResponsePackNew
    {//
        public string status = string.Empty;
        public string desc = string.Empty;
    }
}