public void Delete(object entity) { DeleteTaskDataRequest request = (DeleteTaskDataRequest)entity; try { using (PatientGoalMongoContext ctx = new PatientGoalMongoContext(_dbName)) { var q = MB.Query <MEPatientTask> .EQ(b => b.Id, ObjectId.Parse(request.TaskId)); var uv = new List <MB.UpdateBuilder>(); uv.Add(MB.Update.Set(MEPatientTask.TTLDateProperty, System.DateTime.UtcNow.AddDays(_expireDays))); uv.Add(MB.Update.Set(MEPatientTask.DeleteFlagProperty, true)); uv.Add(MB.Update.Set(MEPatientTask.UpdatedByProperty, ObjectId.Parse(this.UserId))); uv.Add(MB.Update.Set(MEPatientTask.LastUpdatedOnProperty, DateTime.UtcNow)); IMongoUpdate update = MB.Update.Combine(uv); ctx.PatientTasks.Collection.Update(q, update); AuditHelper.LogDataAudit(this.UserId, MongoCollectionName.PatientTask.ToString(), request.TaskId.ToString(), Common.DataAuditType.Delete, request.ContractNumber); } } catch (Exception) { throw; } }
public DeleteTaskDataResponse DeleteTask(DeleteTaskDataRequest request) { try { DeleteTaskDataResponse result = new DeleteTaskDataResponse(); IGoalRepository repo = Factory.GetRepository(request, RepositoryType.PatientTask); List <PatientTaskData> ptd = (List <PatientTaskData>)repo.Find(request.PatientGoalId); List <string> deletedIds = null; if (ptd != null && ptd.Count > 0) { deletedIds = new List <string>(); ptd.ForEach(t => { request.TaskId = t.Id; repo.Delete(request); deletedIds.Add(request.TaskId); }); } result.DeletedIds = deletedIds; result.Success = true; return(result); } catch (Exception ex) { throw ex; } }
public PutUpdateTaskResponse UpdatePatientTask(PutUpdateTaskRequest request) { try { PutUpdateTaskResponse result = new PutUpdateTaskResponse(); IGoalRepository repo = Factory.GetRepository(request, RepositoryType.PatientTask); if (request.TaskIdsList != null && request.TaskIdsList.Count > 0) { List <PatientTaskData> ptd = (List <PatientTaskData>)repo.Find(request.PatientGoalId); List <string> dbTaskIdList = GetTaskIds(ptd); // update existing task entries with a delete List <string> excludes = dbTaskIdList.Except(request.TaskIdsList).ToList <string>(); excludes.ForEach(ex => { // create delete task request to insert DeleteTaskDataRequest dtr = new DeleteTaskDataRequest { TaskId = ex, UserId = request.UserId }; repo.Delete(dtr); }); } if (request.Task != null && request.Task.Id != "0") { bool status = (bool)repo.Update(request); if (status) { PatientTaskData data = repo.FindByID(request.Task.Id) as PatientTaskData; result.TaskData = data; } } return(result); } catch (Exception ex) { throw ex; } }
public DeleteTaskDataResponse Delete(DeleteTaskDataRequest request) { DeleteTaskDataResponse response = new DeleteTaskDataResponse(); try { if (string.IsNullOrEmpty(request.UserId)) { throw new UnauthorizedAccessException("PatientGoalDD:Get()::Unauthorized Access"); } response = Manager.DeleteTask(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); }