示例#1
0
        private void initDeleteAction()
        {
            deleteAction = new MenuItem
            {
                Text          = AppResources.Delete,
                IsDestructive = true
            };

            deleteAction.SetBinding(MenuItem.CommandParameterProperty, new Binding("."));

            deleteAction.Clicked += async(sender, e) =>
            {
                MenuItem mi = (MenuItem)sender;

                msdyn_timeentry time      = (msdyn_timeentry)mi.BindingContext;
                TimeViewModel   model     = new TimeViewModel(time);
                BaseViewModel   viewModel = (BaseViewModel)this.HostPage.BindingContext;

                viewModel.IsBusy = true;
                await model.Delete();

                MessagingCenter.Send <Page>(this.HostPage, Message.RefreshMainPage);
                viewModel.IsBusy = false;
            };
        }
        public IActionResult CreateOrEdit(int?id)
        {
            TimeViewModel vm = new TimeViewModel();

            if (id.HasValue)
            {
                var time = _context.Times.FirstOrDefault(m => m.Id == id);
                if (time == null)
                {
                    return(NotFound());
                }

                vm = new TimeViewModel()
                {
                    Id       = time.Id,
                    Nome     = time.Nome,
                    Bandeira = time.Bandeira,
                    Site     = time.Site
                };

                return(View(vm));
            }

            return(View(vm));
        }
        public IActionResult CreateOrEdit(TimeViewModel vm)
        {
            if (ModelState.IsValid)
            {
                if (vm.Id == 0)
                {
                    var time = new Time()
                    {
                        Id       = vm.Id,
                        Bandeira = vm.Bandeira,
                        Nome     = vm.Nome,
                        Site     = vm.Site
                    };

                    _context.Add(time);
                    _context.SaveChanges();
                }
                else
                {
                    var time = _context.Times.FirstOrDefault(m => m.Id == vm.Id);
                    if (time == null)
                    {
                        return(NotFound());
                    }

                    time.Atualizar(vm.Bandeira, vm.Nome, vm.Site);
                    _context.Times.Attach(time).State = Microsoft.EntityFrameworkCore.EntityState.Modified;

                    _context.SaveChanges();
                }

                return(RedirectToAction(nameof(Index)));
            }
            return(View(vm));
        }
示例#4
0
        public ActionResult Adicionar(TimeViewModel timeViewModel)
        {
            if (ModelState.IsValid)
            {
                Time time = new Time()
                {
                    Nome           = timeViewModel.Nome,
                    NomeAbreviado  = timeViewModel.NomeAbreviado,
                    ImagemBandeira = timeViewModel.BandeiraCaminho,
                };

                try
                {
                    _timeServicoAplicacao.CadastrarTime(time);
                    return(RedirectToAction("Listar"));
                }
                catch (BolaoTIException exception)
                {
                    ModelState.AddModelError("Validação", exception.Message);
                    return(View(timeViewModel));
                }
            }

            return(View(timeViewModel));
        }
示例#5
0
        void MainWindow_Closing(object sender, System.ComponentModel.CancelEventArgs e)
        {
            TimeViewModel tvm = new TimeViewModel();

            //tvm.UpdateCloseProgram();
            tvm.UpdateCloseProgram_Click.Execute(tvm.SelectedItem);
        }
示例#6
0
        public IActionResult Event(TimeViewModel model)
        {
            if (!IsLoggedIn)
            {
                return(Redirect("Login"));
            }

            var evt = new Event();

            evt.EventTypeId        = model.eventTypeId;
            evt.EventDateTime      = DateTime.Parse(model.eventDateTime);
            evt.Note               = model.note;
            evt.EmployeeId         = employeeId;
            evt.JobId              = model.jobId;
            evt.JobRevision        = 1;
            evt.LastUpdateDateTime = DateTime.Now;
            evt.LastEditedId       = employeeId;

            ttContext.Events.Add(evt);
            ttContext.SaveChanges();

            model = new TimeViewModel
            {
                eventDateTime = DateTime.Now.ToString("MM/dd/yyyy HH:mm"),
                message       = "Event Saved"
            };
            populateTimeModel(model);

            return(View(model));
        }
