[IMP] lunch: improved view
[odoo/odoo.git] / addons / lunch / lunch_view.xml
1 <?xml version="1.0"?>
2 <openerp>
3     <data>
4           <menuitem name="Lunch Order" parent="base.menu_tools"
5               id="menu_lunch" sequence="1" />
6
7           <menuitem name="Reporting" parent="base.menu_tools"
8               id="base.menu_lunch_reporting" sequence="6" groups="base.group_tool_manager"/>
9
10           <menuitem name="Lunch"
11               parent="base.menu_reporting"
12               id="menu_lunch_reporting_order" sequence="55" />
13
14           <menuitem name="Configuration" parent="base.menu_tools"
15               id="base.menu_lunch_survey_root" sequence="20" groups="base.group_tool_manager"/>
16
17           <menuitem name="Lunch" parent="base.menu_lunch_survey_root"
18               id="menu_lunch_category_root_configuration" sequence="1" />
19
20 <!-- Lunch order Form view -->
21
22           <record model="ir.ui.view" id="view_lunch_order_form">
23             <field name="name">Order</field>
24             <field name="model">lunch.order</field>
25             <field name="arch" type="xml">
26                 <form layout="manual">
27                 <div class="oe_form_topbar">
28                     <button name="%(action_lunch_order_confirm)d" string="Confirm Order" type="action" icon="gtk-ok" attrs="{'invisible':[('state','=','confirmed')]}"/>
29                     <button name="%(action_lunch_order_cancel)d" string="Cancel Order" type="action" icon="gtk-cancel"/>
30                     <div class="oe_right">
31                         <field name="state" widget="statusbar" nolabel="1" statusbar_visible="draft,confirmed"/>
32                     </div>
33                 </div>
34                 <sheet string="Order" layout="auto">
35                     <field name="user_id" select="1"/>
36                     <field name="date" select="1"/>
37                     <field name="product" select="1" on_change="onchange_product(product)"/>
38                     <field name="category"/>
39                     <field name="descript"/>
40                     <field name="price"/>
41                     <field name="cashmove"/>
42                 </sheet>
43                 </form>
44             </field>
45         </record>
46
47 <!-- Lunch order Tree view -->
48
49         <record model="ir.ui.view" id="view_lunch_order_tree">
50             <field name="name">Order</field>
51             <field name="model">lunch.order</field>
52             <field name="type">tree</field>
53             <field name="arch" type="xml">
54                 <tree colors="blue:state == 'draft';black:state == 'confirmed'" string="Order">
55                     <field name="date"/>
56                     <field name="user_id"/>
57                     <field name="product"/>
58                     <field name="descript"/>
59                     <field name="category"/>
60                     <field name="price" sum="Total price"/>
61                     <field name="state"/>
62                     <button colspan="1"
63                               name="%(action_lunch_order_cancel)d"
64                               string="Cancel Order"
65                               type="action" states="confirmed"
66                               icon="gtk-cancel" />
67                     <button colspan="1"
68                               name="%(action_lunch_order_confirm)d"
69                               string="Confirm Order"
70                               type="action" states="draft"
71                               icon="terp-gtk-go-back-rtl" />
72                 </tree>
73             </field>
74         </record>
75
76 <!-- Lunch order Search view -->
77
78         <record id="view_lunch_order_filter" model="ir.ui.view">
79             <field name="name">lunch.order.list.select</field>
80             <field name="model">lunch.order</field>
81             <field name="type">search</field>
82             <field name="arch" type="xml">
83                 <search string="Search Lunch Order">
84                     <filter icon="terp-check" string="To Confirm" domain="[('state','=','draft')]"/>
85                     <filter icon="terp-camera_test" string="Confirmed" domain="[('state','=',('confirmed'))]"/>
86                     <separator orientation="vertical"/>
87                     <filter icon="terp-go-today" name="Today" string="Today" domain="[('date','=',time.strftime('%%Y-%%m-%%d'))]"/>
88                     <separator orientation="vertical"/>
89                     <field name="user_id"/>
90                     <field name="date"/>
91                     <newline/>
92                     <group expand="0" string="Group By...">
93                         <filter string="Category" icon="terp-stock_symbol-selection" domain="[]"  context="{'group_by':'category'}"/>
94                     </group>
95                 </search>
96             </field>
97         </record>
98
99 <!-- Lunch order Action -->
100
101         <record model="ir.actions.act_window" id="action_lunch_order_form">
102                 <field name="name">Lunch Orders</field>
103                 <field name="res_model">lunch.order</field>
104                 <field name="view_mode">tree,form</field>
105                 <field name="search_view_id" ref="view_lunch_order_filter"/>
106                 <field name="context">{"search_default_Today":1}</field>
107         </record>
108
109         <menuitem name="Lunch Orders" parent="menu_lunch"
110             id="menu_lunch_order_form" action="action_lunch_order_form" />
111
112 <!--  Cash Box Form view  -->
113
114         <record model="ir.ui.view" id="view_lunch_cashbox_form">
115             <field name="name">Cashboxes</field>
116             <field name="model">lunch.cashbox</field>
117             <field name="arch" type="xml">
118                 <form string="Cashboxes">
119                     <field name="name" select="1"/>
120                     <field name="manager" select="1"/>
121                 </form>
122             </field>
123         </record>
124
125 <!--  Cash Box Tree view  -->
126
127         <record model="ir.ui.view" id="view_lunch_cashbox_tree">
128             <field name="name">Cashboxes</field>
129             <field name="model">lunch.cashbox</field>
130             <field name="type">tree</field>
131             <field name="arch" type="xml">
132                 <tree string="Cashboxes" colors="red:sum_remain&lt;=0">
133                     <field name="name" select="1"/>
134                     <field name="manager" select="1"/>
135                     <field name="sum_remain" select="1"/>
136                 </tree>
137             </field>
138         </record>
139
140 <!--  Cash Box Action  -->
141
142         <record model="ir.actions.act_window" id="action_lunch_cashbox_form">
143                 <field name="name"> Cashboxes </field>
144                 <field name="res_model">lunch.cashbox</field>
145         </record>
146
147         <menuitem name="Cashboxes"
148             parent="menu_lunch_category_root_configuration"
149             id="menu_lunch_cashbox_form"
150             action="action_lunch_cashbox_form" />
151
152 <!-- Cash Move Form view  -->
153
154         <record model="ir.ui.view" id="view_lunch_cashmove_form">
155             <field name="name">CashMove</field>
156             <field name="model">lunch.cashmove</field>
157             <field name="arch" type="xml">
158                 <form string="CashMove">
159                     <field name="name" select="1"/>
160                     <field name="user_cashmove" select="1"/>
161                     <field name="amount"/>
162                     <field name="box" select="1"/>
163                     <field name="create_date" select="1"/>
164                     <field name="active" select="1"/>
165                 </form>
166             </field>
167         </record>
168
169 <!-- Cash Move Tree view  -->
170
171         <record model="ir.ui.view" id="view_lunch_cashmove_tree">
172             <field name="name">CashMove</field>
173             <field name="model">lunch.cashmove</field>
174             <field name="type">tree</field>
175             <field name="arch" type="xml">
176                 <tree string="CashMove" editable="top">
177                     <field name="create_date"/>
178                     <field name="box" select="1"/>
179                     <field name="name" select="1" required="1"/>
180                     <field name="user_cashmove" select="1"/>
181                     <field name="amount" select="1" sum="Total amount"/>
182                 </tree>
183             </field>
184         </record>
185
186 <!--  Cash Move Search View  -->
187
188         <record id="view_lunch_cashmove_filter" model="ir.ui.view">
189             <field name="name">lunch.cashmove.list.select</field>
190             <field name="model">lunch.cashmove</field>
191             <field name="type">search</field>
192             <field name="arch" type="xml">
193                 <search string="Search CashMove">
194                     <filter icon="terp-go-today" name="Today" string="Today" domain="[('create_date','&lt;=',time.strftime('%%Y-%%m-%%d 23:59:59'))]"/>
195                     <separator orientation="vertical"/>
196                     <field name="user_cashmove"/>
197                     <field name="create_date"/>
198                     <newline/>
199                     <group expand="0" string="Group By...">
200                         <filter string="User" icon="terp-personal" domain="[]"  context="{'group_by':'user_cashmove'}"/>
201                         <separator orientation="vertical"/>
202                         <filter string="Box" icon="terp-dolar" domain="[]"  context="{'group_by':'box'}"/>
203                         <separator orientation="vertical"/>
204                         <filter string="Date" icon="terp-go-today" domain="[]"  context="{'group_by':'create_date'}"/>
205                     </group>
206                 </search>
207
208             </field>
209         </record>
210
211 <!-- Cash Move Action  -->
212
213         <record model="ir.actions.act_window" id="action_lunch_cashmove_form">
214                 <field name="name">Cash Moves</field>
215                 <field name="res_model">lunch.cashmove</field>
216                 <field name="search_view_id" ref="view_lunch_cashmove_filter"/>
217                 <field name="context">{"search_default_Today":1}</field>
218         </record>
219
220         <menuitem name="Cash Moves" parent="menu_lunch"
221             id="menu_lunch_cashmove_form"
222             action="action_lunch_cashmove_form" />
223
224 <!-- Lunch Category Form view  -->
225
226         <record model="ir.ui.view" id="view_lunch_category_form">
227             <field name="name"> Category of product </field>
228             <field name="model">lunch.category</field>
229             <field name="arch" type="xml">
230                 <form string="Category">
231                     <separator string="Category related to Products" colspan="4"/>
232                     <field name="name" select="1"/>
233                 </form>
234             </field>
235         </record>
236
237 <!-- Lunch Category Tree view  -->
238
239         <record model="ir.ui.view" id="view_lunch_category_tree">
240             <field name="name">Category</field>
241             <field name="model">lunch.category</field>
242             <field name="type">tree</field>
243             <field name="arch" type="xml">
244                 <tree string="Order">
245                     <field name="name" select="1"/>
246                 </tree>
247             </field>
248         </record>
249
250 <!-- Lunch Category Action  -->
251
252         <record model="ir.actions.act_window" id="action_lunch_category_form">
253             <field name="name"> Product Categories </field>
254             <field name="res_model">lunch.category</field>
255         </record>
256
257 <!-- Lunch Product Form view  -->
258
259         <record model="ir.ui.view" id="view_lunch_product_form">
260             <field name="name">Products</field>
261             <field name="type">form</field>
262             <field name="model">lunch.product</field>
263             <field name="arch" type="xml">
264                 <form string="Products">
265                      <group col="6">
266                           <field name="name" select="1"/>
267                           <field name="category_id"/>
268                           <field name="price" />
269                      </group>
270                      <notebook colspan="4">
271                          <page string="General Information">
272                               <field name="active"/>
273                               <separator string="Description" colspan="4" />
274                               <field name="description" nolabel="1" colspan="4" />
275                           </page>
276                      </notebook>
277                 </form>
278             </field>
279         </record>
280
281 <!-- Lunch Product Tree view  -->
282
283         <record model="ir.ui.view" id="view_lunch_product_tree">
284             <field name="name">Products</field>
285             <field name="model">lunch.product</field>
286             <field name="type">tree</field>
287             <field name="arch" type="xml">
288                 <tree string="Products">
289                     <field name="name"/>
290                     <field name="category_id"/>
291                     <field name="price"/>
292                     <field name="description"/>
293                 </tree>
294             </field>
295         </record>
296
297 <!-- Lunch Product Search view  -->
298
299         <record model="ir.ui.view" id="view_lunch_product_search">
300             <field name="name">Products</field>
301             <field name="model">lunch.product</field>
302             <field name="type">search</field>
303             <field name="arch" type="xml">
304                 <search string="Products">
305                     <field name="name" />
306                     <field name="category_id"/>
307                     <field name="price"/>
308                 </search>
309             </field>
310         </record>
311
312 <!-- Lunch Product Action  -->
313
314         <record model="ir.actions.act_window" id="action_lunch_product_form">
315             <field name="name">Products</field>
316             <field name="res_model">lunch.product</field>
317             <field name="view_type">form</field>
318             <field name="view_mode">tree,form</field>
319             <field name="view_id" ref="view_lunch_product_tree"/>
320             <field name="search_view_id" ref="view_lunch_product_search"/>
321         </record>
322
323         <menuitem name="Products"
324             parent="menu_lunch_category_root_configuration"
325             id="menu_lunch_product_form" action="action_lunch_product_form"
326             sequence="2" />
327
328         <menuitem name="Product Categories"
329             parent="menu_lunch_category_root_configuration"
330             id="menu_lunch_category_form"
331             action="action_lunch_category_form" sequence="1" />
332
333
334 <!-- Lunch Amount Tree view -->
335
336         <record model="ir.ui.view" id="view_report_lunch_amount_tree">
337             <field name="name">Lunch amount</field>
338             <field name="model">report.lunch.amount</field>
339             <field name="type">tree</field>
340             <field name="arch" type="xml">
341                 <tree string="Box Amount by User">
342                      <field name="date" invisible="1"/>
343                     <field name="year" invisible="1"/>
344                     <field name="day" invisible="1"/>
345                     <field name="month" invisible="1"/>
346                     <field name="box" select="1"/>
347                     <field name="user_id" select="1"/>
348                     <field name="amount" select="1" sum="Total box" />
349                 </tree>
350             </field>
351         </record>
352
353 <!-- Lunch Amount Form view -->
354
355         <record model="ir.ui.view" id="view_report_lunch_amount_form">
356             <field name="name">Lunch amount</field>
357             <field name="model">report.lunch.amount</field>
358             <field name="type">form</field>
359             <field name="arch" type="xml">
360                 <form string="Box Amount by User">
361                     <field name="user_id" select="1"/>
362                     <field name="box" select="1"/>
363                     <field name="amount" select="1"/>
364                 </form>
365             </field>
366         </record>
367
368 <!-- Lunch Amount Search view -->
369
370         <record model="ir.ui.view" id="view_report_lunch_amount_search">
371             <field name="name">Lunch amount</field>
372             <field name="model">report.lunch.amount</field>
373             <field name="type">search</field>
374             <field name="arch" type="xml">
375                 <search string="Box Amount by User">
376                     <group>
377                         <filter icon="terp-go-year" string="  Year  " name="year"
378                         domain="[('date','&lt;=', time.strftime('%%Y-%%m-%%d')),('date','&gt;=',time.strftime('%%Y-01-01'))]"
379                         help="Box amount in current year"/>
380                     <separator orientation="vertical"/>
381
382                         <filter icon="terp-go-month" string="   Month   "
383                                 name="month"
384                                 domain="[('date','&lt;=',(datetime.date.today()+relativedelta(day=31)).strftime('%%Y-%%m-%%d')),('date','&gt;=',(datetime.date.today()-relativedelta(day=1)).strftime('%%Y-%%m-%%d'))]"
385                                 help="Box amount in current month"/>
386                         <filter icon="terp-go-month"
387                          string="    Month-1    "
388                          domain="[('date','&lt;=', (datetime.date.today() - relativedelta(day=31, months=1)).strftime('%%Y-%%m-%%d')),('date','&gt;=',(datetime.date.today() - relativedelta(day=1,months=1)).strftime('%%Y-%%m-%%d'))]"
389                          help="Box amount in last month"/>
390                     <separator orientation="vertical"/>
391                         <field name="user_id"/>
392                         <field name="box"/>
393                         <field name="amount"/>
394                     </group>
395                     <newline/>
396                     <group expand="0" string="Group By...">
397                         <filter string="Box" icon="terp-dolar" context="{'group_by':'box'}"/>
398                     </group>
399                 </search>
400             </field>
401         </record>
402
403 <!-- Lunch Amount Action -->
404
405         <record model="ir.actions.act_window" id="action_report_lunch_amount_tree">
406             <field name="name">Cash Position by User</field>
407             <field name="res_model">report.lunch.amount</field>
408             <field name="view_type">form</field>
409             <field name="view_mode">tree,form</field>
410             <field name="context">{'search_default_year': 1,"search_default_month":1}</field>
411             <field name="search_view_id" ref="view_report_lunch_amount_search"/>
412         </record>
413
414         <menuitem name="Cash Position by User"
415             parent="menu_lunch_reporting_order"
416             action="action_report_lunch_amount_tree"
417             id="menu_lunch_report_amount_tree" />
418
419     </data>
420 </openerp>
421
422