/*private void dataGrid_CellEditEnding(object sender, DataGridCellEditEndingEventArgs e) // Editing DataGrid Row * { * dataGridHelper.EditDataGrid<Group>(e, table_name, dataGrid); * load_data_grid(); * }*/ #endregion #region DataGrid: Deleting /*private void dataGrid_PreviewKeyDown(object sender, KeyEventArgs e) // Deleting DataGrid Row * { * if (e.Key == Key.Delete) * { * e.Handled = DataGridHelper.DeleteDataGrid<Group>(dataGrid); * } * }*/ #endregion #region DataGrid: Filtering /*public void FilterValue(object sender, EventArgs e) * { * dataGridHelper.FilterDataGrid<Group>(sender, e, dataGrid); * }*/ #endregion #endregion private void Group_Hotkey(object sender, RoutedEventArgs e) { Button button = (Button)sender; switch (button.Name) { case "Group_add": new Groups_Add().ShowDialog(); break; case "Group_edit": if (dataGrid.SelectedIndex != -1) { new Groups_Edit(dataGrid.SelectedItem as Group).ShowDialog(); } break; case "Group_del": if (dataGrid.SelectedIndex != -1) { if (DataGridHelper.DeleteDataGrid <Group>(dataGrid) == false) { string group_id = ((Group)dataGrid.SelectedItem).id; Helper.OGroups.Remove(Helper.OGroups.Where(i => i.Equals(dataGrid.SelectedItem)).Single()); // Deleting row from OCathedras(ObservableCollection) SQLiteAdapter.DeleteRowById("pract_types", $"[id_groupe]='{group_id}'"); } } break; default: break; } }
public static bool DeleteDataGrid <T>(DataGrid dataGrid) // Deleting DataGrid Row { string table_name = Helper.GetTNameByClass <T>(); // Get table name in database by class MessageBoxResult msgBox = MessageBox.Show("Вы действительно хотите данное значение?", "Удаление значения", MessageBoxButton.YesNo); if (msgBox == MessageBoxResult.Yes) { dynamic selected_items = (T)dataGrid.SelectedItem; // Getting DataGrid selected items(can get Student class properties) return(SQLiteAdapter.DeleteRowById(table_name, $"[id] = '{selected_items.id}'")); } else { return(true); } // Cancel delete row }
private void Controls_Buttons(object sender, RoutedEventArgs e) { if (contracts_list.SelectedIndex == -1) { return; } Button button = (Button)sender; switch (button.Name) { case "Contract_open": try { Process.Start(path_contracts + "Договор №" + Helper.OContracts.Where(i => i.Equals(contracts_list.SelectedItem)).Single().id); } catch { MessageBox.Show($"Ошибка открытия папки! Возможно сперва необходимо сформировать договор.", "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); } break; case "Contract_edit": new Contracts_Edit(contracts_list.SelectedItem as Classes.Contracts).ShowDialog(); Helper.RefreshOCollection(); break; case "Contract_del": if (DataGridHelper.DeleteDataGrid <Classes.Contracts>(contracts_list) == false) { string id = ((Classes.Contracts)contracts_list.SelectedItem).id; if (SQLiteAdapter.DeleteRowById("attach", $"[id_contract]='{id}'") == false) { Helper.OContracts.Remove(Helper.OContracts.Where(i => i.Equals(contracts_list.SelectedItem)).Single()); // Удаляем элемент из коллекции if (Directory.Exists(path_contracts + $"Договор №{id}")) { Directory.Delete(path_contracts + $"Договор №{id}", true); // Удаляем папку договора } } } break; default: break; } }
private void Button_Listener(object sender, RoutedEventArgs e) { Button button = (Button)sender; switch (button.Name) { case "FormClose": this.Close(); break; case "btnChange": string sel_direction = direction.SelectedItem.ToString().Trim(); string direction_id = SQLiteAdapter.GetValue($"directions WHERE name = '{sel_direction}'", "id")[0][0]; string new_value = "groupe = '" + groupe.Text.Trim() + "', " + "direction = '" + direction_id.Trim() + "', " + "form_study = '" + form_study.SelectedItem.ToString().Trim() + "', " + "enroll_year = '" + enroll.Text.Trim() + "', " + "end_year = '" + end.Text.Trim() + "'"; SQLiteAdapter.ChangeValueById("groups", group.id, new_value); Helper.RefreshOCollection(); SQLiteAdapter.DeleteRowById("pract_types", $"[id_groupe]='{group.id}'"); for (int i = 0; i < practise_Types.Count; i++) { if (practise_Types[i].type_name.ToString().Trim().Length > 0) { SQLiteAdapter.SetValue("pract_types", group.id, practise_Types[i].type_name.ToString().Trim()); } } this.Close(); break; default: break; } }
private bool CreateContract_Attch2() { try { string file = $"Приложение 2.docx"; SQLiteAdapter.DeleteRowById("attach", $"[id_contract]='{sel_items.id}'"); // Удаляем существующие данные // создаём документ DocX document = DocX.Create(dir + file); document.SetDefaultFont(new Font("Times New Roman"), fontSize: 12); // Устанавливаем стандартный для документа шрифт и размер шрифта document.MarginLeft = 42.5f; document.MarginTop = 34.1f; document.MarginRight = 34.1f; document.MarginBottom = 34.1f; document.PageLayout.Orientation = Xceed.Document.NET.Orientation.Landscape; document.InsertParagraph("Приложение 2").Alignment = Alignment.right; document.InsertParagraph($"к договору № {contract_num.Text} от {date.Text} г.").Alignment = Alignment.right; document.InsertParagraph("Список студентов ФГБОУ ВО «СибАДИ», направляемых на производственные объекты").Alignment = Alignment.center; document.InsertParagraph($"\t\t{contract_org.Text}\t\t\t").UnderlineStyle(UnderlineStyle.singleLine).Alignment = Alignment.center; document.InsertParagraph("наименование предприятия, учреждения, организации").Script(Script.superscript).FontSize(12).Alignment = Alignment.center; document.InsertParagraph("для прохождения").Alignment = Alignment.center; Paragraph paragraph1 = document.InsertParagraph($"\t\t{form_pract.SelectedItem.ToString().Trim()}, {type_pract.Text}\t\t\t").UnderlineStyle(UnderlineStyle.singleLine); paragraph1.Append($"в {date.SelectedDate.Value.Year} г").Alignment = Alignment.center; document.InsertParagraph("вид и тип практики").Script(Script.superscript).FontSize(12).Alignment = Alignment.center; int _all_el = 0; foreach (List <string> tmp in selected_student) { _all_el += tmp.Count; } // создаём таблицу с N строками и 3 столбцами Table table = document.AddTable(_all_el + 2, 9); // располагаем таблицу по центру table.Alignment = Alignment.center; table.AutoFit = AutoFit.Contents; #region Стандартное заполнение table.Rows[0].Cells[0].Paragraphs[0].Append("№ п/п").Alignment = Alignment.center; table.Rows[0].Cells[1].Paragraphs[0].Append("Название факультета, кафедры, заявивших студентов на практику ").Alignment = Alignment.center; table.Rows[0].Cells[2].Paragraphs[0].Append("Направление/специальность").Alignment = Alignment.center; table.Rows[0].Cells[3].Paragraphs[0].Append("Сроки практики").Alignment = Alignment.center; table.Rows[0].Cells[4].Paragraphs[0].Append("Курс").Alignment = Alignment.center; table.Rows[0].Cells[5].Paragraphs[0].Append("Группа").Alignment = Alignment.center; table.Rows[0].Cells[6].Paragraphs[0].Append("Ф.И.О. студента").Alignment = Alignment.center; table.Rows[0].Cells[7].Paragraphs[0].Append("Ф.И.О. руководителя практики от кафедры").Alignment = Alignment.center; table.Rows[0].Cells[8].Paragraphs[0].Append("Контактные телефоны кафедры по вопросам практики ").Alignment = Alignment.center; table.Rows[1].Cells[0].Paragraphs[0].Append("1").Alignment = Alignment.center; table.Rows[1].Cells[1].Paragraphs[0].Append("2").Alignment = Alignment.center; table.Rows[1].Cells[2].Paragraphs[0].Append("3").Alignment = Alignment.center; table.Rows[1].Cells[3].Paragraphs[0].Append("4").Alignment = Alignment.center; table.Rows[1].Cells[4].Paragraphs[0].Append("5").Alignment = Alignment.center; table.Rows[1].Cells[5].Paragraphs[0].Append("6").Alignment = Alignment.center; table.Rows[1].Cells[6].Paragraphs[0].Append("7").Alignment = Alignment.center; table.Rows[1].Cells[7].Paragraphs[0].Append("8").Alignment = Alignment.center; table.Rows[1].Cells[8].Paragraphs[0].Append("9").Alignment = Alignment.center; #endregion int row = 2; for (int i = 0; i < selected_student.Count; i++) { foreach (string tmp_st in selected_student[i]) { table.Rows[row].Cells[0].Paragraphs[0].Append((i + 1).ToString()).Alignment = Alignment.center; Group group = Helper.OGroups.Where(k => k.groupe.Equals(selected_group[i])).ElementAt(0); Classes.Direction direction = Helper.ODirections.Where(k => k.name.Equals(group.direction)).ElementAt(0); Cathedra cathedra = Helper.OCathedras.Where(k => k.cathedra.Equals(direction.id_cathedra)).ElementAt(0); #region Вычисляем курс int enroll = Convert.ToInt32(group.enroll_year); // Год поступления int end = Convert.ToInt32(group.end_year); // Год окончания int course = DateTime.Today.Year - enroll; int month = DateTime.Today.Month - 9; if (month >= 0) { course++; } #endregion table.Rows[row].Cells[1].Paragraphs[0].Append(cathedra.cathedra).Alignment = Alignment.center; // Кафедра table.Rows[row].Cells[2].Paragraphs[0].Append(direction.code + " " + direction.name).Alignment = Alignment.center; // Направление table.Rows[row].Cells[3].Paragraphs[0].Append(" - ").Alignment = Alignment.center; // Сроки практики table.Rows[row].Cells[4].Paragraphs[0].Append(course.ToString()).Alignment = Alignment.center; // Курс table.Rows[row].Cells[5].Paragraphs[0].Append(group.groupe).Alignment = Alignment.center; // Группа table.Rows[row].Cells[6].Paragraphs[0].Append(tmp_st).Alignment = Alignment.center; // Ф.И.О. студента table.Rows[row].Cells[7].Paragraphs[0].Append(cathedra.surname + " " + cathedra.name + " " + cathedra.patronymic).Alignment = Alignment.center; // Ф.И.О. руководителя от кафедры table.Rows[row].Cells[8].Paragraphs[0].Append(cathedra.phone).Alignment = Alignment.center; // Телефон кафедры row++; // Добавляем студента в БД Attach // Разбиваем ФИО студента на состовляющие var fio = tmp_st.Split(); Student st_tmp = Helper.OStudents.Where(k => k.surname.Equals(fio[0]) && k.name.Equals(fio[1]) && k.patronymic.Equals(fio[2])).ElementAt(0); SQLiteAdapter.SetValue("attach", contract_num.Text, st_tmp.id); // и записываем новые } } document.InsertParagraph().InsertTableAfterSelf(table); document.InsertParagraph(); document.InsertParagraph("Согласовано:"); document.InsertParagraph("Заведующий выпускающей кафедрой"); document.InsertParagraph("«___________________________________» ______________ /______________________/"); document.InsertParagraph(" подпись расшифровка подписи").Script(Script.superscript).FontSize(10); document.InsertParagraph("Декан факультета / Директор института"); document.InsertParagraph("«___________________________________» ______________ /______________________/"); document.InsertParagraph(" подпись расшифровка подписи").Script(Script.superscript).FontSize(10); document.InsertParagraph("Начальник отдела организации практики"); document.InsertParagraph("и содействия трудоустройству выпускников ______________ / Ю.С.Сачук /"); document.InsertParagraph(" подпись расшифровка подписи").Script(Script.superscript).FontSize(10); // сохраняем документ document.Save(); } catch (Exception e) { MessageBox.Show($"Error: {e}", "Error", MessageBoxButton.OK); return(false); } return(true); }
private bool CreateContract() { try { string file = $"Договор.docx"; if (!Directory.Exists(dir)) { Directory.CreateDirectory(dir); } // создаём документ DocX document = DocX.Create(dir + file); document.SetDefaultFont(new Font("Times New Roman"), fontSize: 12); // Устанавливаем стандартный для документа шрифт и размер шрифта document.MarginLeft = 42.5f; document.MarginTop = 34.1f; document.MarginRight = 34.1f; document.MarginBottom = 34.1f; document.InsertParagraph($"Договор № {contract_num.Text}").Bold().Alignment = Alignment.center; document.InsertParagraph("о совместной деятельности при прохождении практики студентами").Bold().Alignment = Alignment.center; document.InsertParagraph($"г. Омск {date.Text} г.").Alignment = Alignment.center; Paragraph paragraph1 = document.InsertParagraph(); paragraph1.Append("\tФедеральное государственное бюджетное образовательное учреждение высшего образования \"Сибирский государственный автомобильно-дорожный университет(СибАДИ)\", ").Italic().Alignment = Alignment.both; paragraph1.Append($"именуемое в дальнейшем «Учреждение», в лице ректора Жигадло Александра Петровича, действующего на основании Устава, с одной стороны и, с другой стороны \"{contract_org.Text}\" "); paragraph1.Append($"именуемое в дальнейшем «Организация» в лице {contract_empl.Text} действующего на основании ______________, заключили между собой договор о нижеследующем."); #region 1 Предмет договора document.InsertParagraph("1\tПредмет договора").Bold().Alignment = Alignment.center; document.InsertParagraph("\t1.1 Учреждение направляет обучающихся, а Организация предоставляет им места для прохождения всех типов практик (далее – практика) по направлениям (специальностям), указанным в Приложении 1, на базе Организации в соответствии с программами и заданиями.").Alignment = Alignment.both; document.InsertParagraph("\t1.2 Для прохождения практики в Организацию направляются обучающиеся, перечень которых является неотъемлемой частью настоящего договора(Приложение 2).").Alignment = Alignment.both; document.InsertParagraph("\t1.3 С момента зачисления обучающихся в качестве практикантов на них распространяются правила охраны труда и правила внутреннего трудового распорядка, действующие в Организации.").Alignment = Alignment.both; #endregion #region 2 Права и обязанности сторон document.InsertParagraph("2\tПрава и обязанности сторон").Bold().Alignment = Alignment.center; document.InsertParagraph("\t2.2 Организация обязуется").Alignment = Alignment.both; document.InsertParagraph("\t2.1.2 Предоставить рабочие места обучающимся, назначить руководителей практики, определить наставников.").Alignment = Alignment.both; document.InsertParagraph("\t2.1.3 Участвовать в определении процедуры оценки результатов освоения общих и профессиональных компетенций, полученных в период прохождения практики, а также оценке таких результатов.").Alignment = Alignment.both; document.InsertParagraph("\t2.1.4 Обеспечить безопасные условия прохождения практики, отвечающие санитарным правилам и требованиям охраны труда.").Alignment = Alignment.both; document.InsertParagraph("\t2.1.5 Проводить инструктаж обучающихся по ознакомлению с требованиями охраны труда, техники безопасности, пожарной безопасности, а также правилами внутреннего трудового распорядка.").Alignment = Alignment.both; document.InsertParagraph("\t2.1.6 Обеспечить обучающихся необходимыми материалами, которые не составляют коммерческую тайну и могут быть использованы при написании выпускных квалификационных работ / курсовых работ(проектов).").Alignment = Alignment.both; document.InsertParagraph("\t2.1.7 Уведомлять Учреждение о нарушении обучающимися графика практики, а также правил внутреннего трудового распорядка.").Alignment = Alignment.both; document.InsertParagraph("\t2.1.8 По окончании практики выдать каждому обучающемуся отзыв(характеристику) о его работе.").Alignment = Alignment.both; document.InsertParagraph("\t2.1.9 Предоставлять возможность повторного направления обучающегося на практику, если он не прошел практику по уважительным причинам.").Alignment = Alignment.both; document.InsertParagraph("\t2.1.10 Не привлекать обучающихся к выполнению тяжелых работ с вредными и опасными условиями труда.").Alignment = Alignment.both; document.InsertParagraph("\t2.1.11 Несчастные случаи, происшедшие в Организации со студентами Учреждения во время прохождения практики, расследовать комиссией совместно с представителями Учреждения и учитывать в Организации в соответствии с Положением о расследовании и учете несчастных случаев на производстве.").Alignment = Alignment.both; document.InsertParagraph("\t2.1.12 Не менее чем за один месяц до начала практики сообщить в письменном виде об отказе о предоставлении мест проведения практики студентов.").Alignment = Alignment.both; document.InsertParagraph("\t2.2 Организация имеет право:").Alignment = Alignment.both; document.InsertParagraph("\t2.2.1 Не допускать обучающегося к прохождению практики в случае выявления фактов нарушения им правил внутреннего трудового распорядка, охраны труда, техники безопасности, а также в иных случаях нарушения условий настоящего договора обучающимся или Учреждением.").Alignment = Alignment.both; document.InsertParagraph("\t2.3 Учреждение обязуется:").Alignment = Alignment.both; document.InsertParagraph("\t2.3.1 Направить в Организацию студентов в сроки, предусмотренные графиком учебного процесса.").Alignment = Alignment.both; document.InsertParagraph("\t2.3.2 Определять совместно с Организацией процедуру оценки общих и профессиональных компетенций обучающихся, освоенных ими в ходе прохождения практики.").Alignment = Alignment.both; document.InsertParagraph("\t2.3.3 Назначать в качестве руководителей практики от Учреждения квалифицированных сотрудников из числа научно-педагогических работников Учреждения.").Alignment = Alignment.both; document.InsertParagraph("\t2.3.4 Оказывать руководителям практики студентов от Организации методическую помощь в проведении всех видов практики.").Alignment = Alignment.both; document.InsertParagraph("\t2.3.5 Принимать участие в работе комиссии Организации по расследованию несчастных случаев с обучающимися.").Alignment = Alignment.both; document.InsertParagraph("\t2.4 Учреждение имеет право:").Alignment = Alignment.both; document.InsertParagraph("\t2.4.1 При непредставлении обучающемуся рабочего места и работ, отвечающих требованиям учебных программ специальности(направления), необеспечении условий безопасности труда, а также при использовании труда обучающегося на сторонних или подсобных работах отозвать обучающегося с места практики").Alignment = Alignment.both; #endregion #region 3 Ответственность document.InsertParagraph("3\tОтветственность").Bold().Alignment = Alignment.center; document.InsertParagraph("\t3.1 Стороны несут ответственность за неисполнение или ненадлежащее исполнение обязанностей по настоящему договору в соответствии с действующим законодательством Российской Федерации.").Alignment = Alignment.both; document.InsertParagraph("\t3.2 Ответственность за вред, который может наступить вследствие разглашения обучающимся конфиденциальной информации Организации, а также за нарушение интеллектуальных, авторских и иных неимущественных прав несет обучающийся.").Alignment = Alignment.both; document.InsertParagraph("\t3.3 Неисполнение условий настоящего пункта влечет для Сторон обязанность по возмещению убытков, связанных с неисполнением условий настоящего договора.").Alignment = Alignment.both; #endregion #region 4 Заключительные положения document.InsertParagraph("4\tЗаключительные положения").Bold().Alignment = Alignment.center; document.InsertParagraph("\t4.1 Настоящий договор составлен и подписан в двух аутентичных экземплярах - по одному для каждой Стороны.").Alignment = Alignment.both; document.InsertParagraph("\t4.2 Договор вступает в силу с момента подписания и действует до 31.12.2024 г.").Alignment = Alignment.both; document.InsertParagraph("\t4.3 Если до окончания срока действия настоящего договора ни одна из Сторон не заявит о прекращении действия договора, необходимости внесения в договор изменений и/ или дополнений, о необходимости заключения нового договора на иных условиях, настоящий договор считается продленным(пролонгированным) на _1 г.на прежних условиях.").Alignment = Alignment.both; document.InsertParagraph("\t4.4 Во всем остальном, что не предусмотрено настоящим договором, Стороны руководствуются действующим законодательством Российской Федерации.").Alignment = Alignment.both; #endregion #region 5 Реквизиты и подписи сторон document.InsertParagraph("5\tРеквизиты и подписи сторон").Bold().Alignment = Alignment.center; document.InsertParagraph("Учреждение: 644080, г.Омск, пр.Мира, 5 Организация:__________________________").Alignment = Alignment.both; document.InsertParagraph("ФГБОУ ВО «СибАДИ» _______________________________________").Alignment = Alignment.both; document.InsertParagraph("тел.: 72 - 94 - 97 _______________________________________").Alignment = Alignment.both; document.InsertParagraph("Ректор А.П.Жигадло ________________ / _____________________ /").Alignment = Alignment.both; document.InsertParagraph(" подпись расшифровка подписи").Script(Script.superscript).FontSize(10).Alignment = Alignment.both; document.InsertParagraph("МП МП").FontSize(11).Alignment = Alignment.both; document.InsertParagraph("Имеет право подписи за руководителя(ректора)").FontSize(10).Alignment = Alignment.both; document.InsertParagraph("Проректор по учебной работе").FontSize(10).Alignment = Alignment.both; document.InsertParagraph("(доверенность № 61 от 29.10.2018)").FontSize(10).Alignment = Alignment.both; document.InsertParagraph("______________ / С.В.Мельник /").Alignment = Alignment.both; document.InsertParagraph("Начальник отдела организации практики").FontSize(10).Alignment = Alignment.both; document.InsertParagraph("и содействия трудоустройству выпускников").FontSize(10).Alignment = Alignment.both; document.InsertParagraph("______________ / Ю.С.Сачук /").Alignment = Alignment.both; document.InsertParagraph("Заведующий выпускающей кафедрой").FontSize(10).Alignment = Alignment.both; document.InsertParagraph("«_Прикладная инфрматика в экономике»").Alignment = Alignment.both; document.InsertParagraph("______________ / Л.И.Остринская /").Alignment = Alignment.both; document.InsertParagraph("подпись расшифровка подписи").Script(Script.superscript).FontSize(10).Alignment = Alignment.both; #endregion if (CreateContract_Attch1() == false) { return(false); } if (CreateContract_Attch2() == false) { return(false); } SQLiteAdapter.DeleteRowById("contracts", $"[id]='{sel_items.id}'"); // Добавляем данные в БД SQLiteAdapter.SetValue("contracts", contract_num.Text, $"{date.Text}", contract_org.Text, contract_empl.Text, form_pract.SelectedItem.ToString(), type_pract.Text); // сохраняем документ document.Save(); } catch (Exception e) { SQLiteAdapter.DeleteRowById("contracts", $"[id]='{contract_num.Text}'"); SQLiteAdapter.DeleteRowById("attach", $"[id_contract]='{contract_num.Text}'"); MessageBox.Show($"Error: {e}", "Error", MessageBoxButton.OK); return(false); } return(true); }