// GET: Procedure/Details public async Task <ActionResult> Details(int?id) { if (!id.HasValue) { return(NotFound()); } var dto = await _procedureService.Get(id.Value); if (dto == null) { return(NotFound()); } return(View(dto.MapToViewModel())); }
public ActionResult Get() { var procedures = _procedureService.Get(); var proceduresToShow = Mapper.Map <IEnumerable <Procedure>, IEnumerable <ProcedureViewModel> >(procedures); return(View(proceduresToShow)); }
private SelectList MakeProceduresList() { var procedures = _procedureService.Get().ToList(); procedures.Insert(0, new Procedure { ProcedureName = "Выберите процедуру" }); var proceduresList = new SelectList(procedures, "ProcedureId", "ProcedureName"); return(proceduresList); }
public ActionResult Add(ProcedureEntryViewModel procedure) { var master = _masterService.GetBy(procedure.MasterId); var requestedProcedure = _procedureService.Get().FirstOrDefault(p => p.ProcedureId == procedure.ProcedureId); var requestedProcedureTimeStart = (procedure.Date + procedure.StartTime.TimeOfDay).TimeOfDay; var requestedProcedureTimeEnd = (procedure.Date + procedure.StartTime.AddHours(requestedProcedure.Duration).TimeOfDay).TimeOfDay; if (procedure.Date + procedure.StartTime.TimeOfDay < DateTime.Now) { TempData["Message"] = "Выберите дату и время не раньше текущей"; return(RedirectToAction("Main", "Home")); } var procedureEntries = new List <ProcedureEntry>(); procedureEntries.AddRange( master.Schedules.SelectMany(a => a.ProcedureEntries)); var procedures = procedureEntries.Select(d => d.Schedule); foreach (var masterProcedure in procedures) { var procedureTimeStart = (masterProcedure.Date + masterProcedure.StartTime.TimeOfDay).TimeOfDay; var procedureTimeEnd = (masterProcedure.Date + masterProcedure.EndTime.TimeOfDay).TimeOfDay; if (masterProcedure.Date.Date == procedure.Date.Date && requestedProcedureTimeStart >= procedureTimeStart && requestedProcedureTimeStart <= procedureTimeEnd && requestedProcedureTimeEnd >= procedureTimeStart && requestedProcedureTimeEnd >= procedureTimeEnd) { TempData["Message"] = "Мастер занят в это время, вы можете просмотреть <a id='modal'>его расписание</a>"; TempData["MasterSchedule"] = master.Schedules.Where(s => s.Date.Date == procedure.Date.Date); return(RedirectToAction("Main", "Home")); } } var procedureToAdd = Mapper.Map <ProcedureEntryViewModel, ProcedureDto>(procedure); procedureToAdd.ClientLogin = User.Identity.Name; _procedureService.Add(procedureToAdd); TempData["Message"] = "Ваша запись принята"; return(RedirectToAction("Main", "Home")); }
public ProcedureBl Get(int id) { var dto = _service.Get(id); return(dto != null ? new ProcedureBl(dto) : null); }