예제 #1
0
        public ActionResult AddPlan(ServerBackup backup)
        {
            if (ModelState.IsValid)
            {
                backup.DataBaseServer = null;
                db.ServerBackups.Add(backup);
                db.SaveChanges();
                _app.Backups bk = new _app.Backups();

                bk.RefreshBackupLog(backup.DbServerID);
                return(RedirectToAction("index", new { id = backup.DbServerID }));
            }

            var srv = db.DataBaseServers.Find(backup.DbServerID);

            var btl = db.BackupTypes.Where(x => !srv.ServerBackups.Any(y => x.typeID == y.BackupTypeID)).ToList();


            if (btl.Count > 0)
            {
                ViewBag.BackupTypeID = new SelectList(btl,
                                                      "typeID", "typeName");
                ServerBackup bk = new ServerBackup();
                bk.DataBaseServer = srv;
                bk.DbServerID     = srv.ServerID;
                bk.intervalMin    = 1440;
            }


            return(View(backup));
        }
예제 #2
0
 public ActionResult Create(Artical a)
 {
     if (ModelState.IsValid)
     {
         db.Articals.Add(a);
         db.SaveChanges();
         return(RedirectToAction("index", new { id = a.PublicationID }));
     }
     return(View(a));
 }
예제 #3
0
        public ActionResult Create([Bind(Include = "BranchID,BranchName,TypeID,Code")] Branch branch)
        {
            if (ModelState.IsValid)
            {
                db.Branches.Add(branch);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.TypeID = new SelectList(db.BranchTypes, "TypeID", "TypeName", branch.TypeID);
            return(View(branch));
        }
예제 #4
0
        public ActionResult Create(Publication p)
        {
            if (ModelState.IsValid)
            {
                db.Publications.Add(p);
                db.SaveChanges();
                return(RedirectToAction("index"));
            }



            IntDD(0);
            return(View(p));
        }
예제 #5
0
파일: Network.cs 프로젝트: coeur85/rep2
            public int RefreshDatabaseFileSize(DataBaseServer srv, bGomlaDBreportEntities db)
            {
                var files = srv.DataBaseFiles;

                if (!srv.Online)
                {
                    return(0);
                }

                foreach (var file in files)
                {
                    var fs = file.DataBaseFilesSizes.OrderByDescending(x => x.DateTaken).FirstOrDefault();



                    if (fs.DateTaken.Date != DateTime.Now.Date)

                    {
                        var curent = FileSizeMB(file); file.DataBaseFilesSizes.Add(new DataBaseFilesSize {
                            DateTaken = DateTime.Now, Size = curent
                        });
                    }
                }

                return(db.SaveChanges());
            }
예제 #6
0
        public IHttpActionResult UpdateDistributers(_app.jsonObjects.Distributers model)
        {
            int i = 0;
            var p = db.Publications.Find(model.PublicationID);


            if (model.IsSubscriped)
            {
                p.Distributers.Add(new Distributer
                {
                    DistributerServer = db.DataBaseServers.Find(model.ServerID),
                    Publication       = p,
                    ServerID          = model.ServerID,
                    PublicationID     = p.PublicationID
                });
            }


            else
            {
                //   p.Distributers.Remove();
                db.Distributers.Remove(db.Distributers.FirstOrDefault(x => x.ServerID == model.ServerID && x.PublicationID == p.PublicationID));
            }
            i = db.SaveChanges();

            return(Ok(i));
        }
예제 #7
0
        public ActionResult Create(DataBaseServer dataBaseServer, FormCollection form)
        {
            SetFilePaths(dataBaseServer, form);
            nt.TestSqlConnection(dataBaseServer);
            if (ModelState.IsValid && nt.Errors.Count == 0)
            {
                db.DataBaseServers.Add(dataBaseServer);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.DataBaseAccountID = new SelectList(db.AccessAccounts.Where(x => x.TypeID == _app.Auth.SQL), "AccountID", "AccountName", dataBaseServer.DataBaseAccountID);
            ViewBag.BranchID          = new SelectList(db.Branches, "BranchID", "BranchName", dataBaseServer.BranchID);
            ViewBag.NetworkAccountID  = new SelectList(db.AccessAccounts.Where(x => x.TypeID == _app.Auth.Windows), "AccountID", "AccountName", dataBaseServer.NetworkAccountID);

            // ViewBag.ServerID = new SelectList(db.Machines, "MachineID", "MachineName", dataBaseServer.ServerID);
            return(View(dataBaseServer));
        }
예제 #8
0
파일: Network.cs 프로젝트: coeur85/rep2
            public int RefreshBackupLog(DataBaseServer srv, bGomlaDBreportEntities db)
            {
                _app.Files      fe = new Files();
                _app.Networking nt = new Networking();
                int             i  = 0;

                if (!srv.Online)
                {
                    return(i);
                }
                foreach (var bkt in srv.ServerBackups)
                {
                    // mark all files as do not exitis


                    if (bkt.LastFile.DateCreated.AddMinutes(bkt.intervalMin) < DateTime.Now)
                    {
                        foreach (var item in bkt.BackupLogs)
                        {
                            item.FileExists = false;
                        }

                        BackupLog log = new BackupLog();

                        var fls = fe.FilesInFolder(nt.RelosveFullPath(bkt.DataBaseServer, bkt.Location), bkt.BackupType.FilesExtintion);


                        foreach (var f in fls)
                        {
                            log = bkt.BackupLogs.FirstOrDefault(x => x.FileName == f.Name);
                            if (log == null)
                            {
                                log = new BackupLog
                                {
                                    FileName    = f.Name,
                                    DateCreated = f.CreationTime,
                                    SrvBkId     = bkt.DbServerID,
                                    FilePath    = bkt.Location,
                                    FileSize    = fe.FileSizeMB(f),
                                };
                                bkt.BackupLogs.Add(log);
                            }
                            log.FileExists = true;
                        }

                        i += db.SaveChanges();
                    }
                }


                return(i);
            }