Statistics
| Branch: | Tag: | Revision:

root / snf-astakos-app / astakos / quotaholder_app / migrations / 0008_reduce_bigint.py @ f6ff3033

History | View | Annotate | Download (4.5 kB)

1 41e92ef2 Giorgos Korfiatis
# -*- coding: utf-8 -*-
2 41e92ef2 Giorgos Korfiatis
import datetime
3 41e92ef2 Giorgos Korfiatis
from south.db import db
4 41e92ef2 Giorgos Korfiatis
from south.v2 import DataMigration
5 41e92ef2 Giorgos Korfiatis
from django.db import models
6 41e92ef2 Giorgos Korfiatis
7 41e92ef2 Giorgos Korfiatis
MAX = 2**63 - 1
8 41e92ef2 Giorgos Korfiatis
9 41e92ef2 Giorgos Korfiatis
class Migration(DataMigration):
10 41e92ef2 Giorgos Korfiatis
11 41e92ef2 Giorgos Korfiatis
    def forwards(self, orm):
12 41e92ef2 Giorgos Korfiatis
        orm.Provision.objects.filter(quantity__gt=MAX).update(quantity=MAX)
13 41e92ef2 Giorgos Korfiatis
        orm.Holding.objects.filter(usage_min__gt=MAX).update(usage_min=MAX)
14 41e92ef2 Giorgos Korfiatis
        orm.Holding.objects.filter(usage_max__gt=MAX).update(usage_max=MAX)
15 41e92ef2 Giorgos Korfiatis
        orm.Holding.objects.filter(limit__gt=MAX).update(limit=MAX)
16 41e92ef2 Giorgos Korfiatis
        orm.ProvisionLog.objects.filter(delta_quantity__gt=MAX).\
17 41e92ef2 Giorgos Korfiatis
            update(delta_quantity=MAX)
18 41e92ef2 Giorgos Korfiatis
        orm.ProvisionLog.objects.filter(usage_min__gt=MAX).\
19 41e92ef2 Giorgos Korfiatis
            update(usage_min=MAX)
20 41e92ef2 Giorgos Korfiatis
        orm.ProvisionLog.objects.filter(usage_max__gt=MAX).\
21 41e92ef2 Giorgos Korfiatis
            update(usage_max=MAX)
22 41e92ef2 Giorgos Korfiatis
        orm.ProvisionLog.objects.filter(limit__gt=MAX).update(limit=MAX)
23 41e92ef2 Giorgos Korfiatis
24 41e92ef2 Giorgos Korfiatis
    def backwards(self, orm):
25 41e92ef2 Giorgos Korfiatis
        "Write your backwards methods here."