示例#7
0
        public TimePage(IKitsTajmService service)
        {
            InitializeComponent();

            this._service = service;
            this._model = new TimeViewModel();
            this._weekmodels = new WeekModelRepository(this._service, this._model);

            var currentmodel = this._weekmodels.GetModel(DateTime.Now);
            var currentpage = new WeekPage(this._service, currentmodel);

            var previouspage = GetPreviousWeek(
                currentmodel,
                this._weekmodels,
                this._service);
            var nextpage = GetNextWeek(
                currentmodel,
                this._weekmodels,
                this._service);

            this.Children.Add(currentpage);
            this.Children.Insert(0, previouspage);
            this.Children.Add(nextpage);

            this._initialized = true;
        }
        public void TimeEntryDurationValidationTest()
        {
            // Prepare the time entries for test purposes.
            DateTime dateTime = DateTime.Today;

            msdyn_timeentry timeEntry1 = new msdyn_timeentry();

            timeEntry1.msdyn_timeentryId = new Guid();
            timeEntry1.msdyn_description = "entry 1";
            timeEntry1.msdyn_date        = dateTime;
            timeEntry1.msdyn_duration    = 20 * 60; // 20 hours.

            msdyn_timeentry timeEntry2 = new msdyn_timeentry();

            timeEntry2.msdyn_timeentryId = new Guid();
            timeEntry2.msdyn_description = "entry 2";
            timeEntry2.msdyn_date        = dateTime;
            timeEntry2.msdyn_duration    = 4 * 60 + 1; // 4 hours and 1 minute.

            TimeViewModel           entry     = new TimeViewModel(timeEntry1);
            TimeCollectionViewModel viewModel = new TimeCollectionViewModel();

            viewModel.AddTimeEntries(new msdyn_timeentry[] { timeEntry1, timeEntry2 });

            Assert.IsFalse(entry.CanTimeBeSaved(timeEntry1), "The time entry should not be able to save since the total duration is 24:01");

            timeEntry1.msdyn_duration = 19 * 60 + 59;    // 19 hours and 59 minutes.
            Assert.IsTrue(entry.CanTimeBeSaved(timeEntry1), "The time entry should be able to save since the total duration is 24:00");
        }
示例#9
0
        public async Task <IActionResult> Edit(int id, [Bind("ID,Billed,Date,Duration,Memo,ProjectID,CustomerID")] Time time)
        {
            if (id != time.ID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(time);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!TimeExists(time.ID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction("Index"));
            }

            TimeViewModel model = getTimeViewModel(time);

            return(View(model));
        }
示例#10
0
 /// <summary>
 /// Initialize Time view model
 /// </summary>
 /// <param name="viewModel"></param>
 protected override void InitViewModel(BaseViewModel viewModel)
 {
     this.ViewModel = viewModel as TimeViewModel;
     if (this.ViewModel == null)
     {
         this.ViewModel = new TimeViewModel(new msdyn_timeentry());
     }
 }
示例#11
0
        public ActionResult Create()
        {
            var time     = _context.times.SingleOrDefault(m => m.id == 1);
            var timeview = new TimeViewModel();

            timeview.time = time;
            //return HttpNotFound();
            return(View("_Create", timeview));
        }
示例#12
0
 public TimeView()
 {
     this.vm = new TimeViewModel(PlaneModel.GetModel());
     InitializeComponent();
     DataContext = vm;
     // notify on change
     vm.PropertyChanged += TimeChanged;
     vm.PropertyChanged += UpdateTotalTime;
 }
