void Importer::parseOKATOTEL(const QString line) { QString utfLine = line; QString sOKATO = WINtoUnicode("Код ОКАТО"); addParametr("OKATO", utfLine.mid(utfLine.indexOf(sOKATO) + sOKATO.length() + 1, 12).trimmed()); QString sTel = WINtoUnicode("Телефон"); addParametr("Tel", utfLine.right(utfLine.length() - utfLine.indexOf(sTel) - sTel.length())); }
void Importer::parseCodeDocSeriesNum(const QString line) { QString subStr = WINtoUnicode("Код док-та, удост. личность -"); addParametr("CodeDoc", line.mid(line.indexOf(subStr) + subStr.length() + 1, 3).trimmed()); subStr = WINtoUnicode("документа"); addParametr("SeriesAndNumberDoc", line.right(line.length() - line.indexOf(subStr) - subStr.length()).trimmed()); }
void Importer::parseStatusDrGr(const QString line) { addParametr("Status", line.mid(12, 3).trimmed()); QString sBirthday = WINtoUnicode("Дата рождения"); addParametr("Birthday", line.mid(line.indexOf(sBirthday) + sBirthday.length() + 1, 15).trimmed()); addParametr("Grajdanstvo", line.right(3)); }
void Importer::parseOrgname(const QString line, int start) { QString utfLine = line;//OEMtoUnicode(line); QString sOrgTitle = WINtoUnicode("Наименование организации"); if (start == 0) addParametr("Orgname", utfLine.right(utfLine.length() - utfLine.indexOf(sOrgTitle) - sOrgTitle.length()).trimmed()); else addParametr("Orgname", utfLine.trimmed()); }
void Importer::parseIndexRegCode(const QString line) { QString subStr = WINtoUnicode("Почтовый индекс"); addParametr("Index", line.mid(line.indexOf(subStr) + subStr.length() + 1, 6).trimmed()); subStr = WINtoUnicode("Код региона"); addParametr("RegCode", line.mid(line.indexOf(subStr) + subStr.length() + 1, 2).trimmed()); subStr = WINtoUnicode("Район"); addParametr("Raion", line.mid(line.indexOf(subStr) + subStr.length() + 1, 28).trimmed()); }
void Importer::parseHomeFlat(const QString line) { QString subStr = WINtoUnicode("Дом"); addParametr("Дом", line.mid(line.indexOf(subStr) + subStr.length() + 1, 6).trimmed()); subStr = WINtoUnicode("Корпус"); addParametr("Корпус", line.mid(line.indexOf(subStr) + subStr.length() + 1, 3).trimmed()); subStr = WINtoUnicode("Квартира"); addParametr("Квартира", line.mid(line.indexOf(subStr) + subStr.length() + 1, 3).trimmed()); }
void Importer::parseTitle(QString line) { QString utfLine = line;//OEMtoUnicode(line); addParametr("Year", utfLine.mid(38, 4)); addParametr("Number", utfLine.mid(49, 2)); addParametr("Date", utfLine.mid(55, 10)); QString sIfns = WINtoUnicode("ИФНС"); //addParametr("IFNS", utfLine.mid(utfLine.indexOf(sIfns, 55) + sIfns.length() + 1, 4)); addParametr("IFNS", utfLine.mid(utfLine.indexOf(sIfns) + sIfns.length() + 1, 4).trimmed()); }
void Importer::parseIncomeTable(const QString n, const QString line) { QStringList list1 = line.split(QChar(0x2502)); // addParametr("Строка_" + n + "_Столбец_1", list1[1].trimmed()); addParametr("Строка_" + n + "_Столбец_2", list1[2].trimmed()); addParametr("Строка_" + n + "_Столбец_3", list1[3].trimmed()); addParametr("Строка_" + n + "_Столбец_4", list1[4].trimmed()); addParametr("Строка_" + n + "_Столбец_5", list1[5].trimmed()); addParametr("Строка_" + n + "_Столбец_6", list1[7].trimmed()); addParametr("Строка_" + n + "_Столбец_7", list1[8].trimmed()); addParametr("Строка_" + n + "_Столбец_8", list1[9].trimmed()); addParametr("Строка_" + n + "_Столбец_9", list1[10].trimmed()); addParametr("Строка_" + n + "_Столбец_10",list1[11].trimmed()); }
void Importer::parseTaxDeductions(const QString line) { //QStringList list1 = line.split(" "); addParametr("Код4.1", line.mid(2, 4).trimmed()); addParametr("СуммаВычета4.1", line.mid(8, 12).trimmed()); addParametr("Код4.2", line.mid(22, 3).trimmed()); addParametr("СуммаВычета4.2", line.mid(27, 12).trimmed()); addParametr("Код4.3", line.mid(41, 3).trimmed()); addParametr("СуммаВычета4.3", line.mid(46, 12).trimmed()); addParametr("Код4.4", line.mid(60, 3).trimmed()); addParametr("СуммаВычета4.4", line.mid(65, 12).trimmed()); }
void Importer::parsePara42(const QString line) { addParametr("НомерУведомления", line.right(8).trimmed()); }
void Importer::parseBottom(const QString line) { addParametr("Должность", line.mid(17, 20).trimmed()); addParametr("ФИОАгента", line.mid(57, 20).trimmed()); }
void Importer::parsePara510Sum(const QString line) { addParametr("ТекстП5.10", line.mid(1, 64).trimmed()); addParametr("СуммаП5.10", line.mid(66, 12).trimmed()); }
void Importer::parse() { QFile file(inputFile); if (!file.open(QFile::ReadOnly)) return; QTextStream in(&file); in.setCodec("IBM 866"); numberDoc = 1; while (!in.atEnd()) { QString line; in.readLine(); // шапка in.readLine(); // in.readLine(); in.readLine(); // Код формы по КНД 1151078 parsePriznak(in.readLine()); // Признак parseTitle(in.readLine()); // Строка с датой и номером справки in.readLine(); // in.readLine(); // п. 1 parseINNCPP(in.readLine()); // п. 1.1 parseOrgname(in.readLine()); // п. 1.2 if (params[QString::number(numberDoc) + "_Orgname"].isEmpty()) parseOrgname(in.readLine(), 1); in.readLine(); parseOKATOTEL(in.readLine()); // п. 1.3 п. 1.4 in.readLine(); // п. 2 parseINN(in.readLine()); // п. 2.1 in.readLine(); parseFIOTBN(in.readLine()); // п. 2.2 parseStatusDrGr(in.readLine()); // п. 2.3 - п. 2.5 parseCodeDocSeriesNum(in.readLine()); // п. 2.6 - п. 2.7 in.readLine(); // п. 2.8 parseIndexRegCode(in.readLine()); fillAddress(); line = in.readLine(); while (!line.contains(WINtoUnicode("Дом"))) { if (line.contains(WINtoUnicode("Город"))) parseCity(line); else if (line.contains(WINtoUnicode("Улица"))) parseStreet(line); else if (line.contains(WINtoUnicode("Населенный пункт"))) parseLocality(line); line = in.readLine(); } parseHomeFlat(line); in.readLine(); fillPara29(); line = in.readLine(); if (line.left(3) == "2.9") { parseCoutryCode(line); parseAddress(in.readLine()); in.readLine(); line = in.readLine(); } parseTax(line); // п. 3 in.readLine(); in.readLine(); in.readLine(); in.readLine(); in.readLine(); line = in.readLine(); QChar sym(0x2514); int incomeTableRowsCount = 1; while (line[0] != sym) { parseIncomeTable(QString::number(incomeTableRowsCount++), line); line = in.readLine(); } addParametr("incomeTableRowsCount", QString::number(incomeTableRowsCount)); in.readLine(); fillPara4(); line = in.readLine(); // п. 4 while (line.left(3) != " 5.") { QString para = line.left(3); if (para == "") { } else if (para == "4. ") { } else if (para == "4.1") { in.readLine(); line = in.readLine(); parseTaxDeductions(line); } else if (para == "4.2") { parsePara42(line); } else if ((para == "4.3") || (para == "4.4")) { parsePara43_44(line); } else if (para == "4.5") { parsePara45(line); } else if (para == "4.6") { parsePara46(line); } line = in.readLine(); } //in.readLine(); // п. 5 fillPara5(); line = in.readLine(); while (line[0] != sym) { QString para = line.mid(1, 4); if (para == "5.1.") parseAmountIncome(line); // п. 5.1 else if (para == "5.2.") parseTaxableAmountIncome(line); // п. 5.2 else if (para == "5.3.") parseAmountOfTaxCalculated(line); // п. 5.3 else if (para == "5.4.") parseAmountOfTaxWithheld(line); // п. 5.4 else if (para == "5.5.") parsePara55Sum(line); // п. 5.5 else if (para == "5.6.") parsePara56Sum(line); // п. 5.6 else if (para == "5.7.") parsePara57Sum(line); // п. 5.7 else if (para == "5.8.") parsePara58Sum(line); // п. 5.8 else if (para == "5.9.") parsePara59Sum(line); // п. 5.9 else if (para == "5.10") parsePara510Sum(line); // п. 5.10 line = in.readLine(); } in.readLine(); in.readLine(); parseBottom(in.readLine()); QChar pageBreak(0x0C); line = in.readLine(); while (!in.atEnd() && line != pageBreak) line = in.readLine(); numberDoc++; } file.close(); }
void Importer::parseAmountOfTaxWithheld(const QString line) { addParametr("ТекстП5.4", line.mid(1, 64).trimmed()); addParametr("СуммаП5.4", line.mid(66, 12).trimmed()); }
void Importer::parseTaxableAmountIncome(const QString line) { addParametr("ТекстП5.2", line.mid(1, 64).trimmed()); addParametr("ОблагаемаяСуммаДоходов", line.mid(66, 12).trimmed()); }
void Importer::parseINN(const QString line) { addParametr("INN", line.mid(9, 12)); }
void Importer::parseINNCPP(const QString line) { addParametr("INN/CPP", line.mid(25, 22)); }
void Importer::parsePara46(const QString line) { addParametr("СуммаИмущественныхНалВычетов", line.right(14).trimmed()); }
void Importer::parseAddress(const QString line) { addParametr("АдресВСтранеПроживания", line.trimmed()); }
void Importer::parseStreet(const QString line) { addParametr("Street", line.right(line.length() - 10).trimmed()); }
void Importer::parseLocality(const QString line) { addParametr("НасПункт", line.right(line.length() - 22).trimmed()); }
void Importer::parseCity(const QString line) { addParametr("City", line.right(line.length() - 10).trimmed()); }
void Importer::parsePara43_44(const QString line) { addParametr("ДатаВыдачиУведомления", line.mid(16, 14).trimmed()); addParametr("КодИФНСУведомления", line.right(6).trimmed()); }
void Importer::parseAmountIncome(const QString line) { addParametr("ТекстП5.1", line.mid(1, 64).trimmed()); addParametr("СуммаДоходов", line.mid(66, 12).trimmed()); }
void Importer::parsePara45(const QString line) { addParametr("СуммаНалВычетов", line.right(14).trimmed()); }
void Importer::parseFIOTBN(const QString line) { addParametr("FIO", line.left(50).trimmed()); addParametr("TBN", line.right(4).trimmed()); }
void Importer::parseCoutryCode(const QString line) { addParametr("КодСтраныПроживания", line.mid(43, 3).trimmed()); }
void Importer::parseTax(const QString line) { addParametr("СтавкаНалога", line.mid(40, 4).trimmed()); }
void SendSelectionDialog::sl_OK() { QString error = ca_c->validate(); if (!error.isEmpty()) { QMessageBox::critical(NULL, tr("Error"), error); return; } retries = retrySpinBox->value(); db = dataBase->currentText(); if(db!="cdd") { requestParameters = "CMD=Put"; addParametr(requestParameters,ReqParams::program,db); double eValue = evalueSpinBox->value(); if(shortSequenceCheckBox->isChecked()) eValue = 1000; addParametr(requestParameters,ReqParams::expect,eValue); if(false == entrezQueryEdit->text().isEmpty()) addParametr(requestParameters, ReqParams::entrezQuery, entrezQueryEdit->text()); int maxHit = quantitySpinBox->value(); addParametr(requestParameters,ReqParams::hits,maxHit); if(megablastCheckBox->isChecked()) { addParametr(requestParameters,ReqParams::megablast,"true"); } addParametr(requestParameters,ReqParams::database,dbComboBox->currentText().split(" ").last()); QString filter=""; if(lowComplexityFilterCheckBox->isChecked()&&!shortSequenceCheckBox->isChecked()) { filter.append("L"); } if(repeatsCheckBox->isChecked()) { filter.append("R"); } if(lookupMaskCheckBox->isChecked()) { filter.append("m"); } if(!filter.isEmpty()) { addParametr(requestParameters,ReqParams::filter,filter); } addParametr(requestParameters,ReqParams::gapCost,costsComboBox->currentText()); if(db == "blastn"){ addParametr(requestParameters,ReqParams::matchScore,scoresComboBox->currentText().split(" ").first()); addParametr(requestParameters,ReqParams::mismatchScore,scoresComboBox->currentText().split(" ").last()); } if(shortSequenceCheckBox->isChecked()) { QString wordSize = wordSizeComboBox->currentText().toInt()>7 ? "7" : wordSizeComboBox->currentText(); addParametr(requestParameters,ReqParams::wordSize, wordSize); } else { addParametr(requestParameters,ReqParams::wordSize,wordSizeComboBox->currentText()); } if(lowerCaseCheckBox->isChecked()) { addParametr(requestParameters,ReqParams::lowCaseMask,"yes"); } if(db=="blastp") { if(!isAminoSeq) { translateToAmino = true; } addParametr(requestParameters,ReqParams::matrix,matrixComboBox->currentText()); addParametr(requestParameters,ReqParams::service,serviceComboBox->currentText()); if(serviceComboBox->currentText()=="phi") { addParametr(requestParameters,ReqParams::phiPattern,phiPatternEdit->text()); } } } else { //CDD requestParameters = "CMD=Put"; db = "blastp"; addParametr(requestParameters,ReqParams::program, db); addParametr(requestParameters,ReqParams::expect, evalueSpinBox->value()); addParametr(requestParameters,ReqParams::hits,quantitySpinBox->value()); QString dbName = dbComboBox->currentText().split(" ").last(); addParametr(requestParameters,ReqParams::database, dbName.toLower()); addParametr(requestParameters,ReqParams::service, "rpsblast"); } if(translateToAmino) { QObjectScopedPointer<QMessageBox> msg = new QMessageBox(this); msg->setText(tr("You chose to search nucleotide sequence in protein database. This sequence will be converted into 6 sequences(3 translations for both strands)." "Therefore this search may take some time. Continue?")); msg->setWindowTitle(windowTitle()); msg->setStandardButtons(QMessageBox::Yes | QMessageBox::Cancel); msg->setDefaultButton(QMessageBox::Yes); msg->exec(); CHECK(!msg.isNull(), ); if (msg->result() == QMessageBox::Cancel) { return; } } int filterResults = 0; filterResults |= (int)accessionCheckBox->isChecked(); filterResults |= (int)defCheckBox->isChecked() << 1; filterResults |= (int)idCheckBox->isChecked() << 2; cfg.filterResult = filterResults; cfg.useEval = evalueRadioButton->isChecked(); cfg.retries = retrySpinBox->value(); cfg.params = requestParameters; cfg.dbChoosen = db; saveSettings(); accept(); }
void Importer::parsePriznak(const QString line) { QString utfLine = line;//OEMtoUnicode(line); QString sPriznak = WINtoUnicode("признак"); addParametr("Priznak", utfLine.right(utfLine.length() - utfLine.indexOf(sPriznak, Qt::CaseInsensitive) - sPriznak.length()).trimmed()); }