} //--//-- public List <FISGIAObject> getArrived() { List <FISGIAObject> arrvd = new List <FISGIAObject>(); GIAToASURSOConverter.knowlege.ArrivedStudentsKnowlege knowlege = new GIAToASURSOConverter.knowlege.ArrivedStudentsKnowlege(); foreach (ArrivedStudentObject st in knowlege.getAll()) { FISGIAObject obj = null; foreach (FISGIAObject student in this.objects) { if (CheckSimilaryFIO.Check( student.Get("Family"), student.Get("Name"), student.Get("Sername"), st.Get("Family"), st.Get("Name"), st.Get("Sername"))) { obj = student; } } if (obj != null) { arrvd.Add(obj); } } return(arrvd); }
// Выводит объекты в Excel файл public void printAllToExcel() { ExcelDocumentManager manager_out = new ExcelDocumentManager(); manager_out.setVisible(true); manager_out.CreateExcelApplication(); manager_out.CreateWorkbook(); manager_out.OpenSheet(); manager_out.toFirstRow(); // Выводим шапку FISGIAObject tempObj = new FISGIAObject(); for (int i = 1; i <= tempObj.Fields().Length; i++) { manager_out.cell(i).Value = tempObj.Description(i); } manager_out.toNextRow(); // Выводим объекты foreach (FISGIAObject obj in this.objects) { for (int i = 1; i <= obj.Fields().Length; i++) { manager_out.cell(i).Value = obj.Get(i); } manager_out.toNextRow(); } } //--//--
// Конвертирует один объект в АСУ РСО public static ASURSOObject ConvertToASURSOObject(FISGIAObject element) { // Если студент поступил и есть в группе, иначе возвращается ноль - обработка студента не имеет смысла knowlege.ArrivedStudentsKnowlege knowlege = new GIAToASURSOConverter.knowlege.ArrivedStudentsKnowlege(); String group = knowlege.getGroup( element.Get("Family"), element.Get("Name"), element.Get("Sername")); if (group == null) { Logger.getInstance().log("Студент не найден " + element.Get("Family") + " " + element.Get("Name") + " " + element.Get("Sername")); return(null); } // Платно bool isCommerce = knowlege.ifCommerce(group); ASURSOObject rso_object = new ASURSOObject(); // "Family" - "Фамилия" //+ rso_object.Set("Family", element.Get("Family")); // "Name" - "Имя" //+ rso_object.Set("Name", element.Get("Name")); // "Sername" - "Отчество" rso_object.Set("Sername", element.Get("Sername")); // "DateBirth" - "Дата рождения"//+ rso_object.Set("DateBirth", element.Get("BirthDate")); // "Sex" - "Пол"//+ rso_object.Set("Sex", element.Get("Sex").Contains("Женский") ? "Женский" : "Мужской"); // "Finanse" - "Финансирование" //+ rso_object.Set("Finanse", isCommerce ? "За счет физического лица" : "За счет бюджета субъекта РФ"); // "Group" - "Группа" //+ rso_object.Set("Group", group); // "OrderNum" - "№ приказа" //+ rso_object.Set("OrderNum", global.GlobalSettings.ORDER_NUM); // "OrderDate" - "Дата приказа" //+ rso_object.Set("OrderDate", global.GlobalSettings.ORDER_DATE); // "OrderBegin" - "Действует с" //+ rso_object.Set("OrderBegin", global.GlobalSettings.ORDER_BEGIN); // "Reason" - "Причина" //+ rso_object.Set("Reason", "По среднему баллу аттестата"); // "Education" - "Образование" //+ // "EducationFinishDate" - "Дата окончания предыдущего обучения" //+ rso_object.Set("EducationFinishDate", element.Get("EDocDate")); // "EducationHealthRestriction" - "Закончил специальную организацию для учащихся с ОВЗ" //+ rso_object.Set("EducationHealthRestriction", "Нет"); // "EducationInternational" - "Обучается по международному договору" //+ rso_object.Set("EducationInternational", "Нет"); // ЕСЛИ НЕ ИНОСТРАННЫЙ ГРАЖДАНИН С ЗАПОЛНЕННЫМ ПАСПОРТОМ // ИНАЧА ЛУЧШЕ НИЧЕГО НЕ ВБИВАТЬ if ((element.Get("DocType") == "Паспорт гражданина РФ") && (element.Get("DocSer").Length == 4) && (element.Get("DocNum").Length == 6)) { // "AddressLocation" - "Адрес проживания" //+ rso_object.Set("AddressLocation", element.Get("Address")); // "DocType" - "Тип документа" //+ rso_object.Set("DocType", "Паспорт РФ"); // "DocSer" - "Серия паспорта" rso_object.Set("DocSer", element.Get("DocSer")); // "DocNum" - "Номер паспорта" //+ rso_object.Set("DocNum", element.Get("DocNum")); // "DocDate" - "Дата выдачи паспорта" //+ rso_object.Set("DocDate", element.Get("DocDate")); // "DocDepartment" - "Кем выдан паспорт" //+ rso_object.Set("DocDepartment", element.Get("DocDepartment")); // "BirthAddress" - "Место рождения" //+ rso_object.Set("BirthAddress", element.Get("BirthAddress")); // "AddressRegistration" - "Адрес регистрации" //+ rso_object.Set("AddressRegistration", element.Get("Address")); } return(rso_object); }
// Загружает данные из файла public static List <FISGIAObject> Read(String[] files) { List <FISGIAObject> FisgiaObjects = new List <FISGIAObject>(); ExcelDocumentManager manager = new ExcelDocumentManager(); manager.setVisible(true); manager.CreateExcelApplication(); foreach (String filename in files) { //================================= // Открытие новой книги //================================= manager.OpenWorkbook(filename); //================================= // Подсчет количества строк //================================= manager.toFirstRow(); manager.toNextRow(); manager.toNextRow(); int count = 0; while (!manager.empty(1)) { manager.toNextRow(); count++; } //================================= // !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! /*ExcelDocumentManager manager_out = new ExcelDocumentManager(); * FISGIAObject tempObj = new FISGIAObject(); * manager_out.setVisible(true); * manager_out.CreateExcelApplication(); * manager_out.CreateWorkbook(); * manager_out.OpenSheet(); * manager_out.toFirstRow(); * for (int i = 1; i <= tempObj.Fields().Length; i++) * { * manager_out.cell(i).Value = tempObj.Description(i); * } * manager_out.toNextRow();*/ //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! //================================= // Прогресс //================================= Progressor progressor = new Progressor(); progressor.SetCount(count); progressor.Show(); progressor.Focus(); //================================= manager.toFirstRow(); manager.toNextRow(); //Проскакиваем меню manager.toNextRow(); while (!manager.empty(1)) { FISGIAObject obj = new FISGIAObject(); for (int i = 1; i <= obj.Fields().Length; i++) { if (!manager.empty(i)) { if (obj.Type(i) == ParentObjectFieldTypes.DATE) { try { obj.Set(obj.Field(i), "'" + String.Format("{0:dd.MM.yyyy}", (DateTime)manager.cell(i).Value)); } catch (Exception e) { obj.Set(obj.Field(i), null); } } if (obj.Type(i) == ParentObjectFieldTypes.NUM) { try { obj.Set(obj.Field(i), "'" + (manager.cell(i).Value).ToString()); } catch (Exception e) { obj.Set(obj.Field(i), null); } } if (obj.Type(i) == ParentObjectFieldTypes.TEXT) { try { obj.Set(obj.Field(i), (String)manager.cell(i).Value); } catch (Exception e) { obj.Set(obj.Field(i), null); } } } else { obj.Set(obj.Field(i), null); } } FisgiaObjects.Add(obj); //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! /*for (int i = 1; i <= obj.Fields().Length; i++) * { * manager_out.cell(i).Value = obj.Get(i); * } * manager_out.toNextRow();*/ //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! manager.toNextRow(); progressor.Step(); } // --//-- while (!manager.empty(1)) progressor.Hide(); progressor.Dispose(); manager.CloseBook(); } // --//-- foreach (String filename in files) manager.CloseApplication(); return(FisgiaObjects); } // --//-- List<FISGIAObject> Read(String[] files)