Public release from ruodoo-project: 19.0 - 2026-05-31 21:19:12 UTC
This commit is contained in:
113
premium_client/views/premium_service_views.xml
Normal file
113
premium_client/views/premium_service_views.xml
Normal file
@ -0,0 +1,113 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<odoo>
|
||||
<!-- Поиск с группировкой -->
|
||||
<record id="premium_service_view_search" model="ir.ui.view">
|
||||
<field name="name">premium.service.search</field>
|
||||
<field name="model">premium.service</field>
|
||||
<field name="arch" type="xml">
|
||||
<search string="Поиск сервисов">
|
||||
<filter name="group_by_category" string="Категория" context="{'group_by': 'category'}"/>
|
||||
<field name="name"/>
|
||||
<field name="category"/>
|
||||
</search>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<!-- Вид списка (list), а не tree -->
|
||||
<record id="premium_service_view_tree" model="ir.ui.view">
|
||||
<field name="name">premium.service.tree</field>
|
||||
<field name="model">premium.service</field>
|
||||
<field name="arch" type="xml">
|
||||
<list>
|
||||
<field name="sequence"/>
|
||||
<field name="name"/>
|
||||
<field name="category"/>
|
||||
</list>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="premium_service_view_kanban" model="ir.ui.view">
|
||||
<field name="name">premium.service.kanban</field>
|
||||
<field name="model">premium.service</field>
|
||||
<field name="arch" type="xml">
|
||||
<kanban default_group_by="category">
|
||||
<templates>
|
||||
<t t-name="card">
|
||||
<div class="oe_kanban_global_click o_kanban_record">
|
||||
<!-- Заголовок по центру -->
|
||||
<div class="text-center mb-2">
|
||||
<strong class="o_kanban_title">
|
||||
<field name="name"/>
|
||||
</strong>
|
||||
</div>
|
||||
|
||||
<!-- Изображение слева, текст справа с большим отступом -->
|
||||
<div class="d-flex align-items-center mb-2">
|
||||
<field name="image"
|
||||
widget="image"
|
||||
options="{'size': [80, 80]}"
|
||||
class="mr-6" /> <!-- mr-6 = 4rem = 64px → очень большой отступ -->
|
||||
|
||||
<div>
|
||||
<div class="text-muted o_kanban_body">
|
||||
<field name="short_description"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Кнопка "Подробнее" -->
|
||||
<div class="o_kanban_buttons mt-2">
|
||||
<button type="object" name="action_open_form" class="btn btn-primary btn-sm">
|
||||
<span>Подробнее</span>
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</t>
|
||||
</templates>
|
||||
</kanban>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<!-- Единая форма (контроль прав будет в Python) -->
|
||||
<record id="premium_service_view_form" model="ir.ui.view">
|
||||
<field name="name">premium.service.form</field>
|
||||
<field name="model">premium.service</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="Сервис">
|
||||
<sheet>
|
||||
<!-- Заголовок -->
|
||||
<div class="oe_title">
|
||||
<h1><field name="name"/></h1>
|
||||
</div>
|
||||
|
||||
<!-- Изображение слева, данные справа -->
|
||||
<div class="row mt-3">
|
||||
<div class="col-md-4">
|
||||
<field name="image" widget="image" class="w-100"/>
|
||||
</div>
|
||||
<div class="col-md-8">
|
||||
<group>
|
||||
<field name="category"/>
|
||||
<field name="author_url" widget="url"/>
|
||||
</group>
|
||||
<notebook>
|
||||
<page string="Описание">
|
||||
<field name="description" widget="html"/>
|
||||
</page>
|
||||
</notebook>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Кнопка "Заказать" справа под описанием - увеличенная зеленая -->
|
||||
<div class="mt-4 d-flex justify-content-end">
|
||||
<button name="action_open_order_wizard"
|
||||
type="object"
|
||||
class="btn btn-success btn-lg"
|
||||
string="Заказать"
|
||||
style="padding: 20px 50px; font-size: 22px; font-weight: bold; border-radius: 10px;"/>
|
||||
</div>
|
||||
</sheet>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
</odoo>
|
||||
Reference in New Issue
Block a user