示例#13
0
        private TimeViewModel getTimeViewModel(Time time)
        {
            TimeViewModel timeViewModel = new TimeViewModel();

            timeViewModel.time      = time;
            timeViewModel.customers = _context.Customer.ToList();
            timeViewModel.projects  = _context.Project.ToList();
            return(timeViewModel);
        }
示例#14
0
        public IActionResult Load()
        {
            try
            {
                var draw = HttpContext.Request.Form["draw"].FirstOrDefault();
                // Skiping number of Rows count
                var start = Request.Form["start"].FirstOrDefault();
                // Paging Length 10,20
                var length = Request.Form["length"].FirstOrDefault();
                // Sort Column Name
                var sortColumn = Request.Form["columns[" + Request.Form["order[0][column]"].FirstOrDefault() + "][name]"].FirstOrDefault();
                // Sort Column Direction ( asc ,desc)
                var sortColumnDirection = Request.Form["order[0][dir]"].FirstOrDefault();
                // Search Value from (Search box)
                var searchValue = Request.Form["search[value]"].FirstOrDefault().ToLower();

                //Paging Size (10,20,50,100)
                int pageSize = length != null?Convert.ToInt32(length) : 0;

                int skip = start != null?Convert.ToInt32(start) : 0;

                int recordsTotal = 0;

                // Getting all Customer data
                var times        = _timeAppService.GetAll();
                var result       = times.Select(x => TimeViewModel.ToViewModel(x));
                var customerData = result;

                sortColumn = sortColumn.Equals("Id") || string.IsNullOrEmpty(sortColumn) ? "Nome" : sortColumn;
                var prop = ClassUtil.GetProperty <TimeViewModel>(sortColumn);
                if (sortColumnDirection == "asc")
                {
                    customerData = customerData.OrderBy(prop.GetValue);
                }
                else
                {
                    customerData = customerData.OrderByDescending(prop.GetValue);
                }

                //Search
                if (!string.IsNullOrEmpty(searchValue))
                {
                    customerData = customerData.Where(m => m.Nome.ToLower().Contains(searchValue) || m.Sigla.ToLower().Contains(searchValue));
                }

                //total number of rows count
                recordsTotal = customerData.Count();
                //Paging
                var data = customerData.Skip(skip).Take(pageSize).ToList();
                //Returning Json Data
                return(Json(new { draw, recordsFiltered = recordsTotal, recordsTotal, data }));
            }
            catch (Exception)
            {
                throw;
            }
        }
        public void Constructor_does_coustruct_correctly_if_time_is_null()
        {
            //Arrange
            //Act
            var sut = new TimeViewModel(null);

            //Assert
            sut.Value.Should().Be(0);
            sut.Unit.Should().Be((TimeUnit) default);
示例#16
0
        public void Test_TimeViewModelExists()
        {
            var           sut  = new TimeViewModel();
            TimeViewModel sut1 = new TimeViewModel();

            var actual = sut;

            Assert.IsType <TimeViewModel>(actual);
            Assert.NotNull(actual);
        }
        public void CovertedTimeViewModel_does_return_correctly(
            double input, TimeUnit baseUnit, List <TimeViewModel> expectedConvertedModels)
        {
            //Arrange
            //Act
            var convertedModels = TimeViewModel.CovertedTimeViewModel(input, baseUnit);

            //Assert
            convertedModels.Should().BeEquivalentTo(expectedConvertedModels);
        }
示例#18
0
        public TimeViewModel GetLocalTimeView()
        {
            var localTime = _timeService.GetLocalTime();
            var vmodel    = new TimeViewModel
            {
                FormattedTime = $"{localTime.TimeStamp:HHmm}",
                FormattedDate = $"{localTime.TimeStamp:yyyyMMdd}",
                Week          = localTime.WeekOfYear
            };

            return(vmodel);
        }
示例#19
0
        public async Task <ActionResult> Adversarios(int codigoTime)
        {
            var adversarios = await _escalacaoBLL.RetornarAdversarios(Session["user"].ToString());

            var model = new TimeViewModel()
            {
                Times      = adversarios.Select(c => new TimeModel(c)).ToList(),
                codigoTime = codigoTime
            };

            return(View("Adversarios/Index", model));
        }
        public MainWindow()
        {
            IUnityContainer container = new UnityContainer();

            container.RegisterType <IClockService, ClockService>();

            _timeViewModel = container.Resolve <TimeViewModel>();

            DataContext = _timeViewModel;

            InitializeComponent();
        }
        public async Task <ActionResult> Create(TimeViewModel Time)
        {
            try
            {
                await connectionApi.InsertTime(Time);

                return(RedirectToAction("Index"));
            }
            catch
            {
                return(View());
            }
        }
示例#22
0
        public ActionResult Edit([Bind(Include = "IdTime,Nome,IdCidade")] TimeViewModel viewModel)
        {
            if (ModelState.IsValid)
            {
                Time time = Mapper.Map <TimeViewModel, Time>(viewModel);

                repositorioTime.Alterar(time);

                return(RedirectToAction("Index"));
            }

            return(View(viewModel));
        }
        public void SetDefaultValuesOnlyWorksOnNewEntries()
        {
            msdyn_timeentry timeEntry = new msdyn_timeentry();
            TimeViewModel   entry     = new TimeViewModel(timeEntry);

            timeEntry.Id = Guid.NewGuid();
            entry.SetDefaultValues();

            Assert.IsNull(timeEntry.msdyn_date);
            Assert.IsNull(timeEntry.msdyn_duration);
            Assert.IsNull(timeEntry.msdyn_type);
            Assert.IsNull(timeEntry.msdyn_entryStatus);
        }
        public async Task <ActionResult> Edit(int id, TimeViewModel Time)
        {
            try
            {
                await connectionApi.UpdateTime(id, Time);

                return(RedirectToAction("Index"));
            }
            catch
            {
                return(View());
            }
        }
        private static void PadModel(
            LinkedListNode<WeekViewModel> currentnode,
            TimeViewModel timemodel)
        {
            var models = currentnode.List;

            var currentmodel = currentnode.Value;
            var previousnode = currentnode.Previous;
            var nextnode = currentnode.Next;

            //pad adjacent models
            if (previousnode == null)
            {
                previousnode = models.AddBefore(
                    currentnode,
                    GetPreviousWeek(currentmodel, timemodel));
            }

            if (nextnode == null)
            {
                nextnode = models.AddAfter(
                    currentnode,
                    GetNextWeek(currentmodel, timemodel));
            }

            //pad rest of month(s)
            LinkedListNode<WeekViewModel> newpreviousnode = previousnode;
            LinkedListNode<WeekViewModel> newnextnode = nextnode;

            while (newpreviousnode.Previous == null
                && newpreviousnode.Value.Monday.Date.Month == previousnode.Value.Monday.Date.Month
                && newpreviousnode.Value.Monday.Date.Year == previousnode.Value.Monday.Date.Year)
            {
                newpreviousnode = models.AddBefore(
                    newpreviousnode,
                    GetPreviousWeek(
                        newpreviousnode.Value,
                        timemodel));
            }

            while (newnextnode.Next == null
                && newnextnode.Value.Sunday.Date.Month == nextnode.Value.Sunday.Date.Month
                && newnextnode.Value.Monday.Date.Year == nextnode.Value.Monday.Date.Year)
            {
                newnextnode = models.AddAfter(
                    newnextnode,
                    GetNextWeek(
                        newnextnode.Value,
                        timemodel));
            }
        }
        public void SetDefaultValuesTest()
        {
            msdyn_timeentry timeEntry = new msdyn_timeentry();
            TimeViewModel   entry     = new TimeViewModel(timeEntry);
            DateTime        todayUTC  = DateTime.Today;

            entry.SetDefaultValues();

            // validate entry data
            Assert.AreEqual(new DateTime(todayUTC.Year, todayUTC.Month, todayUTC.Day, 12, 0, 0), timeEntry.msdyn_date, "Incorrect default date of noon today.");
            Assert.AreEqual(60, timeEntry.msdyn_duration, "Incorrect default duration");
            Assert.AreEqual((int)msdyn_timeentrytype.Work, timeEntry.msdyn_type.Value, "Incorrect default time entry type");
            Assert.AreEqual((int)msdyn_timeentry_msdyn_entrystatus.Draft, timeEntry.msdyn_entryStatus.Value, "Incorrect default time entry status");
        }
示例#27
0
        public async Task <IActionResult> Create([Bind("ID,Billed,Date,Duration,Memo,ProjectID,CustomerID")] Time time)
        {
            if (ModelState.IsValid)
            {
                _context.Add(time);
                await _context.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }

            TimeViewModel model = getTimeViewModel(time);

            return(View(model));
        }
        public void CanEditTimeEntryTest()
        {
            msdyn_timeentry timeEntry = new msdyn_timeentry();
            TimeViewModel   entry     = new TimeViewModel(timeEntry);

            Assert.IsTrue(entry.CanEdit(), "A time entry that hasn't been saved (has null values) should be editable.");

            timeEntry.Id = Guid.NewGuid();
            entry.SetDefaultValues();
            Assert.IsTrue(entry.CanEdit(), "A time entry that has been saved with values should be editable.");

            timeEntry.msdyn_entryStatus = new OptionSetValue((int)msdyn_timeentry_msdyn_entrystatus.Submitted);
            Assert.IsFalse(entry.CanEdit(), "A time entry that has been submitted with values should be editable.");
        }
        public void Constructor_does_coustruct_correctly(
            double expectedValue, TimeUnit expectedUnit)
        {
            //Arrange
            var time = new Time {
                Value = expectedValue, Unit = expectedUnit
            };

            //Act
            var sut = new TimeViewModel(time);

            //Assert
            sut.Value.Should().Be(expectedValue);
            sut.Unit.Should().Be(expectedUnit);
        }
示例#30
0
        public IActionResult Event(string id)
        {
            if (!IsLoggedIn)
            {
                return(Redirect("Login"));
            }

            var model = new TimeViewModel
            {
                eventDateTime = DateTime.Now.ToString("MM/dd/yyyy HH:mm")
            };

            populateTimeModel(model);

            return(View(model));
        }
示例#31
0
 public ActionResult Edit(TimeViewModel time)
 {
     try
     {
         if (ModelState.IsValid)
         {
             var timeDomain = Mapper.Map <TimeViewModel, Time>(time);
             _UoW.TimeAppService.Update(timeDomain);
             _UoW.Commit();
         }
         return(RedirectToAction("Index"));
     }
     catch
     {
         return(View());
     }
 }
示例#32
0
        // GET: Times/Delete/5
        public async Task <IActionResult> Delete(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var time = await _context.Time.SingleOrDefaultAsync(m => m.ID == id);

            if (time == null)
            {
                return(NotFound());
            }

            TimeViewModel model = getTimeViewModel(time);

            return(View(model));
        }
        private static WeekViewModel GetAnotherWeek(
            WeekViewModel model,
            TimeSpan span,
            TimeViewModel timemodel)
        {
            var newmodel = new WeekViewModel(
                model.Monday.Date.Add(span),
                timemodel);

            return newmodel;
        }
 public WeekModelRepository(IKitsTajmService service, TimeViewModel timemodel)
 {
     this._models = new LinkedList<WeekViewModel>();
     this._service = service;
     this._timemodel = timemodel;
 }
 private static WeekViewModel GetNextWeek(
     WeekViewModel model,
     TimeViewModel timemodel)
 {
     return GetAnotherWeek(
         model,
         TimeSpan.FromDays(7),
         timemodel);
 }