[FIX,IMP]:FIX:added missing sequence field in project.project IMP:Changes in tasks and phases according to working calendar of project(Rvo(OpenERP)
bzr revid: nch@tinyerp.com-20100211054646-n12zrnf10x70dryb
This commit is contained in:
commit
df5d21f63d
|
@ -120,6 +120,7 @@ class project(osv.osv):
|
|||
_columns = {
|
||||
'complete_name': fields.function(_complete_name, method=True, string="Project Name", type='char', size=250),
|
||||
'active': fields.boolean('Active', help="If the active field is set to true, it will allow you to hide the project without removing it."),
|
||||
'sequence': fields.integer('Sequence', help="Gives the sequence order when displaying a list of Projects."),
|
||||
'category_id': fields.many2one('account.analytic.account','Analytic Account', help="Link this project to an analytic account if you need financial management on projects. It enables you to connect projects with budgets, planning, cost and revenue analysis, timesheets on projects, etc."),
|
||||
'priority': fields.integer('Sequence'),
|
||||
'warn_manager': fields.boolean('Warn Manager', help="If you check this field, the project manager will receive a request each time a task is completed by his team."),
|
||||
|
@ -138,10 +139,11 @@ class project(osv.osv):
|
|||
# \n If it is to be reviewed then the state is \'Pending\'.\n When the project is completed the state is set to \'Done\'.'),
|
||||
'type_ids': fields.many2many('project.task.type', 'project_task_type_rel', 'project_id', 'type_id', 'Tasks Stages'),
|
||||
}
|
||||
|
||||
_order = "sequence"
|
||||
_defaults = {
|
||||
'active': lambda *a: True,
|
||||
'priority': lambda *a: 1,
|
||||
'sequence': lambda *a: 10,
|
||||
}
|
||||
def _check_dates(self, cr, uid, ids):
|
||||
leave = self.read(cr, uid, ids[0],['date_start','date'])
|
||||
|
|
|
@ -155,7 +155,7 @@ class wizard_compute_tasks(wizard.interface):
|
|||
for no in range(len(resource)):
|
||||
leaves = []
|
||||
resource_id = resource_pool.search(cr,uid,[('user_id','=',resource[no].id)])
|
||||
if resource_id:
|
||||
if resource_id and wktime_cal:
|
||||
# Getting list of leaves for specific resource
|
||||
leaves = leaves_resource(cr,uid,resource_id)
|
||||
resource_objs.append(classobj(str(resource[no].name),(Resource,),{'__doc__':resource[no].name,'__name__':resource[no].name,'vacation':tuple(leaves)}))
|
||||
|
@ -185,12 +185,11 @@ class wizard_compute_tasks(wizard.interface):
|
|||
|
||||
# Creating the project with all the tasks and resources
|
||||
def Project():
|
||||
resource = reduce(operator.or_,resource_objs)
|
||||
title = project.name
|
||||
start = date_start
|
||||
|
||||
resource = reduce(operator.or_,resource_objs)
|
||||
# If project has calendar
|
||||
if wktime_cal or leaves:
|
||||
if wktime_cal:
|
||||
working_days = wktime_cal
|
||||
vacation = tuple(leaves)
|
||||
|
||||
|
|
|
@ -79,13 +79,15 @@ def resource_list(cr,uid,obj):
|
|||
resource_pool = pool.get('resource.resource')
|
||||
resources = obj.resource_ids
|
||||
resource_objs = []
|
||||
leaves = []
|
||||
calendar_id = obj.project_id.resource_calendar_id
|
||||
for no in range(len(resources)):
|
||||
resource_id = resource_pool.search(cr,uid,[('id','=',resources[no].resource_id.id)])
|
||||
if resource_id:
|
||||
if resource_id and calendar_id:
|
||||
# Getting list of leaves for specific resource
|
||||
leaves = leaves_resource(cr,uid,resource_id)
|
||||
# Creating the faces.Resource object with resource specific efficiency and vacation
|
||||
resource_objs.append(classobj(str(resources[no].resource_id.name),(Resource,),{'__doc__':resources[no].resource_id.name,'__name__':resources[no].resource_id.name,'efficiency':resources[no].useability/100,'vacation':tuple(leaves)}))
|
||||
resource_objs.append(classobj(str(resources[no].resource_id.name),(Resource,),{'__doc__':resources[no].resource_id.name,'__name__':resources[no].resource_id.name,'efficiency':resources[no].useability/100,'vacation':tuple(leaves)}))
|
||||
return resource_objs
|
||||
|
||||
class wizard_compute_phases(wizard.interface):
|
||||
|
@ -185,7 +187,7 @@ class wizard_compute_phases(wizard.interface):
|
|||
start = start_date
|
||||
|
||||
# If project has working calendar else the default one would be considered
|
||||
if wktime_cal or leaves:
|
||||
if wktime_cal:
|
||||
working_days = wktime_cal
|
||||
vacation = tuple(leaves)
|
||||
|
||||
|
|
Loading…
Reference in New Issue