public string GetMapInfoFromHttp(SCAppConstants.MapInfoDataType dataType)
        {
            string result = string.Empty;

            string[] action_targets = new string[]
            {
                "MapInfo"
            };
            StringBuilder sb = new StringBuilder();

            //sb.Append($"{nameof(SCAppConstants.MapInfoDataType)}={dataType}");
            sb.Append(dataType);
            result = app.GetWebClientManager().GetInfoFromServer(WebClientManager.OHxC_CONTROL_URI, action_targets, sb.ToString());
            return(result);
        }
        public T GetMapInfoFromHttp <T>(SCAppConstants.MapInfoDataType dataType)
        {
            T      obj;
            string result = string.Empty;

            string[] action_targets = new string[]
            {
                "MapInfo"
            };
            StringBuilder sb = new StringBuilder();

            //sb.Append($"{nameof(SCAppConstants.MapInfoDataType)}={dataType}");
            sb.Append(dataType);
            result = app.GetWebClientManager().GetInfoFromServer(WebClientManager.OHxC_CONTROL_URI, action_targets, sb.ToString());
            obj    = JsonConvert.DeserializeObject <T>(result);
            return(obj);
        }
        private void RegisterMapEvent()
        {
            Get["MapInfo/{MapInfoDataType}"] = (p) =>
            {
                bool          isSuccess                 = false;
                SCApplication scApp                     = SCApplication.getInstance();
                string        map_data_type             = p.MapInfoDataType;
                SCAppConstants.MapInfoDataType dataType = default(SCAppConstants.MapInfoDataType);
                isSuccess = Enum.TryParse(map_data_type, out dataType);
                string query_data = null;
                switch (dataType)
                {
                case SCAppConstants.MapInfoDataType.MapID:
                    query_data = scApp.BC_ID;
                    break;

                case SCAppConstants.MapInfoDataType.EFConnectionString:
                    string connectionName = "OHTC_DevEntities";
                    query_data = System.Configuration.ConfigurationManager.ConnectionStrings[connectionName].ConnectionString;
                    break;

                case SCAppConstants.MapInfoDataType.Rail:
                    query_data = JsonConvert.SerializeObject(scApp.MapBLL.loadAllRail());
                    break;

                case SCAppConstants.MapInfoDataType.Point:
                    query_data = JsonConvert.SerializeObject(scApp.MapBLL.loadAllPoint());
                    break;

                case SCAppConstants.MapInfoDataType.GroupRails:
                    query_data = JsonConvert.SerializeObject(scApp.MapBLL.loadAllGroupRail());
                    break;

                case SCAppConstants.MapInfoDataType.Address:
                    query_data = JsonConvert.SerializeObject(scApp.MapBLL.loadAllAddress());
                    break;

                case SCAppConstants.MapInfoDataType.Section:
                    query_data = JsonConvert.SerializeObject(scApp.MapBLL.loadAllSection());
                    break;

                case SCAppConstants.MapInfoDataType.Segment:
                    //query_data = JsonConvert.SerializeObject(scApp.MapBLL.loadAllSegments());
                    query_data = JsonConvert.SerializeObject(scApp.getCommObjCacheManager().getSegments());
                    break;

                case SCAppConstants.MapInfoDataType.Port:
                    query_data = JsonConvert.SerializeObject(scApp.MapBLL.loadAllPort());
                    break;

                case SCAppConstants.MapInfoDataType.PortIcon:
                    query_data = JsonConvert.SerializeObject(scApp.MapBLL.loadAllPortIcon());
                    break;

                case SCAppConstants.MapInfoDataType.Vehicle:
                    query_data = JsonConvert.SerializeObject(scApp.getEQObjCacheManager().getAllVehicle());
                    break;

                case SCAppConstants.MapInfoDataType.Line:
                    query_data = JsonConvert.SerializeObject(scApp.getEQObjCacheManager().getLine());
                    break;

                case SCAppConstants.MapInfoDataType.BlockZoneDetail:
                    query_data = JsonConvert.SerializeObject(scApp.MapBLL.loadAllBlockZoneDetail());
                    break;

                case SCAppConstants.MapInfoDataType.MTL:
                    query_data = JsonConvert.SerializeObject(scApp.getEQObjCacheManager().getAllEquipment().Where(eq => eq.EQPT_ID.StartsWith("MTL")).ToList());
                    break;

                case SCAppConstants.MapInfoDataType.MTS:
                    query_data = JsonConvert.SerializeObject(scApp.getEQObjCacheManager().getAllEquipment().Where(eq => eq.EQPT_ID.StartsWith("MTS")).ToList());
                    break;

                case SCAppConstants.MapInfoDataType.Eqpt:
                    query_data = JsonConvert.SerializeObject(scApp.getEQObjCacheManager().getAllEquipment());
                    break;

                case SCAppConstants.MapInfoDataType.AlarmMap:
                    query_data = JsonConvert.SerializeObject(scApp.AlarmBLL.loadAlarmMaps());
                    break;
                }
                var response = (Response)query_data;
                response.ContentType = restfulContentType;
                return(response);
            };

            Get["ReserveInfo/ReserveMap"] = (p) =>
            {
                byte[] reserve_info = new byte[0];
                try
                {
                    SCApplication scApp = SCApplication.getInstance();
                    reserve_info = scApp.ReserveBLL.GetCurrentReserveInfoMapByte();
                }
                catch (Exception ex)
                {
                    logger.Error(ex, "Execption:");
                }
                return(Response.FromByteArray(reserve_info));
            };

            Get["SystemExcuteInfo/{SystemExcuteInfoType}"] = (p) =>
            {
                bool          isSuccess     = false;
                SCApplication scApp         = SCApplication.getInstance();
                string        map_data_type = p.SystemExcuteInfoType;
                SCAppConstants.SystemExcuteInfoType dataType = default(SCAppConstants.SystemExcuteInfoType);
                isSuccess = Enum.TryParse(map_data_type, out dataType);
                string query_data = "";
                switch (dataType)
                {
                case SCAppConstants.SystemExcuteInfoType.CommandInQueueCount:
                    query_data = scApp.CMDBLL.getCMD_MCSIsQueueCount().ToString();
                    break;

                case SCAppConstants.SystemExcuteInfoType.CommandInExcuteCount:
                    query_data = scApp.CMDBLL.getCMD_MCSIsRunningCount().ToString();
                    break;
                }
                var response = (Response)query_data;
                response.ContentType = restfulContentType;

                return(response);
            };
        }
        private void RegisterMapEvent()
        {
            Get["MapInfo/{MapInfoDataType}"] = (p) =>
            {
                bool          isSuccess                 = false;
                SCApplication scApp                     = SCApplication.getInstance();
                string        map_data_type             = p.MapInfoDataType;
                SCAppConstants.MapInfoDataType dataType = default(SCAppConstants.MapInfoDataType);
                isSuccess = Enum.TryParse(map_data_type, out dataType);
                string query_data = null;
                switch (dataType)
                {
                case SCAppConstants.MapInfoDataType.MapID:
                    query_data = scApp.BC_ID;
                    break;

                case SCAppConstants.MapInfoDataType.EFConnectionString:
                    string connectionName = "OHTC_DevEntities";
                    query_data = System.Configuration.ConfigurationManager.ConnectionStrings[connectionName].ConnectionString;
                    break;

                case SCAppConstants.MapInfoDataType.Rail:
                    query_data = JsonConvert.SerializeObject(scApp.MapBLL.loadAllRail());
                    break;

                case SCAppConstants.MapInfoDataType.Point:
                    query_data = JsonConvert.SerializeObject(scApp.MapBLL.loadAllPoint());
                    break;

                case SCAppConstants.MapInfoDataType.GroupRails:
                    query_data = JsonConvert.SerializeObject(scApp.MapBLL.loadAllGroupRail());
                    break;

                case SCAppConstants.MapInfoDataType.Address:
                    //query_data = JsonConvert.SerializeObject(scApp.MapBLL.loadAllAddress());
                    query_data = JsonConvert.SerializeObject(scApp.AddressesBLL.cache.GetAddresses());
                    break;

                case SCAppConstants.MapInfoDataType.Section:
                    query_data = JsonConvert.SerializeObject(scApp.MapBLL.loadAllSection());
                    break;

                case SCAppConstants.MapInfoDataType.Segment:
                    query_data = JsonConvert.SerializeObject(scApp.MapBLL.loadAllSegments());
                    break;

                case SCAppConstants.MapInfoDataType.Port:
                    query_data = JsonConvert.SerializeObject(scApp.getEQObjCacheManager().getALLPortStation());
                    break;

                case SCAppConstants.MapInfoDataType.PortIcon:
                    query_data = JsonConvert.SerializeObject(scApp.MapBLL.loadAllPortIcon());
                    break;

                case SCAppConstants.MapInfoDataType.Vehicle:
                    query_data = JsonConvert.SerializeObject(scApp.getEQObjCacheManager().getAllVehicle());
                    break;

                case SCAppConstants.MapInfoDataType.Line:
                    query_data = JsonConvert.SerializeObject(scApp.getEQObjCacheManager().getLine());
                    break;

                case SCAppConstants.MapInfoDataType.BlockZoneDetail:
                    query_data = JsonConvert.SerializeObject(scApp.MapBLL.loadAllBlockZoneDetail());
                    break;

                case SCAppConstants.MapInfoDataType.Alarm:
                    query_data = JsonConvert.SerializeObject(scApp.AlarmBLL.getCurrentAlarmsFromRedis());
                    break;
                }
                var response = (Response)query_data;
                response.ContentType = restfulContentType;

                return(response);
            };

            Get["SystemExcuteInfo/{SystemExcuteInfoType}"] = (p) =>
            {
                bool          isSuccess     = false;
                SCApplication scApp         = SCApplication.getInstance();
                string        map_data_type = p.SystemExcuteInfoType;
                SCAppConstants.SystemExcuteInfoType dataType = default(SCAppConstants.SystemExcuteInfoType);
                isSuccess = Enum.TryParse(map_data_type, out dataType);
                string query_data = "";
                switch (dataType)
                {
                case SCAppConstants.SystemExcuteInfoType.CommandInQueueCount:
                    query_data = scApp.CMDBLL.getCMD_MCSIsQueueCount().ToString();
                    break;

                case SCAppConstants.SystemExcuteInfoType.CommandInExcuteCount:
                    query_data = scApp.CMDBLL.getCMD_MCSIsRunningCount().ToString();
                    break;
                }
                var response = (Response)query_data;
                response.ContentType = restfulContentType;

                return(response);
            };
        }