Пример #1
0
        public ShiftsPage()
        {
            var shiftsPageViewModel = new ShiftsViewModel();

            this.BindingContext = shiftsPageViewModel;

            InitializeComponent();
        }
Пример #2
0
        public ViewResult Create()
        {
            var model = new ShiftsViewModel();

            model.MinuteEarly = 0;
            model.MinuteLate  = 0;

            return(View(model));
        }
Пример #3
0
        public ActionResult Edit(ShiftsViewModel model)
        {
            if (ModelState.IsValid)
            {
                if (Request["Submit"] == "Save")
                {
                    var Shifts = ShiftsRepository.GetShiftsById(model.Id);
                    AutoMapper.Mapper.Map(model, Shifts);
                    Shifts.ModifiedUserId = WebSecurity.CurrentUserId;
                    Shifts.ModifiedDate   = DateTime.Now;
                    string[] list_StartTime = model.StartTime.Split(':');
                    if (Convert.ToInt32(list_StartTime[0]) < 10)
                    {
                        Shifts.StartTime = 0 + model.StartTime;
                    }
                    string[] list_StartTimeIn = model.StartTimeIn.Split(':');
                    if (Convert.ToInt32(list_StartTimeIn[0]) < 10)
                    {
                        Shifts.StartTimeIn = 0 + model.StartTimeIn;
                    }
                    string[] list_StartTimeOut = model.StartTimeOut.Split(':');
                    if (Convert.ToInt32(list_StartTimeOut[0]) < 10)
                    {
                        Shifts.StartTimeOut = 0 + model.StartTimeOut;
                    }
                    string[] list_EndTime = model.EndTime.Split(':');
                    if (Convert.ToInt32(list_EndTime[0]) < 10)
                    {
                        Shifts.EndTime = 0 + model.EndTime;
                    }
                    string[] list_EndTimeIn = model.EndTimeIn.Split(':');
                    if (Convert.ToInt32(list_EndTimeIn[0]) < 10)
                    {
                        Shifts.EndTimeIn = 0 + model.EndTimeIn;
                    }
                    string[] list_EndTimeOut = model.EndTimeOut.Split(':');
                    if (Convert.ToInt32(list_EndTimeOut[0]) < 10)
                    {
                        Shifts.EndTimeOut = 0 + model.EndTimeOut;
                    }
                    ShiftsRepository.UpdateShifts(Shifts);

                    TempData[Globals.SuccessMessageKey] = App_GlobalResources.Wording.UpdateSuccess;
                    return(RedirectToAction("Index"));
                }

                return(View(model));
            }

            return(View(model));

            //if (Request.UrlReferrer != null)
            //    return Redirect(Request.UrlReferrer.AbsoluteUri);
            //return RedirectToAction("Index");
        }
Пример #4
0
        public ActionResult Create(ShiftsViewModel model)
        {
            if (ModelState.IsValid)
            {
                var Shifts = new Domain.Staff.Entities.Shifts();
                AutoMapper.Mapper.Map(model, Shifts);
                Shifts.IsDeleted      = false;
                Shifts.CreatedUserId  = WebSecurity.CurrentUserId;
                Shifts.ModifiedUserId = WebSecurity.CurrentUserId;
                Shifts.CreatedDate    = DateTime.Now;
                Shifts.ModifiedDate   = DateTime.Now;
                Shifts.CategoryShifts = "Part-time";
                string[] list_StartTime = model.StartTime.Split(':');
                if (Convert.ToInt32(list_StartTime[0]) < 10)
                {
                    Shifts.StartTime = 0 + model.StartTime;
                }
                string[] list_StartTimeIn = model.StartTimeIn.Split(':');
                if (Convert.ToInt32(list_StartTimeIn[0]) < 10)
                {
                    Shifts.StartTimeIn = 0 + model.StartTimeIn;
                }
                string[] list_StartTimeOut = model.StartTimeOut.Split(':');
                if (Convert.ToInt32(list_StartTimeOut[0]) < 10)
                {
                    Shifts.StartTimeOut = 0 + model.StartTimeOut;
                }
                string[] list_EndTime = model.EndTime.Split(':');
                if (Convert.ToInt32(list_EndTime[0]) < 10)
                {
                    Shifts.EndTime = 0 + model.EndTime;
                }
                string[] list_EndTimeIn = model.EndTimeIn.Split(':');
                if (Convert.ToInt32(list_EndTimeIn[0]) < 10)
                {
                    Shifts.EndTimeIn = 0 + model.EndTimeIn;
                }
                string[] list_EndTimeOut = model.EndTimeOut.Split(':');
                if (Convert.ToInt32(list_EndTimeOut[0]) < 10)
                {
                    Shifts.EndTimeOut = 0 + model.EndTimeOut;
                }
                ShiftsRepository.InsertShifts(Shifts);

                TempData[Globals.SuccessMessageKey] = App_GlobalResources.Wording.InsertSuccess;
                return(RedirectToAction("Index"));
            }
            return(View(model));
        }
