Пример #1
0
        private ScheduledQuantities Map(ScheduledQuantities obj)
        {
            if (obj != null)
            {
                obj.PartyIndentificaton.PipelineEntity = _naesbPiplineGetService.Invoke(obj.PartyIndentificaton.PipelineEntity).Pipeline;
                obj.PartyIndentificaton.UtilityEntity  = _naesbUtilityGetService.Invoke(obj.PartyIndentificaton.UtilityEntity).Utility;

                //TODO: Location.ContractNominations.NomsContractInfo probably should not exist and be raised to a higher level
                if (obj.PartyIndentificaton.PipelineEntity == "NGPL" && (obj.PartyIndentificaton.UtilityEntity == "PGL" || obj.PartyIndentificaton.UtilityEntity == "NSG"))
                {
                    foreach (var location in obj.Locations)
                    {
                        foreach (var contractNomination in location.ContractNominations)
                        {
                            foreach (var nomination in contractNomination.Nominations)
                            {
                                //nomination.NomsContractInfo.ContractId = nomination?.Stream?.ContractId;
                                nomination.Stream.ContractId = nomination?.NomsContractInfo?.ContractId;
                            }
                        }
                    }
                }

                return(obj);
            }

            return(null);
        }
Пример #2
0
        private static NaesbEvent GetOsqNaesbEvent(FileInfo file)
        {
            //get scheduled quantities from naesb file
            ScheduledQuantities osq = Container.Resolve <IScheduledQuantityEventGet>().Invoke(file);

            //get the naesb event
            var naesbEvent = Container.Resolve <INaesbEventGet>().Invoke("OSQ", osq.PartyIndentificaton.PipelineEntity, osq.PartyIndentificaton.UtilityEntity, osq.Cycle);

            return(naesbEvent);
        }
        public HttpResponseMessage Post(ScheduledQuantities value)
        {
            int id = _container.Resolve <IScheduledQuantityEventCreate>().Invoke(value);

            if (id > 0)
            {
                return(Request.CreateResponse(HttpStatusCode.Created, id));
            }

            return(Request.CreateResponse(HttpStatusCode.NotFound));
        }
Пример #4
0
        public ScheduledQuantities Invoke(FileInfo file)
        {
            //deserialize GENTRAN EDI translated .xml file into Naesb EDI XmlDocument
            XmlDocument ediXml = CS.Common.Utilities.XmlTransformer.ConvertToXmlDocument(file, true);
            //deserialize XmlDocument into NaesbScheduledQuantities naesbObj
            NaesbScheduledQuantities naesbObj = CS.Common.Utilities.XmlTransformer.XmlDeserialize <NaesbScheduledQuantities>(ediXml.InnerXml);
            //map NaesbScheduledQuantities to ScheduledQuantities
            ScheduledQuantities osq = Map(new Common.ModelFactory().Map(naesbObj));

            return(osq);
        }