/// <summary> /// Displays the list of inventory /// </summary> /// <returns></returns> public ActionResult InventoryDetail() { StringBuilder objStringBuilderError = new StringBuilder(); try { if (Session["UserName"] != null) { InventorySearchModel inventorySearchModel = new InventorySearchModel(); IEnumerable<InventoryModel> lstInventoryDetails; List<DeviceModel> devices; using (JetstreamClient objMainServiceClient = new JetstreamClient()) { lstInventoryDetails = objMainServiceClient.GetInventoryList(inventorySearchModel.LogicalDeviceId, inventorySearchModel.SearchString); devices = objMainServiceClient.GetDeviceList(); } List<SelectListItem> deviceList = new SelectList(devices.OrderBy(x => x.LogicalDeviceId), "LogicalDeviceId", "LogicalDeviceId").ToList(); deviceList.Insert(0, new SelectListItem { Text = JetstreamResource.All, Value = string.Empty }); ViewBag.DeviceList = deviceList; SortingPagingInfo info = new SortingPagingInfo { SortField = Enums.InventorySortField.Material.ToString(), SortDirection = Constants.Ascending, }; lstInventoryDetails = lstInventoryDetails.OrderBy(x => x.Material).Take(Constants.PagingPageSize); ViewBag.SortingPagingInfo = info; if (lstInventoryDetails.Any()) inventorySearchModel.InventoryModels = lstInventoryDetails.ToList(); return View("InventoryDetail", inventorySearchModel); } else { return RedirectToAction("UserLogin", "Login"); } } catch (FaultException<ServiceData> fex) { objStringBuilderError.AppendLine("In method : InventoryDetail() :: InventoryController"); objStringBuilderError.AppendFormat("ErrorMessage::{0} {1}", fex.Detail.ErrorMessage, Environment.NewLine); objStringBuilderError.AppendFormat("ErrorDetails::{0} {1}", Environment.NewLine, fex.Detail.ErrorDetails); SaveLogger.SaveLoggerError(objStringBuilderError.ToString()); return View("Error"); } catch (Exception ex) { objStringBuilderError.AppendLine("In method : InventoryDetail() :: InventoryController"); objStringBuilderError.AppendFormat("ErrorMessage::{0} {1}", ex.Message, Environment.NewLine); objStringBuilderError.AppendFormat("ErrorDetails::{0} {1}", Environment.NewLine, ex.ToString()); SaveLogger.SaveLoggerError(objStringBuilderError.ToString()); return View("Error"); } }
/// <summary> /// Displays the list of all devices /// </summary> /// <returns></returns> public ActionResult DeviceDetail() { StringBuilder objStringBuilderError = new StringBuilder(); try { if (Session["UserName"] != null) { IEnumerable<DeviceModel> lstDeviceDetail; using (JetstreamClient objMainServiceClient = new JetstreamClient()) { lstDeviceDetail = objMainServiceClient.GetDeviceList(); } SetDeviceLocation(lstDeviceDetail); SortingPagingInfo info = new SortingPagingInfo { SortField = Enums.DeviceSortField.LogicalDeviceId.ToString(), SortDirection = Constants.Ascending, SearchText = string.Empty }; lstDeviceDetail = lstDeviceDetail.OrderBy(x => x.LogicalDeviceId).Take(Constants.PagingPageSize); ViewBag.SortingPagingInfo = info; ViewBag.SortField = info.SortField; return View("DeviceDetail", lstDeviceDetail); } else { return RedirectToAction("UserLogin", "Login"); } } catch (FaultException<ServiceData> fex) { objStringBuilderError.AppendLine("In method : DeviceDetail() :: DeviceController"); objStringBuilderError.AppendFormat("ErrorMessage::{0} {1}", fex.Detail.ErrorMessage, Environment.NewLine); objStringBuilderError.AppendFormat("ErrorDetails::{0} {1}", Environment.NewLine, fex.Detail.ErrorDetails); SaveLogger.SaveLoggerError(objStringBuilderError.ToString()); return View("Error"); } catch (Exception ex) { objStringBuilderError.AppendLine("In method : DeviceDetail() :: DeviceController"); objStringBuilderError.AppendFormat("ErrorMessage::{0} {1}", ex.Message, Environment.NewLine); objStringBuilderError.AppendFormat("ErrorDetails::{0} {1}", Environment.NewLine, ex.ToString()); SaveLogger.SaveLoggerError(objStringBuilderError.ToString()); return View("Error"); } }
/// <summary> /// Method to update passes to all the device /// </summary> /// <param name="userMl"></param> private static void UpdatePasses(UsersModel userMl) { StringBuilder objStringBuilderError = new StringBuilder(); try { if (!string.IsNullOrEmpty(userMl.PassRFID)) { // construct a Jetstream service client JetstreamServiceClient client = new JetstreamServiceClient(JetstreamConfiguration.Url, JetstreamConfiguration.ApplicationAccessKey); // create the GetDeviceDefinitions request GetDeviceDefinitionsRequest deviceRequest = new GetDeviceDefinitionsRequest(); // call the Jetstream GetDeviceDefinitions ReST endpoint GetDeviceDefinitionsResponse deviceResponse = client.GetDeviceDefinitions(deviceRequest); //List the user passRFId List<string> passes = new List<string> { userMl.PassRFID.ToUpper() }; //Get the list of Devices from local database IEnumerable<DeviceModel> devices; using (JetstreamClient objMainServiceClient = new JetstreamClient()) { devices = objMainServiceClient.GetDeviceList(); } //Itterate through the list of devices foreach (var device in devices) { //get the device defination list for checking if device allow pass update var deviceModel = deviceResponse.DeviceDefinitionList.Where(x => x.Id == device.DeviceGuid).ToList(); if (deviceModel.Count > 0) { //Check if device allow pass update var jetstreamGetDeviceDefinitionsResponseDeviceDefinition = deviceModel.FirstOrDefault(); bool updatePass = jetstreamGetDeviceDefinitionsResponseDeviceDefinition != null && jetstreamGetDeviceDefinitionsResponseDeviceDefinition.CommandList .DeviceSpecificCommandList.DeviceSpecificCommand.ToList() .Select(x => x.CommandName) .Contains("UpdatePasses"); if (updatePass) { //Update Pass to device UpdatePassesRequest updateRequest = new UpdatePassesRequest { LogicalDeviceId = device.LogicalDeviceId }; if (userMl.Status != null && userMl.Status.Value) { updateRequest.Add = passes; } else { updateRequest.Remove = passes; } client.DeviceSpecificCommand(updateRequest); } } } } } catch (FaultException<ServiceData> fex) { objStringBuilderError.AppendLine("In method : UpdatePasses(UsersModel userMl) :: UserController"); objStringBuilderError.AppendFormat("ErrorMessage::{0} {1}", fex.Detail.ErrorMessage, Environment.NewLine); objStringBuilderError.AppendFormat("ErrorDetails::{0} {1}", Environment.NewLine, fex.Detail.ErrorDetails); SaveLogger.SaveLoggerError(objStringBuilderError.ToString()); } catch (Exception ex) { objStringBuilderError.AppendLine("In method : UpdatePasses(UsersModel userMl) :: UserController"); objStringBuilderError.AppendFormat("ErrorMessage::{0} {1}", ex.Message, Environment.NewLine); objStringBuilderError.AppendFormat("ErrorDetails::{0} {1}", Environment.NewLine, ex.ToString()); SaveLogger.SaveLoggerError(objStringBuilderError.ToString()); } }
/// <summary> /// Method to bind the devices to device dropdown /// </summary> private void BindDevices() { StringBuilder objStringBuilderError = new StringBuilder(); try { List<DeviceModel> devices; using (JetstreamClient objMainServiceClient = new JetstreamClient()) { devices = objMainServiceClient.GetDeviceList(); } List<SelectListItem> deviceList = new SelectList(devices.OrderBy(x => x.LogicalDeviceId), "DeviceId", "LogicalDeviceId").ToList(); deviceList.Insert(0, new SelectListItem { Text = JetstreamResource.Device, Value = JetstreamResource.Zero }); ViewBag.DeviceList = deviceList; } catch (Exception ex) { objStringBuilderError.AppendLine("In method : BindDevices() :: TemperatureController"); objStringBuilderError.AppendFormat("ErrorMessage::{0} {1}", ex.Message, Environment.NewLine); objStringBuilderError.AppendFormat("ErrorDetails::{0} {1}", Environment.NewLine, ex.ToString()); SaveLogger.SaveLoggerError(objStringBuilderError.ToString()); } }