Пример #1
0
        public void Test_AwbManager_Create()
        {
            var airWaybillId       = _context.Create <long>();
            var applicationId      = _context.Create <long>();
            var cargoIsFlewStateId = _context.Create <long>();
            var model = _context.Create <AwbAdminModel>();

            model.GTD = null;

            _context.StateConfig.Setup(x => x.CargoIsFlewStateId).Returns(cargoIsFlewStateId);
            _context.ApplicationAwbManager.Setup(x => x.SetAwb(applicationId, airWaybillId));
            _context.AwbRepository.Setup(x => x.Add(It.IsAny <AirWaybillEditData>(), cargoIsFlewStateId, TestConstants.TestAdminUserId))
            .Returns(() => airWaybillId);

            var airWaybillData = AwbMapper.GetData(model);

            _manager.Create(applicationId, airWaybillData, TestConstants.TestAdminUserId);

            _context.ApplicationAwbManager.Verify(x => x.SetAwb(applicationId, airWaybillId), Times.Once());
            _context.AwbRepository.Verify(x => x.Add(It.Is <AirWaybillEditData>(
                                                         data => data.ArrivalAirport == model.ArrivalAirport &&
                                                         data.Bill == model.Bill &&
                                                         data.DepartureAirport == model.DepartureAirport &&
                                                         data.BrokerId == model.BrokerId &&
                                                         data.DateOfArrival == DateTimeOffset.Parse(model.DateOfArrivalLocalString) &&
                                                         data.DateOfDeparture == DateTimeOffset.Parse(model.DateOfDepartureLocalString) &&
                                                         data.GTD == null), cargoIsFlewStateId, TestConstants.TestAdminUserId),
                                          Times.Once());

            _context.StateConfig.Verify(x => x.CargoIsFlewStateId, Times.Once());
        }
Пример #2
0
        public void Test_AwbUpdateManager_Map_AirWaybillEditModel()
        {
            var model = _context.Create <AwbBrokerModel>();
            var data  = new AirWaybillData();

            AwbMapper.Map(model, data);

            model.ShouldBeEquivalentTo(data, options => options.ExcludingMissingProperties());
        }
Пример #3
0
        public void Test_AwbUpdateManager_Map_BrokerAWBModel()
        {
            var model = _context.Create <AwbAdminModel>();
            var data  = new AirWaybillData();

            AwbMapper.Map(model, data);

            model.ShouldBeEquivalentTo(data, options => options.ExcludingMissingProperties());
            data.DateOfArrival.ShouldBeEquivalentTo(DateTimeOffset.Parse(model.DateOfArrivalLocalString));
            data.DateOfDeparture.ShouldBeEquivalentTo(DateTimeOffset.Parse(model.DateOfDepartureLocalString));
        }
Пример #4
0
        public void Test_AwbManager_Map_SenderAwbModel()
        {
            var model = _context.Create <AwbSenderModel>();
            var data  = AwbMapper.GetData(model, TestConstants.TestSenderUserId);

            model.ShouldBeEquivalentTo(data, options => options.ExcludingMissingProperties());

            data.DateOfArrival.ShouldBeEquivalentTo(DateTimeOffset.Parse(model.DateOfArrivalLocalString));
            data.DateOfDeparture.ShouldBeEquivalentTo(DateTimeOffset.Parse(model.DateOfDepartureLocalString));
            data.GTD.Should().BeNull();
            data.SenderUserId.ShouldBeEquivalentTo(TestConstants.TestSenderUserId);
        }
Пример #5
0
        public void Test_AwbManager_Map_AirWaybillEditModel()
        {
            var model = _context.Create <AwbAdminModel>();
            var data  = AwbMapper.GetData(model);

            model.ShouldBeEquivalentTo(data,
                                       options => options.ExcludingMissingProperties()
                                       .Excluding(x => x.GTD));

            data.DateOfArrival.ShouldBeEquivalentTo(DateTimeOffset.Parse(model.DateOfArrivalLocalString));
            data.DateOfDeparture.ShouldBeEquivalentTo(DateTimeOffset.Parse(model.DateOfDepartureLocalString));
            data.GTD.Should().BeNull();
        }
Пример #6
0
        public virtual ViewResult Edit(long id)
        {
            var data = _awbRepository.Get(id).First();

            if (data.StateId == _stateConfig.CargoIsCustomsClearedStateId)
            {
                return(View("Message", (object)string.Format(Pages.CantEditAirWaybill, data.Bill)));
            }

            var model = AwbMapper.GetBrokerModel(data);

            BindBag(data);

            return(View(model));
        }
Пример #7
0
        public virtual ActionResult Create(long?applicationId, AwbAdminModel model)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    var data = AwbMapper.GetData(model);

                    var id = _awbManager.Create(applicationId, data, _identity.Id);

                    return(RedirectToAction(MVC.AdminAwb.Edit(id)));
                }
            }
            catch (DublicateException)
            {
                ModelState.AddModelError("Bill", Validation.AirWaybillAlreadyExists);
            }

            BindBag(null);

            return(View(model));
        }
Пример #8
0
        public virtual ActionResult Create(long?id, AwbSenderModel model)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    var airWaybillData = AwbMapper.GetData(model, _identity.Id);

                    _awbManager.Create(id, airWaybillData, _identity.Id);

                    return(RedirectToAction(MVC.AirWaybill.Index()));
                }
            }
            catch (DublicateException)
            {
                ModelState.AddModelError("Bill", Validation.AirWaybillAlreadyExists);
            }

            BindBag(null);

            return(View(model));
        }