Example #1
0
        public DeleteToDoByPatientIdDataResponse DeleteToDoByPatientId(DeleteToDoByPatientIdDataRequest request)
        {
            DeleteToDoByPatientIdDataResponse response = new DeleteToDoByPatientIdDataResponse();

            try
            {
                ISchedulingRepository repo = Factory.GetRepository(request, RepositoryType.ToDo);
                GetToDosDataRequest   getToDosDataRequest = new GetToDosDataRequest
                {
                    PatientId      = request.PatientId,
                    Context        = request.Context,
                    ContractNumber = request.ContractNumber,
                    UserId         = request.UserId,
                    Version        = request.Version
                };
                GetToDosDataResponse toDosResponse = repo.FindToDos(getToDosDataRequest);
                List <ToDoData>      patientToDos  = (List <ToDoData>)toDosResponse.ToDos; //repo.FindToDos(getToDosDataRequest);
                List <string>        deletedIds    = null;
                if (patientToDos != null)
                {
                    deletedIds = new List <string>();
                    patientToDos.ForEach(u =>
                    {
                        request.Id = u.Id;
                        repo.Delete(request);
                        deletedIds.Add(request.Id);
                    });
                    response.DeletedIds = deletedIds;
                }
                response.Success = true;
                return(response);
            }
            catch (Exception ex) { throw ex; }
        }
Example #2
0
        public void Delete(object entity)
        {
            DeleteToDoByPatientIdDataRequest request = (DeleteToDoByPatientIdDataRequest)entity;

            try
            {
                using (SchedulingMongoContext ctx = new SchedulingMongoContext(_dbName))
                {
                    var q = MB.Query <METoDo> .EQ(b => b.Id, ObjectId.Parse(request.Id));

                    var uv = new List <MB.UpdateBuilder>();
                    uv.Add(MB.Update.Set(METoDo.TTLDateProperty, DateTime.UtcNow.AddDays(_expireDays)));
                    uv.Add(MB.Update.Set(METoDo.LastUpdatedOnProperty, DateTime.UtcNow));
                    uv.Add(MB.Update.Set(METoDo.DeleteFlagProperty, true));
                    uv.Add(MB.Update.Set(METoDo.UpdatedByProperty, ObjectId.Parse(this.UserId)));

                    IMongoUpdate update = MB.Update.Combine(uv);
                    ctx.ToDos.Collection.Update(q, update);

                    AuditHelper.LogDataAudit(this.UserId,
                                             MongoCollectionName.ToDo.ToString(),
                                             request.Id.ToString(),
                                             Common.DataAuditType.Delete,
                                             request.ContractNumber);
                }
            }
            catch (Exception) { throw; }
        }
Example #3
0
        public DeleteToDoByPatientIdDataResponse Delete(DeleteToDoByPatientIdDataRequest request)
        {
            DeleteToDoByPatientIdDataResponse response = new DeleteToDoByPatientIdDataResponse();

            try
            {
                if (string.IsNullOrEmpty(request.UserId))
                {
                    throw new UnauthorizedAccessException("SchedulingDD:Delete()::Unauthorized Access");
                }

                response         = Manager.DeleteToDoByPatientId(request);
                response.Version = request.Version;
            }
            catch (Exception ex)
            {
                CommonFormatter.FormatExceptionResponse(response, base.Response, ex);

                string aseProcessID = ConfigurationManager.AppSettings.Get("ASEProcessID") ?? "0";
                Common.Helper.LogException(int.Parse(aseProcessID), ex);
            }
            return(response);
        }