public IActionResult AcceptBoosterJob(int Id)
        {
            var result = PurchaseOrderRepository.GetPurchaseForm(Id);

            if (result.JobAvailable == true)
            {
                var id   = User.FindFirst(ClaimTypes.NameIdentifier).Value;
                var user = _userManager.FindByIdAsync(id).Result;
                if (!(PurchaseOrderRepository.GetPurchaseFormWithBoosterCount(user) > user.MaxAssignedBoostsAllowed))
                {
                    result.BoosterAssignedTo = user;
                    result.JobAvailable      = false;
                    PurchaseOrderRepository.Update(result);
                    AuditRepository.Add(new LeagueOfLegendsAuditModel {
                        User = user, DateTime = DateTime.UtcNow, Action = $"Accepted Job By Booster [{JsonConvert.SerializeObject(result)}]"
                    });
                    return(Json(new
                    {
                        Username = result.PersonalInformation.UserName,
                        Password = result.PersonalInformation.Password,
                        Discord = result.PersonalInformation.Discord,
                        success = true,
                        clientLoginPresent = result.ClientAssignedTo != null,
                        message = "Customer can communicate through the chat window on the order details screen"
                    }));
                }
                else
                {
                    return(Json(new { success = false, Message = $"You currently have {user.MaxAssignedBoostsAllowed} jobs, please complete the ones you have before accepting more." }));
                }
            }

            return(Json(null));
        }
Beispiel #2
0
 public HomeController()
 {
     auditRepository          = new AuditRepository();
     carManufactureRepository = new CarManufactureRepository();
     carModelRepository       = new CarModelRepository();
     carDetailRepository      = new CarDetailRepository();
 }
Beispiel #3
0
        public void GetAuditLogsAsync_verifyonlyOne()
        {
            var mysqlConnector = new MysqlConnector();
            var auditRepo      = new AuditRepository(mysqlConnector);

            var userId = 10;

            var fromDate = DateTime.Today.AddDays(-1);
            var toDate   = DateTime.Today.AddDays(1);

            var auditPayloadFake = Builder <AuditEventPayload> .CreateNew().Build();

            var auditEventFake = Builder <AuditEvent> .CreateNew().With(r => r.EventPayload = auditPayloadFake)
                                 .With(r => r.UserId    = userId)
                                 .With(r => r.EventTime = DateTime.Today)
                                 .Build();

            //Delete all record with same user id
            var deleteresult = auditRepo.DeleteByUserIdAsync(userId).Result;

            //Add fake record
            var addresult = auditRepo.AddAsync(auditEventFake).Result;

            //Get record with same UserId and Dates and it must be that one only
            var onlyRecord = auditRepo.GetAuditLogsAsync(userId, fromDate, toDate).Result;

            Assert.IsNotNull(onlyRecord);
            Assert.IsTrue(onlyRecord.Count == 1);
            Assert.IsNotNull(onlyRecord[0]);
            Assert.AreEqual(auditEventFake.EventName, onlyRecord[0].EventName);
            Assert.AreEqual(auditEventFake.UserId, onlyRecord[0].UserId);
            Assert.AreEqual(auditEventFake.EventTime, onlyRecord[0].EventTime);
            //TODO: More Validation
        }
