From 20ffcfb5507daf34f81346ca3dfa4c031e7b2fe3 Mon Sep 17 00:00:00 2001 From: wumu <mayi@mayi.com> Date: 星期日, 27 四月 2025 22:13:53 +0800 Subject: [PATCH] 0427 --- internal_system_v1/coverinfo.cpp | 270 ++++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 243 insertions(+), 27 deletions(-) diff --git a/internal_system_v1/coverinfo.cpp b/internal_system_v1/coverinfo.cpp index f211e18..69f634f 100644 --- a/internal_system_v1/coverinfo.cpp +++ b/internal_system_v1/coverinfo.cpp @@ -1,20 +1,26 @@ -#include "coverinfo.h" +锘�#include "coverinfo.h" #include "ui_coverinfo.h" #include <QDebug> #include <QDirIterator> #include <QFileDialog> #include <QSqlQuery> #include <QSqlRecord> +#include "windows.h" + +#pragma execution_character_set("utf-8") int g_comId = 0; // 鍏ㄥ眬鍙橀噺锛屼繚瀛樺崟浣峣d +QString g_dataRootPath; // 鏁版嵁鐨勬牴鐩綍 CoverInfo::CoverInfo(QWidget *parent) : QMainWindow(parent), ui(new Ui::CoverInfo) { ui->setupUi(this); - readInfo(); - readDataFromSQL(); // 浠庢暟鎹簱璇诲彇鏁版嵁 + CoInitializeEx(NULL, COINIT_MULTITHREADED); // 鍏堝皢COM搴撳垵濮嬪寲 + + //readInfo(); + //readDataFromSQL(); // 浠庢暟鎹簱璇诲彇鏁版嵁 } @@ -42,6 +48,7 @@ if(dirRe.exists()){ dirPath = dirPathRelease; } + g_dataRootPath = dirPath; // 灏嗘牴鐩綍淇濆瓨璧锋潵 QStringList list; QDirIterator it(dirPath, {"*.xls","*.xlsx"}, QDir::Files | QDir::NoSymLinks | QDir::NoDotAndDotDot, QDirIterator::Subdirectories); while(it.hasNext()) @@ -56,6 +63,9 @@ qDebug()<<"index:"<<index; if(index > 0){ QAxObject excel("Excel.Application"); + if(!excel.setControl("Excel.Application")){ + excel.setControl("ket.Application"); // wps鍐呮牳 + } excel.setProperty("Visible",false); excel.setProperty("DisplayAlerts",false); qDebug()<<"open:"<<str; @@ -98,11 +108,15 @@ QVariant name = valRows[9].toList().at(8); if(name.isValid()){ ui->label_name->setText(name.toString()); + }else{ + ui->label_name->setText(""); } // 鏈烘瀯绫诲瀷 QVariant comType = valRows[12].toList().at(3); if(comType.isValid()){ ui->label_comType->setText(comType.toString()); + }else{ + ui->label_comType->setText(""); } // 涓昏涓氬姟娲诲姩 QString business; @@ -122,11 +136,16 @@ } if(business.size() > 0){ ui->label_business->setText(business); + ui->label_business->setToolTip(business); + }else{ + ui->label_business->setText(""); } // 涓氬姟浠g爜 QVariant busCode = valRows[19].toList().at(4); if(busCode.isValid()){ ui->label_businessCode->setText(busCode.toString()); + }else{ + ui->label_businessCode->setText(""); } // 娉ㄥ唽鍦板潃 QString addr=""; @@ -145,40 +164,89 @@ if(street.isValid()) addr += street.toString(); if(Sub.isValid()) addr += Sub.toString(); if(committee.isValid()) addr += committee.toString(); - if(addr.size()>10)ui->label_addr->setText(addr); + if(addr.size()>10){ + ui->label_addr->setText(addr); + }else{ + ui->label_addr->setText(""); + } // 鍖哄煙浠g爜 QVariant areaCode = valRows[24].toList().at(2); - if(areaCode.isValid()) ui->label_areaCode->setText(areaCode.toString()); + if(areaCode.isValid()){ + ui->label_areaCode->setText(areaCode.toString()); + }else{ + ui->label_areaCode->setText(""); + } // 鍩庝埂浠g爜 QVariant townCode = valRows[24].toList().at(6); - if(townCode.isValid()) ui->label_townCode->setText(townCode.toString()); + if(townCode.isValid()) { + ui->label_townCode->setText(townCode.toString()); + }else{ + ui->label_townCode->setText(""); + } + // 鍗曚綅瑙勬ā QVariant scale = valRows[25].toList().at(3); - if(scale.isValid()) ui->label_scale->setText(scale.toString()); + if(scale.isValid()){ + ui->label_scale->setText(scale.toString()); + }else{ + ui->label_scale->setText(""); + } // 浠庝笟浜烘暟 QVariant people = valRows[26].toList().at(6); - if(people.isValid()) ui->label_people->setText(people.toString()); + if(people.isValid()) { + ui->label_people->setText(people.toString()); + }else{ + ui->label_people->setText(""); + } // 娉曚汉 QVariant representative = valRows[27].toList().at(4); - if(representative.isValid()) ui->label_representative->setText(representative.toString()); + if(representative.isValid()) { + ui->label_representative->setText(representative.toString()); + }else{ + ui->label_representative->setText(""); + } // 浼氳鏍囧噯绫诲埆 standardType QVariant standardType = valRows[27].toList().at(8); - if(standardType.isValid()) ui->label_standardType->setText(standardType.toString()); + if(standardType.isValid()){ + ui->label_standardType->setText(standardType.toString()); + }else{ + ui->label_standardType->setText(""); + } // 闀块�斿尯鍙� QVariant trunkCode = valRows[31].toList().at(2); - if(trunkCode.isValid()) ui->label_trunkCode->setText(trunkCode.toString()); + if(trunkCode.isValid()){ + ui->label_trunkCode->setText(trunkCode.toString()); + }else{ + ui->label_trunkCode->setText(""); + } // 鍥哄畾鐢佃瘽 QVariant fixedTel = valRows[32].toList().at(2); - if(fixedTel.isValid()) ui->label_fixedTel->setText(fixedTel.toString()); + if(fixedTel.isValid()) { + ui->label_fixedTel->setText(fixedTel.toString()); + }else{ + ui->label_fixedTel->setText(""); + } // 閭斂缂栫爜 QVariant postCode = valRows[33].toList().at(2); - if(postCode.isValid()) ui->label_postCode->setText(postCode.toString()); + if(postCode.isValid()){ + ui->label_postCode->setText(postCode.toString()); + }else{ + ui->label_postCode->setText(""); + } // 鐢靛瓙閭 QVariant email = valRows[30].toList().at(5); - if(email.isValid()) ui->label_email->setText(email.toString()); + if(email.isValid()) { + ui->label_email->setText(email.toString()); + }else{ + ui->label_email->setText(""); + } // 缃戝潃 QVariant webSite = valRows[32].toList().at(5); - if(webSite.isValid()) ui->label_webSite->setText(webSite.toString()); + if(webSite.isValid()) { + ui->label_webSite->setText(webSite.toString()); + }else{ + ui->label_webSite->setText(""); + } } wbs->dynamicCall("Close()"); excel.dynamicCall("Quit(void)"); @@ -276,6 +344,97 @@ QVariant val = usedRange->dynamicCall("Value"); // 鎷垮埌浜岀淮琛ㄦ牸 QVariantList valRows = val.toList(); // 缁熶竴淇$敤浠g爜 +// QVariant uniCode = valRows[9].toList().at(3); +// if(uniCode.isValid()){ +// ui->label_creditCode->setText(uniCode.toString()); +// } +// // 鍗曚綅鍚嶇О +// QVariant name = valRows[9].toList().at(8); +// if(name.isValid()){ +// ui->label_name->setText(name.toString()); +// } +// // 鏈烘瀯绫诲瀷 +// QVariant comType = valRows[12].toList().at(3); +// if(comType.isValid()){ +// ui->label_comType->setText(comType.toString()); +// } +// // 涓昏涓氬姟娲诲姩 +// QString business; +// QVariant first = valRows[18].toList().at(2); +// if(first.isValid()){ +// business.append(first.toString()); +// } +// QVariant sec = valRows[18].toList().at(5); +// if(sec.isValid()){ +// business += "銆�"; +// business.append(sec.toString()); +// } +// QVariant third = valRows[18].toList().at(8); +// if(third.isValid()){ +// business += "銆�"; +// business.append(third.toString()); +// } +// if(business.size() > 0){ +// ui->label_business->setText(business); +// } +// // 涓氬姟浠g爜 +// QVariant busCode = valRows[19].toList().at(4); +// if(busCode.isValid()){ +// ui->label_businessCode->setText(busCode.toString()); +// } +// // 娉ㄥ唽鍦板潃 +// QString addr=""; +// QVariant province = valRows[21].toList().at(1); // 鐪佷唤 +// QVariant city = valRows[21].toList().at(4); // 鍩庡競 +// QVariant district = valRows[21].toList().at(7); // 绠¤緰鍖� +// QVariant village = valRows[22].toList().at(2); // 涔¢晣 +// QVariant street = valRows[22].toList().at(4); // 琛楅亾 +// QVariant Sub = valRows[23].toList().at(2); // 琛楅亾鍔炰簨澶� +// QVariant committee = valRows[25].toList().at(3); // 灞呭浼� +// //qDebug()<<province<<city<<district<<village<<street<<Sub<<committee; +// if(province.isValid()) addr += province.toString(); +// if(city.isValid()) addr += city.toString(); +// if(district.isValid()) addr += district.toString(); +// if(village.isValid()) addr += village.toString(); +// if(street.isValid()) addr += street.toString(); +// if(Sub.isValid()) addr += Sub.toString(); +// if(committee.isValid()) addr += committee.toString(); +// if(addr.size()>10)ui->label_addr->setText(addr); +// // 鍖哄煙浠g爜 +// QVariant areaCode = valRows[24].toList().at(2); +// if(areaCode.isValid()) ui->label_areaCode->setText(areaCode.toString()); +// // 鍩庝埂浠g爜 +// QVariant townCode = valRows[24].toList().at(6); +// if(townCode.isValid()) ui->label_townCode->setText(townCode.toString()); +// // 鍗曚綅瑙勬ā +// QVariant scale = valRows[25].toList().at(3); +// if(scale.isValid()) ui->label_scale->setText(scale.toString()); +// // 浠庝笟浜烘暟 +// QVariant people = valRows[26].toList().at(6); +// if(people.isValid()) ui->label_people->setText(people.toString()); +// // 娉曚汉 +// QVariant representative = valRows[27].toList().at(4); +// if(representative.isValid()) ui->label_representative->setText(representative.toString()); +// // 浼氳鏍囧噯绫诲埆 standardType +// QVariant standardType = valRows[27].toList().at(8); +// if(standardType.isValid()) ui->label_standardType->setText(standardType.toString()); +// // 闀块�斿尯鍙� +// QVariant trunkCode = valRows[31].toList().at(2); +// if(trunkCode.isValid()) ui->label_trunkCode->setText(trunkCode.toString()); +// // 鍥哄畾鐢佃瘽 +// QVariant fixedTel = valRows[32].toList().at(2); +// if(fixedTel.isValid()) ui->label_fixedTel->setText(fixedTel.toString()); +// // 閭斂缂栫爜 +// QVariant postCode = valRows[33].toList().at(2); +// if(postCode.isValid()) ui->label_postCode->setText(postCode.toString()); +// // 鐢靛瓙閭 +// QVariant email = valRows[30].toList().at(5); +// if(email.isValid()) ui->label_email->setText(email.toString()); +// // 缃戝潃 +// QVariant webSite = valRows[32].toList().at(5); +// if(webSite.isValid()) ui->label_webSite->setText(webSite.toString()); + + // 缁熶竴淇$敤浠g爜 QVariant uniCode = valRows[9].toList().at(3); if(uniCode.isValid()){ ui->label_creditCode->setText(uniCode.toString()); @@ -284,11 +443,15 @@ QVariant name = valRows[9].toList().at(8); if(name.isValid()){ ui->label_name->setText(name.toString()); + }else{ + ui->label_name->setText(""); } // 鏈烘瀯绫诲瀷 QVariant comType = valRows[12].toList().at(3); if(comType.isValid()){ ui->label_comType->setText(comType.toString()); + }else{ + ui->label_comType->setText(""); } // 涓昏涓氬姟娲诲姩 QString business; @@ -308,11 +471,15 @@ } if(business.size() > 0){ ui->label_business->setText(business); + }else{ + ui->label_business->setText(""); } // 涓氬姟浠g爜 QVariant busCode = valRows[19].toList().at(4); if(busCode.isValid()){ ui->label_businessCode->setText(busCode.toString()); + }else{ + ui->label_businessCode->setText(""); } // 娉ㄥ唽鍦板潃 QString addr=""; @@ -331,40 +498,89 @@ if(street.isValid()) addr += street.toString(); if(Sub.isValid()) addr += Sub.toString(); if(committee.isValid()) addr += committee.toString(); - if(addr.size()>10)ui->label_addr->setText(addr); + if(addr.size()>10){ + ui->label_addr->setText(addr); + }else{ + ui->label_addr->setText(""); + } // 鍖哄煙浠g爜 QVariant areaCode = valRows[24].toList().at(2); - if(areaCode.isValid()) ui->label_areaCode->setText(areaCode.toString()); + if(areaCode.isValid()){ + ui->label_areaCode->setText(areaCode.toString()); + }else{ + ui->label_areaCode->setText(""); + } // 鍩庝埂浠g爜 QVariant townCode = valRows[24].toList().at(6); - if(townCode.isValid()) ui->label_townCode->setText(townCode.toString()); + if(townCode.isValid()) { + ui->label_townCode->setText(townCode.toString()); + }else{ + ui->label_townCode->setText(""); + } + // 鍗曚綅瑙勬ā QVariant scale = valRows[25].toList().at(3); - if(scale.isValid()) ui->label_scale->setText(scale.toString()); + if(scale.isValid()){ + ui->label_scale->setText(scale.toString()); + }else{ + ui->label_scale->setText(""); + } // 浠庝笟浜烘暟 QVariant people = valRows[26].toList().at(6); - if(people.isValid()) ui->label_people->setText(people.toString()); + if(people.isValid()) { + ui->label_people->setText(people.toString()); + }else{ + ui->label_people->setText(""); + } // 娉曚汉 QVariant representative = valRows[27].toList().at(4); - if(representative.isValid()) ui->label_representative->setText(representative.toString()); + if(representative.isValid()) { + ui->label_representative->setText(representative.toString()); + }else{ + ui->label_representative->setText(""); + } // 浼氳鏍囧噯绫诲埆 standardType QVariant standardType = valRows[27].toList().at(8); - if(standardType.isValid()) ui->label_standardType->setText(standardType.toString()); + if(standardType.isValid()){ + ui->label_standardType->setText(standardType.toString()); + }else{ + ui->label_standardType->setText(""); + } // 闀块�斿尯鍙� QVariant trunkCode = valRows[31].toList().at(2); - if(trunkCode.isValid()) ui->label_trunkCode->setText(trunkCode.toString()); + if(trunkCode.isValid()){ + ui->label_trunkCode->setText(trunkCode.toString()); + }else{ + ui->label_trunkCode->setText(""); + } // 鍥哄畾鐢佃瘽 QVariant fixedTel = valRows[32].toList().at(2); - if(fixedTel.isValid()) ui->label_fixedTel->setText(fixedTel.toString()); + if(fixedTel.isValid()) { + ui->label_fixedTel->setText(fixedTel.toString()); + }else{ + ui->label_fixedTel->setText(""); + } // 閭斂缂栫爜 QVariant postCode = valRows[33].toList().at(2); - if(postCode.isValid()) ui->label_postCode->setText(postCode.toString()); + if(postCode.isValid()){ + ui->label_postCode->setText(postCode.toString()); + }else{ + ui->label_postCode->setText(""); + } // 鐢靛瓙閭 QVariant email = valRows[30].toList().at(5); - if(email.isValid()) ui->label_email->setText(email.toString()); + if(email.isValid()) { + ui->label_email->setText(email.toString()); + }else{ + ui->label_email->setText(""); + } // 缃戝潃 QVariant webSite = valRows[32].toList().at(5); - if(webSite.isValid()) ui->label_webSite->setText(webSite.toString()); + if(webSite.isValid()) { + ui->label_webSite->setText(webSite.toString()); + }else{ + ui->label_webSite->setText(""); + } // 濡傛灉鍗曚綅鏄柊澧炲姞鐨勶紝寰楀啓鍏ュ埌鏁版嵁搴撲腑淇濆瓨璧锋潵 readDataFromSQL(); // 鍐嶆璋冪敤API 纭鏁版嵁杩涘埌琛ㄤ腑 -- Gitblit v1.8.0