Skip to content

Commit

Permalink
fix bug
Browse files Browse the repository at this point in the history
  • Loading branch information
Serein207 committed Dec 22, 2023
1 parent a51c1a4 commit 275d166
Show file tree
Hide file tree
Showing 8 changed files with 27 additions and 23 deletions.
1 change: 1 addition & 0 deletions qml/page/T_DepartmentEvents.qml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ FluScrollablePage {
}

function loadDepartmentEvents(departmentId) {
statusMode = FluStatusViewType.Loading
DepartmentEventsController.loadDepartmentEvents(departmentId)
}

Expand Down
2 changes: 1 addition & 1 deletion qml/page/T_EventInfo.qml
Original file line number Diff line number Diff line change
Expand Up @@ -462,7 +462,7 @@ FluScrollablePage {
Layout.fillWidth: true
sourceComponent: (EventoInfoController.isParticipated
&& EventoHelper.state === 5
&& UserHelper.permisson !== 1) ? com_comment : undefined
&& UserHelper.permission !== 1) ? com_comment : undefined
}

Component {
Expand Down
12 changes: 10 additions & 2 deletions src/controller/information_service.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,13 @@
#include "department_events.h"
#include "department_model.h"
#include "evento_edit.h"
#include "evento_helper.h"
#include "evento_service.h"
#include "location_model.h"
#include "repository.h"
#include "type_model.h"

void InformationService::load_EditInfo() {
void InformationService::load_EditInfo(bool isEditMode) {
DepartmentEventsController::getInstance();
std::array<QFuture<bool>, 3> tasks = {
getRepo()->getTypeList().then([](EventoResult<std::vector<EventType>> result) {
Expand Down Expand Up @@ -36,10 +38,16 @@ void InformationService::load_EditInfo() {
return true;
})};

QtFuture::whenAll(tasks.begin(), tasks.end()).then([](QList<QFuture<bool>> tasks) {
QtFuture::whenAll(tasks.begin(), tasks.end()).then([=](QList<QFuture<bool>> tasks) {
for (const auto& i : tasks)
if (i.isCanceled() || !i.result())
return;
if (isEditMode)
EventoEditController::getInstance()->setProperty(
"index", TypeModel::getInstance()->getIndex(
EventoService::getInstance()
.edit(EventoHelper::getInstance()->property("id").toInt())
.type.id));
EventoEditController::getInstance()->onLoadEditFinished();
});
}
Expand Down
2 changes: 1 addition & 1 deletion src/controller/information_service.h
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ class InformationService {
return singleton;
}

void load_EditInfo();
void load_EditInfo(bool isEditMode);
void load_DepartmentInfo();
void load_SubscribedDepartmentInfo();

Expand Down
9 changes: 2 additions & 7 deletions src/controller/ui/evento_edit.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,6 @@ EventoEditController* EventoEditController::create(QQmlEngine* qmlEngine, QJSEng
return instance;
}

void EventoEditController::preload() {
InformationService::getInstance().load_EditInfo();
}

void EventoEditController::createEvento(QString title, QString description, QString eventStart,
QString eventEnd, QString registerStart,
QString registerEnd, int index, int locationId,
Expand Down Expand Up @@ -50,7 +46,6 @@ void EventoEditController::update(const DTO_Evento& event) {
}

void EventoEditController::loadEditInfo() {
if (m_isEditMode)
update(EventoService::getInstance().edit(EventoHelper::getInstance()->m_id));
preload();
update(EventoService::getInstance().edit(EventoHelper::getInstance()->property("id").toInt()));
InformationService::getInstance().load_EditInfo(m_isEditMode);
}
2 changes: 0 additions & 2 deletions src/controller/ui/evento_edit.h
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,6 @@ class EventoEditController : public QObject {
QString m_registerEnd;
QString m_departmentIds;

void preload();

signals:
void loadEditSuccessEvent();
void loadEditErrorEvent(QString messge);
Expand Down
11 changes: 6 additions & 5 deletions src/domain/model/department_model.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -42,11 +42,12 @@ QHash<int, QByteArray> DepartmentModel::roleNames() const {
}

void DepartmentModel::resetModel(std::vector<Department>&& model) {
QMetaObject::invokeMethod(this, MovableLambda(std::move(model), [this](auto&& data) {
beginResetModel();
m_data = std::move(data);
endResetModel();
}));
QMetaObject::invokeMethod(
this, MovableLambda(std::move(model), [this](std::vector<Department>&& data) {
beginResetModel();
m_data = std::move(data);
endResetModel();
}));
}

DepartmentModel* DepartmentModel::create(QQmlEngine* qmlEngine, QJSEngine* jsEngine) {
Expand Down
11 changes: 6 additions & 5 deletions src/domain/model/evento_brief_model.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -55,11 +55,12 @@ QHash<int, QByteArray> EventoBriefModel::roleNames() const {
}

void EventoBriefModel::resetModel(std::vector<EventoBrief>&& model) {
QMetaObject::invokeMethod(this, MovableLambda(std::move(model), [this](auto&& data) {
beginResetModel();
m_data = std::move(data);
endResetModel();
}));
QMetaObject::invokeMethod(
this, MovableLambda(std::move(model), [this](std::vector<EventoBrief>&& data) {
beginResetModel();
m_data = std::move(data);
endResetModel();
}));
}

EventoBriefModel* EventoBriefModel::create(QQmlEngine* qmlEngine, QJSEngine* jsEngine) {
Expand Down

0 comments on commit 275d166

Please sign in to comment.