Beispiel #4
0
        public void Get_Paged_Items()
        {
            IScopeProvider sp = ScopeProvider;

            using (IScope scope = sp.CreateScope())
            {
                var repo = new AuditRepository((IScopeAccessor)sp, _logger);

                for (int i = 0; i < 100; i++)
                {
                    repo.Save(new AuditItem(i, AuditType.New, -1, UmbracoObjectTypes.Document.GetName(), $"Content {i} created"));
                    repo.Save(new AuditItem(i, AuditType.Publish, -1, UmbracoObjectTypes.Document.GetName(), $"Content {i} published"));
                }

                scope.Complete();
            }

            using (IScope scope = sp.CreateScope())
            {
                var repo = new AuditRepository((IScopeAccessor)sp, _logger);

                IEnumerable <IAuditItem> page = repo.GetPagedResultsByQuery(sp.CreateQuery <IAuditItem>(), 0, 10, out long total, Direction.Descending, null, null);

                Assert.AreEqual(10, page.Count());
                Assert.AreEqual(200, total);
            }
        }
        public void Get_Paged_Items()
        {
            var sp = TestObjects.GetScopeProvider(Logger);

            using (var scope = sp.CreateScope())
            {
                var repo = new AuditRepository((IScopeAccessor)sp, Logger);

                for (var i = 0; i < 100; i++)
                {
                    repo.Save(new AuditItem(i, AuditType.New, -1, ObjectTypes.GetName(UmbracoObjectTypes.Document), $"Content {i} created"));
                    repo.Save(new AuditItem(i, AuditType.Publish, -1, ObjectTypes.GetName(UmbracoObjectTypes.Document), $"Content {i} published"));
                }

                scope.Complete();
            }

            using (var scope = sp.CreateScope())
            {
                var repo = new AuditRepository((IScopeAccessor)sp, Logger);

                var page = repo.GetPagedResultsByQuery(sp.SqlContext.Query <IAuditItem>(), 0, 10, out var total, Direction.Descending, null, null);

                Assert.AreEqual(10, page.Count());
                Assert.AreEqual(200, total);
            }
        }
        public void Get_Paged_Items_With_Custom_Filter()
        {
            var sp = TestObjects.GetScopeProvider(Logger);

            using (var scope = sp.CreateScope())
            {
                var repo = new AuditRepository((IScopeAccessor)sp, Logger);

                for (var i = 0; i < 100; i++)
                {
                    repo.Save(new AuditItem(i, AuditType.New, -1, ObjectTypes.GetName(UmbracoObjectTypes.Document), "Content created"));
                    repo.Save(new AuditItem(i, AuditType.Publish, -1, ObjectTypes.GetName(UmbracoObjectTypes.Document), "Content published"));
                }

                scope.Complete();
            }

            using (var scope = sp.CreateScope())
            {
                var repo = new AuditRepository((IScopeAccessor)sp, Logger);

                var page = repo.GetPagedResultsByQuery(sp.SqlContext.Query <IAuditItem>(), 0, 8, out var total, Direction.Descending,
                                                       null, sp.SqlContext.Query <IAuditItem>().Where(item => item.Comment == "Content created"))
                           .ToArray();

                Assert.AreEqual(8, page.Length);
                Assert.IsTrue(page.All(x => x.Comment == "Content created"));
                Assert.AreEqual(100, total);
            }
        }
        public void Get_Paged_Items_With_AuditType_Filter()
        {
            var provider   = new PetaPocoUnitOfWorkProvider(Logger);
            var unitOfWork = provider.GetUnitOfWork();

            using (var repo = new AuditRepository(unitOfWork, CacheHelper, Logger, SqlSyntax))
            {
                for (int i = 0; i < 100; i++)
                {
                    repo.AddOrUpdate(new AuditItem(i, string.Format("Content {0} created", i), AuditType.New, 0));
                    repo.AddOrUpdate(new AuditItem(i, string.Format("Content {0} published", i), AuditType.Publish, 0));
                }
                unitOfWork.Commit();
            }

            using (var repo = new AuditRepository(unitOfWork, CacheHelper, Logger, SqlSyntax))
            {
                long total;
                var  page = repo.GetPagedResultsByQuery(Query <IAuditItem> .Builder, 0, 9, out total, Direction.Descending,
                                                        new[] { AuditType.Publish }, null)
                            .ToArray();

                Assert.AreEqual(9, page.Length);
                Assert.IsTrue(page.All(x => x.AuditType == AuditType.Publish));
                Assert.AreEqual(100, total);
            }
        }
        public void Get_Paged_Items_With_Custom_Filter()
        {
            var provider   = new PetaPocoUnitOfWorkProvider(Logger);
            var unitOfWork = provider.GetUnitOfWork();

            using (var repo = new AuditRepository(unitOfWork, CacheHelper, Logger, SqlSyntax))
            {
                for (int i = 0; i < 100; i++)
                {
                    repo.AddOrUpdate(new AuditItem(i, "Content created", AuditType.New, 0));
                    repo.AddOrUpdate(new AuditItem(i, "Content published", AuditType.Publish, 0));
                }
                unitOfWork.Commit();
            }

            using (var repo = new AuditRepository(unitOfWork, CacheHelper, Logger, SqlSyntax))
            {
                long total;
                var  page = repo.GetPagedResultsByQuery(Query <IAuditItem> .Builder, 0, 8, out total, Direction.Descending,
                                                        null, Query <IAuditItem> .Builder.Where(item => item.Comment == "Content created"))
                            .ToArray();

                Assert.AreEqual(8, page.Length);
                Assert.IsTrue(page.All(x => x.Comment == "Content created"));
                Assert.AreEqual(100, total);
            }
        }
