mirror of
https://gitea.msk.dinamika-avia.ru/Constanta-Design/RRJServer.git
synced 2026-03-27 19:45:43 +03:00
Объединенные ячейки списка
This commit is contained in:
@@ -50,6 +50,8 @@ AMMtasksWidget::AMMtasksWidget(ConnectorToServer* connectorToServer, TypeListTre
|
||||
connect(taskTreePreparation, &TaskAMMFIMTreePreparation::signal_listAMMItemsReady, this, &AMMtasksWidget::slot_AMMlistItemsReady);
|
||||
connect(this, &AMMtasksWidget::signal_stopParserPreparation, taskTreePreparation, &TaskAMMFIMTreePreparation::slot_stopParserPreparation);
|
||||
|
||||
connect(this->connectorToServer, &ConnectorToServer::signal_UpdateSubProcForDMCode, this, &AMMtasksWidget::slot_UpdateSubProcForDMCode);
|
||||
|
||||
waitAnimationWidget = new WaitAnimationWidget;
|
||||
QMovie *movie = new QMovie(":/resources/icons/762.gif");
|
||||
waitAnimationWidget->setParent(this);
|
||||
@@ -68,12 +70,6 @@ AMMtasksWidget::AMMtasksWidget(ConnectorToServer* connectorToServer, TypeListTre
|
||||
|
||||
if(type == TypeListTreeAMMFIM::listCommon)
|
||||
{
|
||||
//ui->horizontalLayout_3->addWidget(ui->btnAssignTask);
|
||||
//ui->horizontalLayout_3->addWidget(ui->btnOnlyActive);
|
||||
//ui->horizontalLayout_3->addWidget(ui->btnCheck);
|
||||
//ui->horizontalLayout_3->addWidget(ui->btnDelete);
|
||||
//ui->horizontalLayout_3->setAlignment(Qt::AlignmentFlag::AlignLeft);
|
||||
|
||||
ui->btnDelete->setVisible(false);
|
||||
ui->btnCheck->setVisible(false);
|
||||
}
|
||||
@@ -85,12 +81,7 @@ AMMtasksWidget::AMMtasksWidget(ConnectorToServer* connectorToServer, TypeListTre
|
||||
ui->label_DocsActualed->setVisible(false);
|
||||
ui->label_Actual->setVisible(false);
|
||||
ui->btnDocsUpdating->setVisible(false);
|
||||
|
||||
//ui->verticalLayout->setAlignment(Qt::AlignmentFlag::AlignBottom);
|
||||
//ui->horizontalLayout_3->setAlignment(Qt::AlignmentFlag::AlignLeft);
|
||||
}
|
||||
|
||||
//ui->btnCheck->setVisible(false);
|
||||
}
|
||||
|
||||
AMMtasksWidget::~AMMtasksWidget()
|
||||
@@ -306,6 +297,58 @@ void AMMtasksWidget::slot_AMMlistItemsReady(QList<QTreeWidgetItem *> listItems)
|
||||
ui->btnOnlyActive->setEnabled(true);
|
||||
}
|
||||
|
||||
void AMMtasksWidget::slot_UpdateSubProcForDMCode(QString dmCode)
|
||||
{
|
||||
if(lastSelectedTask.ammProcedure.dmCode == dmCode)
|
||||
{//Его ждем
|
||||
QList<SubProc> list = connectorToServer->getListSubProcForDMCode(dmCode);
|
||||
lastSelectedTask.listSubProc = list;
|
||||
|
||||
waitAnimationWidget->hideWithStop();
|
||||
|
||||
if(lastSelectedTask.listSubProc.count())
|
||||
{
|
||||
dlgListSubProc = new DialogListSubProc(this);
|
||||
dlgListSubProc->setTask(&lastSelectedTask);
|
||||
|
||||
switch( dlgListSubProc->exec() )
|
||||
{
|
||||
case QDialog::Accepted:
|
||||
{
|
||||
//Здесь нужно забрать список отмеченных подпроцедур
|
||||
lastSelectedTask.listSubProc.clear();
|
||||
dlgListSubProc->getListCheckedSubProc(&lastSelectedTask.listSubProc);
|
||||
|
||||
if(SpecialMessageBox(this, SpecialMessageBox::TypeSpecMsgBox::warningYesNo, tr("Assign this task?")).exec() == QDialog::Accepted)
|
||||
{
|
||||
connectorToServer->sendQueryToDB(TypeQueryToDB::TYPE_QUERY_ASSIGN_TASK_AMM_TO_TRAINEE, idTraineeSelected, &lastSelectedTask);
|
||||
}
|
||||
break;
|
||||
}
|
||||
case QDialog::Rejected:
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
if(dlgListSubProc)
|
||||
{
|
||||
delete dlgListSubProc;
|
||||
dlgListSubProc = nullptr;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
lastSelectedTask.listSubProc.clear();
|
||||
|
||||
if(SpecialMessageBox(this, SpecialMessageBox::TypeSpecMsgBox::warningYesNo, tr("Assign this task?")).exec() == QDialog::Accepted)
|
||||
{
|
||||
connectorToServer->sendQueryToDB(TypeQueryToDB::TYPE_QUERY_ASSIGN_TASK_AMM_TO_TRAINEE, idTraineeSelected, &lastSelectedTask);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void AMMtasksWidget::preparationTreeWidget()
|
||||
{
|
||||
treeWidget->setColumnCount(clmnAMM_count);
|
||||
@@ -409,46 +452,24 @@ void AMMtasksWidget::assignTaskAMMtoTrainee()
|
||||
|
||||
if(taskNew.getID())
|
||||
{
|
||||
//QList<SubProc> listSubProc;
|
||||
|
||||
if(selectSubProcForAssignTaskAMM(taskNew, &taskNew.listSubProc))
|
||||
{
|
||||
if(SpecialMessageBox(this, SpecialMessageBox::TypeSpecMsgBox::warningYesNo, tr("Assign this task?")).exec() == QDialog::Accepted)
|
||||
{
|
||||
connectorToServer->sendQueryToDB(TypeQueryToDB::TYPE_QUERY_ASSIGN_TASK_AMM_TO_TRAINEE, idTraineeSelected, &taskNew);
|
||||
}
|
||||
}
|
||||
{}
|
||||
}
|
||||
}
|
||||
|
||||
bool AMMtasksWidget::selectSubProcForAssignTaskAMM(TaskAmmFim taskNew, QList<SubProc>* listSubProc)
|
||||
{
|
||||
bool result = false;
|
||||
lastSelectedTask = taskNew;
|
||||
|
||||
dlgListSubProc = new DialogListSubProc(connectorToServer, this);
|
||||
dlgListSubProc->setTask(&taskNew);
|
||||
waitAnimationWidget->showWithPlay();
|
||||
|
||||
switch( dlgListSubProc->exec() )
|
||||
if(! connectorToServer->sendQueryListSubProc(lastSelectedTask.ammProcedure.dmCode))
|
||||
{
|
||||
case QDialog::Accepted:
|
||||
{
|
||||
//Здесь нужно забрать список отмеченных подпроцедур
|
||||
result = dlgListSubProc->getListCheckedSubProc(listSubProc);
|
||||
break;
|
||||
}
|
||||
case QDialog::Rejected:
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
waitAnimationWidget->hideWithStop();
|
||||
return false;
|
||||
}
|
||||
|
||||
if(dlgListSubProc)
|
||||
{
|
||||
delete dlgListSubProc;
|
||||
dlgListSubProc = nullptr;
|
||||
}
|
||||
|
||||
return result;
|
||||
return true;
|
||||
}
|
||||
|
||||
void AMMtasksWidget::setCurrentTask(int id)
|
||||
|
||||
Reference in New Issue
Block a user