public object FindByID(string entityID) { PatientGoalData goalData = null; try { using (PatientGoalMongoContext ctx = new PatientGoalMongoContext(_dbName)) { List <IMongoQuery> queries = new List <IMongoQuery>(); queries.Add(Query.EQ(MEPatientGoal.IdProperty, ObjectId.Parse(entityID))); queries.Add(Query.EQ(MEPatientGoal.DeleteFlagProperty, false)); queries.Add(Query.EQ(MEPatientGoal.TTLDateProperty, BsonNull.Value)); IMongoQuery mQuery = Query.And(queries); MEPatientGoal mePG = ctx.PatientGoals.Collection.Find(mQuery).FirstOrDefault(); if (mePG != null) { goalData = new PatientGoalData { Id = mePG.Id.ToString(), TemplateId = mePG.TemplateId.ToString(), PatientId = mePG.PatientId.ToString(), FocusAreaIds = Helper.ConvertToStringList(mePG.FocusAreaIds), Name = mePG.Name, SourceId = (mePG.SourceId == null) ? null : mePG.SourceId.ToString(), ProgramIds = Helper.ConvertToStringList(mePG.ProgramIds), TypeId = ((int)mePG.Type), StatusId = ((int)mePG.Status), StartDate = mePG.StartDate, EndDate = mePG.EndDate, TargetDate = mePG.TargetDate, TargetValue = mePG.TargetValue, CustomAttributes = DTOUtil.GetCustomAttributeIdAndValues(mePG.Attributes), Details = mePG.Details }; } } return(goalData); } catch (Exception) { throw; } }
public object Initialize(object newEntity) { PutInitializeGoalDataRequest request = (PutInitializeGoalDataRequest)newEntity; PatientGoalData patientGoalData = null; MEPatientGoal mePg = null; try { mePg = new MEPatientGoal(this.UserId) { Id = ObjectId.GenerateNewId(), PatientId = ObjectId.Parse(request.PatientId), TTLDate = System.DateTime.UtcNow.AddDays(_initializeDays) //, //LastUpdatedOn = DateTime.UtcNow, //UpdatedBy = ObjectId.Parse(this.UserId) }; using (PatientGoalMongoContext ctx = new PatientGoalMongoContext(_dbName)) { ctx.PatientGoals.Collection.Insert(mePg); AuditHelper.LogDataAudit(this.UserId, MongoCollectionName.PatientGoal.ToString(), mePg.Id.ToString(), Common.DataAuditType.Insert, request.ContractNumber); patientGoalData = new PatientGoalData { Id = mePg.Id.ToString() }; } return(patientGoalData); } catch (Exception) { throw; } }