Example #1
0
        public async Task <IActionResult> Create([Bind("Name,Description,DatabaseName,DatabaseServer,DatabaseUser,DatabasePassword,DatabaseTypeId,Port,ConnectionString")] DatabaseGDR databaseGDR, int[] ReportIdSelected)
        {
            if (ModelState.IsValid)
            {
                foreach (var reportId in ReportIdSelected)
                {
                    ReportDatabaseGDR reportDatabaseGDR = new ReportDatabaseGDR();
                    reportDatabaseGDR.ReportID = reportId;
                    databaseGDR.ReportDatabaseGDR.Add(reportDatabaseGDR);
                }

                databaseGDR.User       = User.Identity.Name;
                databaseGDR.ChangeDate = DateTime.Parse(DateTime.Now.ToString());

                if (await databaseGDRRepository.Create(databaseGDR))
                {
                    return(RedirectToAction(nameof(Index)));
                }
            }

            ViewBag.EnableSelect   = databaseGDRRepository.GetSelectList(databaseGDR.Enable);
            ViewBag.DatabaseTypeId = new SelectList(await databaseTypeRepository.GetList(EnableEnum.Enabled), "Id", "Name");

            return(View(databaseGDR));
        }
Example #2
0
        public async Task <IActionResult> Create([Bind("Name,Description,SQL")] Report report, int[] DatabaseIDSelected, int[] PermissionGroupIdSelected)
        {
            if (ModelState.IsValid)
            {
                foreach (var databaseId in DatabaseIDSelected)
                {
                    ReportDatabaseGDR databaseGDR = new ReportDatabaseGDR();
                    databaseGDR.DatabaseGDRId = databaseId;
                    report.ReportDatabaseGDR.Add(databaseGDR);
                }

                foreach (var permissionGroupId in PermissionGroupIdSelected)
                {
                    ReportPermissionGroup permissionGroup = new ReportPermissionGroup();
                    permissionGroup.PermissionGroupId = permissionGroupId;
                    report.ReportPermissionGroup.Add(permissionGroup);
                }

                report.User       = User.Identity.Name;
                report.ChangeDate = DateTime.Now;

                bool status = await reportRepository.Create(report);

                return(RedirectToAction(nameof(Index)));
            }

            ViewBag.DatabaseGDR = new SelectList(await databaseGDRRepository.GetList(EnableEnum.Enabled), "Id", "Name");

            ViewBag.EnableSelect = reportRepository.GetSelectList(report.Enable);

            return(View(report));
        }
Example #3
0
        public async Task <Report> Update(Report report, int[] DatabaseIDSelected, int[] PermissionGroupIdSelected)
        {
            try
            {
                var databaseGDRRemove     = context.ReportDatabaseGDR.Where(x => x.ReportID == report.Id);
                var permissionGroupRemove = context.ReportPermissionGroup.Where(x => x.ReportID == report.Id);
                context.RemoveRange(databaseGDRRemove);
                context.RemoveRange(permissionGroupRemove);


                List <ReportDatabaseGDR> reportDatabaseGDR = new List <ReportDatabaseGDR>();
                foreach (var databaseId in DatabaseIDSelected)
                {
                    ReportDatabaseGDR databaseGDR = new ReportDatabaseGDR();
                    databaseGDR.DatabaseGDRId = databaseId;
                    reportDatabaseGDR.Add(databaseGDR);
                }
                report.ReportDatabaseGDR = reportDatabaseGDR;


                List <ReportPermissionGroup> reportPermissionGroup = new List <ReportPermissionGroup>();
                foreach (var permissionGroupId in PermissionGroupIdSelected)
                {
                    ReportPermissionGroup permissionGroup = new ReportPermissionGroup();
                    permissionGroup.PermissionGroupId = permissionGroupId;
                    reportPermissionGroup.Add(permissionGroup);
                }
                report.ReportPermissionGroup = reportPermissionGroup;



                dbSet.Update(report);

                await context.SaveChangesAsync();

                await log.SaveLogApplicationMessage(ControllerName, $"Atualização do relatório com nome {report.Name}.");

                return(report);
            }
            catch (Exception error)
            {
                await log.SaveLogApplicationError(ControllerName, $"Erro ao atualizar de relatório com o ID: {report.Id}" + error.ToString());

                return(null);
            }
        }
Example #4
0
        public async Task <DatabaseGDR> Update(DatabaseGDR databaseGDR, int[] ReportIdSelected)
        {
            try
            {
                var reportsRemove = context.ReportDatabaseGDR.Where(x => x.DatabaseGDRId == databaseGDR.Id);
                context.RemoveRange(reportsRemove);


                List <ReportDatabaseGDR> reportDatabaseGDRList = new List <ReportDatabaseGDR>();

                foreach (var reportId in ReportIdSelected)
                {
                    ReportDatabaseGDR reportDatabaseGDR = new ReportDatabaseGDR();

                    reportDatabaseGDR.ReportID = reportId;
                    reportDatabaseGDRList.Add(reportDatabaseGDR);
                }

                databaseGDR.ReportDatabaseGDR = reportDatabaseGDRList;


                databaseGDR.DatabasePassword = Lib.Cipher.Encrypt(databaseGDR.DatabasePassword, databaseGDR.ChangeDate.ToString());
                databaseGDR.DatabaseUser     = Lib.Cipher.Encrypt(databaseGDR.DatabaseUser, databaseGDR.ChangeDate.ToString());

                dbSet.Update(databaseGDR);
                await context.SaveChangesAsync();

                await log.SaveLogApplicationMessage(ControllerName, $"Atualização do de banco de dados com nome {databaseGDR.Name}.");

                return(databaseGDR);
            }
            catch (Exception error)
            {
                await log.SaveLogApplicationError(ControllerName, $"Erro ao atualizar de bancos de dados com o ID: {databaseGDR.Id}" + error.ToString());

                return(null);
            }
        }