[IMP]: Administration Dashboard.
bzr revid: rch@rch-desktop-20101117115705-gmvjeqzs8szqbt9g
This commit is contained in:
parent
ea37429116
commit
148d430de8
|
@ -21,6 +21,7 @@
|
|||
|
||||
from osv import fields, osv
|
||||
import time
|
||||
import tools
|
||||
|
||||
class board_board(osv.osv):
|
||||
"""
|
||||
|
@ -223,12 +224,45 @@ class board_note(osv.osv):
|
|||
|
||||
board_note()
|
||||
|
||||
class temp_log(osv.osv_memory):
|
||||
_inherit = 'res.log'
|
||||
_description = 'Temporary Log'
|
||||
_columns = {'count': fields.integer("Count")}
|
||||
_defaults = {'count': lambda *a: True}
|
||||
class res_log_report(osv.osv):
|
||||
""" Log Report """
|
||||
_name = "res.log.report"
|
||||
_auto = False
|
||||
_description = "Log Report"
|
||||
_columns = {
|
||||
'name': fields.char('Year', size=64, required=False, readonly=True),
|
||||
'month':fields.selection([('01', 'January'), ('02', 'February'), \
|
||||
('03', 'March'), ('04', 'April'),\
|
||||
('05', 'May'), ('06', 'June'), \
|
||||
('07', 'July'), ('08', 'August'),\
|
||||
('09', 'September'), ('10', 'October'),\
|
||||
('11', 'November'), ('12', 'December')], 'Month', readonly=True),
|
||||
'day': fields.char('Day', size=128, readonly=True),
|
||||
'creation_date': fields.date('Creation Date', readonly=True),
|
||||
'res_model': fields.char('Object', size=128),
|
||||
'nbr': fields.integer('# of Entries', readonly=True)
|
||||
}
|
||||
|
||||
temp_log()
|
||||
def init(self, cr):
|
||||
"""
|
||||
Log Report
|
||||
@param cr: the current row, from the database cursor
|
||||
"""
|
||||
tools.drop_view_if_exists(cr,'res_log_report')
|
||||
cr.execute("""
|
||||
CREATE OR REPLACE VIEW res_log_report AS (
|
||||
SELECT
|
||||
l.id as id,
|
||||
1 as nbr,
|
||||
to_char(l.create_date, 'YYYY') as name,
|
||||
to_char(l.create_date, 'MM') as month,
|
||||
to_char(l.create_date, 'YYYY-MM-DD') as day,
|
||||
to_char(l.create_date, 'YYYY-MM-DD') as creation_date,
|
||||
l.res_model as res_model,
|
||||
date_trunc('day',l.create_date) as create_date
|
||||
FROM
|
||||
res_log l
|
||||
)""")
|
||||
res_log_report()
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<openerp>
|
||||
<data>
|
||||
|
||||
<!-- User Connection -->
|
||||
<record model="ir.ui.view" id="view_user_connection_tree">
|
||||
<field name="name">user.connection.tree</field>
|
||||
|
@ -28,6 +29,98 @@
|
|||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
</record>
|
||||
|
||||
<!-- Log report search view -->
|
||||
<record id="view_res_log_report_filter" model="ir.ui.view">
|
||||
<field name="name">res.log.report.select</field>
|
||||
<field name="model">res.log.report</field>
|
||||
<field name="type">search</field>
|
||||
<field name="arch" type="xml">
|
||||
<search string="Log Analysis">
|
||||
<group col="20" colspan="8">
|
||||
<filter string="Last 30 Days" icon="terp-go-month" name="thismonth"
|
||||
domain="[('create_date','>',(datetime.date.today()-datetime.timedelta(days=30)).strftime('%%Y-%%m-%%d'))]"/>
|
||||
<filter icon="terp-go-week" string="7 Days" separator="1" name="thisweek"
|
||||
domain="[('create_date','>',(datetime.date.today()-datetime.timedelta(days=7)).strftime('%%Y-%%m-%%d'))]"/>
|
||||
</group>
|
||||
<newline/>
|
||||
<group expand="0" string="Extended Filters..." groups="base.group_extended">
|
||||
<field name="creation_date"/>
|
||||
</group>
|
||||
<newline/>
|
||||
<group expand="1" string="Group By...">
|
||||
<filter string="Model" icon="terp-go-home" context="{'group_by':'res_model'}" />
|
||||
<separator orientation="vertical"/>
|
||||
<filter string="Day" icon="terp-go-today"
|
||||
domain="[]" context="{'group_by':'day'}"/>
|
||||
<filter string="Month" icon="terp-go-month"
|
||||
domain="[]" context="{'group_by':'month'}" />
|
||||
<filter string="Year" icon="terp-go-year"
|
||||
domain="[]" context="{'group_by':'name'}" />
|
||||
</group>
|
||||
</search>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<!-- Log report Tree view -->
|
||||
<record id="view_res_log_report_tree" model="ir.ui.view">
|
||||
<field name="name">res.log.report.tree</field>
|
||||
<field name="model">res.log.report</field>
|
||||
<field name="type">tree</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Log Analysis">
|
||||
<field name="name" />
|
||||
<field name="month" />
|
||||
<field name="day" />
|
||||
<field name="res_model" />
|
||||
<field name="nbr" />
|
||||
<field name="creation_date" />
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<!-- Monthly Activity per Document -->
|
||||
<record id="board_res_log_report_graph" model="ir.ui.view">
|
||||
<field name="name">board.res.log.report.graph</field>
|
||||
<field name="model">res.log.report</field>
|
||||
<field name="type">graph</field>
|
||||
<field name="arch" type="xml">
|
||||
<graph string="Monthly Activity per Document" type="bar">
|
||||
<field name="res_model"/>
|
||||
<field name="nbr" operator="+"/>
|
||||
</graph>
|
||||
</field>
|
||||
</record>
|
||||
<record id="board_monthly_res_log_report_action" model="ir.actions.act_window">
|
||||
<field name="name">Monthly Activity per Document</field>
|
||||
<field name="res_model">res.log.report</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">graph,tree</field>
|
||||
<field name="context">{'group_by':['res_model'],'group_by_no_leaf':1}</field>
|
||||
<field name="view_id" ref="board_res_log_report_graph"></field>
|
||||
</record>
|
||||
|
||||
<!-- Weekly Global Activity -->
|
||||
<record id="board_weekly_res_log_report_graph" model="ir.ui.view">
|
||||
<field name="name">board.weekly.res.log.report.graph</field>
|
||||
<field name="model">res.log.report</field>
|
||||
<field name="type">graph</field>
|
||||
<field name="arch" type="xml">
|
||||
<graph string="Weekly Global Activity" type="bar">
|
||||
<field name="day"/>
|
||||
<field name="nbr" operator="+"/>
|
||||
</graph>
|
||||
</field>
|
||||
</record>
|
||||
<record id="board_weekly_res_log_report_action" model="ir.actions.act_window">
|
||||
<field name="name">Weekly Global Activity</field>
|
||||
<field name="res_model">res.log.report</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">graph,tree</field>
|
||||
<field name="context">{'group_by':['day'],'group_by_no_leaf':1}</field>
|
||||
<field name="view_id" ref="board_weekly_res_log_report_graph"></field>
|
||||
</record>
|
||||
|
||||
<record id="board_administration_form" model="ir.ui.view">
|
||||
<field name="name">board.administration.form</field>
|
||||
<field name="model">board.board</field>
|
||||
|
@ -39,10 +132,15 @@
|
|||
<action name="%(action_latest_activities_tree)d" string="Latest Activities" sequence="1"/>
|
||||
<action width="510" name="%(action_user_connection_tree)d" string="Latest Connections" />
|
||||
</child1>
|
||||
<child2>
|
||||
<action name="%(board_monthly_res_log_report_action)d" string="Monthly Activity per Document"/>
|
||||
<action name="%(board_weekly_res_log_report_action)d" string="Weekly Global Activity" />
|
||||
</child2>
|
||||
</hpaned>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="open_board_administration_form" model="ir.actions.act_window">
|
||||
<field name="name">Administration Dashboard</field>
|
||||
<field name="res_model">board.board</field>
|
||||
|
@ -50,111 +148,12 @@
|
|||
<field name="view_mode">form</field>
|
||||
<field name="view_id" ref="board_administration_form"/>
|
||||
</record>
|
||||
|
||||
<menuitem id="base.menu_reporting" name="Reporting" parent="base.menu_administration" sequence="11"
|
||||
groups="base.group_extended"/>
|
||||
<menuitem id="board.admin_menu_dasboard" name="Dashboard" sequence="0" parent="base.menu_reporting"/>
|
||||
<menuitem id="menu_board_admin" action="open_board_administration_form" icon="terp-graph" parent="board.admin_menu_dasboard" />
|
||||
<menuitem id="board.admin_menu_dasboard" name="Dashboard" sequence="0" parent="base.menu_reporting"/>
|
||||
<menuitem id="menu_board_admin" action="open_board_administration_form" icon="terp-graph" parent="board.admin_menu_dasboard" />
|
||||
|
||||
<!-- Monthly Activity per Document -->
|
||||
<record id="board_res_log_graph" model="ir.ui.view">
|
||||
<field name="name">board.res.log.graph</field>
|
||||
<field name="model">res.log</field>
|
||||
<field name="type">graph</field>
|
||||
<field name="arch" type="xml">
|
||||
<graph string="Monthly Activity per Document" type="bar">
|
||||
<field name="res_model"/>
|
||||
<field name="count"/>
|
||||
</graph>
|
||||
</field>
|
||||
</record>
|
||||
<record id="board_res_log_tree" model="ir.ui.view">
|
||||
<field name="name">board.res.log.tree</field>
|
||||
<field name="model">res.log</field>
|
||||
<field name="type">tree</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Monthly Activity per Document">
|
||||
<field name="res_model"/>
|
||||
<field name="create_date"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
<record id="board_res_log_action" model="ir.actions.act_window">
|
||||
<field name="name">Monthly Activity per Document</field>
|
||||
<field name="res_model">res.log</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">graph,tree</field>
|
||||
<field name="view_id" ref="board_res_log_graph"></field>
|
||||
</record>
|
||||
<record id="board_open_res_log_tree" model="ir.actions.act_window.view">
|
||||
<field eval="2" name="sequence"/>
|
||||
<field name="view_mode">tree</field>
|
||||
<field name="view_id" ref="board_res_log_tree"/>
|
||||
<field name="act_window_id" ref="board_res_log_action"/>
|
||||
</record>
|
||||
<record id="board_open_res_log_graph" model="ir.actions.act_window.view">
|
||||
<field eval="1" name="sequence"/>
|
||||
<field name="view_mode">graph</field>
|
||||
<field name="view_id" ref="board_res_log_graph"/>
|
||||
<field name="act_window_id" ref="board_res_log_action"/>
|
||||
</record>
|
||||
|
||||
<!-- Weekly Global Activity -->
|
||||
<record id="board_weekly_res_log_graph" model="ir.ui.view">
|
||||
<field name="name">board.weekly.res.log.graph</field>
|
||||
<field name="model">res.log</field>
|
||||
<field name="type">graph</field>
|
||||
<field name="arch" type="xml">
|
||||
<graph string="Weekly Global Activity" type="bar">
|
||||
<field name="create_date"/>
|
||||
<field name="count"/>
|
||||
</graph>
|
||||
</field>
|
||||
</record>
|
||||
<record id="board_weekly_res_log_tree" model="ir.ui.view">
|
||||
<field name="name">board.weekly.res.log.tree</field>
|
||||
<field name="model">res.log</field>
|
||||
<field name="type">tree</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Weekly Global Activity">
|
||||
<field name="res_model"/>
|
||||
<field name="create_date"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
<record id="board_weekly_res_log_action" model="ir.actions.act_window">
|
||||
<field name="name">Weekly Global Activity</field>
|
||||
<field name="res_model">res.log</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">graph,tree</field>
|
||||
<field name="view_id" ref="board_weekly_res_log_graph"></field>
|
||||
</record>
|
||||
<record id="board_open_weekly_res_log_tree" model="ir.actions.act_window.view">
|
||||
<field eval="2" name="sequence"/>
|
||||
<field name="view_mode">tree</field>
|
||||
<field name="view_id" ref="board_weekly_res_log_tree"/>
|
||||
<field name="act_window_id" ref="board_weekly_res_log_action"/>
|
||||
</record>
|
||||
<record id="board_open_weekly_res_log_graph" model="ir.actions.act_window.view">
|
||||
<field eval="1" name="sequence"/>
|
||||
<field name="view_mode">graph</field>
|
||||
<field name="view_id" ref="board_weekly_res_log_graph"/>
|
||||
<field name="act_window_id" ref="board_weekly_res_log_action"/>
|
||||
</record>
|
||||
|
||||
<record id="board_admin_graphs_form" model="ir.ui.view">
|
||||
<field name="name">board.admin.graphs.form</field>
|
||||
<field name="model">board.board</field>
|
||||
<field name="type">form</field>
|
||||
<field name="inherit_id" ref="board_administration_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="/form/hpaned/child1" position="after">
|
||||
<child2>
|
||||
<action name="%(board_res_log_action)d" string="Monthly Activity per Document"/>
|
||||
<action name="%(board_weekly_res_log_action)d" string="Weekly Global Activity"/>
|
||||
</child2>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
</data>
|
||||
</openerp>
|
||||
|
||||
|
|
Loading…
Reference in New Issue