Files
gzth/yuthon_wechat/views/wecom_ai_views.xml
T
2026-05-28 15:27:00 +08:00

127 lines
5.9 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<odoo>
<!-- ============================================ -->
<!-- 企业微信AI消息日志 - 列表视图 -->
<!-- ============================================ -->
<record id="view_wecom_ai_message_log_tree" model="ir.ui.view">
<field name="name">wecom.ai.message.log.tree</field>
<field name="model">wecom.ai.message.log</field>
<field name="arch" type="xml">
<tree string="企业微信AI消息日志" default_order="message_time desc">
<field name="message_time"/>
<field name="wecom_userid"/>
<field name="user_name"/>
<field name="user_message" widget="text"/>
<field name="ai_reply" widget="text"/>
<field name="status" decoration-success="status == 'success'" decoration-danger="status == 'error'" widget="badge"/>
</tree>
</field>
</record>
<!-- ============================================ -->
<!-- 企业微信AI消息日志 - 表单视图 -->
<!-- ============================================ -->
<record id="view_wecom_ai_message_log_form" model="ir.ui.view">
<field name="name">wecom.ai.message.log.form</field>
<field name="model">wecom.ai.message.log</field>
<field name="arch" type="xml">
<form string="消息详情" create="0" edit="0">
<sheet>
<group>
<group string="基本信息">
<field name="message_time"/>
<field name="wecom_userid"/>
<field name="user_id"/>
<field name="status"/>
<field name="error_message" invisible="status == 'success'"/>
</group>
<group string="关联信息">
<field name="chat_id"/>
</group>
</group>
<notebook>
<page string="用户消息">
<field name="user_message" readonly="1"/>
</page>
<page string="AI回复">
<field name="ai_reply" readonly="1"/>
</page>
</notebook>
</sheet>
</form>
</field>
</record>
<!-- ============================================ -->
<!-- 企业微信AI消息日志 - 搜索视图 -->
<!-- ============================================ -->
<record id="view_wecom_ai_message_log_search" model="ir.ui.view">
<field name="name">wecom.ai.message.log.search</field>
<field name="model">wecom.ai.message.log</field>
<field name="arch" type="xml">
<search string="搜索消息日志">
<field name="wecom_userid"/>
<field name="user_name"/>
<field name="user_message"/>
<filter name="today" string="今天" domain="[('message_time', '>=', (context_today()).strftime('%%Y-%%m-%%d'))]"/>
<filter name="this_week" string="本周" domain="[('message_time', '>=', (context_today() - datetime.timedelta(days=7)).strftime('%%Y-%%m-%%d'))]"/>
<separator/>
<filter name="success" string="成功" domain="[('status', '=', 'success')]"/>
<filter name="error" string="失败" domain="[('status', '=', 'error')]"/>
<group expand="0" string="分组">
<filter name="group_user" string="按用户" context="{'group_by': 'user_id'}"/>
<filter name="group_date" string="按日期" context="{'group_by': 'message_time:day'}"/>
<filter name="group_status" string="按状态" context="{'group_by': 'status'}"/>
</group>
</search>
</field>
</record>
<!-- ============================================ -->
<!-- 企业微信AI消息日志 - Action & Menu -->
<!-- ============================================ -->
<record id="action_wecom_ai_message_log" model="ir.actions.act_window">
<field name="name">企业微信消息日志</field>
<field name="res_model">wecom.ai.message.log</field>
<field name="view_mode">tree,form</field>
<field name="context">{'search_default_today': 1}</field>
</record>
<menuitem id="menu_wecom_ai_message_log"
name="企业微信消息日志"
parent="yuthon_ai_agent.menu_ai_root"
action="action_wecom_ai_message_log"
sequence="40"
groups="base.group_no_one"/>
<!-- ============================================ -->
<!-- 企业微信AI对话记录 - 列表视图 -->
<!-- ============================================ -->
<record id="view_wecom_ai_chat_tree" model="ir.ui.view">
<field name="name">wecom.ai.chat.tree</field>
<field name="model">wecom.ai.chat</field>
<field name="arch" type="xml">
<tree string="企业微信AI对话">
<field name="wecom_userid"/>
<field name="user_id"/>
<field name="conversation_id"/>
<field name="last_message_time"/>
<field name="log_count" string="消息数"/>
</tree>
</field>
</record>
<record id="action_wecom_ai_chat" model="ir.actions.act_window">
<field name="name">企业微信AI对话</field>
<field name="res_model">wecom.ai.chat</field>
<field name="view_mode">tree,form</field>
</record>
<menuitem id="menu_wecom_ai_chat"
name="企业微信AI对话"
parent="yuthon_ai_agent.menu_ai_root"
action="action_wecom_ai_chat"
sequence="41"
groups="base.group_no_one"/>
</odoo>