Revision 1d2b20aa snf-astakos-app/astakos/quotaholder/models.py

b/snf-astakos-app/astakos/quotaholder/models.py
39 39
from django.db import transaction
40 40
from synnefo.lib.db.managers import ForUpdateManager
41 41

  
42
class Holder(Model):
43

  
44
    attribute   =   CharField(max_length=4096, primary_key=True)
45
    intval      =   BigIntegerField()
46
    strval      =   CharField(max_length=4096)
47

  
48
    objects     =   ForUpdateManager()
49

  
50
class Entity(Model):
51

  
52
    entity      =   CharField(max_length=4096, primary_key=True)
53
    owner       =   ForeignKey('self', to_field='entity',
54
                               related_name='entities')
55
    key         =   CharField(max_length=4096, null=False)
56

  
57
    objects     =   ForUpdateManager()
58

  
59 42
class Policy(Model):
60 43

  
61 44
    policy          =   CharField(max_length=4096, primary_key=True)
......
68 51

  
69 52
class Holding(Model):
70 53

  
71
    entity      =   ForeignKey(Entity, to_field='entity')
54
    entity      =   CharField(max_length=4096, db_index=True)
72 55
    resource    =   CharField(max_length=4096, null=False)
73 56

  
74 57
    policy      =   ForeignKey(Policy, to_field='policy')
......
98 81
class Commission(Model):
99 82

  
100 83
    serial      =   AutoField(primary_key=True)
101
    entity      =   ForeignKey(Entity, to_field='entity')
84
    entity      =   CharField(max_length=4096, db_index=True)
102 85
    name        =   CharField(max_length=4096, null=True)
103 86
    clientkey   =   CharField(max_length=4096, null=False)
104 87
    issue_time  =   CharField(max_length=24, default=now)
......
111 94
                                to_field='serial',
112 95
                                related_name='provisions'   )
113 96

  
114
    entity      =   ForeignKey(Entity, to_field='entity')
97
    entity      =   CharField(max_length=4096, db_index=True)
115 98
    resource    =   CharField(max_length=4096, null=False)
116 99
    quantity    =   intDecimalField()
117 100

  
......
222 205
def db_get_holding(*args, **kwargs):
223 206
    return _get(Holding, *args, **kwargs)
224 207

  
225
def db_get_entity(*args, **kwargs):
226
    return _get(Entity, *args, **kwargs)
227

  
228 208
def db_get_policy(*args, **kwargs):
229 209
    return _get(Policy, *args, **kwargs)
230 210

  

Also available in: Unified diff