wumu
2024-03-14 f5f3281221c5a8cbeb2e615abb356557f2701e9d
internal_system_v1/clientmainwindow.cpp
@@ -23,11 +23,29 @@
    ui->tableWidget->setColumnWidth(2,80);
    ui->tableWidget->setColumnWidth(4,ui->tableWidget->columnWidth(4)+15);
    initUi();
    searchComName();
}
ClientMainWindow::~ClientMainWindow()
{
    delete ui;
}
void ClientMainWindow::searchComName()
{
    QSqlQuery query;
    QString sql = QString("select id,name,code from company_info");
    if(query.exec(sql)){
        qDebug()<<"size:"<<query.numRowsAffected();
        while(query.next()){
            int id = query.value(0).toInt();
            QString name = query.value(1).toString();
            QString code = query.value(2).toString();
            qDebug()<<"com select:"<<id<<name;
            m_comInfo[name] = id;
            //m_comCode[name] = code;
            ui->comboBox_company->addItem(name);
        }
    }
}
void ClientMainWindow::initUi()
@@ -65,7 +83,16 @@
//    m_coverInfo->setParent(ui->tab);
    // 隐藏掉某个选项
    // 按索引来,从大到小
    ui->tabWidget->removeTab(3); // OK
    ui->tabWidget->removeTab(1); // OK  老业务情况表
    ui->tabWidget->removeTab(0); // OK  老封面
    // 问题整改台账
    m_proRecStandingBook = new ProblemRectStandingBook(this);
    ui->tabWidget->addTab(m_proRecStandingBook,"问题整改台账");
    // 关联各个功能槽
    connect(m_coverInfo,SIGNAL(sendComName(QString)),m_searchInfo,SLOT(addComName(QString)));
@@ -79,6 +106,26 @@
    connect(this,SIGNAL(sendDataToPunish(QVariantList)),m_punish,SLOT(showData(QVariantList)));
    connect(this,SIGNAL(sendDataToCaseClue(QVariantList)),m_caseClue,SLOT(showData(QVariantList)));
    // 新版本
    m_conInfo2 = new ConverInfo2(this);
    //ui->tabWidget->addTab(m_conInfo2,"基本信息");
    ui->tabWidget->insertTab(0,m_conInfo2,"封面信息");
    m_problemList = new ProblemList(this);
    ui->tabWidget->addTab(m_problemList,"问题清单");
    m_problemRectifResult = new ProblemRectificationResult(this);
    ui->tabWidget->addTab(m_problemRectifResult,"整改成果");
    m_tableItemDelegate = new TableItemDelegate(); // 代理 禁用编辑
    m_editDelegate = new QItemDelegate(this); // 可编辑
    ui->tableWidget->setItemDelegateForColumn(0,m_tableItemDelegate);
    ui->tableWidget->setItemDelegateForColumn(1,m_tableItemDelegate);
    ui->tableWidget->setItemDelegateForColumn(2,m_tableItemDelegate);
    // 默认调用一下下拉框的触发操作
    on_comboBox_currentIndexChanged("企业(不含金融企业)");
}
@@ -305,6 +352,7 @@
                val += ui->tableWidget->item(j,3)->text().toInt();
            }
            ui->tableWidget->setItem(i,3,new QTableWidgetItem(QString::number(val)));
            ui->tableWidget->setItem(5,3,new QTableWidgetItem(QString::number(val))); // 内部审计人员数量
        }
        if(i==11){ // 职称
@@ -313,6 +361,7 @@
                val += ui->tableWidget->item(j,3)->text().toInt();
            }
            ui->tableWidget->setItem(i,3,new QTableWidgetItem(QString::number(val)));
        }
        if(i==20){ // 知识结构
@@ -421,3 +470,48 @@
    qDebug()<<__FUNCTION__<<row<<column;
    calc();
}
void ClientMainWindow::on_pushButton_save_clicked()
{
    // 保存数据,结构比较特殊,需要多行多列同时写入
    // 得考虑分段单表处理方可
    // 获取写到文件里面,每个单位一个文件
    // 把单位类型作为一个列即可
    qDebug()<<"保存数据";
    for(int i=1;i<ui->tableWidget->rowCount();++i){
        qDebug()<<"data:"<<ui->tableWidget->item(i,1)->text()<<" "<<ui->tableWidget->item(i,3)->text();
    }
}
void ClientMainWindow::on_comboBox_currentIndexChanged(const QString &arg1)
{
    qDebug()<<"当前"<<arg1;
    if(arg1 == "企业(不含金融企业)"){
        ui->tableWidget->setItemDelegateForColumn(4,m_editDelegate);
    }else {
        ui->tableWidget->setItemDelegateForColumn(4,m_tableItemDelegate);
    }
    if(arg1 == "金融企业"){
        ui->tableWidget->setItemDelegateForColumn(5,m_editDelegate);
    }else {
        ui->tableWidget->setItemDelegateForColumn(5,m_tableItemDelegate);
    }
    if(arg1 == "机关"){
        ui->tableWidget->setItemDelegateForColumn(6,m_editDelegate);
    }else {
        ui->tableWidget->setItemDelegateForColumn(6,m_tableItemDelegate);
    }
    if(arg1 == "事业单位"){
        ui->tableWidget->setItemDelegateForColumn(7,m_editDelegate);
    }else{
        ui->tableWidget->setItemDelegateForColumn(7,m_tableItemDelegate);
    }
    if(arg1 == "其他"){
        ui->tableWidget->setItemDelegateForColumn(8,m_editDelegate);
    }else{
        ui->tableWidget->setItemDelegateForColumn(8,m_tableItemDelegate);
    }
}