public TesterParameter Add(EditTesterParameter model) { var newParameter = _context.TesterParameters.FirstOrDefault(x => x.Id == model.Id && x.Revision == model.Revision); //newParameter.Parameter = AddParameter(model.Type, newParameter.Parameter, // model.ParameterName, model.ParameterValue); var parameter = AddParameter(model.Type, newParameter.Parameter, model.ParameterName, model.ParameterValue); TesterParameter testerParameter = new TesterParameter() { DeviceName = newParameter.DeviceName, Parameter = parameter, Revision = model.Revision + 1 }; return testerParameter; }
public TesterParameter Edit(string oldParameterName, string oldParameterValue, EditTesterParameter model) { var product = _context.TesterParameters.FirstOrDefault(x => x.Id == model.Id && x.Revision == model.Revision); //product.Parameter = EditParameter(model.Type, product.Parameter, // oldParameterName, oldParameterValue, model.ParameterName, // model.ParameterValue/*, model.Index*/); var parameter = EditParameter(model.Type, product.Parameter, oldParameterName, oldParameterValue, model.ParameterName, model.ParameterValue); TesterParameter testerParameter = new TesterParameter() { DeviceName = product.DeviceName, Parameter = parameter, Revision = model.Revision + 1 }; return testerParameter; }
public TesterParameter Details(string name, int revision) { TesterParameter testerParameter = null; testerParameter = _context.TesterParameters.FirstOrDefault(x => x.DeviceName.ToLower() == name.ToLower() && x.Revision == revision); if (testerParameter == null) { return testerParameter; } else { if (!string.IsNullOrEmpty(testerParameter.Parameter)) { var xmlSerializer = new XmlSerializer(typeof(TesterParameterCode)); testerParameter.TesterParameterCode = (TesterParameterCode)xmlSerializer.Deserialize(new StringReader(testerParameter.Parameter)); } return testerParameter; } }
public TesterParameter Delete(EditTesterParameter model) { var device = _context.TesterParameters.FirstOrDefault(x => x.Id == model.Id && x.Revision == model.Revision); if (device != null) { var parameter = RemoveParameter(model.Type, device.Parameter, model.ParameterName, model.ParameterValue); //device.Parameter = RemoveParameter(model.Type, device.Parameter, model.ParameterName, model.ParameterValue/*, model.Index*/); TesterParameter testerParameter = new TesterParameter() { DeviceName = device.DeviceName, Parameter = parameter, Revision = model.Revision + 1 }; _context.TesterParameters.Add(testerParameter); _context.SaveChangesAsync(); return testerParameter; } return device; }
public IActionResult GetTesterParameterXml1(string searchTerms, int revisionnumber = 0) { OkObjectResult result = null; TesterParameter testerParameter = null; if (revisionnumber > 0) { testerParameter = _context.TesterParameters.FirstOrDefault(x => x.DeviceName.ToLower() == searchTerms.ToLower() && x.Revision == revisionnumber); if (testerParameter == null) { Response.StatusCode = 404; return(View("NotFound")); } else { result = Build(testerParameter); return(result); } } else { var getDeviceList = _context.TesterParameters.Where(n => n.DeviceName.ToUpper() == searchTerms.ToUpper()).ToList(); TesterParameter deviceToSend = new TesterParameter(); foreach (var device in getDeviceList) { if (deviceToSend.DeviceName == null) { deviceToSend = device; } else { if (device.Revision > deviceToSend.Revision) { deviceToSend = device; } } } result = Build(deviceToSend); return(result); } }
public TesterParameter Create(AddTesterParameter model) { var deviceParameters = $"<{TesterParameterCodeType.DeviceParameters}>" + $"{string.Join("", model.DeviceParameters.Parameters.Where(x => !string.IsNullOrWhiteSpace(x.Key)).Select(x => $"<{x.Key}>{x.Value}</{x.Key}>"))}" + $"</{TesterParameterCodeType.DeviceParameters}>"; var firmwareGatesParameters = $"<{TesterParameterCodeType.FirmwareGates}>" + $"{string.Join("", model.FirmwareGates.Parameters.Where(x => !string.IsNullOrWhiteSpace(x.Key)).Select(x => $"<{x.Key}>{x.Value}</{x.Key}>"))}" + $"</{TesterParameterCodeType.FirmwareGates}>"; var modemIncludeList = $"<{TesterParameterCodeType.ModemIncludeList}>" + $"{string.Join("", model.ModemIncludeList.Parameters.Where(x => !string.IsNullOrWhiteSpace(x.Key)).Select(x => $"<{x.Key}>{x.Value}</{x.Key}>"))}" + $"</{TesterParameterCodeType.ModemIncludeList}>"; var testerParameter = new TesterParameter { DeviceName = model.DeviceName, Parameter = $"<ProductCode>{deviceParameters}{firmwareGatesParameters}{modemIncludeList}</ProductCode>", Revision = 1 }; return testerParameter; }
public IActionResult GetTesterParameterXml(string searchTerms, int revisionnumber = 0) { OkObjectResult result = null; if (revisionnumber > 0) { var deviceList = _context.TesterParameters.Where(n => n.DeviceName.ToUpper() == searchTerms.ToUpper() && n.Revision == revisionnumber).Select(n => n.Parameter).FirstOrDefault(); result = Ok(deviceList); result.Formatters.Clear(); result.Formatters.Add(new Microsoft.AspNetCore.Mvc.Formatters.XmlSerializerOutputFormatter()); return(result); } else { var getDeviceList = _context.TesterParameters.Where(n => n.DeviceName.ToUpper() == searchTerms.ToUpper()).ToList(); TesterParameter deviceToSend = new TesterParameter(); foreach (var device in getDeviceList) { if (deviceToSend.DeviceName == null) { deviceToSend = device; } else { if (device.Revision > deviceToSend.Revision) { deviceToSend = device; } } } var deviceList = deviceToSend.Parameter; result = Ok(deviceList); result.Formatters.Clear(); result.Formatters.Add(new Microsoft.AspNetCore.Mvc.Formatters.XmlSerializerOutputFormatter()); return(result); } }
public OkObjectResult Build(TesterParameter testerParameter) { var xmlSerializer = new XmlSerializer(typeof(TesterParameterCode)); testerParameter.TesterParameterCode = (TesterParameterCode)xmlSerializer.Deserialize(new StringReader(testerParameter.Parameter)); var sb = new StringBuilder(); if (testerParameter.TesterParameterCode.DeviceParameters != null) { if (testerParameter.TesterParameterCode.DeviceParameters.Parameters != null) { foreach (var param in testerParameter.TesterParameterCode.DeviceParameters.Parameters) { sb.Append($"<{param.Name}>{param.InnerText}</{ param.Name}> "); } } } if (testerParameter.TesterParameterCode.FirmwareGates.Parameters != null) { if (testerParameter.TesterParameterCode.FirmwareGates.Parameters != null) { foreach (var param in testerParameter.TesterParameterCode.FirmwareGates.Parameters) { sb.Append($"<{param.Name}>{param.InnerText}</{ param.Name}>"); } } } if (testerParameter.TesterParameterCode.ModemIncludeList != null) { if (testerParameter.TesterParameterCode.ModemIncludeList.Parameters != null) { foreach (var param in testerParameter.TesterParameterCode.ModemIncludeList.Parameters) { sb.Append($"<{param.Name}>{param.InnerText}</{ param.Name}>"); } } } if (testerParameter.TesterParameterCode.ModemExcludeList != null) { if (testerParameter.TesterParameterCode.ModemExcludeList.Parameters != null) { foreach (var param in testerParameter.TesterParameterCode.ModemExcludeList.Parameters) { sb.Append($"<{param.Name}>{param.InnerText}</{ param.Name}>"); } } } //var test = string.Join("<>", sb); //var xmlDocument = new XmlDocument(); //xmlDocument.LoadXml(sb.ToString()); OkObjectResult result = Ok(sb.ToString()); result.Formatters.Clear(); result.Formatters.Add(new Microsoft.AspNetCore.Mvc.Formatters.XmlSerializerOutputFormatter()); return(result); }