FIX: Refresh members and tab count when assignments change

This commit is contained in:
Ahmed Gagan 2020-08-13 03:37:05 +05:30 committed by GitHub
parent 3c0f8be0d9
commit a844da7656
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 18 additions and 7 deletions

View File

@ -147,7 +147,12 @@ module DiscourseAssign
.limit(limit)
.offset(offset)
render json: { members: serialize_data(members, GroupUserAssignedSerializer) }
assignment_count = Topic.joins("JOIN topic_custom_fields tcf ON topics.id = tcf.topic_id AND tcf.name = 'assigned_to_id' AND tcf.value IS NOT NULL")
.where("tcf.value IN (SELECT group_users.user_id::varchar(255) FROM group_users WHERE (group_id IN (SELECT id FROM groups WHERE name = ?)))", group.name)
.where("topics.deleted_at IS NULL")
.count
render json: { members: serialize_data(members, GroupUserAssignedSerializer), "assignment_count" => assignment_count }
end
private

View File

@ -1,6 +1,7 @@
import { inject as service } from "@ember/service";
import Controller, { inject as controller } from "@ember/controller";
import { ajax } from "discourse/lib/ajax";
import { observes } from "discourse-common/utils/decorators";
export default Controller.extend({
router: service(),
@ -8,6 +9,11 @@ export default Controller.extend({
loading: false,
offset: 0,
@observes("model.assignment_count")
assignmentCountChanged() {
this.set("group.assignment_count", this.model.assignment_count);
},
findMembers(refresh) {
if (refresh) {
this.set("members", this.model.members);

View File

@ -39,11 +39,5 @@ export default DiscourseRoute.extend({
renderTemplate() {
this.render("group-topics-list");
},
actions: {
changeAssigned() {
this.refresh();
}
}
});

View File

@ -22,5 +22,11 @@ export default DiscourseRoute.extend({
} else {
this.transitionTo("group.assigned.show", "everyone");
}
},
actions: {
changeAssigned() {
this.refresh();
}
}
});