private Result[] CalculateCriteria(Result[] metrics) { FileUser fileUser = new FileUser(Properties.Settings.Default.Criteria, new CriteriasRepository()); Criteria[] allCriterias = (Criteria[])fileUser.getElements(); List <Result> results = new List <Result>(); float[] sum = new float[allCriterias.Length]; int[] count = new int[allCriterias.Length]; bool[] flags = new bool[allCriterias.Length]; foreach (Result metric in metrics) { Metric temp = (Metric)metric.Layer; flags[temp.CriteriaId] = true; sum[temp.CriteriaId] += metric.Assessment; ++count[temp.CriteriaId]; } for (int i = 0; i < allCriterias.Length; ++i) { if (flags[i] == true) { int c = count[i]; if (c == 0) { c = 1; } results.Add(new Result(allCriterias[i], 2, sum[i] / c)); } } return(results.ToArray()); }
protected void Page_Load(object sender, EventArgs e) { ////////////////Creating Grid View /////////////// DataTable dt = new DataTable(); //создаём таблицу dt.Columns.Add("File", typeof(string)); dt.Columns.Add("Size", typeof(string)); dt.Columns.Add("Type", typeof(string)); dt.Columns.Add("Hash", typeof(string)); dt.Columns.Add("Sign", typeof(string)); dt.Columns.Add("PublicKey", typeof(string)); dt.Columns.Add("Mod", typeof(string)); dt.Columns.Add("Login", typeof(string)); String userName, sign_out, openkey, mod = ""; using (site_dbDataContext contex = new site_dbDataContext()) //Создан экземпляр класса БД { //Создаем объекты таблиц FileUser UserName = new FileUser(); foreach (string strfile in Directory.GetFiles(Server.MapPath("~/Data")))//вносим данные { FileInfo fi = new FileInfo(strfile); userName = (from x in new site_dbDataContext().FileUser where x.FileName == fi.Name select x.Email).First(); sign_out = (from x in new site_dbDataContext().FileUser where x.FileName == fi.Name select x.Sign).First(); openkey = (from x in new site_dbDataContext().PublicKeys where x.UserLogin == userName select x.PublicKey).First(); mod = (from x in new site_dbDataContext().PublicKeys where x.UserLogin == userName select x.Mod).First(); dt.Rows.Add(fi.Name, fi.Length, GetFileTypeByExtension(fi.Extension), ComputeMD5Checksum(Server.MapPath("~/Data/") + fi.Name), sign_out, openkey, mod, userName); } } GridView1.DataSource = dt; GridView1.DataBind(); ////////////////////////////////////////////////// }
private void GetFilteredCriteria(int id) { FileUser fileUser = new FileUser(Properties.Settings.Default.SoftwareTools, new SoftwareToolRepository()); SoftwareTool softwareTool = (SoftwareTool)fileUser.getElementById(id); fileUser = new FileUser(Properties.Settings.Default.Matrix, new CriteriaMatrixRepository()); DataSingleton.GetInstance(id, true); DataSingleton.GetInstance((int[])fileUser.getElementById(softwareTool.Id)); }
public Metric[] FilterMetrics() { FileUser fileUser = new FileUser(Properties.Settings.Default.Metrics, new MetricRepository()); Metric[] metrics = (Metric[])fileUser.getElements(); metrics = FilterByPhase(metrics); metrics = SetPriority(metrics); return(metrics); }
public Indicator[] FilterIndicators() { FileUser fileUser = new FileUser(Properties.Settings.Default.Indicators, new IndicatorsRepository()); Indicator[] indicators = (Indicator[])fileUser.getElements(); MetricsFilter metricsFilter = new MetricsFilter(); Metric[] metrics = metricsFilter.FilterMetrics(); indicators = SetPriority(indicators, metrics); return(indicators); }
/// <summary> /// 判断用户是否具有指定权限操作 /// </summary> /// <param name="uid">用户ID</param> /// <param name="fileID">文件ID</param> /// <param name="access">访问动作</param> /// <returns></returns> public static bool Auth(int uid, int fileID, FilePermission access) { FileAccessService fileService = new FileAccessService(); File file = fileService.GetFileByFID(fileID); if (file == null) { return(false); } //判断文件是否已经归档 if (access == FilePermission.Delete && file.FileArchive) { return(false); } //1.判断文件是否属于自己 if (file.UserID == uid) { //if (CheckFilePermission(file.FileOwner, access)) return(true); } //2.判断自己的部门是否和文件所在同一个部门 IList <FileDepartment> fileDepartment = fileService.GetDepartmentByFID(fileID); IList <Department> userDepartment = fileService.GetDepartmentByUID(uid); if (CheckFileDepartment(userDepartment, fileDepartment, access)) { return(true); } //3.判断文件共享权限 FileUser fileUser = fileService.GetFileShare(uid, fileID); if (fileUser != null) { if (CheckFilePermission(fileUser.FilePermission, access)) { return(true); } } return(false); }
private Result CalculateSoftwareTool(Result[] criterias) { float sum = 0; float count = 0; foreach (Result criteria in criterias) { sum += criteria.Assessment; ++count; } if (count == 0) { count = 1; } FileUser fileUser = new FileUser(Properties.Settings.Default.SoftwareTools, new SoftwareToolRepository()); SoftwareTool softwareTool = (SoftwareTool)fileUser.getElementById(DataSingleton.GetInstance().SoftwareTool); Result result = new Result(softwareTool, 1, sum / count); return(result); }
private void loadData_Click(object sender, EventArgs e) { using (OpenFileDialog ofd = new OpenFileDialog()) { ofd.Filter = "xml files (*.xml)|*.xml"; if (ofd.ShowDialog() == DialogResult.OK) { try { FileUser fileUser = new FileUser(ofd.FileName, new SavePointRepository()); SavePoint savePoint = (SavePoint)fileUser.getElementById(0); EditSavePoint loader = new EditSavePoint(); loader.LoadSavePoint(savePoint); CheckRadioButton(savePoint.IdSoftwareTool); DataSingleton.GetInstance(savePoint.IdPhase, savePoint.IdSoftwareTool); SavePointSingleton.GetInstance(savePoint); } catch (Exception) { MessageBox.Show("Ошибка загрузки файла", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } }
public bool AddShareUser(AddShareUserInput input) { var fileUsersToRemove = _context.FileUsers.Where(a => a.FileId == input.FileId); _context.FileUsers.RemoveRange(fileUsersToRemove); foreach (var item in input.FileUserDtos) { var user = _context.Users.FirstOrDefault(a => a.UserID == item.UserId); if (user == null) { user = new User { UserID = item.UserId, UserName = item.UserName, CreationTime = DateTime.Now }; _context.Users.Add(user); } var fileUser = new FileUser { FileId = input.FileId, UserId = item.UserId, Permission = item.Permission, CreationTime = DateTime.Now }; _context.FileUsers.Add(fileUser); } _context.SaveChanges(); return(true); }
private void GetPhase(int id) { FileUser fileUser = new FileUser(Properties.Settings.Default.Phases, new LifeCyclePhaseRepository()); DataSingleton.GetInstance(((Phase)fileUser.getElementById(id)).Id); }
protected void Button1_Click(object sender, EventArgs e) { if (Context.User.Identity.Name == "") { Response.Redirect("~/Account/Login.aspx"); } else { if (FileUpload1.HasFile) { FileUpload1.PostedFile.SaveAs(Server.MapPath("~/Data/") + FileUpload1.FileName); // куда грузить ////////////Writing user name into database/////////// using (site_dbDataContext contex = new site_dbDataContext()) //Создан экземпляр класса БД { //Создаем объекты таблиц FileUser UserName = new FileUser(); //PublicKey UserName.Email = Context.User.Identity.Name; UserName.FileName = FileUpload1.FileName; //////////////////////////////////////////////////// ///////////////Добавляем Подпись/////////////////// RSA.BigInteger BI_Text = new RSA.BigInteger(ComputeMD5Checksum(Server.MapPath("~/Data/") + FileUpload1.FileName), 16); RSA.BigInteger d = new RSA.BigInteger((from x in new site_dbDataContext().Sisurity where x.UserLogin == Context.User.Identity.Name select x.PrivatKey).First(), 10); RSA.BigInteger n = new RSA.BigInteger((from x in new site_dbDataContext().PublicKeys where x.UserLogin == Context.User.Identity.Name select x.Mod).First(), 10); byte[] sign = BI_Text.modPow(d, n).getBytes(); UserName.Sign = BitConverter.ToString(sign).Replace("-", string.Empty); contex.FileUser.InsertOnSubmit(UserName); contex.SubmitChanges(); ///////////////////////////////////////////////////*/ } } DataTable dt = new DataTable();//создаём таблицу dt.Columns.Add("File", typeof(string)); dt.Columns.Add("Size", typeof(string)); dt.Columns.Add("Type", typeof(string)); dt.Columns.Add("Hash", typeof(string)); dt.Columns.Add("Sign", typeof(string)); dt.Columns.Add("PublicKey", typeof(string)); dt.Columns.Add("Mod", typeof(string)); dt.Columns.Add("Login", typeof(string)); String userName, sign_out, openkey, mod = ""; using (site_dbDataContext contex = new site_dbDataContext()) //Создан экземпляр класса БД { //Создаем объекты таблиц FileUser UserName = new FileUser(); foreach (string strfile in Directory.GetFiles(Server.MapPath("~/Data")))//вносим данные { FileInfo fi = new FileInfo(strfile); userName = (from x in new site_dbDataContext().FileUser where x.FileName == fi.Name select x.Email).First(); sign_out = (from x in new site_dbDataContext().FileUser where x.FileName == fi.Name select x.Sign).First(); openkey = (from x in new site_dbDataContext().PublicKeys where x.UserLogin == userName select x.PublicKey).First(); mod = (from x in new site_dbDataContext().PublicKeys where x.UserLogin == userName select x.Mod).First(); dt.Rows.Add(fi.Name, fi.Length, GetFileTypeByExtension(fi.Extension), ComputeMD5Checksum(Server.MapPath("~/Data/") + fi.Name), sign_out, openkey, mod, userName); } } GridView1.DataSource = dt; GridView1.DataBind(); } }
protected void Button1_Click(object sender, EventArgs e) { if (Context.User.Identity.Name == "") { Response.Redirect("~/Account/Login.aspx"); } else { if (FileUpload1.HasFile) { FileUpload1.PostedFile.SaveAs(Server.MapPath("~/Data/") + FileUpload1.FileName);// куда грузить ////////////Writing user name into database/////////// using (site_dbDataContext contex = new site_dbDataContext()) //Создан экземпляр класса БД { //Создаем объекты таблиц FileUser UserName = new FileUser(); //PublicKey UserName.Email = Context.User.Identity.Name; UserName.FileName = FileUpload1.FileName; //////////////////////////////////////////////////// ///////////////Добавляем Подпись/////////////////// RSA.BigInteger BI_Text = new RSA.BigInteger(ComputeMD5Checksum(Server.MapPath("~/Data/") + FileUpload1.FileName), 16); RSA.BigInteger d = new RSA.BigInteger((from x in new site_dbDataContext().Sisurity where x.UserLogin == Context.User.Identity.Name select x.PrivatKey).First(), 10); RSA.BigInteger n = new RSA.BigInteger((from x in new site_dbDataContext().PublicKeys where x.UserLogin == Context.User.Identity.Name select x.Mod).First(), 10); byte[] sign = BI_Text.modPow(d, n).getBytes(); UserName.Sign = BitConverter.ToString(sign).Replace("-", string.Empty); contex.FileUser.InsertOnSubmit(UserName); contex.SubmitChanges(); ///////////////////////////////////////////////////*/ } } DataTable dt = new DataTable();//создаём таблицу dt.Columns.Add("File", typeof(string)); dt.Columns.Add("Size", typeof(string)); dt.Columns.Add("Type", typeof(string)); dt.Columns.Add("Hash", typeof(string)); dt.Columns.Add("Sign", typeof(string)); dt.Columns.Add("PublicKey", typeof(string)); dt.Columns.Add("Mod", typeof(string)); dt.Columns.Add("Login", typeof(string)); String userName, sign_out, openkey, mod = ""; using (site_dbDataContext contex = new site_dbDataContext()) //Создан экземпляр класса БД { //Создаем объекты таблиц FileUser UserName = new FileUser(); foreach (string strfile in Directory.GetFiles(Server.MapPath("~/Data")))//вносим данные { FileInfo fi = new FileInfo(strfile); userName = (from x in new site_dbDataContext().FileUser where x.FileName == fi.Name select x.Email).First(); sign_out = (from x in new site_dbDataContext().FileUser where x.FileName == fi.Name select x.Sign).First(); openkey = (from x in new site_dbDataContext().PublicKeys where x.UserLogin == userName select x.PublicKey).First(); mod = (from x in new site_dbDataContext().PublicKeys where x.UserLogin == userName select x.Mod).First(); dt.Rows.Add(fi.Name, fi.Length, GetFileTypeByExtension(fi.Extension), ComputeMD5Checksum(Server.MapPath("~/Data/") + fi.Name), sign_out, openkey, mod, userName); } } GridView1.DataSource = dt; GridView1.DataBind(); } }
protected void Page_Load(object sender, EventArgs e) { ////////////////Creating Grid View /////////////// DataTable dt = new DataTable();//создаём таблицу dt.Columns.Add("File", typeof(string)); dt.Columns.Add("Size", typeof(string)); dt.Columns.Add("Type", typeof(string)); dt.Columns.Add("Hash", typeof(string)); dt.Columns.Add("Sign", typeof(string)); dt.Columns.Add("PublicKey", typeof(string)); dt.Columns.Add("Mod", typeof(string)); dt.Columns.Add("Login", typeof(string)); String userName, sign_out, openkey, mod = ""; using (site_dbDataContext contex = new site_dbDataContext()) //Создан экземпляр класса БД { //Создаем объекты таблиц FileUser UserName = new FileUser(); foreach (string strfile in Directory.GetFiles(Server.MapPath("~/Data")))//вносим данные { FileInfo fi = new FileInfo(strfile); userName = (from x in new site_dbDataContext().FileUser where x.FileName == fi.Name select x.Email).First(); sign_out = (from x in new site_dbDataContext().FileUser where x.FileName == fi.Name select x.Sign).First(); openkey = (from x in new site_dbDataContext().PublicKeys where x.UserLogin == userName select x.PublicKey).First(); mod = (from x in new site_dbDataContext().PublicKeys where x.UserLogin == userName select x.Mod).First(); dt.Rows.Add(fi.Name, fi.Length, GetFileTypeByExtension(fi.Extension), ComputeMD5Checksum(Server.MapPath("~/Data/") + fi.Name), sign_out, openkey, mod, userName); } } GridView1.DataSource = dt; GridView1.DataBind(); ////////////////////////////////////////////////// }