27
27
from tools.translate import _
28
28
from osv import osv, fields
30
('draft', _('Draft')),
32
('cancel', _('Canceled')),
30
43
class skeleton(osv.osv):
32
45
#_inherit = 'res.partner'
33
46
_description = _('Skeleton Module')
35
_columns = {'name': fields.char(_('Name'), size=64, select=True, required=True, readonly=True, states={'draft':[('readonly',False)]}, help=_('Name Help Strin')),
36
'state': fields.selection([
37
('draft', _('Draft')),
39
('cancel', _('Canceled')),
40
], 'State', select=True,
48
_columns = {'name': fields.char(_('Name'), size=64, select=True, required=True, readonly=True, states={'draft':[('readonly',False)]}, help=_('Name Help String')),
49
'state': fields.selection(STATES, _('State'), select=True, required=True, readonly=True,
41
50
help=_(' * The \'Draft\' state is used when a user is encoding. \
42
51
\n* The \'Open\' state is used when user confirm this. \
43
52
\n* The \'Canceled\' state is used when user cancel this.')),
44
'partner_id': fields.many2one('res.partner', _('Partner'), select=True, required=True, readonly=True, states={'draft':[('readonly',False)]}),
53
'priority': fields.selection(PRIORITIES, _('Priority'), select=True, required=True, readonly=True, states={'draft':[('readonly',False)]}, help=_('Priority Help String')),
54
'partner_id': fields.many2one('res.partner', _('Partner'), select=True, required=True, readonly=True, states={'draft':[('readonly',False)]}, help=_('Partner Help String')),
45
55
'date_start' : fields.date(_('Initial Data'), select=True, required=True, readonly=True, states={'draft':[('readonly',False)]}, help=_('Initial Data Help String')),
46
56
'date_stop' : fields.date(_('Final Data'), select=True, readonly=True, states={'draft':[('readonly',False)]}, help=_('Final Data Help String')),
47
57
'amount': fields.float(_('Amount'), select=True, readonly=True, states={'draft':[('readonly',False)]}, help=_('Amount Help String')),
52
62
_defaults = {'state': 'draft',
54
64
'date_start': time.strftime('%Y-%m-%d'),
56
_order = 'date_start, name, amount desc'
67
_order = 'priority asc, date_start, name, amount desc'
58
69
def wf_done (self, cr, uid, ids, context={}):
59
70
obj = self.browse(cr, uid, ids[0], context)
72
83
def action_done (self, cr, uid, ids, context={}):
73
84
"""Mark the state as done
85
This method is called by kanban only and must trigger workflow
75
87
obj = self.browse(cr, uid, ids[0], context)
76
88
wf_service = netsvc.LocalService("workflow")
80
92
def action_cancel (self, cr, uid, ids, context={}):
81
93
"""Mark the state as cancel
94
This method is called by kanban only and must trigger workflow
83
96
obj = self.browse(cr, uid, ids[0], context)
84
97
wf_service = netsvc.LocalService("workflow")