public static IQueryable SearchFiles(int userId, string text, StatusFileEnum statusFile) { return(_db.Files .Join(_db.Users, f => f.user_id, u => u.id, (f, u) => new { f, u }) .Join(_db.StatusFile, ff => ff.f.status_file_id, sf => sf.id, (ff, sf) => new { ff, sf }) .Where(w => (statusFile == StatusFileEnum.All) ? w.ff.f.archive == false : (statusFile == StatusFileEnum.Archive) ? w.ff.f.user_id == userId && w.ff.f.archive == true : (statusFile == StatusFileEnum.Project) ? w.ff.f.archive == false && w.sf.name == "Проект" : (statusFile == StatusFileEnum.Review) ? w.ff.f.archive == false && w.sf.name == "На проверке" : w.ff.f.user_id == userId && w.ff.f.archive == false) .Select(s => new { s.ff.f.id, Название = s.ff.f.name, асширение = s.ff.f.extension, Описание = s.ff.f.comment, Владелец = s.ff.u.login, Статус = s.sf.name }) .Where(w => w.Статус.StartsWith(text) || w.Название.StartsWith(text) || w.Описание.StartsWith(text) || w.Владелец.StartsWith(text) || w.асширение.StartsWith(text))); }
private void buttonReview_Click(object sender, EventArgs e) { _statusFile = StatusFileEnum.Review; ButtonActive(buttonReview); FillTable(); }
private void buttonAll_Click(object sender, EventArgs e) { _statusFile = StatusFileEnum.All; ButtonActive(buttonAll); FillTable(); }
private void buttonProject_Click(object sender, EventArgs e) { _statusFile = StatusFileEnum.Project; ButtonActive(buttonProject); FillTable(); }
private void buttonFavorite_Click(object sender, EventArgs e) { _statusFile = StatusFileEnum.Favorite; ButtonActive(buttonFavorite); FillTable(); }
private void buttonMyFiles_Click(object sender, EventArgs e) { _statusFile = StatusFileEnum.My; ButtonActive(buttonMyFiles); FillTable(); }
public static int CountFiles(int userId, StatusFileEnum statusFile) { var files = _db.Files .Join(_db.StatusFile, f => f.status_file_id, sf => sf.id, (f, sf) => new { f, sf }) .Where(w => w.f.user_id == userId); return((statusFile == StatusFileEnum.My) ? files.Count() : (statusFile == StatusFileEnum.Project) ? files.Count(x => x.sf.name == "Проект") : files.Count(x => x.sf.name == "Черновик")); }
private void buttonLoadFile_Click(object sender, EventArgs e) { try { FileMethod.LoadFile(_userActive.userId); } catch (Exception ex) { MessageBox.Show(ex.Message, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); } _statusFile = StatusFileEnum.My; ButtonActive(buttonMyFiles); FillTable(); }
public static void UpdateStatusFile(int userId, int fileId, StatusFileEnum statusFile) { var status = _db.StatusFile .Where(w => (statusFile == StatusFileEnum.Project) ? w.name == "Проект" : (statusFile == StatusFileEnum.Review) ? w.name == "На проверке" : w.name == "Черновик" ).Single(); var file = _db.Files .Join(_db.StatusFile, f => f.status_file_id, sf => sf.id, (f, sf) => new { f, sf }) .Where(w => w.f.id == fileId).Single(); file.f.status_file_id = status.id; _db.SubmitChanges(); InsertFileChanges(userId, file.f.id, (statusFile == StatusFileEnum.Review) ? "Файл отправлен на проверку." : (statusFile == StatusFileEnum.Project) ? "Изменен статус файла на \"Проект\"." : "Изменен статус файла на \"Черновик\"."); }
private void dataGridViewFiles_DragDrop(object sender, DragEventArgs e) { try { string[] paths = (string[])e.Data.GetData(DataFormats.FileDrop); foreach (string path in paths) { FileMethod.LoadFile(_userActive.userId, path); } } catch (Exception ex) { MessageBox.Show(ex.Message, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); } _statusFile = StatusFileEnum.My; ButtonActive(buttonMyFiles); FillTable(); }
public Main(int userId) { try { _userActive = DataMethod.GetUser(userId); } catch (Exception ex) { MessageBox.Show(ex.Message, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); } _statusFile = StatusFileEnum.My; _fileStruct = new FileStruct(); InitializeComponent(); Icon = Properties.Resources.box; ButtonActive(buttonMyFiles); FillTable(); FillForm(); }