Quellcode durchsuchen

[ADD] Restricciones y Administracion de actividades

Rodney Enciso Arias vor 7 Jahren
Ursprung
Commit
ad93ffdd40
3 geänderte Dateien mit 64 neuen und 0 gelöschten Zeilen
  1. 4 0
      model/proyect_car.py
  2. BIN
      model/proyect_car.pyc
  3. 60 0
      views/project.xml

+ 4 - 0
model/proyect_car.py

@@ -27,6 +27,8 @@ class CarCarModify(models.Model):
         for project in self:
             if project.state in ('close'):
                 raise Warning('No puedes borrar un proyecto en estado cerrado')
+            if len(project.task_ids) > 0:
+                raise Warning('No puedes borrar un proyecto que tiene tareas')
         return super(CarCarModify, self).unlink()
 
     def on_change_vehicle(self):
@@ -47,4 +49,6 @@ class CarWorkshopModify(models.Model):
         for task in self:
             if task.state in ('workshop_create_invoices'):
                 raise Warning(('No puedes borrar una tarea ya facturada'))
+            if len(task.planned_works)>0:
+                raise Warning(('No puedes borrar una tarea que tiene actividades'))
         return super(CarWorkshopModify, self).unlink()

BIN
model/proyect_car.pyc


+ 60 - 0
views/project.xml

@@ -21,5 +21,65 @@
                 </field>
             </field>
         </record>
+
+        <record id="planned_works_tree" model="ir.ui.view">
+           <field name="name">planned.works.tree</field>
+            <field name="model">planned.work</field>
+            <field name="arch" type="xml">
+                <tree string="tareas">
+                    <field name="responsible" string="Responsable"/>
+                    <field name="work_id" string="Trabajo"/>
+                    <field name="planned_work" string="Actividad"/>
+                    <field name="work_date" string="Fecha"/>
+                    <field name="work_cost" string="Costo"/>
+                    <field name="completed" string="Estado"/>
+                </tree>
+            </field>
+        </record>
+
+        <!-- <record id="planned_works_form" model="ir.ui.view">
+           <field name="name">planned.works.form</field>
+            <field name="model">planned.work</field>
+            <field name="inherit_id" ref="eiru_base_for_services.planned_work_form_view"/>
+            <field name="arch" type="xml">
+                
+            </field>
+        </record> -->
+
+        <record id="view_planned_work_filter" model="ir.ui.view">
+            <field name="name">planned.work.filter</field>
+            <field name="model">planned.work</field>
+            <field name="arch" type="xml">
+                <search string="Search Work">
+                    <field name="work_id" string="Tarea"/>
+                    <filter string="Terminados" name="completed" domain="[('completed', '=',True)]"/>
+                    <filter string="Pendientes" name="Pending" domain="[('completed', '=',False)]"/>
+                    <filter string="Hoy" domain="[('work_date', '&gt;=', datetime.datetime.now().strftime('%Y-%m-%d 00:00:00')),('work_date', '&lt;=',datetime.datetime.now().strftime('%Y-%m-%d 23:23:59'))]"/>
+                    <filter string="Ayer" domain="[('work_date','&lt;=', (datetime.date.today()-relativedelta(days=1)).strftime('%%Y-%%m-%%d')),('work_date','&gt;=',(datetime.date.today()-relativedelta(days=1)).strftime('%%Y-%%m-%%d'))]"/>
+                    <filter string="Esta semana" domain="[('work_date', '&gt;=', ((context_today()+relativedelta(weeks=-1, days=1, weekday=0)).strftime('%%Y-%%m-%%d'))),('work_date', '&lt;=', ((context_today()+relativedelta(weeks=0, weekday=6)).strftime('%%Y-%%m-%%d')))]"/>
+                    <filter string="Mes actual" domain="[('work_date','&lt;',(context_today()+relativedelta(months=1)).strftime('%%Y-%%m-01')), ('work_date','&gt;=',time.strftime('%%Y-%%m-01'))]"/>
+                    <filter string="Mes pasado" domain="[('work_date','&gt;=',(context_today()-relativedelta(months=1)).strftime('%%Y-%%m-01')),('work_date','&lt;',time.strftime('%%Y-%%m-01'))]"/>
+                    <separator/>
+                    <separator/>
+                    <group expand="0" string="Agrupar por ">
+                        <filter string="Responsale" name="responsible" context="{'group_by':'responsible'}"/>
+                        <filter string="Tarea" name="work_id" context="{'group_by':'work_id'}"/>
+                    </group>
+                </search>
+            </field>
+        </record>
+
+         <record id="planned_works_action" model="ir.actions.act_window">
+            <field name="name">Todas las actividades</field>
+            <field name="res_model">planned.work</field>
+            <!-- <field name="view_type">form</field> -->
+             <field name="view_mode">tree,form</field>
+        </record>
+
+
+        <menuitem name="Control de Actividades" parent="eiru_base_for_services.main_workshop_menu" id="planned_work_menu" sequence="3"/>
+
+        <menuitem action="planned_works_action" id="menu_planned_works_action" parent="planned_work_menu"/>
+
     </data>
 </openerp>