26 41e92ef2 Giorgos Korfiatis
27 41e92ef2 Giorgos Korfiatis
    models = {
28 41e92ef2 Giorgos Korfiatis
        'quotaholder_app.commission': {
29 41e92ef2 Giorgos Korfiatis
            'Meta': {'object_name': 'Commission'},
30 41e92ef2 Giorgos Korfiatis
            'clientkey': ('django.db.models.fields.CharField', [], {'max_length': '4096'}),
31 41e92ef2 Giorgos Korfiatis
            'issue_datetime': ('django.db.models.fields.DateTimeField', [], {}),
32 41e92ef2 Giorgos Korfiatis
            'name': ('django.db.models.fields.CharField', [], {'default': "''", 'max_length': '4096'}),
33 41e92ef2 Giorgos Korfiatis
            'serial': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'})
34 41e92ef2 Giorgos Korfiatis
        },
35 41e92ef2 Giorgos Korfiatis
        'quotaholder_app.holding': {
36 41e92ef2 Giorgos Korfiatis
            'Meta': {'unique_together': "(('holder', 'source', 'resource'),)", 'object_name': 'Holding'},
37 41e92ef2 Giorgos Korfiatis
            'holder': ('django.db.models.fields.CharField', [], {'max_length': '4096', 'db_index': 'True'}),
38 41e92ef2 Giorgos Korfiatis
            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
39 41e92ef2 Giorgos Korfiatis
            'limit': ('snf_django.lib.db.fields.IntDecimalField', [], {'max_digits': '38', 'decimal_places': '0'}),
40 41e92ef2 Giorgos Korfiatis
            'resource': ('django.db.models.fields.CharField', [], {'max_length': '4096'}),
41 41e92ef2 Giorgos Korfiatis
            'source': ('django.db.models.fields.CharField', [], {'max_length': '4096', 'null': 'True'}),
42 41e92ef2 Giorgos Korfiatis
            'usage_max': ('snf_django.lib.db.fields.IntDecimalField', [], {'default': '0', 'max_digits': '38', 'decimal_places': '0'}),
43 41e92ef2 Giorgos Korfiatis
            'usage_min': ('snf_django.lib.db.fields.IntDecimalField', [], {'default': '0', 'max_digits': '38', 'decimal_places': '0'})
44 41e92ef2 Giorgos Korfiatis
        },
45 41e92ef2 Giorgos Korfiatis
        'quotaholder_app.provision': {
46 41e92ef2 Giorgos Korfiatis
            'Meta': {'object_name': 'Provision'},
47 41e92ef2 Giorgos Korfiatis
            'holder': ('django.db.models.fields.CharField', [], {'max_length': '4096', 'db_index': 'True'}),
48 41e92ef2 Giorgos Korfiatis
            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
49 41e92ef2 Giorgos Korfiatis
            'quantity': ('snf_django.lib.db.fields.IntDecimalField', [], {'max_digits': '38', 'decimal_places': '0'}),
50 41e92ef2 Giorgos Korfiatis
            'resource': ('django.db.models.fields.CharField', [], {'max_length': '4096'}),
51 41e92ef2 Giorgos Korfiatis
            'serial': ('django.db.models.fields.related.ForeignKey', [], {'related_name': "'provisions'", 'to': "orm['quotaholder_app.Commission']"}),
52 41e92ef2 Giorgos Korfiatis
            'source': ('django.db.models.fields.CharField', [], {'max_length': '4096', 'null': 'True'})
53 41e92ef2 Giorgos Korfiatis
        },
54 41e92ef2 Giorgos Korfiatis
        'quotaholder_app.provisionlog': {
55 41e92ef2 Giorgos Korfiatis
            'Meta': {'object_name': 'ProvisionLog'},
56 41e92ef2 Giorgos Korfiatis
            'delta_quantity': ('snf_django.lib.db.fields.IntDecimalField', [], {'max_digits': '38', 'decimal_places': '0'}),
57 41e92ef2 Giorgos Korfiatis
            'holder': ('django.db.models.fields.CharField', [], {'max_length': '4096'}),
58 41e92ef2 Giorgos Korfiatis
            'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
59 41e92ef2 Giorgos Korfiatis
            'issue_time': ('django.db.models.fields.CharField', [], {'max_length': '4096'}),
60 41e92ef2 Giorgos Korfiatis
            'limit': ('snf_django.lib.db.fields.IntDecimalField', [], {'max_digits': '38', 'decimal_places': '0'}),
61 41e92ef2 Giorgos Korfiatis
            'log_time': ('django.db.models.fields.CharField', [], {'max_length': '4096'}),
62 41e92ef2 Giorgos Korfiatis
            'name': ('django.db.models.fields.CharField', [], {'max_length': '4096'}),
63 41e92ef2 Giorgos Korfiatis
            'reason': ('django.db.models.fields.CharField', [], {'max_length': '4096'}),
64 41e92ef2 Giorgos Korfiatis
            'resource': ('django.db.models.fields.CharField', [], {'max_length': '4096'}),
65 41e92ef2 Giorgos Korfiatis
            'serial': ('django.db.models.fields.BigIntegerField', [], {}),
66 41e92ef2 Giorgos Korfiatis
            'source': ('django.db.models.fields.CharField', [], {'max_length': '4096', 'null': 'True'}),
67 41e92ef2 Giorgos Korfiatis
            'usage_max': ('snf_django.lib.db.fields.IntDecimalField', [], {'max_digits': '38', 'decimal_places': '0'}),
68 41e92ef2 Giorgos Korfiatis
            'usage_min': ('snf_django.lib.db.fields.IntDecimalField', [], {'max_digits': '38', 'decimal_places': '0'})
69 41e92ef2 Giorgos Korfiatis
        }
70 41e92ef2 Giorgos Korfiatis
    }
71 41e92ef2 Giorgos Korfiatis
72 41e92ef2 Giorgos Korfiatis
    complete_apps = ['quotaholder_app']
73 41e92ef2 Giorgos Korfiatis
    symmetrical = True