Commit a940f299 by Yvon Kerdoncuff

several bug fixes related to makeups (+cleaning)

parent a21239dd
...@@ -391,8 +391,8 @@ def update_members_makeups(request): ...@@ -391,8 +391,8 @@ def update_members_makeups(request):
# Perform checks and compute some data in a loop on members. # Perform checks and compute some data in a loop on members.
cs = CagetteShift() cs = CagetteShift()
api = OdooAPI() api = OdooAPI()
unsubscription_limit = api.get_system_param('lacagette_membership.points_limit_to_get_unsubscribed') unsubscription_limit = int(api.get_system_param('lacagette_membership.points_limit_to_get_unsubscribed'))
error = [] error = {}
for member_data in members_data: for member_data in members_data:
cm = CagetteMember(int(member_data["member_id"])) cm = CagetteMember(int(member_data["member_id"]))
target_makeups_nb = int(member_data["target_makeups_nb"]) target_makeups_nb = int(member_data["target_makeups_nb"])
...@@ -417,7 +417,7 @@ def update_members_makeups(request): ...@@ -417,7 +417,7 @@ def update_members_makeups(request):
"associé.") "associé.")
return JsonResponse(error, status=400) return JsonResponse(error, status=400)
# Save computed data in member_data. It will be useful to update makeups and points. # Save computed data in member_data. It will be useful to update makeups and points.
members_data[member_data["member_id"]]["points_diff"] = - makeup_change_count member_data["points_diff"] = - makeup_change_count
# Update makeups and points # Update makeups and points
res["res"] = [] res["res"] = []
...@@ -466,6 +466,9 @@ def update_members_makeups_core(members_data, res = None): ...@@ -466,6 +466,9 @@ def update_members_makeups_core(members_data, res = None):
# (and this triggers status update in odoo). # (and this triggers status update in odoo).
if res: if res:
res["res"].append(update_makeups_res) res["res"].append(update_makeups_res)
else:
if res:
res["res"].append({'mid': int(member_data["member_id"])})
data = { data = {
'name': "Admin BDM - " + member_data["description"], 'name': "Admin BDM - " + member_data["description"],
...@@ -806,7 +809,7 @@ def create_pair(request): ...@@ -806,7 +809,7 @@ def create_pair(request):
child_makeups += len(child_scheduled_makeups) child_makeups += len(child_scheduled_makeups)
parent_makeups += parent_scheduled_makeups_length parent_makeups += parent_scheduled_makeups_length
unsubscription_limit = api.get_system_param('lacagette_membership.points_limit_to_get_unsubscribed') unsubscription_limit = int(api.get_system_param('lacagette_membership.points_limit_to_get_unsubscribed'))
min_total_points = unsubscription_limit + 1 min_total_points = unsubscription_limit + 1
max_total_makeups = - min_total_points max_total_makeups = - min_total_points
......
...@@ -141,7 +141,7 @@ class CagetteMember(models.Model): ...@@ -141,7 +141,7 @@ class CagetteMember(models.Model):
res = self.o_api.search_read('res.partner', cond, fields) res = self.o_api.search_read('res.partner', cond, fields)
if res and len(res) == 1: if res and len(res) == 1:
return res[0][points_field] return int(res[0][points_field])
else: else:
return None return None
......
...@@ -339,14 +339,10 @@ function update_members_makeups(member_ids, action, description) { ...@@ -339,14 +339,10 @@ function update_members_makeups(member_ids, action, description) {
closeModal(); closeModal();
}, },
error: function(data) { error: function(data) {
err = {msg: "erreur serveur pour incrémenter ou décrémenter les rattrapages", ctx: 'update_members_makeups'}; err = {msg: data.responseJSON.error, ctx: 'update_members_makeups'};
if (typeof data.responseJSON != 'undefined' && typeof data.responseJSON.error != 'undefined') {
err.msg += ' : ' + data.responseJSON.error;
}
report_JS_error(err, 'members_admin-manage_makeups'); report_JS_error(err, 'members_admin-manage_makeups');
closeModal(); closeModal();
alert('Erreur serveur pour incrémenter ou décrémenter les rattrapages. Veuillez contacter le service informatique.'); alert(data.responseJSON.error);
} }
}); });
} }
......
...@@ -71,7 +71,6 @@ urlpatterns = [ ...@@ -71,7 +71,6 @@ urlpatterns = [
url(r'^admin/manage_attached/create_pair$', admin.create_pair), url(r'^admin/manage_attached/create_pair$', admin.create_pair),
url(r'^admin/manage_attached/delete_pair$', admin.delete_pair), url(r'^admin/manage_attached/delete_pair$', admin.delete_pair),
url(r'^get_makeups_members$', admin.get_makeups_members), url(r'^get_makeups_members$', admin.get_makeups_members),
url(r'^update_members_makeups$', admin.update_members_makeups),
url(r'^get_member_info/(\d+)$', admin.get_member_info), url(r'^get_member_info/(\d+)$', admin.get_member_info),
url(r'^get_attached_members$', admin.get_attached_members), url(r'^get_attached_members$', admin.get_attached_members),
# External login # External login
......
...@@ -357,7 +357,7 @@ class CagetteShift(models.Model): ...@@ -357,7 +357,7 @@ class CagetteShift(models.Model):
def get_member_makeups_to_do(self, partner_id): def get_member_makeups_to_do(self, partner_id):
cond = [['id', '=', partner_id]] cond = [['id', '=', partner_id]]
fields = ['makeups_to_do'] fields = ['makeups_to_do']
return self.o_api.search_read('res.partner', cond, fields)[0]["makeups_to_do"] return int(self.o_api.search_read('res.partner', cond, fields)[0]["makeups_to_do"])
def update_counter_event(self, fields): def update_counter_event(self, fields):
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment