Exemple #1
0
        public void Read_Code_Station()
        {
            // Arrange - create the mock repository
            Mock <IReferenceRailwayRepository> mock_rr = new Mock <IReferenceRailwayRepository>();

            mock_rr.Setup(m => m.Code_Station).Returns(new Code_Station[] {
                new Code_Station {
                    IDStation = 1, Station = "Station1", Code = 40000, CodeCS = 400000, IDInternalRailroad = 1
                },
                new Code_Station {
                    IDStation = 2, Station = "Station2", Code = 50000, CodeCS = 500000, IDInternalRailroad = 1
                },
                new Code_Station {
                    IDStation = 3, Station = "Station3", Code = 50001, CodeCS = 500010, IDInternalRailroad = 2
                }
            }.AsQueryable());

            // Arrange - create the controller
            ReferenceRailway target = new ReferenceRailway(mock_rr.Object);
            // Act
            Code_Station        cs1  = target.GetStations(1);
            Code_Station        cs3  = target.GetStations(3);
            Code_Station        cs4  = target.GetStations(4);
            List <Code_Station> list = target.GetStations().ToList();

            // Assert
            Assert.AreEqual(1, cs1.IDStation);
            Assert.AreEqual(3, cs3.IDStation);
            Assert.AreEqual(3, list.Count());
            Assert.AreEqual(null, cs4);
        }
Exemple #2
0
 private int ArrivalToRailWay(int id_sostav)
 {
     try
     {
         KIS_RC_Transfer  rc_transfer = new KIS_RC_Transfer(); // Перенос в системе RailCars
         KIS_RW_Transfer  rw_transfer = new KIS_RW_Transfer(); // Перенос в системе RailWay
         MTContent        mtc         = new MTContent();
         ReferenceRailway refRW       = new ReferenceRailway();
         SAP_Transfer     saptr       = new SAP_Transfer();
         // Определим класс данных состав
         MTSostav sost = mtc.Get_MTSostav(id_sostav);
         // Определим код станции по справочникам
         int?codecs_in   = refRW.GetCodeCSStations(int.Parse(sost.CompositionIndex.Substring(9, 4)) * 10);
         int?codecs_from = refRW.GetCodeCSStations(int.Parse(sost.CompositionIndex.Substring(0, 4)) * 10);
         // Определим класс данных вагоны
         List <trWagon> list_wag = new List <trWagon>();
         list_wag = GetListWagonInArrival(mtc.Get_MTListToSostav(id_sostav), codecs_in, mtc.GetMTConsignee(tMTConsignee.AMKR));
         trSostav sostav = new trSostav()
         {
             id = sost.IDMTSostav,
             codecs_in_station   = codecs_in,
             codecs_from_station = codecs_from,
             //FileName = sost.FileName,
             //CompositionIndex = sost.CompositionIndex,
             DateTime_from = sost.DateTime,
             //Operation = sost.Operation,
             //Create = sost.Create,
             //Close = sost.Close,
             ParentID = sost.ParentID,
             Wagons   = list_wag != null?list_wag.ToArray() : null,
         };
         // Поставим вагоны в систему RailCars
         int res_arc;
         try
         {
             //res_arc = rc_transfer.PutInArrival(sostav);
             res_arc = saptr.PutInSapIncomingSupply(sostav);
             if (res_arc < 0)
             {
                 //LogRW.LogError(String.Format("[MT.ArrivalToRailWay] :Ошибка переноса состава в прибытие системы RailCars, состав: {0}, код ошибки: {1}.", sostav.id, res_arc), this.eventID);
             }
         }
         catch (Exception e)
         {
             //LogRW.LogError(String.Format("[MT.ArrivalToRailWay] :Ошибка переноса состава в прибытие системы RailCars, состав: {0}. Подробно: (источник: {1}, № {2}, описание:  {3})", sostav.id, e.Source, e.HResult, e.Message), this.eventID);
             res_arc = -1;
         }
         // Поставим вагоны в систему RailWay
         // TODO: Выполнить код постановки вагонов в систему RailWay (прибытие из КР)
         // ..................
     }
     catch (AggregateException agex)
     {
         agex.Handle(ex =>
         {
             //LogRW.LogError(String.Format("[MT.ArrivalToRailWay]: Общая ошибка переноса состава в прибытие системы RailWay (источник: {0}, № {1}, описание:  {2})", ex.Source, ex.HResult, ex.Message), this.eventID);
             return(true);
         });
         return(-1);
     }
     return(0);//TODO: исправить возврат
 }