public void Delete(object entity)
        {
            DeletePatientMedSuppDataRequest request = (DeletePatientMedSuppDataRequest)entity;

            try
            {
                using (MedicationMongoContext ctx = new MedicationMongoContext(ContractDBName))
                {
                    var q = MB.Query <MEPatientMedSupp> .EQ(b => b.Id, ObjectId.Parse(request.Id));

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

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

                    AuditHelper.LogDataAudit(this.UserId,
                                             MongoCollectionName.PatientMedSupp.ToString(),
                                             request.Id.ToString(),
                                             DataAuditType.Delete,
                                             request.ContractNumber);
                }
            }
            catch (Exception) { throw; }
        }
        public DeletePatientMedSuppDataResponse Delete(DeletePatientMedSuppDataRequest request)
        {
            DeletePatientMedSuppDataResponse response = null;

            try
            {
                response = new DeletePatientMedSuppDataResponse();
                if (!string.IsNullOrEmpty(request.Id))
                {
                    var repo = MedicationRepositoryFactory.GetMedicationRepository(request, RepositoryType.PatientMedSupp);
                    repo.Delete(request);
                }
                return(response);
            }
            catch (Exception ex) { throw ex; }
        }
示例#3
0
        public void DeletePatientMedSupp_Test()
        {
            DeletePatientMedSuppDataRequest request = new DeletePatientMedSuppDataRequest
            {
                Context        = context,
                ContractNumber = contractNumber,
                Id             = "54ef4bac84ac0711a867ccde",
                UserId         = userId,
                Version        = version
            };

            //[Route("/{Context}/{Version}/{ContractNumber}/PatientMedSupp/{Id}", "DELETE")]
            DeletePatientMedSuppDataResponse response = client.Delete <DeletePatientMedSuppDataResponse>(
                string.Format("{0}/{1}/{2}/{3}/PatientMedSupp/{4}?UserId={5}", url, context, version, contractNumber, request.Id, request.UserId));

            Assert.IsNotNull(response);
        }
示例#4
0
        public DeletePatientMedSuppDataResponse Delete(DeletePatientMedSuppDataRequest request)
        {
            DeletePatientMedSuppDataResponse response = new DeletePatientMedSuppDataResponse {
                Version = request.Version
            };

            try
            {
                RequireUserId(request);
                response = Manager.Delete(request);
            }
            catch (Exception ex)
            {
                RaiseException(response, ex);
            }
            return(response);
        }
        public DeleteMedSuppsByPatientIdDataResponse DeletePatientMedSupps(DeleteMedSuppsByPatientIdDataRequest request)
        {
            DeleteMedSuppsByPatientIdDataResponse response = null;

            try
            {
                response = new DeleteMedSuppsByPatientIdDataResponse();

                var repo = MedicationRepositoryFactory.GetMedicationRepository(request, RepositoryType.PatientMedSupp);
                GetPatientMedSuppsDataRequest getAllPatientMedSuppsDataRequest = new GetPatientMedSuppsDataRequest
                {
                    Context        = request.Context,
                    ContractNumber = request.ContractNumber,
                    PatientId      = request.PatientId,
                    UserId         = request.UserId,
                    Version        = request.Version
                };
                List <PatientMedSuppData> patientMedSupps = repo.FindByPatientId(getAllPatientMedSuppsDataRequest) as List <PatientMedSuppData>;
                List <string>             deletedIds      = null;
                if (patientMedSupps != null)
                {
                    deletedIds = new List <string>();
                    patientMedSupps.ForEach(u =>
                    {
                        DeletePatientMedSuppDataRequest deletePMSDataRequest = new DeletePatientMedSuppDataRequest
                        {
                            Context        = request.Context,
                            ContractNumber = request.ContractNumber,
                            Id             = u.Id,
                            UserId         = request.UserId,
                            Version        = request.Version
                        };
                        repo.Delete(deletePMSDataRequest);
                        deletedIds.Add(deletePMSDataRequest.Id);
                    });
                    response.DeletedIds = deletedIds;
                }
                response.Success = true;
                return(response);
            }
            catch (Exception ex) { throw ex; }
        }
示例#6
0
 public DeletePatientMedSuppDataResponse Delete(DeletePatientMedSuppDataRequest request)
 {
     throw new NotImplementedException();
 }