İçereği Atla
Menü
Bu soru işaretlendi
1 Cevapla
3605 Görünümler

How can I add the repair orders to the portal users view?
The only thing that appears right now are the help desk tickets.

Avatar
Vazgeç
En İyi Yanıt

Hi

You need to create a controller for passing the data :

module_name.py




from odoo import http
from odoo.http import request
class RepairOrder(http.Controller):
@http.route(['/repair/order], type="http", auth="public", website=True)
def maintenance_report(self, **kw):
repair_order = request.env['repair.order'].sudo().search([])
values = {
'datas': repair_order,}
return request.render("portal_users.repair_order_page", values)

class MyPortal(CustomerPortal):

    def _prepare_home_portal_values(self, counters):

        values = super()._prepare_home_portal_values(counters)

        partner = request.env.user.partner_id

        repair_count = request.env['repair.order'].sudo().search_count([('employee_id',

                                                             '=', partner.id)])

        values['repair_count'] = repair_count

        return values


Templates:

<template id="repair_order_page" name="Repair Order">
      <t t-call="website.layout">
      <t t-set="breadcrumbs_searchbar" t-value="True"/>
      <form>
      <div id="wrap_maintenance">
      <div>
        <center>
            <h1 style="margin: 20px;">
              <b>Repair Order</b>
            </h1>
        </center>
      </div>
      <table class="table table-sm table-reports" style="border:1px solid black;">
      <thead>
          <tr>
              <th colspan="6" class="text-left">Order</th>
              <th colspan="6" class="text-center">Reference</th>

         </tr>
     </thead>
     <tbody class="text-left">
        <t>
           <tr class="report_table" t-foreach="datas" t-as="main">
           <input id="main_id" type="hidden" t-att-value="main.id"/>
 
         <td colspan="6">
              <span id="main_ref" t-esc="main[id]"/>
           </td>
           <td colspan="6">
              <span id="main_name t-esc="main['name']"/>
           </td>
           </tr>
        </t>
   </tbody>
   </table>
</div>
</form>
</t>
</template>

you can add the CSS for each class


For more reference, you can refer to the Blog: https://www.cybrosys.com/blog/how-to-create-a-custom-report-in-odoo-15-portal-view" target="_blank">https://www.cybrosys.com/blog/how-to-create-a-custom-report-in-odoo-15-portal-view

or you can refer to the related apps: https://apps.odoo.com/apps/modules/16.0/website_portal_events/" target="_blank">https://apps.odoo.com/apps/modules/16.0/website_portal_events/
href="https://apps.odoo.com/apps/modules/16.0/vendor_portal_odoo/" target="_blank">https://apps.odoo.com/apps/modules/16.0/vendor_portal_odoo/



Hope it helps

Avatar
Vazgeç
İlgili Gönderiler Cevaplar Görünümler Aktivite
2
Eki 24
33
2
May 24
3058
5
Tem 25
9371
1
Tem 24
2199
1
Kas 24
1409