Beispiel #9
0
        public static IAuditService Create(Guid tenantId)
        {
            if (Container == null)
            {
                throw new ArgumentNullException("Container", "Unity Container Not Initialized.");
            }

            if (string.IsNullOrEmpty(ConnectionString))
            {
                throw new ArgumentNullException("ConnectionString", "ConnectionString is empty.");
            }

            var iCommonMapper     = Container.Resolve <ICommonMapper>();
            var iCommonRepository = new CommonRepository(new Common_Entities(ConnectionString));
            var tenant            = iCommonRepository.RetrieveTenantById(tenantId);

            iCommonRepository.Dispose();
            if (tenant == null)
            {
                throw new Exception("Could not find schema for this tenantId:" + tenantId);
            }

            var           engineEntities   = new ANDP_Audit_Entities(ConnectionString, tenant.Schema);
            var           engineRepository = new AuditRepository(engineEntities);
            IAuditService service          = new AuditService(engineRepository, iCommonMapper);

            return(service);
        }
Beispiel #10
0
 static public void updateAudit(Audit audit)
 {
     using (AuditRepository auditrepo = new AuditRepository())
     {
         auditrepo.Update(audit);
         auditrepo.Save();
     }
 }
Beispiel #11
0
        /// <summary>
        /// clean all information to audit
        /// </summary>
        /// <returns>returns the result to action</returns>
        public ActionResult CleanAudit()
        {
            AuditRepository objaudit = new AuditRepository(SessionCustom);

            objaudit.Delete();
            ViewBag.Result = true;
            return(this.RedirectToAction("Index", "Auditoria"));
        }
