public async Task <Guid> ChangeDayAssignDate(NewDayAssignViewModel model) { var job = await jobService.GetJobById(model.JobId); if (job.JobTypeId != JobTypeEnum.Facility) { var dayPerWeekList = new List <DayPerWeekModel>(); if (model.WeekDay.HasValue) { var dayPerWeekId = Guid.NewGuid(); dayPerWeekList.Add(new DayPerWeekModel { Id = dayPerWeekId, WeekDay = model.WeekDay.Value }); model.DayPerWeekId = dayPerWeekId; } await messageBus.Publish(new SaveDaysPerWeekCommand(model.JobAssignId, dayPerWeekList)); } var result = await dayAssignService.ChangeDayAssignDate(model); janitorHubs.Clients.All.refreshOpenTasks(); janitorHubs.Clients.All.refreshJanitorTasks(); managementHubs.Clients.All.refreshWeekPlanGridTasks(); managementHubs.Clients.All.refreshWeekPlanListTasks(); return(result); }
public async Task <Guid> DayAssignCancel(NewDayAssignViewModel model) { var result = await dayAssignService.CancelJob(model); janitorHubs.Clients.All.refreshOpenTasks(); janitorHubs.Clients.All.refreshJanitorTasks(); managementHubs.Clients.All.refreshWeekPlanGridTasks(); managementHubs.Clients.All.refreshWeekPlanListTasks(); return(result); }
public async Task <IChangeStatusModel> AssignsMembersGroup(NewDayAssignViewModel model) { var result = await dayAssignService.AssignsMembersGroup(model); janitorHubs.Clients.All.refreshOpenTasks(); janitorHubs.Clients.All.refreshJanitorTasks(); managementHubs.Clients.All.refreshWeekPlanGridTasks(); managementHubs.Clients.All.refreshWeekPlanListTasks(); return(result); }
public async Task <JobViewModel> GetWeekTask(JobFilterViewModel model) { IJob task = await jobService.GetJobById(model.JobId); var jobAssignId = Guid.Empty; var existingAssignId = model.DayAssignId.HasValue ? model.DayAssignId.Value : Guid.Empty; var dayAssign = dayAssignProvider.Get(existingAssignId); if (dayAssign != null) { JobAssign jobAssign = jobAssignProvider.GetById(dayAssign.JobAssignId); task.Assigns.Add(jobAssign); jobAssignId = dayAssign.JobAssignId; task.DayAssigns.Add(dayAssign); } else { jobAssignId = jobAssignProvider.GetAssignByJobIdAndDepartmentId(model.JobId, model.HousingDepartmentId).Id; //Create new dayAssign and set status "Assigned" var newDayAssignModel = new NewDayAssignViewModel { JobId = model.JobId, DepartmentId = model.HousingDepartmentId, JobAssignId = jobAssignId, CurrentWeekDay = model.CurrentWeekDay, WeekNumber = model.WeekNumber, Date = model.Date }; var createResult = await dayAssignService.CreateDayAssignWithEstimate(newDayAssignModel); if (createResult != Guid.Empty) { var newDayAssign = dayAssignProvider.Get(createResult); await jobStatusService.Assigned(createResult, newDayAssign.StatusId); task.DayAssigns.Add(newDayAssign); } } return(new JobViewModel { Job = task, JobAssignId = jobAssignId }); }
public async Task <Guid> ChangeDayAssignEstimate(NewDayAssignViewModel model) { var dayAssign = model.DayAssignId.HasValue ? dayAssignProvider.Get(model.DayAssignId.Value) : null; if (dayAssign == null) { var createResult = await dayAssignService.CreateDayAssign(model); managementHubs.Clients.All.refreshWeekPlanGridTasks(); managementHubs.Clients.All.refreshWeekPlanListTasks(); return(createResult); } else { model.Id = model.DayAssignId.Value; await messageBus.Publish(model.Map <ChangeDayAssignEstimatedMinutesCommand>()); var changeResult = model.DayAssignId.Value; managementHubs.Clients.All.refreshWeekPlanGridTasks(); managementHubs.Clients.All.refreshWeekPlanListTasks(); return(changeResult); } }