Пример #5
0
        public ActionResult Edit(int?Id)
        {
            var Shifts = ShiftsRepository.GetShiftsById(Id.Value);

            if (Shifts != null && Shifts.IsDeleted != true)
            {
                var model = new ShiftsViewModel();
                AutoMapper.Mapper.Map(Shifts, model);

                //if (model.CreatedUserId != Erp.BackOffice.Helpers.Common.CurrentUser.Id && Erp.BackOffice.Helpers.Common.CurrentUser.UserTypeId != 1)
                //{
                //    TempData["FailedMessage"] = "NotOwner";
                //    return RedirectToAction("Index");
                //}

                return(View(model));
            }
            if (Request.UrlReferrer != null)
            {
                return(Redirect(Request.UrlReferrer.AbsoluteUri));
            }
            return(RedirectToAction("Index"));
        }
Пример #6
0
 public ShiftsView()
 {
     InitializeComponent();
     ShiftsViewModel = new ShiftsViewModel();
     DataContext     = ShiftsViewModel;
 }
        public ActionResult Submit(ShiftsViewModel shifts)
        {
            if (!caSession.AuthoriseSession())
            {
                return(Redirect((string)Session["ErrorUrl"]));
            }

            try
            {
                if (ModelState.IsValid)
                {
                    var employeeId = shifts.EmployeeId;

                    foreach (var itemWeekDay in shifts.RepeatShifts)
                    {
                        if (itemWeekDay.HasValue)
                        {
                            var weekNumber = (int)shifts.WeekDaysList.FirstOrDefault().Value;
                            var weekDay    = itemWeekDay.Value;
                            int year       = DateTime.UtcNow.Year;
                            var date       = GetDateFromWeekNumberAndDayOfWeek(weekNumber, year, weekDay);
                            var dateValue  = GetDateFromWeekNumberAndDayOfWeek(weekNumber, year, weekDay).ToShortDateString();
                            var startTime  = DateTime.Parse(dateValue + ' ' + shifts.StartTime.Value.ToString("HH:mm"));
                            var endTime    = DateTime.Parse(dateValue + ' ' + shifts.EndTime.Value.ToString("HH:mm"));
                            var shiftsInfo = _shiftsServices.GetShiftsByEmployeeIdAndWeekDayAndWeekNumber(employeeId, date, weekNumber).ToList();

                            //delete first the shift
                            foreach (var itemShifts in shiftsInfo)
                            {
                                _shiftsServices.Delete(itemShifts);
                            }

                            //insert next
                            var newShift = new Shifts
                            {
                                EmployeeId    = employeeId,
                                WeekNumber    = weekNumber,
                                WeekDay       = weekDay,
                                ExpectedHours = shifts.ExpectedHours,
                                TimeBreaks    = TimeSpan.Parse(shifts.TimeBreaks),
                                LocationsId   = CurrentWarehouseId,
                                Date          = DateTime.Parse(dateValue),
                                StartTime     = startTime,
                                EndTime       = endTime,
                                TenantId      = CurrentTenantId,
                                DateCreated   = DateTime.UtcNow,
                                DateUpdated   = DateTime.UtcNow,
                                CreatedBy     = CurrentUserId,
                                UpdatedBy     = CurrentUserId
                            };

                            _shiftsServices.Insert(newShift);
                        }
                    }

                    if (shifts.Id <= 0)
                    {
                        //insert
                        ViewBag.Message = $"Successfully Added on {DateTime.Now}.";
                    }
                    else
                    {
                        //update
                        ViewBag.Message = $"Successfully Updated on {DateTime.Now}.";
                    }

                    //redirect to Index to show all shifts for this employeeId
                    return(RedirectToAction("Index", new { id = shifts.EmployeeId, message = ViewBag.Message }));
                }
                else //ModelState.IsValid is not valid
                {
                    ViewBag.StoresList = new SelectList(_storesServices.GetAllTenantLocations(CurrentTenantId), "LocationId", "WarehouseName", 0);
                    ViewBag.EmployeeId = new SelectList(_employeeServices.GetAllEmployeesByLocation(CurrentTenantId, CurrentWarehouseId), "ResourceId", "Name");

                    List <SelectListItem> weeks = new List <SelectListItem>();
                    for (int i = 1; i < 53; i++) //loop through weeks.
                    {
                        weeks.AddRange(new[] {
                            new SelectListItem()
                            {
                                Text = "Week " + i, Value = i.ToString()
                            }
                        });
                    }

                    ViewData["WeekDaysList"] = new SelectList(weeks, "Value", "Text", GetWeekNumber());

                    return(View("_CreateEdit", Mapper.Map(_shiftsServices.GetByShiftsId(shifts.Id), new ShiftsViewModel())));
                }
            }
            catch (Exception e)
            {
                //log exception
                var err = e.Message;

                return(View("_ErrorResult"));
            }
        }