Beispiel #12
0
        public AuditMigrationProcessor(SyncRepository syncRepository, IGetOpenConnection targetDatabase, IConfigurationService configurationService, ILogService logService)
        {
            _logService = logService;

            _syncRepository        = syncRepository;
            _auditRepository       = new AuditRepository(configurationService, logService);
            _candidateRepository   = new CandidateRepository(targetDatabase);
            _applicationRepository = new ApplicationRepository(targetDatabase);
        }
        public int EditRole(RoleViewModel roleToEdit)
        {
            var             dbVersion = GetRole(roleToEdit.CurrentRole.RoleId);
            AuditRepository ar        = new AuditRepository(dapperContext);
            var             t         = dapperContext.GetTransaction();

            var sql         = "UPDATE Role SET RoleName = @RoleName, Description = @Description Where RoleId = @RoleId AND CONVERT(bigint,RowVersionNo) = @RowVersionNo2; ";
            var rowAffected = context.Execute(sql, roleToEdit.CurrentRole, transaction: t);

            if (rowAffected > 0)
            {
                var list = context.Query <Guid>("SELECT ModuleID FROM RoleModuleAccess WHERE RoleID = @RoleID; ", new { RoleID = roleToEdit.CurrentRole.RoleId }, transaction: t).ToList();

                sql = "UPDATE RoleModuleAccess SET ViewAccess = @ViewAccess, CreateAccess = @CreateAccess, EditAccess = @EditAccess, DeleteAccess = @DeleteAccess, VerifyAccess = @VerifyAccess, MakeOrCheckAccess = @MakeOrCheckAccess WHERE RoleId = @RoleID AND ModuleID = @ModuleID; ";

                var temp = roleToEdit.ModuleAccessList.Where(m => (m.CreateAccess == true || m.DeleteAccess == true ||
                                                                   m.EditAccess == true || m.ViewAccess == true || m.VerifyAccess == true || m.MakeOrCheckAccess == true) &&
                                                             list.Contains(m.ModuleId)).Select(s => s).ToList();

                foreach (var m in temp)
                {
                    m.RoleId = roleToEdit.CurrentRole.RoleId;
                    context.Execute(sql, m, transaction: t);
                }

                temp = roleToEdit.ModuleAccessList.Where(m => (m.CreateAccess == true || m.DeleteAccess == true ||
                                                               m.EditAccess == true || m.ViewAccess == true || m.VerifyAccess == true || m.MakeOrCheckAccess == true) &&
                                                         !list.Contains(m.ModuleId)).Select(s => s).ToList();
                foreach (var g in temp)
                {
                    g.RoleId = roleToEdit.CurrentRole.RoleId;
                }
                var success = context.InsertMany <RoleModuleAccess>(temp, excludeFieldList: new string[] { "ModuleName" }, transaction: t);

                var tempId = roleToEdit.ModuleAccessList.Where(m => (m.CreateAccess == false && m.DeleteAccess == false &&
                                                                     m.EditAccess == false && m.ViewAccess == false && m.VerifyAccess == false && m.MakeOrCheckAccess == false) &&
                                                               list.Contains(m.ModuleId)).Select(s => s.ModuleId).ToList();
                if (tempId.Count > 0)
                {
                    context.Execute("DELETE FROM RoleModuleAccess WHERE ModuleID IN @ModuleIDList AND RoleID = @RoleID; ", new { RoleID = roleToEdit.CurrentRole.RoleId, ModuleIDList = tempId }, transaction: t);
                }

                //List<string> moduleNames = new List<string>();
                //foreach (var item in roleToEdit.ModuleAccessList)
                //{
                //    moduleNames.Add(item.ModuleName);
                //}
                ar.CreateAuditChange(dbVersion, roleToEdit, t, roleToEdit.CurrentRole.RoleName);// ,moduleNames.ToArray());

                dapperContext.CommitTransaction();
            }
            else
            {
                dapperContext.RollbackTransaction();
            }
            return(rowAffected);
        }
Beispiel #14
0
        static public List <Audit> Getallaudits()
        {
            List <Audit> temp;

            using (AuditRepository auditrepo = new AuditRepository())
            {
                temp = (List <Audit>)auditrepo.GetAll();
            }
            return(temp);
        }
        public void ShouldAddAuditRedordToDatabase()
        {
            var repo   = new AuditRepository();
            var count1 = repo.GetAll().Count;

            repo.Add("details");
            var count2 = repo.GetAll().Count;

            Assert.True(count2 == count1 + 1);
        }
Beispiel #16
0
        static public List <Audit> Getthisweekaudits()
        {
            List <Audit> temp;

            using (AuditRepository auditrepo = new AuditRepository())
            {
                temp = (List <Audit>)auditrepo.GetLatestaudits();
            }
            return(temp);
        }
        public void ShouldGetSinlgeAuditEntryFromDatabase()
        {
            var repo     = new AuditRepository();
            var rand     = new Random();
            var randomId = rand.Next();

            repo.Add("details", randomId);
            var count = repo.GetByCardId(randomId).Count;

            Assert.True(count == 1);
        }
Beispiel #18
0
 public AuditController()
 {
     carManufactureRepository     = new CarManufactureRepository();
     cityRepository               = new CityRepository();
     carModelRepository           = new CarModelRepository();
     carYearRepository            = new CarYearRepository();
     carDetailRepository          = new CarDetailRepository();
     carModelYearDetailRepository = new CarModelYearDetailRepository();
     auditRepository              = new AuditRepository();
     auditTempRepository          = new AuditTempRepository();
 }
