~tkodev/tko-account-invoice-editable-inline-with-layout/trunk

« back to all changes in this revision

Viewing changes to skeleton.py

  • Committer: cma
  • Date: 2012-04-23 19:00:41 UTC
  • Revision ID: cma@thinkopensolutions.com-20120423190041-guyc3ctc9ovceyiz
added search view

Show diffs side-by-side

added added

removed removed

Lines of Context:
26
26
import netsvc
27
27
from tools.translate import _
28
28
from osv import osv, fields
 
29
STATES = [
 
30
    ('draft', _('Draft')),
 
31
    ('done', _('Done')),
 
32
    ('cancel', _('Canceled')),
 
33
    ]
 
34
 
 
35
PRIORITIES = [
 
36
    ('5', _('Highest')),
 
37
    ('4', _('High')),
 
38
    ('3', _('Normal')),
 
39
    ('2', _('Low')),
 
40
    ('1', _('Lowest')),
 
41
    ]
29
42
 
30
43
class skeleton(osv.osv):
31
44
    _name = 'skeleton'
32
45
    #_inherit = 'res.partner'
33
46
    _description = _('Skeleton Module')
34
47
    
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')),
38
 
                    ('done', _('Done')),
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',
53
63
                 'amount': 0.0,
54
64
                 'date_start': time.strftime('%Y-%m-%d'),
 
65
                 'priority': '3',
55
66
                 }
56
 
    _order = 'date_start, name, amount desc'
 
67
    _order = 'priority asc, date_start, name, amount desc'
57
68
    
58
69
    def wf_done (self, cr, uid, ids, context={}):
59
70
        obj = self.browse(cr, uid, ids[0], context)
71
82
    
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
74
86
        """
75
87
        obj = self.browse(cr, uid, ids[0], context)
76
88
        wf_service = netsvc.LocalService("workflow")
79
91
    
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
82
95
        """
83
96
        obj = self.browse(cr, uid, ids[0], context)
84
97
        wf_service = netsvc.LocalService("workflow")