public void Delete(object entity) { DeleteBarrierDataRequest request = (DeleteBarrierDataRequest)entity; try { using (PatientGoalMongoContext ctx = new PatientGoalMongoContext(_dbName)) { var q = MB.Query <MEPatientBarrier> .EQ(b => b.Id, ObjectId.Parse(request.BarrierId)); var uv = new List <MB.UpdateBuilder>(); uv.Add(MB.Update.Set(MEPatientBarrier.TTLDateProperty, System.DateTime.UtcNow.AddDays(_expireDays))); uv.Add(MB.Update.Set(MEPatientBarrier.DeleteFlagProperty, true)); uv.Add(MB.Update.Set(MEPatientBarrier.UpdatedByProperty, ObjectId.Parse(this.UserId))); uv.Add(MB.Update.Set(MEPatientBarrier.LastUpdatedOnProperty, DateTime.UtcNow)); IMongoUpdate update = MB.Update.Combine(uv); WriteConcernResult res = ctx.PatientBarriers.Collection.Update(q, update); AuditHelper.LogDataAudit(this.UserId, MongoCollectionName.PatientBarrier.ToString(), request.BarrierId.ToString(), Common.DataAuditType.Delete, request.ContractNumber); } } catch (Exception) { throw; } }
public DeleteBarrierDataResponse DeleteBarrier(DeleteBarrierDataRequest request) { try { DeleteBarrierDataResponse result = new DeleteBarrierDataResponse(); IGoalRepository repo = Factory.GetRepository(request, RepositoryType.PatientBarrier); List <PatientBarrierData> pbd = (List <PatientBarrierData>)repo.Find(request.PatientGoalId); List <string> deletedIds = null; if (pbd != null && pbd.Count > 0) { deletedIds = new List <string>(); pbd.ForEach(b => { request.BarrierId = b.Id; repo.Delete(request); deletedIds.Add(request.BarrierId); }); } result.DeletedIds = deletedIds; result.Success = true; return(result); } catch (Exception ex) { throw ex; } }
public PutUpdateBarrierResponse UpdatePatientBarrier(PutUpdateBarrierRequest request) { try { PutUpdateBarrierResponse result = new PutUpdateBarrierResponse(); IGoalRepository repo = Factory.GetRepository(request, RepositoryType.PatientBarrier); if (request.BarrierIdsList != null && request.BarrierIdsList.Count > 0) { List <PatientBarrierData> pid = (List <PatientBarrierData>)repo.Find(request.PatientGoalId); List <string> dbBarrierIdList = GetBarrierIds(pid); // update existing barrier entries with a delete List <string> excludes = dbBarrierIdList.Except(request.BarrierIdsList).ToList <string>(); excludes.ForEach(ex => { // create delete barrier request to insert DeleteBarrierDataRequest dbr = new DeleteBarrierDataRequest { BarrierId = ex, UserId = request.UserId }; repo.Delete(dbr); }); } if (request.Barrier != null && request.Barrier.Id != "0") { bool status = (bool)repo.Update(request); if (status) { PatientBarrierData data = repo.FindByID(request.Barrier.Id) as PatientBarrierData; result.BarrierData = data; } } return(result); } catch (Exception ex) { throw ex; } }
public DeleteBarrierDataResponse Delete(DeleteBarrierDataRequest request) { DeleteBarrierDataResponse response = new DeleteBarrierDataResponse(); try { if (string.IsNullOrEmpty(request.UserId)) { throw new UnauthorizedAccessException("PatientGoalDD:Get()::Unauthorized Access"); } response = Manager.DeleteBarrier(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); }