void ServiceRunDialog::on_btnStart_clicked()
{
    if (QPanexApp::instance()->mainWindow()->patientViewDialog())
        setInputList(QPanexApp::instance()->mainWindow()->patientViewDialog()->GetSelectedPatientData());
    if(this->inputFiles.length() == 0)
    {
        Utils::DisplayMessageBox("Error", "Please Choose the patient data before continuing", QMessageBox::Critical);
        return;
    }

    this->patient_id = QPanexApp::instance()->mainWindow()->patientViewDialog()->patient_id;
    if (this->patient_id.length() == 0)
    {
        Utils::DisplayMessageBox("Error", "Patient is not Set please goto the data view before running the service", QMessageBox::Critical);
        return;
    }

    QModelIndexList selected_services = ui->treeServiceList->selectionModel()->selectedRows();
    QModelIndex selected_service = selected_services.at(0);// first one
    QString selected_service_id = this->serviceListModel->item(selected_service.row(), ID_COLUMN_INDEX)->text();

    // Get creator_id
    QVariantMap user_data = QPanexApp::instance()->settingsDialog()->getUserData();
    ServiceAPI *sAPI = PanexApi::instance()->serviceAPI();
    connect(sAPI, SIGNAL(GenericSignal(QVariantMap)), this, SLOT(handleGenericAPIReply(QVariantMap)));
    sAPI->startService(selected_service_id, this->patient_id, user_data["user_id"].toString(), this->inputFiles);
}
Пример #2
0
void Menu::setInputList()
{
    QStringList lst;
    QStringList lstnames = CSettingsStorage::getInstance()->getSpdifInputNames();

    for (int i = 0; i < 4; i++)
    {
        if (i < lstnames.size())
            lst.append(QString("Input %1 (%2)").arg(i + 1).arg(lstnames.at(i)));
        else
            lst.append(QString("Input %1").arg(i + 1));
    }

    setInputList(lst);
}