Exemplo n.º 1
0
        public RemoveProgramInToDosDataResponse RemoveProgramInToDos(RemoveProgramInToDosDataRequest request)
        {
            RemoveProgramInToDosDataResponse response = new RemoveProgramInToDosDataResponse();

            try
            {
                ISchedulingRepository repo = Factory.GetRepository(request, RepositoryType.ToDo);
                if (request.ProgramId != null)
                {
                    List <ToDoData> todos = repo.FindToDosWithAProgramId(request.ProgramId) as List <ToDoData>;
                    if (todos != null && todos.Count > 0)
                    {
                        todos.ForEach(u =>
                        {
                            request.ToDoId = u.Id;
                            if (u.ProgramIds != null && u.ProgramIds.Remove(request.ProgramId))
                            {
                                repo.RemoveProgram(request, u.ProgramIds);
                            }
                        });
                    }
                }
                return(response);
            }
            catch (Exception ex) { throw ex; }
        }
Exemplo n.º 2
0
        public void RemoveProgram(object entity, List <string> updatedProgramIds)
        {
            RemoveProgramInToDosDataRequest request = (RemoveProgramInToDosDataRequest)entity;

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

                    var uv = new List <MB.UpdateBuilder>();
                    uv.Add(MB.Update.SetWrapped <List <ObjectId> >(METoDo.ProgramProperty, ids));
                    uv.Add(MB.Update.Set(METoDo.LastUpdatedOnProperty, DateTime.UtcNow));
                    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.ToDoId.ToString(),
                                             Common.DataAuditType.Update,
                                             request.ContractNumber);
                }
            }
            catch (Exception) { throw; }
        }
Exemplo n.º 3
0
        public void RemoveProgramInToDos_Test()
        {
            RemoveProgramInToDosDataRequest request = new RemoveProgramInToDosDataRequest
            {
                Context        = context,
                ContractNumber = contractNumber,
                ProgramId      = "5400b12bd6a4850940b9f245",
                UserId         = userId,
                Version        = version
            };

            ISchedulingDataManager cm = new SchedulingDataManager {
                Factory = new SchedulingRepositoryFactory()
            };
            RemoveProgramInToDosDataResponse response = cm.RemoveProgramInToDos(request);

            Assert.IsNotNull(response);
        }
Exemplo n.º 4
0
        public void RemoveProgramInToDos_Test()
        {
            RemoveProgramInToDosDataRequest request = new RemoveProgramInToDosDataRequest
            {
                Context        = context,
                ContractNumber = contractNumber,
                ProgramId      = "535ad70ad2d8e912e857525c",
                UserId         = userId,
                Version        = version
            };

            ISchedulingDataManager cm = new StubToDoDataManager {
                Factory = new StubSchedulingRepositoryFactory()
            };
            RemoveProgramInToDosDataResponse response = cm.RemoveProgramInToDos(request);

            Assert.IsNotNull(response);
        }
Exemplo n.º 5
0
        public RemoveProgramInToDosDataResponse Put(RemoveProgramInToDosDataRequest request)
        {
            RemoveProgramInToDosDataResponse response = new RemoveProgramInToDosDataResponse();

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

                response         = Manager.RemoveProgramInToDos(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);
        }
Exemplo n.º 6
0
 public void RemoveProgram(object entity, List <string> updatedProgramIds)
 {
     RemoveProgramInToDosDataRequest request = (RemoveProgramInToDosDataRequest)entity;
 }