odex25_standard/odex25_donation/ensan_donation_request/controllers/main.py

32 lines
1.2 KiB
Python

from odoo import http, _
from odoo.http import route, request
class DonationRequestsApi(http.Controller):
@route('/campaigns/get', auth='user', type='json', website=True)
def get_all_donation_requests(self):
try:
data = request.env['donation.request'].search_read([('user_id', '=', request.env.user.id)], fields=[
'id',
'name',
'website_url',
'stage_name',
'create_date',
'remaining_amount',
'done_percentage',
])
# TODO: remove in production
for rec in data:
rec['image_url'] = f'/web/image?model=donation.request&field=image_1920&id={rec["id"]}'
return data
except Exception as e:
return {
'error': str(e)
}
@route('/campaigns/request', auth='user', type='http', website=True, methods=['GET'])
def campaign_request(self):
categories = request.env['product.public.category'].sudo().search_read([('available_in_donation_request', '=', True)], fields=['id', 'name', 'minimum_request_amount'])
return request.render('template_to_be_implemented.', {'categories': categories})