Beispiel #19
0
        /// <summary>
        /// export the audit information to excel
        /// </summary>
        public void ExportAudit()
        {
            AuditRepository objaudit = new AuditRepository(SessionCustom);

            ConvertListExcel <AuditComp> objConvert = new
                                                      ConvertListExcel <AuditComp>(HttpContext);

            objConvert.CollList  = objaudit.GetList();
            objConvert.SheetName = this.Module.Name;
            objConvert.ConvertToExcel();
        }
Beispiel #20
0
        public async override Task <UpdateAuditResponse> Update(UpdateAuditRequest request, ServerCallContext context)
        {
            IDatabase <AuditEntry>   database   = new MongoDatabase <AuditEntry>();
            IRepository <AuditEntry> repository = new AuditRepository(database);
            var result = repository.Update(request.Audit);

            return(await Task.FromResult(new UpdateAuditResponse()
            {
                AuditResponse = result
            }));
        }
Beispiel #21
0
        static public Audit getAudit(int id)
        {
            Audit temp;

            using (AuditRepository auditrepo = new AuditRepository())
            {
                temp = auditrepo.GetSingle(id);
                auditrepo.Save();
            }
            return(temp);
        }
Beispiel #22
0
        public async override Task <ReadAuditResponse> Read(ReadAuditRequest request, ServerCallContext context)
        {
            IDatabase <AuditEntry>   database   = new MongoDatabase <AuditEntry>();
            IRepository <AuditEntry> repository = new AuditRepository(database);
            var result = await repository.GetByIdAsync(Encoding.UTF8.GetString(request.Audit.Id.ToByteArray()));

            return(await Task.FromResult(new ReadAuditResponse()
            {
                AuditResponse = result
            }));
        }
Beispiel #23
0
        static public Audit getAuditdetached(int id)
        {
            Audit temp;

            using (AuditRepository auditrepo = new AuditRepository())
            {
                temp = auditrepo.GetSingle(id);
                auditrepo.Save();
                auditrepo.context.Entry(temp).State = EntityState.Detached;
            }
            return(temp);
        }
        public void Can_Add_Audit_Entry()
        {
            var sp = TestObjects.GetScopeProvider(Logger);

            using (var scope = sp.CreateScope())
            {
                var repo = new AuditRepository((IScopeAccessor)sp, Logger);
                repo.Save(new AuditItem(-1, AuditType.System, -1, ObjectTypes.GetName(UmbracoObjectTypes.Document), "This is a System audit trail"));

                var dtos = scope.Database.Fetch <LogDto>("WHERE id > -1");

                Assert.That(dtos.Any(), Is.True);
                Assert.That(dtos.First().Comment, Is.EqualTo("This is a System audit trail"));
            }
        }
Beispiel #25
0
        public void Can_Add_Audit_Entry()
        {
            IScopeProvider sp = ScopeProvider;

            using (IScope scope = ScopeProvider.CreateScope())
            {
                var repo = new AuditRepository((IScopeAccessor)sp, _logger);
                repo.Save(new AuditItem(-1, AuditType.System, -1, UmbracoObjectTypes.Document.GetName(), "This is a System audit trail"));

                List <LogDto> dtos = ScopeAccessor.AmbientScope.Database.Fetch <LogDto>("WHERE id > -1");

                Assert.That(dtos.Any(), Is.True);
                Assert.That(dtos.First().Comment, Is.EqualTo("This is a System audit trail"));
            }
        }
Beispiel #26
0
        public void Get_Paged_Items_By_User_Id_With_Query_And_Filter()
        {
            IScopeProvider sp = ScopeProvider;

            using (IScope scope = sp.CreateScope())
            {
                var repo = new AuditRepository((IScopeAccessor)sp, _logger);

                for (int i = 0; i < 100; i++)
                {
                    repo.Save(new AuditItem(i, AuditType.New, -1, UmbracoObjectTypes.Document.GetName(), $"Content {i} created"));
                    repo.Save(new AuditItem(i, AuditType.Publish, -1, UmbracoObjectTypes.Document.GetName(), $"Content {i} published"));
                }

                scope.Complete();
            }

            using (IScope scope = sp.CreateScope())
            {
                var repo = new AuditRepository((IScopeAccessor)sp, _logger);

                IQuery <IAuditItem> query = sp.CreateQuery <IAuditItem>().Where(x => x.UserId == -1);

                try
                {
                    ScopeAccessor.AmbientScope.Database.AsUmbracoDatabase().EnableSqlTrace = true;
                    ScopeAccessor.AmbientScope.Database.AsUmbracoDatabase().EnableSqlCount = true;

                    IEnumerable <IAuditItem> page = repo.GetPagedResultsByQuery(
                        query,
                        0,
                        10,
                        out long total,
                        Direction.Descending,
                        new[] { AuditType.Publish },
                        sp.CreateQuery <IAuditItem>()
                        .Where(x => x.UserId > -2));

                    Assert.AreEqual(10, page.Count());
                    Assert.AreEqual(100, total);
                }
                finally
                {
                    ScopeAccessor.AmbientScope.Database.AsUmbracoDatabase().EnableSqlTrace = false;
                    ScopeAccessor.AmbientScope.Database.AsUmbracoDatabase().EnableSqlCount = false;
                }
            }
        }
Beispiel #27
0
        /// <summary>
        /// Подключаемся к базе данных под указанной учетной записью и выбираем базу данных
        /// </summary>
        /// <param name="serverName"></param>
        /// <param name="userName"></param>
        /// <param name="pass"></param>
        /// <param name="database"></param>
        public void Connect(string serverName, string userName, string pass, string database)
        {
            ApiProvider.CheckAPIConnection();

            var user = ApiProvider.GetUserAsync(userName, pass);

            if (user == null)
            {
                throw new Exception($"Invalid combination of login and password");
            }

            IdentityUser = user;
            AuditRepository.WriteAsync(new Entities.User(user), AuditOperation.SignIn, user);

            _newLoader = new NewLoader(this);
        }
Beispiel #28
0
        static public List <Audit> Getmymissedauditslastweek(string mail)
        {
            int auditeurid;

            using (UserRepository usertrepo = new UserRepository())
            {
                auditeurid = usertrepo.GetAuditeurIDBymail(mail);
            }
            List <Audit> temp;

            using (AuditRepository auditrepo = new AuditRepository())
            {
                temp = (List <Audit>)auditrepo.GetLastWeekmissingauditsforUser(auditeurid);
            }
            return(temp);
        }
        public void Can_Add_Audit_Entry()
        {
            var provider   = new PetaPocoUnitOfWorkProvider(Logger);
            var unitOfWork = provider.GetUnitOfWork();

            using (var repo = new AuditRepository(unitOfWork, CacheHelper, Logger, SqlSyntax))
            {
                repo.AddOrUpdate(new AuditItem(-1, "This is a System audit trail", AuditType.System, 0));
                unitOfWork.Commit();
            }

            var dtos = DatabaseContext.Database.Fetch <LogDto>("WHERE id > -1");

            Assert.That(dtos.Any(), Is.True);
            Assert.That(dtos.First().Comment, Is.EqualTo("This is a System audit trail"));
        }
        public bool DeleteRole(Guid id)
        {
            bool status    = false;
            var  du        = context.Query <Role>("Select * from dbo.[Role] where RoleID = @RoleID;", new { RoleID = id }).FirstOrDefault();
            var  roleExist = context.Query <Int64>("SELECT COUNT(Username) FROM UsersInRoles WHERE RoleID = @RoleID", new { RoleID = id }).FirstOrDefault();

            if (roleExist == 0)
            {
                var tr = dapperContext.GetTransaction();
                context.Execute("DELETE FROM RoleModuleAccess WHERE RoleID = @RoleID; DELETE FROM [Role] WHERE RoleID = @RoleID;", new { RoleID = id }, transaction: tr);
                AuditRepository ar = new AuditRepository(dapperContext);
                ar.CreateAuditChange(du, null, tr, du.RoleName);
                status = true;
            }
            return(status);
        }