| | |
| | | |
| | | // 二、单位组织结构情况 |
| | | ui->comboBox_hasUpLegal->setCurrentText(QString::fromLocal8Bit(curCominfo.hasUpLegal)); |
| | | ui->lineEdit_upCreditCode->setText(curCominfo.upCreditCode); |
| | | ui->lineEdit_upCreditCode->setText(QString::fromLocal8Bit(curCominfo.upCreditCode)); |
| | | ui->lineEdit_oldCreditCode->setText(curCominfo.oldCreditCode); |
| | | ui->lineEdit_upName->setText(QString::fromLocal8Bit(curCominfo.upName)); |
| | | |
| | |
| | | ui->lineEdit_itNum->setText(QString::number(curCominfo.itNum)); |
| | | ui->lineEdit_engineeringNum->setText(QString::number(curCominfo.engineeringNum)); |
| | | ui->lineEdit_otherNum->setText(QString::number(curCominfo.otherNum)); |
| | | |
| | | // 其他的4个信息 |
| | | ui->lineEdit_statisticalConOfficer->setText(QString::fromLocal8Bit(curCominfo.statisticalConOfficer)); |
| | | ui->lineEdit_personFilling->setText(QString::fromLocal8Bit(curCominfo.personFilling)); |
| | | ui->lineEdit_officerTel->setText(QString::fromLocal8Bit(curCominfo.officerTel)); |
| | | ui->lineEdit_fillingDateTime->setText(QString::fromLocal8Bit(curCominfo.fillingDateTime)); |
| | | } |
| | | |
| | | void ConverInfo2::readInfo() |
| | |
| | | QAxObject * wb = wbs->querySubObject("Open(QString&)",str); |
| | | //QAxObject* pWorkBook = excel.querySubObject("ActiveWorkBook"); |
| | | //QAxObject* pWorkSheets = pWorkBook->querySubObject("Sheets");//获取工作表 |
| | | QAxObject * shs = wb->querySubObject("Sheets"); // WorkSheets 也可以 |
| | | // QAxObject *checkBoxs = shs->querySubObject("CheckBoxes"); |
| | | // qDebug() << "复选框:checkBoxs:" << checkBoxs->asVariant(); |
| | | //QAxObject * shs = wb->querySubObject("Sheets"); // WorkSheets 也可以 |
| | | QAxObject * shs = wb->querySubObject("WorkSheets"); // WorkSheets 也可以 |
| | | // // 指定单元格拿 |
| | | // QAxObject *cell = shs->querySubObject("Cells(int, int)",82,1); |
| | | // qDebug()<<"Cells:82-0:"<<shs->querySubObject("Cells(int, int)",82,0)->dynamicCall("Value()").toString(); |
| | | // qDebug()<<"Cells:82-1:"<<cell->dynamicCall("Value()").toString(); |
| | | |
| | | int cnt = shs->property("Count").toInt(); |
| | | qDebug()<<"cnt="<<cnt; |
| | | for(int i=0;i<cnt;++i){ |
| | |
| | | QVariant val = usedRange->dynamicCall("Value"); // 拿到二维表格 |
| | | QVariantList valRows = val.toList(); |
| | | // 遍历每一项 |
| | | // for(int i=0;i<rows;++i){ |
| | | // QVariantList valrow = valRows[i].toList(); |
| | | // for(int j=0;j<columns;++j){ |
| | | // QVariant valData = valrow[j]; |
| | | // if(valData.isValid()){ |
| | | // qDebug()<<"val:"<< i<< j << valData; |
| | | // } |
| | | for(int i=0;i<rows;++i){ |
| | | QVariantList valrow = valRows[i].toList(); |
| | | for(int j=0;j<columns;++j){ |
| | | QVariant valData = valrow[j]; |
| | | if(valData.isValid()){ |
| | | qDebug()<<"val:"<< i<< j << valData; |
| | | } |
| | | |
| | | // } |
| | | // } |
| | | } |
| | | } |
| | | |
| | | // 实例化结构体,然后挨个赋值 |
| | | ComInfo curComInfo; |
| | |
| | | qDebug()<<"otherNum"<<otherNum; |
| | | } |
| | | |
| | | // 后面的4个信息 |
| | | // 统计负责人 |
| | | QVariant statisticalConOfficer = valRows[81].toList().at(1); |
| | | if(statisticalConOfficer.isValid()){ |
| | | strcpy(curComInfo.statisticalConOfficer,statisticalConOfficer.toString().toLocal8Bit().data()); |
| | | qDebug()<<"statisticalConOfficer"<<statisticalConOfficer; |
| | | }else{ |
| | | qDebug()<<"statisticalConOfficer fail:"<<name.toString(); |
| | | } |
| | | // 填表人 |
| | | QVariant personFilling = valRows[81].toList().at(4); |
| | | if(personFilling.isValid()){ |
| | | strcpy(curComInfo.personFilling,personFilling.toString().toLocal8Bit().data()); |
| | | qDebug()<<"personFilling"<<personFilling; |
| | | } |
| | | // 联系电话 |
| | | QVariant officerTel = valRows[82].toList().at(1); |
| | | if(officerTel.isValid()){ |
| | | strcpy(curComInfo.officerTel,officerTel.toString().toLocal8Bit().data()); |
| | | qDebug()<<"officerTel"<<officerTel; |
| | | } |
| | | // 填报日期 |
| | | QVariant fillingDateTime = valRows[82].toList().at(4); |
| | | if(fillingDateTime.isValid()){ |
| | | strcpy(curComInfo.fillingDateTime,fillingDateTime.toString().toLocal8Bit().data()); |
| | | qDebug()<<"fillingDateTime"<<fillingDateTime; |
| | | } |
| | | |
| | | // 最后存到map中 |
| | | m_nameAndComInfos[name.toString()]=curComInfo; |
| | | |
| | |
| | | connect(m_menu->actions().at(0),SIGNAL(triggered(bool)),this,SLOT(deleteInfo())); |
| | | connect(m_menu->actions().at(1),SIGNAL(triggered(bool)),this,SLOT(addInfo())); |
| | | } |
| | | |
| | | void ConverInfo2::on_pushButton_commit_clicked() |
| | | { |
| | | // 将编辑框的数据更新到map中和数据库中,后期可以更新到文件中 |
| | | // 单位基本情况 |
| | | QString creditCode = ui->lineEdit_creditCode->text(); |
| | | QString name = ui->lineEdit_name->text(); |
| | | QString comType = ui->comboBox_comType->currentText(); |
| | | QString business = ui->lineEdit_business->text(); |
| | | QString businessCode = ui->lineEdit_businessCode->text(); |
| | | QString addr = ui->lineEdit_addr->text(); |
| | | QString areaCode = ui->lineEdit_areaCode->text(); |
| | | QString townCode = ui->lineEdit_townCode->text(); |
| | | QString scale = ui->comboBox_scale->currentText(); |
| | | QString people = ui->lineEdit_people->text(); |
| | | QString representative = ui->lineEdit_representative->text(); |
| | | QString standardType = ui->comboBox_standardType->currentText(); |
| | | QString trunkCode = ui->lineEdit_trunkCode->text(); |
| | | QString fixedTel = ui->lineEdit_fixedTel->text(); |
| | | QString postCode = ui->lineEdit_postCode->text(); |
| | | QString email = ui->lineEdit_email->text(); |
| | | QString webSite = ui->lineEdit_webSite->text(); |
| | | |
| | | // 单位组织结构情况 |
| | | QString hasUpLegal = ui->comboBox_hasUpLegal->currentText(); |
| | | QString upCreditCode = ui->lineEdit_upCreditCode->text(); |
| | | QString oldCreditCode = ui->lineEdit_oldCreditCode->text(); |
| | | QString upName = ui->lineEdit_upName->text(); |
| | | |
| | | // 总审计师与内审机构基本情况 |
| | | QString hasChiefDesigner = ui->comboBox_hasChiefDesigner->currentText(); |
| | | QString ChiefDesignerLevel = ui->comboBox_ChiefDesignerLevel->currentText(); |
| | | QString employmentMode = ui->comboBox_employmentMode->currentText(); |
| | | QString hasSetIntervalAudit = ui->comboBox_hasSetIntervalAudit->currentText(); |
| | | QString internalName = ui->lineEdit_internalName->text(); |
| | | QString leadingOrganization = ui->comboBox_leadingOrganization->currentText(); |
| | | QString hasSetSeparateIA = ui->comboBox_hasSetSeparateIA->currentText(); |
| | | bool financeDepartment = ui->checkBox_financeDepartment->isChecked(); |
| | | bool legalDepartment = ui->checkBox_legalDepartment->isChecked(); |
| | | bool internalConDepart = ui->checkBox_internalConDepart->isChecked(); |
| | | bool disceplineInDepart = ui->checkBox_disceplineInDepart->isChecked(); |
| | | bool otherDepart = ui->checkBox_otherDepart->isChecked(); |
| | | QString intavalAuditLeval = ui->comboBox_intavalAuditLeval->currentText(); |
| | | |
| | | // 四、内审人员配备基本情况 |
| | | int organazationNum = ui->lineEdit_organazationNum->text().toInt(); |
| | | int realNum = ui->lineEdit_realNum->text().toInt(); |
| | | int professionalNum = ui->lineEdit_professionalNum->text().toInt(); |
| | | int CIANum = ui->lineEdit_CIANum->text().toInt(); |
| | | int masterNum = ui->lineEdit_masterNum->text().toInt(); |
| | | int undergraduatesNum = ui->lineEdit_undergraduatesNum->text().toInt(); |
| | | int juniorNum = ui->lineEdit_juniorNum->text().toInt(); |
| | | int seniorNum = ui->lineEdit_seniorNum->text().toInt(); |
| | | int intermediateNum = ui->lineEdit_intermediateNum->text().toInt(); |
| | | int primaryNum = ui->lineEdit_primaryNum->text().toInt(); |
| | | int noTitleNum = ui->lineEdit_noTitleNum->text().toInt(); |
| | | int upFiftyOldNum = ui->lineEdit_upFiftyOldNum->text().toInt(); |
| | | int upThirtyOldNum = ui->lineEdit_upThirtyOldNum->text().toInt(); |
| | | int downThirtyOldNum = ui->lineEdit_downThirtyOldNum->text().toInt(); |
| | | int auditNum = ui->lineEdit_auditNum->text().toInt(); |
| | | int accountingNum = ui->lineEdit_accountingNum->text().toInt(); |
| | | int economyNum = ui->lineEdit_economyNum->text().toInt(); |
| | | int lawNum = ui->lineEdit_lawNum->text().toInt(); |
| | | int managerNum = ui->lineEdit_managerNum->text().toInt(); |
| | | int itNum = ui->lineEdit_itNum->text().toInt(); |
| | | int engineeringNum = ui->lineEdit_engineeringNum->text().toInt(); |
| | | int otherNum = ui->lineEdit_otherNum->text().toInt(); |
| | | |
| | | // 后面的4个信息 |
| | | QString statisticalConOfficer = ui->lineEdit_statisticalConOfficer->text(); |
| | | QString personFilling = ui->lineEdit_personFilling->text(); |
| | | QString officerTel = ui->lineEdit_officerTel->text(); |
| | | QString fillingDateTime = ui->lineEdit_fillingDateTime->text(); |
| | | |
| | | qDebug()<<"统计负责人"<<statisticalConOfficer; |
| | | |
| | | // 更新到map中 |
| | | auto &curComInfo = m_nameAndComInfos[name]; |
| | | strcpy(curComInfo.creditCode,creditCode.toLocal8Bit().data()); |
| | | strcpy(curComInfo.name,name.toLocal8Bit().data()); |
| | | strcpy(curComInfo.comType,comType.toLocal8Bit().data()); |
| | | strcpy(curComInfo.business,business.toLocal8Bit().data()); |
| | | strcpy(curComInfo.businessCode,businessCode.toLocal8Bit().data()); |
| | | strcpy(curComInfo.addr,addr.toLocal8Bit().data()); |
| | | strcpy(curComInfo.areaCode,areaCode.toLocal8Bit().data()); |
| | | strcpy(curComInfo.townCode,townCode.toLocal8Bit().data()); |
| | | strcpy(curComInfo.scale,scale.toLocal8Bit().data()); |
| | | curComInfo.people = people.toInt(); |
| | | strcpy(curComInfo.representative,representative.toLocal8Bit().data()); |
| | | strcpy(curComInfo.standardType,standardType.toLocal8Bit().data()); |
| | | strcpy(curComInfo.trunkCode,trunkCode.toLocal8Bit().data()); |
| | | strcpy(curComInfo.fixedTel,fixedTel.toLocal8Bit().data()); |
| | | strcpy(curComInfo.postCode,postCode.toLocal8Bit().data()); |
| | | strcpy(curComInfo.email,email.toLocal8Bit().data()); |
| | | strcpy(curComInfo.webSite,webSite.toLocal8Bit().data()); |
| | | |
| | | // 二 |
| | | strcpy(curComInfo.hasUpLegal,hasUpLegal.toLocal8Bit().data()); |
| | | strcpy(curComInfo.upCreditCode,upCreditCode.toLocal8Bit().data()); |
| | | strcpy(curComInfo.oldCreditCode,oldCreditCode.toLocal8Bit().data()); |
| | | strcpy(curComInfo.upName,upName.toLocal8Bit().data()); |
| | | |
| | | // 三 |
| | | strcpy(curComInfo.hasChiefDesigner,hasChiefDesigner.toLocal8Bit().data()); |
| | | strcpy(curComInfo.ChiefDesignerLevel,ChiefDesignerLevel.toLocal8Bit().data()); |
| | | strcpy(curComInfo.employmentMode,employmentMode.toLocal8Bit().data()); |
| | | strcpy(curComInfo.hasSetIntervalAudit,hasSetIntervalAudit.toLocal8Bit().data()); |
| | | strcpy(curComInfo.internalName,internalName.toLocal8Bit().data()); |
| | | strcpy(curComInfo.leadingOrganization,leadingOrganization.toLocal8Bit().data()); |
| | | strcpy(curComInfo.hasSetSeparateIA,hasSetSeparateIA.toLocal8Bit().data()); |
| | | curComInfo.financeDepartment = financeDepartment; |
| | | curComInfo.legalDepartment = legalDepartment; |
| | | curComInfo.internalConDepart = internalConDepart; |
| | | curComInfo.disceplineInDepart = disceplineInDepart; |
| | | curComInfo.otherDepart = otherDepart; |
| | | strcpy(curComInfo.intavalAuditLeval,intavalAuditLeval.toLocal8Bit().data()); |
| | | |
| | | // 四 |
| | | curComInfo.organazationNum = organazationNum; |
| | | curComInfo.realNum = realNum; |
| | | curComInfo.professionalNum = professionalNum; |
| | | curComInfo.CIANum = CIANum; |
| | | curComInfo.masterNum = masterNum; |
| | | curComInfo.undergraduatesNum = undergraduatesNum; |
| | | curComInfo.juniorNum = juniorNum; |
| | | curComInfo.seniorNum = seniorNum; |
| | | curComInfo.intermediateNum = intermediateNum; |
| | | curComInfo.primaryNum = primaryNum; |
| | | curComInfo.noTitleNum = noTitleNum; |
| | | curComInfo.upFiftyOldNum = upFiftyOldNum; |
| | | curComInfo.upThirtyOldNum = upThirtyOldNum; |
| | | curComInfo.downThirtyOldNum = downThirtyOldNum; |
| | | curComInfo.auditNum = auditNum; |
| | | curComInfo.accountingNum = accountingNum; |
| | | curComInfo.economyNum = economyNum; |
| | | curComInfo.lawNum = lawNum; |
| | | curComInfo.managerNum = managerNum; |
| | | curComInfo.itNum = itNum; |
| | | curComInfo.engineeringNum = engineeringNum; |
| | | curComInfo.otherNum = otherNum; |
| | | |
| | | // 后4个信息 |
| | | strcpy(curComInfo.statisticalConOfficer,statisticalConOfficer.toLocal8Bit().data()); |
| | | strcpy(curComInfo.personFilling,personFilling.toLocal8Bit().data()); |
| | | strcpy(curComInfo.officerTel,officerTel.toLocal8Bit().data()); |
| | | strcpy(curComInfo.fillingDateTime,fillingDateTime.toLocal8Bit().data()); |
| | | |
| | | |
| | | // 更新到数据库 |
| | | |
| | | // 先判断是不是已经存在公司名了,若已存在,则更新,不存在则插入 |
| | | QString sql = QString("select id,name from all_company_info where name='%1'").arg(name); |
| | | QSqlQuery query; |
| | | int rowCnt = 0; |
| | | if(query.exec(sql)){ |
| | | qDebug()<<"size:"<<query.size(); |
| | | |
| | | while (query.next()) { |
| | | rowCnt++; |
| | | } |
| | | } |
| | | if(rowCnt == 0){ |
| | | // 不存在,则插入一条新数据 |
| | | }else{ |
| | | // 更新 |
| | | } |
| | | } |