improvement

bzr revid: fp@tinyerp.com-20081029130353-852nevqid0dpe7xn
This commit is contained in:
Fabien Pinckaers 2008-10-29 14:03:53 +01:00
parent 72d240c20b
commit 3be4517a6f
6 changed files with 49 additions and 81 deletions

View File

@ -1371,7 +1371,7 @@
<separator string="" colspan="4"/>
<label string="" colspan="2"/>
<group col="2" colspan="2">
<button icon="gtk-cancel" special="cancel" string="Don't Continue" name="action_cancel" type="object"/>
<button icon="gtk-cancel" special="cancel" string="Skip" name="action_cancel" type="object"/>
<button icon="gtk-ok" name="action_create" string="Continue" type="object"/>
</group>
</form>

View File

@ -1136,6 +1136,11 @@ class StockMove(osv.osv):
_columns = {
'procurements': fields.one2many('mrp.procurement', 'move_id', 'Procurements'),
}
def copy(self, cr, uid, id, default=None, context=None):
default = default or {}
default['procurements'] = []
return super(StockMove, self).copy(cr, uid, id, default, context)
def _action_explode(self, cr, uid, move, context={}):
if move.product_id.supply_method=='produce' and move.product_id.procure_method=='make_to_order':
bis = self.pool.get('mrp.bom').search(cr, uid, [

View File

@ -39,7 +39,7 @@
</record>
<record id="process_node_opentask0" model="process.node">
<field name="menu_id" ref="project.menu_action_view_task6"/>
<field name="menu_id" ref="menu_tasks_yours_prog"/>
<field name="model_id" ref="project.model_project_task"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Open task&quot;&quot;&quot;" name="name"/>
@ -152,4 +152,4 @@
</record>
</data>
</openerp>
</openerp>

View File

@ -137,7 +137,7 @@ class project(osv.osv):
'warn_footer': fields.text('Mail Footer', help="Footer added at the beginning of the email for the warning message sent to the customer when a task is closed."),
'notes': fields.text('Notes', help="Internal description of the project."),
'timesheet_id': fields.many2one('hr.timesheet.group', 'Working Time', help="Timetable working hours to adjust the gantt diagram report"),
'state': fields.selection([('template', 'Template'), ('open', 'Open'), ('pending', 'Pending'), ('cancelled', 'Cancelled'), ('done', 'Done')], 'State', required=True, readonly=True),
'state': fields.selection([('template', 'Template'), ('open', 'Running'), ('pending', 'Pending'), ('cancelled', 'Cancelled'), ('done', 'Done')], 'State', required=True, readonly=True),
}
_defaults = {
@ -289,8 +289,8 @@ class task(osv.osv):
'priority' : fields.selection([('4','Very Low'), ('3','Low'), ('2','Medium'), ('1','Urgent'), ('0','Very urgent')], 'Importance'),
'sequence': fields.integer('Sequence'),
'type': fields.many2one('project.task.type', 'Type'),
'state': fields.selection([('draft', 'Draft'),('open', 'Open'),('pending', 'Pending'), ('cancelled', 'Cancelled'), ('done', 'Done')], 'Status', readonly=True, required=True),
'date_start': fields.datetime('Date Opened'),
'state': fields.selection([('draft', 'Draft'),('open', 'In Progress'),('pending', 'Pending'), ('cancelled', 'Cancelled'), ('done', 'Done')], 'Status', readonly=True, required=True),
'date_start': fields.datetime('Starting Date'),
'date_deadline': fields.datetime('Deadline'),
'date_close': fields.datetime('Date Closed', readonly=True),
'project_id': fields.many2one('project.project', 'Project', ondelete='cascade'),
@ -375,7 +375,7 @@ class task(osv.osv):
project = task.project_id
if project and project.warn_manager and project.manager.id and (project.manager.id != uid):
request.create(cr, uid, {
'name': "Task '%s' reopened" % task.name,
'name': "Task '%s' set in progress" % task.name,
'state': 'waiting',
'act_from': uid,
'act_to': project.manager.id,

View File

@ -33,7 +33,7 @@
<group col="9" colspan="8">
<field name="state"/>
<button name="set_template" string="Set as Template" type="object" states="open"/>
<button name="set_open" string="Reopen Project" type="object" states="pending,cancelled,done"/>
<button name="set_open" string="Reactivate Project" type="object" states="pending,cancelled,done"/>
<button name="set_pending" string="Pending" type="object" states="open"/>
<button name="set_cancel" string="Cancel" type="object" states="open,pending"/>
<button name="set_done" string="Done" type="object" states="open,pending"/>
@ -89,36 +89,10 @@
</tree>
</field>
</record>
<record id="open_view_all_project" model="ir.actions.act_window">
<field name="name">All Projects</field>
<field name="res_model">project.project</field>
<field name="view_type">tree</field>
<field name="domain">[('parent_id','=',False)]</field>
<field name="view_id" ref="view_project"/>
</record>
<menuitem action="open_view_all_project" id="menu_all_project" parent="project.menu_main"/>
<record id="open_view_all_project_unclosed" model="ir.actions.act_window">
<field name="name">Unclosed projects</field>
<field name="res_model">project.project</field>
<field name="view_type">tree</field>
<field name="domain">[('parent_id','=',False),('state','&lt;&gt;','cancelled'),('state','&lt;&gt;','done')]</field>
<field name="view_id" ref="view_project"/>
</record>
<menuitem action="open_view_all_project_unclosed" id="menu_all_project_unclosed" parent="project.menu_all_project"/>
<record id="open_view_all_project_unclosed_open" model="ir.actions.act_window">
<field name="name">Open projects</field>
<field name="res_model">project.project</field>
<field name="view_type">tree</field>
<field name="domain">[('parent_id','=',False),('state','=','open')]</field>
<field name="view_id" ref="view_project"/>
</record>
<menuitem action="open_view_all_project_unclosed_open" id="menu_all_project_unclosed_open" parent="project.menu_all_project_unclosed"/>
<menuitem id="menu_all_project" parent="project.menu_main" name="Projects"/>
<record id="open_view_project_open" model="ir.actions.act_window">
<field name="name">Open projects</field>
<field name="name">Running projects</field>
<field name="res_model">project.project</field>
<field name="view_type">form</field>
<field name="domain">[('state','=','open')]</field>
@ -142,7 +116,7 @@
<field name="view_mode">form,tree,calendar</field>
<field name="view_id" eval="False"/>
</record>
<menuitem action="open_view_project" id="menu_open_view_project" parent="menu_all_project"/>
<menuitem action="open_view_project" id="menu_open_view_project" parent="menu_all_project" sequence="50"/>
<record id="view_task_work_form" model="ir.ui.view">
<field name="name">project.task.work.form</field>
@ -189,33 +163,36 @@
</field>
</record>
<record id="open_view_my_project" model="ir.actions.act_window">
<field name="name">My projects</field>
<field name="name">My Projects</field>
<field name="res_model">project.project</field>
<field name="view_type">tree</field>
<field name="domain">[('parent_id','=',False),('manager', '=', uid)]</field>
<field name="view_type">form</field>
<field name="domain">[('manager', '=', uid)]</field>
<field name="view_id" ref="view_my_project"/>
</record>
<menuitem action="open_view_my_project" id="menu_open_view_my_project" parent="project.menu_main"/>
<menuitem action="open_view_my_project" id="menu_open_view_my_project" parent="menu_open_view_project"/>
<record id="open_view_my_project_open_unclosed" model="ir.actions.act_window">
<field name="name">My unclosed projects</field>
<record id="open_view_my_project_my_run" model="ir.actions.act_window">
<field name="name">My Running Projects</field>
<field name="res_model">project.project</field>
<field name="view_type">tree</field>
<field name="domain">[('parent_id','=',False),('manager', '=', uid),('state','&lt;&gt;','cancelled'),('state','&lt;&gt;','done')]</field>
<field name="view_type">form</field>
<field name="domain">[('manager', '=', uid),('state','=','open')]</field>
<field name="view_id" ref="view_my_project"/>
</record>
<menuitem action="open_view_my_project_open_unclosed" id="menu_open_view_my_project_open_unclosed" parent="project.menu_open_view_my_project"/>
<menuitem
action="open_view_my_project_my_run"
id="menu_open_view_my_project_my_run"
parent="menu_open_view_my_project"/>
<record id="open_view_my_project_open" model="ir.actions.act_window">
<field name="name">My open projects</field>
<field name="name">Projects Structure</field>
<field name="res_model">project.project</field>
<field name="view_type">tree</field>
<field name="domain">[('parent_id','=',False),('manager', '=', uid),('state','=','open')]</field>
<field name="view_id" ref="view_my_project"/>
<field name="domain">[('parent_id','=',False)]</field>
</record>
<menuitem action="open_view_my_project_open" id="menu_open_view_my_project_open" parent="project.menu_open_view_my_project_open_unclosed"/>
<menuitem
action="open_view_my_project_open"
id="menu_open_view_my_project_open"
parent="project.menu_main"/>
<!-- Task -->
<record id="view_task_form2" model="ir.ui.view">
@ -249,8 +226,8 @@
<group col="11" colspan="4">
<field name="state" select="1"/>
<button name="do_draft" states="open" string="Draft" type="object"/>
<button name="do_open" states="pending,draft" string="Open" type="object"/>
<button name="do_reopen" states="done,cancelled" string="Re-open" type="object"/>
<button name="do_open" states="pending,draft" string="Set In Progress" type="object"/>
<button name="do_reopen" states="done,cancelled" string="Reactivate" type="object"/>
<button name="do_pending" states="open" string="Pending" type="object"/>
<button groups="base.group_extended" name="%(wizard_delegate_task)d" states="pending,open" string="Delegate" type="action"/>
<button name="%(wizard_close_task)d" states="pending,open" string="Done" type="action"/>
@ -379,15 +356,6 @@
</record>
<menuitem action="action_view_task5_pending" id="menu_tasks_yours_pending" parent="menu_action_view_task4"/>
<record id="action_view_task5" model="ir.actions.act_window">
<field name="name">My Open Tasks</field>
<field name="res_model">project.task</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form,calendar,graph</field>
<field name="domain">[('user_id', '=', uid),('state','=','open')]</field>
</record>
<menuitem action="action_view_task5" id="menu_tasks_yours" parent="menu_action_view_task4"/>
<record id="action_view_task5_prog" model="ir.actions.act_window">
<field name="name">My Tasks in Progress</field>
<field name="res_model">project.task</field>
@ -405,15 +373,6 @@
</record>
<menuitem action="action_view_task_new" id="menu_action_view_task_new" parent="menu_action_view_task4"/>
<record id="action_view_task6" model="ir.actions.act_window">
<field name="name">Open Tasks</field>
<field name="res_model">project.task</field>
<field name="view_type">form</field>
<field name="view_mode">tree,form,calendar,graph</field>
<field name="domain">[('state', '=', 'open')]</field>
</record>
<menuitem action="action_view_task6" id="menu_action_view_task6" parent="project.menu_action_view_task"/>
<record id="action_view_task6_prog" model="ir.actions.act_window">
<field name="name">Tasks in Progress</field>
<field name="res_model">project.task</field>
@ -502,7 +461,7 @@
<act_window
domain="[('project_id', '=', active_id),('state', '&lt;&gt;', 'cancelled'),('state', '&lt;&gt;', 'done')]"
id="act_project_project_2_project_task_opened"
name="Open Tasks"
name="Tasks in Progress"
res_model="project.task"
src_model="project.project"
view_mode="tree,form,calendar,graph"

View File

@ -456,19 +456,22 @@ class sale_order(osv.osv):
write_cancel_ids = []
for order in self.browse(cr, uid, ids, context={}):
for line in order.order_line:
if line.procurement_id and (line.procurement_id.state != 'done') and (line.state!='done'):
if (not line.procurement_id) or (line.procurement_id.state=='done') or (line.procurement_id.move_id and line.procurement_id.move_id.state=='done'):
finished = True
else:
finished = False
if line.procurement_id and line.procurement_id.state == 'cancel':
canceled = True
if line.procurement_id and line.procurement_id.state <> 'cancel':
notcanceled = True
if line.procurement_id:
if (line.procurement_id.state == 'cancel') or (line.procurement_id.move_id and line.procurement_id.move_id.state=='cancel'):
canceled = True
if line.state != 'cancel':
write_cancel_ids.append(line.id)
else:
notcanceled = True
# if a line is finished (ie its procuremnt is done or it has not procuremernt and it
# is not already marked as done, mark it as being so...
if ((not line.procurement_id) or line.procurement_id.state == 'done') and line.state != 'done':
write_done_ids.append(line.id)
# ... same for canceled lines
if line.procurement_id and line.procurement_id.state == 'cancel' and line.state != 'cancel':
write_cancel_ids.append(line.id)
if write_done_ids:
self.pool.get('sale.order.line').write(cr, uid, write_done_ids, {'state': 'done'})
if write_cancel_ids:
@ -477,6 +480,7 @@ class sale_order(osv.osv):
if mode=='finished':
return finished
elif mode=='canceled':
return canceled
if notcanceled:
return False
return canceled