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;
 }
Example #5
0
        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;
        }
Example #7
0
        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);
            }
        }
Example #8
0
        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);
        }