bool DeleteDeviceLocalSettings(Equipment equipment) { XDocument docs = XDocument.Load(@"ScalePrinterAssetsDB.xml"); foreach (var item in docs.Descendants("Equipment")) { if (item.Element("Id").Value == equipment.Id.ToString()) { item.Remove(); docs.Save(@"ScalePrinterAssetsDB.xml"); return true; } } return false; }
public async Task<ResponseBool> EquipmentAddAsync(Equipment equipment) { ResponseBool _response = new ResponseBool { Success = false, ErrorInfo = "" }; string url = string.Format("api/distributorservices/equipmentadd"); var httpClient = setupHttpClient(); httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); try { var response = await httpClient.PostAsJsonAsync(url, equipment); _response = await response.Content.ReadAsAsync<ResponseBool>(); } catch (Exception ex) { _log.Error("Failed to update equipment.", ex); } return _response; }
internal LocalEquipmentConfig LoadDeviceLocalConfigSettings(Equipment equipment) { var devices = from c in XElement.Load(@"ScalePrinterAssetsDB.xml").Elements("Equipment") select c; var scaleSettings = devices.FirstOrDefault(n => Guid.Parse(n.Element("Id").Value) == equipment.Id); if (scaleSettings != null) { return new LocalEquipmentConfig { Code = scaleSettings.Element("Code").Value, Name = scaleSettings.Element("Name").Value, Port = scaleSettings.Element("Port").Value, Parity = scaleSettings.Element("Parity").Value, EquipmentType = scaleSettings.Element("EquipmentType").Value, BaudRate = scaleSettings.Element("BaudRate").Value, DataBits = scaleSettings.Element("DataBits").Value, Model = scaleSettings.Element("Model").Value, Id = Guid.Parse(scaleSettings.Element("Id").Value) }; } return null; }
internal bool SaveDeviceLocalConfigSettings(Equipment equipment) { bool isUpdate = false; if (ValidateProperties()) { XDocument docs = XDocument.Load(@"ScalePrinterAssetsDB.xml"); foreach (var item in docs.Descendants("Equipment")) { if (item.Element("Id").Value == equipment.Id.ToString()) { isUpdate = true; break; } } if (!isUpdate) { FileStream fs = new FileStream(@"ScalePrinterAssetsDB.xml", FileMode.Open, FileAccess.Read, FileShare.ReadWrite); XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(fs); fs.Close(); XmlElement newEquipment = xmlDoc.CreateElement("Equipment"); XmlElement code = xmlDoc.CreateElement("Code"); code.InnerText = equipment.Code; newEquipment.AppendChild(code); XmlElement name = xmlDoc.CreateElement("Name"); name.InnerText = equipment.Name; newEquipment.AppendChild(name); XmlElement parity = xmlDoc.CreateElement("Parity"); parity.InnerText = SelectedParityBitsOption.ToString(); newEquipment.AppendChild(parity); XmlElement port = xmlDoc.CreateElement("Port"); port.InnerText = Port; newEquipment.AppendChild(port); XmlElement baudRate = xmlDoc.CreateElement("BaudRate"); baudRate.InnerText = SelectedBaudRateOption.ToString(); newEquipment.AppendChild(baudRate); XmlElement databits = xmlDoc.CreateElement("DataBits"); databits.InnerText = SelectedDataBitsOption.ToString(); newEquipment.AppendChild(databits); XmlElement equipmentType = xmlDoc.CreateElement("EquipmentType"); equipmentType.InnerText = equipment.EquipmentType.ToString(); newEquipment.AppendChild(equipmentType); XmlElement model = xmlDoc.CreateElement("Model"); model.InnerText = equipment.Model; newEquipment.AppendChild(model); XmlElement Id = xmlDoc.CreateElement("Id"); Id.InnerText = equipment.Id.ToString(); newEquipment.AppendChild(Id); xmlDoc.DocumentElement.InsertAfter(newEquipment, xmlDoc.DocumentElement.LastChild); FileStream fsxml = new FileStream(@"ScalePrinterAssetsDB.xml", FileMode.Truncate, FileAccess.Write, FileShare.ReadWrite); xmlDoc.Save(fsxml); fsxml.Close(); return true; } else { foreach (var item in docs.Descendants("Equipment")) { item.Element("Code").SetValue(equipment.Code); item.Element("Name").SetValue(equipment.Name); item.Element("Parity").SetValue(SelectedParityBitsOption); item.Element("BaudRate").SetValue(SelectedBaudRateOption); item.Element("Port").SetValue(Port); item.Element("DataBits").SetValue(SelectedDataBitsOption); item.Element("EquipmentType").SetValue(equipment.EquipmentType); item.Element("Model").SetValue(equipment.Model); item.Element("Id").SetValue(equipment.Id); docs.Save(@"ScalePrinterAssetsDB.xml"); return true; } } } return false; }
public HttpResponseMessage EquipmentAdd(Equipment equipment) { var response = new ResponseBool { Success = false }; try { _equipmentRepository.Save(equipment); response.Success = true; response.ErrorInfo = string.Format("Equipment of type {0} successfully added.", equipment.EquipmentType.ToString()); } catch (DomainValidationException dve) { string errorMsg = dve.ValidationResults.Results.Aggregate("Error: Invalid equipment fields.\n", (current, msg) => current + ("\t- " + msg.ErrorMessage + "\n")); response.ErrorInfo = errorMsg; _log.Error(errorMsg, dve); } catch (Exception ex) //any other { response.ErrorInfo = "Error: An error occurred when saving the entity.\n" + ex.ToString(); _log.Error("Error: An error occurred when saving the entity.", ex); } return Request.CreateResponse(HttpStatusCode.OK, response); }