/// <summary> /// Lee informacion de contracting goverments de un XML Node del DDP /// </summary> /// <param name="goverment">XML Node del goverment</param> /// <returns>Instancia de Contracting goverment para base de datos</returns> private ContractingGoverment ReadContractingGoverment(XmlNode goverment) { ContractingGoverment cg = new ContractingGoverment(); cg.DataCenterId = int.Parse(goverment["DataCentreInfo"]["DataCentreID"].InnerText); cg.isoCode = goverment["Name"].Attributes["isoCode"].Value; cg.LRITId = int.Parse(goverment.Attributes["lritID"].Value); cg.Name = goverment["Name"].InnerText; return(cg); }
private void readCGS(string mpath, ref Dictionary <ContractingGoverment, ContractingConfig> goverments, ref XmlDocument ddpxml, ref XmlNamespaceManager nsmanager) { foreach (XmlNode goverment in ddpxml.SelectNodes(mpath, nsmanager)) { ContractingGoverment cg = ReadContractingGoverment(goverment); goverments[cg] = new ContractingConfig(); var cc = goverments[cg]; var dd = goverment; //Nested in CG ExtractInfo("", ref cc, ref dd, ref nsmanager, false); //Nested in Territory ExtractInfo("/lr:DataDistributionPlan/lr:Territory[@contractingGovernmentID='" + cg.LRITId.ToString() + "']/", ref cc, ref dd, ref nsmanager, true); //Exclusions foreach (XmlNode exclusion in ddpxml.SelectNodes("/lr:DataDistributionPlan/lr:Exclusions/lr:Exclusion[@contractingGovernmentID='" + cg.LRITId.ToString() + "']", nsmanager)) { var ex = new Exclusion(); ex.exclusionID = exclusion.Attributes["exclusionID"].Value; ex.ExcludedContractingGovernmentID = exclusion["ExcludedContractingGovernmentID"].InnerText; if (exclusion["From"] != null) { ex.FromDate = DateTime.Parse(exclusion["From"].InnerText).ToUniversalTime(); } else { ex.FromDate = new DateTime(2000, 1, 1); } if (exclusion["Until"] != null) { ex.ToDate = DateTime.Parse(exclusion["Until"].InnerText).ToUniversalTime(); } else { ex.ToDate = new DateTime(2050, 1, 1); } //goverments[cg].exclusions.Add(ex); cg.Exclusions.Add(ex); } } }
/// <summary> /// Crea un nuevo contracting goverment en la base de datos /// </summary> /// <param name="contractingGoverment">contractingGoverment</param> /// <returns>ID del registro en base de datos</returns> public int Create(ContractingGoverment contractingGoverment) { context.ContractingGoverments.InsertOnSubmit(contractingGoverment); context.SubmitChanges(); return(contractingGoverment.Id); }
/// <summary> /// Verifica si un contracting goverment esta titulado para recibir una posicion de un barco /// </summary> /// <param name="goverment">Contracting goverment</param> /// <param name="position">Posicion del barco</param> /// <returns>Verdadero si esta titulado, Falso si no esta titulado</returns> public bool IsEntitled(ContractingGoverment goverment, ShipPosition position, DDPVersion ddpVersion, bool verifyWatersOf) { return(IsEntitled(goverment.Id, position.Id, ddpVersion.Id, verifyWatersOf)); }