public void InsertToDoTest() { SchedulingManager ngm = new SchedulingManager(); PostInsertToDoRequest request = new PostInsertToDoRequest { Version = version, ContractNumber = contractNumber, UserId = userId, ToDo = new AppDomain.NG.DTO.ToDo { AssignedToId = "5325c821072ef705080d3489", CategoryId = "53f7964cd433231edc7d24ce", Description = "app domain desc 2", DueDate = DateTime.UtcNow, PatientId = "5325db87d6a4850adcbba986", PriorityId = 0, ProgramIds = new List <string> { "532caae9a38116ac18000846" }, Title = "app domain title 2", } }; PostInsertToDoResponse response = ngm.InsertToDo(request); Assert.IsNotNull(response); }
public PostInsertToDoResponse Post(PostInsertToDoRequest request) { PostInsertToDoResponse response = new PostInsertToDoResponse(); SchedulingManager toDoMgr = new SchedulingManager(); ValidateTokenResponse result = null; try { request.Token = base.Request.Headers["Token"] as string; result = Security.IsUserValidated(request.Version, request.Token, request.ContractNumber); if (result.UserId.Trim() != string.Empty) { request.UserId = result.UserId; response = toDoMgr.InsertToDo(request); } else { throw new UnauthorizedAccessException(); } } catch (Exception ex) { CommonFormatter.FormatExceptionResponse(response, base.Response, ex); if ((ex is WebServiceException) == false) { toDoMgr.LogException(ex); } } finally { List <string> patientIds = null; if (request.ToDo != null) { patientIds = new List <string>(); patientIds.Add(request.ToDo.PatientId); } if (result != null) { AuditHelper.LogAuditData(request, result.SQLUserId, patientIds, System.Web.HttpContext.Current.Request, request.GetType().Name); } } return(response); }
public PostInsertToDoResponse InsertToDo(PostInsertToDoRequest request) { try { if (request.ToDo == null) { throw new Exception("The ToDo property cannot be null in the request."); } PostInsertToDoResponse response = new PostInsertToDoResponse(); //[Route("/{Context}/{Version}/{ContractNumber}/Scheduling/ToDo/Insert", "PUT")] IRestClient client = new JsonServiceClient(); string url = Common.Helper.BuildURL(string.Format("{0}/{1}/{2}/{3}/Scheduling/ToDo/Insert", DDSchedulingUrl, "NG", request.Version, request.ContractNumber), request.UserId); ToDoData data = new ToDoData { AssignedToId = request.ToDo.AssignedToId, CategoryId = request.ToDo.CategoryId, Description = request.ToDo.Description, DueDate = request.ToDo.DueDate, StartTime = request.ToDo.StartTime, Duration = request.ToDo.Duration, PatientId = request.ToDo.PatientId, PriorityId = request.ToDo.PriorityId, ProgramIds = request.ToDo.ProgramIds, Title = request.ToDo.Title, StatusId = request.ToDo.StatusId }; if (request.ToDo.StatusId == (int)Phytel.API.DataDomain.Scheduling.DTO.Status.Met || request.ToDo.StatusId == (int)Phytel.API.DataDomain.Scheduling.DTO.Status.Abandoned) { data.ClosedDate = DateTime.UtcNow; } PutInsertToDoDataResponse dataDomainResponse = client.Put <PutInsertToDoDataResponse>(url, new PutInsertToDoDataRequest { Context = "NG", ContractNumber = request.ContractNumber, Version = request.Version, UserId = request.UserId, ToDoData = data } as object); if (dataDomainResponse != null && dataDomainResponse.ToDoData != null) { ToDo toDo = convertToToDo(dataDomainResponse.ToDoData); // Call Patient DD to get patient details. getPatient(request.Version, request.ContractNumber, request.UserId, client, toDo); response.ToDo = toDo; response.Version = dataDomainResponse.Version; } return(response); } catch (WebServiceException ex) { throw new WebServiceException("AD:InsertToDo()::" + ex.Message, ex.InnerException); } }