Ejemplo n.º 1
0
class Migration(migrations.Migration):

    initial = True

    dependencies = [
        ('store', '0004_auto_20201221_1257'),
    ]

    operations = [
        migrations.CreateModel(
            name='Booking',
            fields=[
                ('idbooking',
                 models.CharField(default=booking.models.random_string,
                                  max_length=10,
                                  primary_key=True,
                                  serialize=False)),
                ('start', models.DateField(blank='True', null=True)),
                ('end', models.DateField(blank='True', null=True)),
                ('harga_jual',
                 models.DecimalField(blank='True',
                                     decimal_places=0,
                                     max_digits=10,
                                     null=True)),
                ('tanggal_pemesanan', models.DateField(auto_now_add=True)),
                ('uang_jalan',
                 models.DecimalField(blank='True',
                                     decimal_places=0,
                                     max_digits=10,
                                     null=True)),
                ('parkir_bensin',
                 models.DecimalField(blank='True',
                                     decimal_places=0,
                                     max_digits=10,
                                     null=True)),
                ('note',
                 models.CharField(blank='True', max_length=15, null=True)),
                ('title', models.CharField(blank=True, max_length=15)),
                ('status_pembayaran',
                 models.CharField(blank='True',
                                  choices=[('pending', 'Pending'),
                                           ('dp', 'Down Payment'),
                                           ('full', 'Full Payment')],
                                  max_length=15,
                                  null=True)),
                ('resourceId',
                 models.ForeignKey(
                     null=True,
                     on_delete=django.db.models.deletion.SET_NULL,
                     to='store.Vechile')),
            ],
        ),
    ]
class Migration(migrations.Migration):

    dependencies = [
        ('booking', '0032_auto_20181106_0155'),
    ]

    operations = [
        migrations.AlterField(
            model_name='booking',
            name='check_in',
            field=models.DateField(default=django.utils.timezone.now),
        ),
        migrations.AlterField(
            model_name='booking',
            name='check_out',
            field=models.DateField(default=booking.models.one_day_hence),
        ),
    ]
class Migration(migrations.Migration):

    dependencies = [
        ('booking', '0010_auto_20190218_2118'),
    ]

    operations = [
        migrations.AlterField(
            model_name='booked',
            name='booked_from',
            field=models.DateField(null=True, validators=[booking.models.validate_date]),
        ),
        migrations.AlterField(
            model_name='booked',
            name='booked_to',
            field=models.DateField(null=True, validators=[booking.models.validate_date]),
        ),
    ]
Ejemplo n.º 4
0
class Migration(migrations.Migration):

    initial = True

    dependencies = [
        ('auth', '0011_update_proxy_permissions'),
    ]

    operations = [
        migrations.CreateModel(
            name='User',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('password',
                 models.CharField(max_length=128, verbose_name='password')),
                ('last_login',
                 models.DateTimeField(blank=True,
                                      null=True,
                                      verbose_name='last login')),
                ('is_superuser',
                 models.BooleanField(
                     default=False,
                     help_text=
                     'Designates that this user has all permissions without explicitly assigning them.',
                     verbose_name='superuser status')),
                ('username',
                 models.CharField(
                     error_messages={
                         'unique': 'A user with that username already exists.'
                     },
                     help_text=
                     'Required. 150 characters or fewer. Letters, digits and @/./+/-/_ only.',
                     max_length=150,
                     unique=True,
                     validators=[
                         django.contrib.auth.validators.
                         UnicodeUsernameValidator()
                     ],
                     verbose_name='username')),
                ('first_name',
                 models.CharField(blank=True,
                                  max_length=30,
                                  verbose_name='first name')),
                ('last_name',
                 models.CharField(blank=True,
                                  max_length=150,
                                  verbose_name='last name')),
                ('email',
                 models.EmailField(blank=True,
                                   max_length=254,
                                   verbose_name='email address')),
                ('is_staff',
                 models.BooleanField(
                     default=False,
                     help_text=
                     'Designates whether the user can log into this admin site.',
                     verbose_name='staff status')),
                ('is_active',
                 models.BooleanField(
                     default=True,
                     help_text=
                     'Designates whether this user should be treated as active. Unselect this instead of deleting accounts.',
                     verbose_name='active')),
                ('date_joined',
                 models.DateTimeField(default=django.utils.timezone.now,
                                      verbose_name='date joined')),
                ('groups',
                 models.ManyToManyField(
                     blank=True,
                     help_text=
                     'The groups this user belongs to. A user will get all permissions granted to each of their groups.',
                     related_name='user_set',
                     related_query_name='user',
                     to='auth.Group',
                     verbose_name='groups')),
                ('user_permissions',
                 models.ManyToManyField(
                     blank=True,
                     help_text='Specific permissions for this user.',
                     related_name='user_set',
                     related_query_name='user',
                     to='auth.Permission',
                     verbose_name='user permissions')),
            ],
            options={
                'verbose_name': 'user',
                'verbose_name_plural': 'users',
                'abstract': False,
            },
            managers=[
                ('objects', django.contrib.auth.models.UserManager()),
            ],
        ),
        migrations.CreateModel(
            name='Airport',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('code', models.CharField(max_length=3)),
                ('name', models.CharField(max_length=64)),
                ('city', models.CharField(max_length=64)),
                ('state', models.CharField(max_length=64)),
            ],
        ),
        migrations.CreateModel(
            name='Flight',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('date', models.DateField(default=datetime.date.today)),
                ('departureTime',
                 models.TimeField(default=datetime.time(12, 0))),
                ('arrivalTime',
                 models.TimeField(default=datetime.time(12, 0))),
                ('carrier', models.CharField(max_length=64)),
                ('duration', models.IntegerField(default=0)),
                ('price',
                 models.IntegerField(default=booking.models.random_num)),
                ('destination',
                 models.ForeignKey(null=True,
                                   on_delete=django.db.models.deletion.CASCADE,
                                   related_name='arrivals',
                                   to='booking.Airport')),
                ('origin',
                 models.ForeignKey(null=True,
                                   on_delete=django.db.models.deletion.CASCADE,
                                   related_name='departures',
                                   to='booking.Airport')),
            ],
        ),
        migrations.CreateModel(
            name='Hotel',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('name', models.CharField(max_length=100)),
                ('city', models.CharField(max_length=64)),
                ('address', models.CharField(max_length=100)),
                ('price', models.IntegerField(default=0)),
                ('image', models.URLField()),
            ],
        ),
        migrations.CreateModel(
            name='Passenger',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('first', models.CharField(max_length=64)),
                ('last', models.CharField(max_length=64)),
                ('dateOfBirth', models.DateField(default=datetime.date.today)),
                ('flights', models.ManyToManyField(to='booking.Flight')),
            ],
        ),
        migrations.CreateModel(
            name='HotelBooking',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('checkIn', models.DateField()),
                ('checkOut', models.DateField()),
                ('totalAmount',
                 models.DecimalField(decimal_places=2, default=0,
                                     max_digits=6)),
                ('hotel',
                 models.ForeignKey(blank=True,
                                   null=True,
                                   on_delete=django.db.models.deletion.CASCADE,
                                   to='booking.Hotel')),
                ('user',
                 models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
                                   to=settings.AUTH_USER_MODEL)),
            ],
        ),
        migrations.CreateModel(
            name='FlightBooking',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('totalAmount',
                 models.DecimalField(decimal_places=2, default=0,
                                     max_digits=6)),
                ('flights', models.ManyToManyField(to='booking.Flight')),
                ('passengers', models.ManyToManyField(to='booking.Passenger')),
                ('user',
                 models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
                                   to=settings.AUTH_USER_MODEL)),
            ],
        ),
    ]
Ejemplo n.º 5
0
class Migration(migrations.Migration):

    initial = True

    dependencies = [
        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
    ]

    operations = [
        migrations.CreateModel(
            name='ExtendedUser',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('mobile', models.CharField(max_length=11, null=True)),
                ('image',
                 models.ImageField(blank=True,
                                   null=True,
                                   upload_to=booking.models.get_image_path)),
                ('user',
                 models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
                                   to=settings.AUTH_USER_MODEL,
                                   unique=True)),
            ],
        ),
        migrations.CreateModel(
            name='GuestHouse',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('name', models.CharField(max_length=100, unique=True)),
                ('active', models.BooleanField(default=True)),
            ],
        ),
        migrations.CreateModel(
            name='Rooms',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('room_no', models.IntegerField()),
                ('room_type',
                 models.CharField(choices=[('Single AC', 'Single AC'),
                                           ('Double AC', 'Double AC'),
                                           ('Single NON AC', 'Single NON AC'),
                                           ('Double NON AC', 'Double NON AC')],
                                  max_length=20)),
                ('guesthouse',
                 models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
                                   to='booking.GuestHouse')),
            ],
        ),
        migrations.CreateModel(
            name='Transactions',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('start_date', models.DateField(blank=True, null=True)),
                ('end_date', models.DateField(blank=True, null=True)),
                ('no_people', models.IntegerField(blank=True, null=True)),
                ('room_no',
                 models.ForeignKey(
                     on_delete=django.db.models.deletion.DO_NOTHING,
                     to='booking.Rooms')),
                ('user_booked',
                 models.ForeignKey(
                     on_delete=django.db.models.deletion.DO_NOTHING,
                     to=settings.AUTH_USER_MODEL)),
            ],
        ),
    ]
Ejemplo n.º 6
0
class Migration(migrations.Migration):

    initial = True

    dependencies = [
        ('contenttypes', '0002_remove_content_type_name'),
        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
    ]

    operations = [
        migrations.CreateModel(
            name='Agreement',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('date', models.DateField()),
                ('order', models.IntegerField()),
                ('file', models.FileField(upload_to='conventions')),
            ],
            options={
                'verbose_name': 'Convention',
            },
        ),
        migrations.CreateModel(
            name='Booking',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('title',
                 models.CharField(max_length=100, verbose_name='Intitulé')),
                ('org_type',
                 models.IntegerField(blank=True,
                                     choices=[(1, 'EEDF'),
                                              (2, 'Scouts français'),
                                              (3, 'Scouts étrangers'),
                                              (4, 'Association'),
                                              (5, 'Particulier')],
                                     null=True,
                                     verbose_name="Type d'organisation")),
                ('contact',
                 models.CharField(blank=True,
                                  max_length=100,
                                  verbose_name='Contact')),
                ('email',
                 models.EmailField(blank=True,
                                   max_length=254,
                                   verbose_name='Email')),
                ('tel',
                 models.CharField(blank=True,
                                  max_length=12,
                                  verbose_name='Téléphone')),
                ('description',
                 models.TextField(blank=True, verbose_name='Description')),
                ('agreement',
                 models.ForeignKey(blank=True,
                                   null=True,
                                   on_delete=django.db.models.deletion.CASCADE,
                                   to='booking.Agreement',
                                   verbose_name='Convention')),
            ],
            options={
                'verbose_name': 'Réservation',
            },
            bases=(booking.models.TrackingMixin, models.Model),
        ),
        migrations.CreateModel(
            name='BookingItem',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('title',
                 models.CharField(blank=True,
                                  max_length=100,
                                  verbose_name='Intitulé')),
                ('headcount',
                 models.PositiveIntegerField(blank=True,
                                             null=True,
                                             verbose_name='Effectif')),
                ('begin',
                 models.DateField(blank=True,
                                  null=True,
                                  verbose_name='Date de début')),
                ('end',
                 models.DateField(blank=True,
                                  null=True,
                                  verbose_name='Date de fin')),
                ('product',
                 models.IntegerField(choices=[(1, 'Hébergement Terrain'),
                                              (2, 'Hébergement Hameau'),
                                              (3, 'Location matériel'),
                                              (4, 'Refacturation'),
                                              (5, 'Salles')],
                                     verbose_name='Produit')),
                ('price_pppn',
                 models.DecimalField(blank=True,
                                     decimal_places=2,
                                     max_digits=8,
                                     null=True,
                                     verbose_name='Prix/nuitée')),
                ('price_pn',
                 models.DecimalField(blank=True,
                                     decimal_places=2,
                                     max_digits=8,
                                     null=True,
                                     verbose_name='Prix/nuit')),
                ('price_pp',
                 models.DecimalField(blank=True,
                                     decimal_places=2,
                                     max_digits=8,
                                     null=True,
                                     verbose_name='Prix/pers')),
                ('price',
                 models.DecimalField(blank=True,
                                     decimal_places=2,
                                     max_digits=8,
                                     null=True,
                                     verbose_name='Prix forfait')),
                ('cotisation',
                 models.BooleanField(default=True,
                                     verbose_name='Cotis° associé')),
                ('booking',
                 models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
                                   related_name='items',
                                   to='booking.Booking')),
            ],
            bases=(booking.models.TrackingMixin, models.Model),
        ),
        migrations.CreateModel(
            name='BookingState',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('title',
                 models.CharField(max_length=100, verbose_name='Intitulé')),
            ],
            options={
                'verbose_name': 'État',
            },
        ),
        migrations.CreateModel(
            name='TrackingEvent',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('operation',
                 models.IntegerField(choices=[(1, 'Ajout'),
                                              (2, 'Modification'),
                                              (3, 'Suppression')],
                                     verbose_name='Opération')),
                ('date', models.DateTimeField()),
                ('obj_pk', models.PositiveIntegerField()),
                ('obj_ct',
                 models.ForeignKey(on_delete=django.db.models.deletion.PROTECT,
                                   related_name='log_entries',
                                   to='contenttypes.ContentType')),
                ('user',
                 models.ForeignKey(blank=True,
                                   null=True,
                                   on_delete=django.db.models.deletion.PROTECT,
                                   related_name='tracking_events',
                                   to=settings.AUTH_USER_MODEL,
                                   verbose_name='Utilisateur')),
            ],
            options={
                'verbose_name': 'Événement',
            },
        ),
        migrations.CreateModel(
            name='TrackingValue',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('field', models.CharField(max_length=100,
                                           verbose_name='Champ')),
                ('value', models.TextField(null=True, verbose_name='Valeur')),
                ('event',
                 models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
                                   to='booking.TrackingEvent',
                                   verbose_name='Événement')),
            ],
            options={
                'verbose_name': 'Valeur',
            },
        ),
        migrations.AddField(
            model_name='booking',
            name='state',
            field=models.ForeignKey(
                blank=True,
                null=True,
                on_delete=django.db.models.deletion.CASCADE,
                to='booking.BookingState'),
        ),
    ]
Ejemplo n.º 7
0
class Migration(migrations.Migration):

    initial = True

    dependencies = [
        migrations.swappable_dependency(settings.AUTH_USER_MODEL),
    ]

    operations = [
        migrations.CreateModel(
            name='Area',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('created',
                 model_utils.fields.AutoCreatedField(
                     default=django.utils.timezone.now,
                     editable=False,
                     verbose_name='created')),
                ('modified',
                 model_utils.fields.AutoLastModifiedField(
                     default=django.utils.timezone.now,
                     editable=False,
                     verbose_name='modified')),
                ('title_english',
                 models.CharField(max_length=255,
                                  verbose_name='Area english name')),
                ('title_thai',
                 models.CharField(max_length=255,
                                  verbose_name='Area Thai name')),
                ('title_korean',
                 models.CharField(max_length=255,
                                  verbose_name='Area Korean name')),
                ('slug',
                 models.SlugField(
                     allow_unicode=True,
                     help_text=
                     'A short label containing only letters, numbers, underscores or hyphens for URL',
                     max_length=255,
                     unique=True,
                     verbose_name='Slug')),
                ('position',
                 models.IntegerField(db_index=True,
                                     default=0,
                                     verbose_name='Position')),
            ],
            options={
                'verbose_name': 'Area',
                'verbose_name_plural': 'Areas',
            },
        ),
        migrations.CreateModel(
            name='Asset',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('created',
                 model_utils.fields.AutoCreatedField(
                     default=django.utils.timezone.now,
                     editable=False,
                     verbose_name='created')),
                ('modified',
                 model_utils.fields.AutoLastModifiedField(
                     default=django.utils.timezone.now,
                     editable=False,
                     verbose_name='modified')),
                ('code',
                 models.IntegerField(choices=[(0, 'GB prime pay'),
                                              (1, 'Petty cash'),
                                              (2, 'Passbook Krungsri'),
                                              (3, 'Passbook Kasikorn')],
                                     db_index=True,
                                     default=0,
                                     verbose_name='Asset code')),
                ('title',
                 models.CharField(max_length=255, verbose_name='Asset name')),
                ('balance',
                 models.DecimalField(decimal_places=0,
                                     max_digits=11,
                                     verbose_name='Asset balance')),
            ],
            options={
                'verbose_name': 'Asset',
                'verbose_name_plural': 'Assets',
            },
        ),
        migrations.CreateModel(
            name='Club',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('created',
                 model_utils.fields.AutoCreatedField(
                     default=django.utils.timezone.now,
                     editable=False,
                     verbose_name='created')),
                ('modified',
                 model_utils.fields.AutoLastModifiedField(
                     default=django.utils.timezone.now,
                     editable=False,
                     verbose_name='modified')),
                ('title_english',
                 models.CharField(db_index=True,
                                  max_length=255,
                                  verbose_name='Golf club English name')),
                ('title_thai',
                 models.CharField(db_index=True,
                                  max_length=255,
                                  verbose_name='Golf club Thai name')),
                ('title_korean',
                 models.CharField(db_index=True,
                                  max_length=255,
                                  verbose_name='Golf club Korean name')),
                ('slug',
                 models.SlugField(
                     allow_unicode=True,
                     help_text=
                     'A short label containing only letters, numbers, underscores or hyphens for URL',
                     max_length=255,
                     unique=True,
                     verbose_name='Slug')),
                ('phone',
                 models.CharField(blank=True,
                                  max_length=32,
                                  null=True,
                                  verbose_name='Phone number')),
                ('email',
                 models.EmailField(blank=True,
                                   max_length=255,
                                   null=True,
                                   verbose_name='Email address')),
                ('fax',
                 models.CharField(blank=True,
                                  max_length=16,
                                  null=True,
                                  verbose_name='Fax number')),
                ('website',
                 models.URLField(blank=True,
                                 max_length=255,
                                 null=True,
                                 verbose_name='Website')),
                ('address',
                 models.CharField(blank=True,
                                  max_length=255,
                                  null=True,
                                  verbose_name='Golf club address')),
                ('hole',
                 models.IntegerField(choices=[(0, '18 Holes'), (1, '9 Holes'),
                                              (2, '27 Holes'),
                                              (3, '36 Holes')],
                                     db_index=True,
                                     default=0,
                                     verbose_name='No. of holes')),
                ('country',
                 models.IntegerField(choices=[(1, 'Thailand'),
                                              (2, 'South Korea'), (3, 'Japan'),
                                              (4, 'China')],
                                     db_index=True,
                                     default=1,
                                     verbose_name='Country code')),
                ('green_fee_selling_price',
                 models.DecimalField(db_index=True,
                                     decimal_places=2,
                                     help_text='THB',
                                     max_digits=11,
                                     verbose_name='Start from')),
                ('caddie_fee_selling_price',
                 models.DecimalField(db_index=True,
                                     decimal_places=2,
                                     help_text='THB',
                                     max_digits=11,
                                     verbose_name='Caddie fee')),
                ('cart_fee_selling_price',
                 models.DecimalField(db_index=True,
                                     decimal_places=2,
                                     help_text='THB',
                                     max_digits=11,
                                     verbose_name='Cart fee')),
                ('max_pax',
                 models.IntegerField(default=4, verbose_name='Max PAX')),
                ('cart_required',
                 models.IntegerField(db_index=True,
                                     default=0,
                                     verbose_name='Require golf cart')),
                ('weekdays_min_in_advance',
                 models.IntegerField(
                     db_index=True,
                     default=1,
                     verbose_name='Weekdays minimum in advance')),
                ('weekdays_max_in_advance',
                 models.IntegerField(
                     db_index=True,
                     default=30,
                     verbose_name='Weekdays maximum in advance')),
                ('weekend_min_in_advance',
                 models.IntegerField(
                     db_index=True,
                     default=1,
                     verbose_name='Weekend minimum in advance')),
                ('weekend_max_in_advance',
                 models.IntegerField(
                     db_index=True,
                     default=7,
                     verbose_name='Weekend maximum in advance')),
                ('thumbnail1',
                 easy_thumbnails.fields.ThumbnailerImageField(
                     blank=True,
                     null=True,
                     upload_to=booking.models.upload_directory_path,
                     verbose_name='Thumbnail 1')),
                ('thumbnail2',
                 easy_thumbnails.fields.ThumbnailerImageField(
                     blank=True,
                     null=True,
                     upload_to=booking.models.upload_directory_path,
                     verbose_name='Thumbnail 2')),
                ('thumbnail3',
                 easy_thumbnails.fields.ThumbnailerImageField(
                     blank=True,
                     null=True,
                     upload_to=booking.models.upload_directory_path,
                     verbose_name='Thumbnail 3')),
                ('thumbnail4',
                 easy_thumbnails.fields.ThumbnailerImageField(
                     blank=True,
                     null=True,
                     upload_to=booking.models.upload_directory_path,
                     verbose_name='Thumbnail 4')),
                ('thumbnail5',
                 easy_thumbnails.fields.ThumbnailerImageField(
                     blank=True,
                     null=True,
                     upload_to=booking.models.upload_directory_path,
                     verbose_name='Thumbnail 5')),
                ('latitude',
                 models.DecimalField(decimal_places=6,
                                     default=0,
                                     max_digits=9,
                                     verbose_name='Latitude')),
                ('longitude',
                 models.DecimalField(decimal_places=6,
                                     default=0,
                                     max_digits=9,
                                     verbose_name='Longitude')),
                ('position',
                 models.IntegerField(db_index=True,
                                     default=0,
                                     verbose_name='Position')),
                ('status',
                 models.IntegerField(choices=[(0, 'Club open'),
                                              (1, 'Club closed')],
                                     db_index=True,
                                     default=0,
                                     verbose_name='Club status')),
            ],
            options={
                'verbose_name': 'Golf club',
                'verbose_name_plural': 'Golf clubs',
            },
        ),
        migrations.CreateModel(
            name='ClubList',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('created',
                 model_utils.fields.AutoCreatedField(
                     default=django.utils.timezone.now,
                     editable=False,
                     verbose_name='created')),
                ('modified',
                 model_utils.fields.AutoLastModifiedField(
                     default=django.utils.timezone.now,
                     editable=False,
                     verbose_name='modified')),
                ('title',
                 models.CharField(max_length=255,
                                  verbose_name='Club list title')),
                ('code',
                 models.CharField(max_length=255,
                                  verbose_name='Club list code')),
            ],
            options={
                'verbose_name': 'Golf club list',
                'verbose_name_plural': 'Golf club lists',
            },
        ),
        migrations.CreateModel(
            name='ClubOrderListMembership',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('round_date',
                 models.DateField(db_index=True, verbose_name='Round date')),
                ('round_time',
                 models.TimeField(db_index=True, verbose_name='Round time')),
                ('pax', models.IntegerField(default=4, verbose_name='PAX')),
                ('green_fee_selling_price',
                 models.DecimalField(decimal_places=0,
                                     default=0,
                                     help_text='THB',
                                     max_digits=11,
                                     verbose_name='Green fee selling price')),
                ('green_fee_cost_price',
                 models.DecimalField(decimal_places=0,
                                     default=0,
                                     help_text='THB',
                                     max_digits=11,
                                     verbose_name='Green fee cost price')),
                ('club',
                 models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
                                   to='booking.Club',
                                   verbose_name='Golf club')),
            ],
            options={
                'verbose_name': 'Golf club order list membership',
                'verbose_name_plural': 'Golf club order list membership',
            },
        ),
        migrations.CreateModel(
            name='Rate',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('created',
                 model_utils.fields.AutoCreatedField(
                     default=django.utils.timezone.now,
                     editable=False,
                     verbose_name='created')),
                ('modified',
                 model_utils.fields.AutoLastModifiedField(
                     default=django.utils.timezone.now,
                     editable=False,
                     verbose_name='modified')),
                ('season_start',
                 models.DateField(verbose_name='Season start date')),
                ('season_end',
                 models.DateField(verbose_name='Season end date')),
                ('day_of_week',
                 models.IntegerField(choices=[(0, 'Weekday'), (1, 'Weekend')],
                                     db_index=True,
                                     default=0,
                                     verbose_name='Day of week')),
                ('slot_start',
                 models.TimeField(verbose_name='Slot start time')),
                ('slot_end', models.TimeField(verbose_name='Slot end time')),
                ('title',
                 models.IntegerField(choices=[(0, 'Day golf'),
                                              (1, 'Day golf 1st round'),
                                              (2, 'Day golf 2nd round'),
                                              (3, 'Twilight golf'),
                                              (4, 'Night golf')],
                                     db_index=True,
                                     default=0,
                                     verbose_name='Rate title')),
                ('green_fee_selling_price',
                 models.DecimalField(decimal_places=2,
                                     help_text='THB',
                                     max_digits=11,
                                     verbose_name='Green fee selling price')),
                ('green_fee_cost_price',
                 models.DecimalField(decimal_places=2,
                                     help_text='THB',
                                     max_digits=11,
                                     verbose_name='Green fee cost price')),
                ('caddie_fee_selling_price',
                 models.DecimalField(decimal_places=2,
                                     help_text='THB',
                                     max_digits=11,
                                     verbose_name='Caddie fee selling price')),
                ('caddie_fee_cost_price',
                 models.DecimalField(decimal_places=2,
                                     help_text='THB',
                                     max_digits=11,
                                     verbose_name='Caddie fee cost price')),
                ('cart_fee_selling_price',
                 models.DecimalField(decimal_places=2,
                                     help_text='THB',
                                     max_digits=11,
                                     verbose_name='Cart fee selling price')),
                ('cart_fee_cost_price',
                 models.DecimalField(decimal_places=2,
                                     help_text='THB',
                                     max_digits=11,
                                     verbose_name='Cart fee cost price')),
                ('club',
                 models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
                                   to='booking.Club',
                                   verbose_name='Golf club')),
            ],
            options={
                'verbose_name': 'Service rate',
                'verbose_name_plural': 'Service rates',
            },
        ),
        migrations.CreateModel(
            name='Province',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('created',
                 model_utils.fields.AutoCreatedField(
                     default=django.utils.timezone.now,
                     editable=False,
                     verbose_name='created')),
                ('modified',
                 model_utils.fields.AutoLastModifiedField(
                     default=django.utils.timezone.now,
                     editable=False,
                     verbose_name='modified')),
                ('title_english',
                 models.CharField(max_length=255,
                                  verbose_name='Province English name')),
                ('title_thai',
                 models.CharField(max_length=255,
                                  verbose_name='Province Thai name')),
                ('title_korean',
                 models.CharField(max_length=255,
                                  verbose_name='Province Korean name')),
                ('slug',
                 models.SlugField(
                     allow_unicode=True,
                     help_text=
                     'A short label containing only letters, numbers, underscores or hyphens for URL',
                     max_length=255,
                     unique=True,
                     verbose_name='Slug')),
                ('position',
                 models.IntegerField(db_index=True,
                                     default=0,
                                     verbose_name='Position')),
                ('area',
                 models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
                                   to='booking.Area',
                                   verbose_name='Location area')),
            ],
            options={
                'verbose_name': 'Province',
                'verbose_name_plural': 'Provinces',
            },
        ),
        migrations.CreateModel(
            name='Order',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('created',
                 model_utils.fields.AutoCreatedField(
                     default=django.utils.timezone.now,
                     editable=False,
                     verbose_name='created')),
                ('modified',
                 model_utils.fields.AutoLastModifiedField(
                     default=django.utils.timezone.now,
                     editable=False,
                     verbose_name='modified')),
                ('is_removed', models.BooleanField(default=False)),
                ('order_no',
                 models.UUIDField(default=uuid.uuid4,
                                  editable=False,
                                  unique=True,
                                  verbose_name='Booking no')),
                ('last_name',
                 models.CharField(blank=True,
                                  max_length=64,
                                  verbose_name='Last name')),
                ('first_name',
                 models.CharField(blank=True,
                                  max_length=64,
                                  verbose_name='First name')),
                ('user_agent',
                 models.TextField(blank=True, verbose_name='User-agent')),
                ('accept_language',
                 models.TextField(blank=True, verbose_name='Accept-language')),
                ('ip_address',
                 models.GenericIPAddressField(verbose_name='IP address')),
                ('transaction_id',
                 models.CharField(blank=True,
                                  max_length=64,
                                  verbose_name='Transaction ID')),
                ('status',
                 models.IntegerField(choices=[(0, 'Booking opened'),
                                              (1, 'Booking pending'),
                                              (2, 'Booking offered'),
                                              (3, 'Payment completed'),
                                              (4, 'Booking confirmed'),
                                              (5, 'Booking unavailable'),
                                              (6, 'Payment adjustment'),
                                              (7, 'Payment adjusted'),
                                              (8, 'Refund requested'),
                                              (9, 'Refund pending'),
                                              (10, 'Refunded'),
                                              (11, 'Refunded'),
                                              (12, 'Voided')],
                                     db_index=True,
                                     default=0,
                                     verbose_name='Booking status')),
                ('total_selling_price',
                 models.DecimalField(decimal_places=0,
                                     default=0,
                                     max_digits=11,
                                     verbose_name='Total selling price')),
                ('total_cost_price',
                 models.DecimalField(decimal_places=0,
                                     default=0,
                                     max_digits=11,
                                     verbose_name='Total cost price')),
                ('message',
                 models.TextField(blank=True, verbose_name='Booking message')),
                ('clubs',
                 models.ManyToManyField(
                     through='booking.ClubOrderListMembership',
                     to='booking.Club')),
                ('parent',
                 models.ForeignKey(null=True,
                                   on_delete=django.db.models.deletion.CASCADE,
                                   to='booking.Order',
                                   verbose_name='Parent order')),
                ('user',
                 models.ForeignKey(
                     blank=True,
                     null=True,
                     on_delete=django.db.models.deletion.SET_NULL,
                     to=settings.AUTH_USER_MODEL,
                     verbose_name='User')),
            ],
            options={
                'verbose_name': 'Booking order',
                'verbose_name_plural': 'Booking orders',
            },
        ),
        migrations.CreateModel(
            name='Holiday',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('created',
                 model_utils.fields.AutoCreatedField(
                     default=django.utils.timezone.now,
                     editable=False,
                     verbose_name='created')),
                ('modified',
                 model_utils.fields.AutoLastModifiedField(
                     default=django.utils.timezone.now,
                     editable=False,
                     verbose_name='modified')),
                ('title',
                 models.CharField(max_length=255,
                                  verbose_name='Holiday name')),
                ('holiday',
                 models.DateField(db_index=True, verbose_name='Holiday day')),
                ('country',
                 models.IntegerField(choices=[(1, 'Thailand'),
                                              (2, 'South Korea'), (3, 'Japan'),
                                              (4, 'China')],
                                     db_index=True,
                                     default=1,
                                     verbose_name='Country code')),
            ],
            options={
                'verbose_name': 'Holiday',
                'verbose_name_plural': 'Holidays',
                'unique_together': {('holiday', 'country')},
            },
        ),
        migrations.CreateModel(
            name='District',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('created',
                 model_utils.fields.AutoCreatedField(
                     default=django.utils.timezone.now,
                     editable=False,
                     verbose_name='created')),
                ('modified',
                 model_utils.fields.AutoLastModifiedField(
                     default=django.utils.timezone.now,
                     editable=False,
                     verbose_name='modified')),
                ('title_english',
                 models.CharField(max_length=255,
                                  verbose_name='District English name')),
                ('title_thai',
                 models.CharField(max_length=255,
                                  verbose_name='District Thai name')),
                ('title_korean',
                 models.CharField(max_length=255,
                                  verbose_name='District Korean name')),
                ('slug',
                 models.SlugField(
                     allow_unicode=True,
                     help_text=
                     'A short label containing only letters, numbers, underscores or hyphens for URL',
                     max_length=255,
                     unique=True,
                     verbose_name='Slug')),
                ('position',
                 models.IntegerField(db_index=True,
                                     default=0,
                                     verbose_name='Position')),
                ('province',
                 models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
                                   to='booking.Province',
                                   verbose_name='Province')),
            ],
            options={
                'verbose_name': 'District',
                'verbose_name_plural': 'Districts',
            },
        ),
        migrations.AddField(
            model_name='cluborderlistmembership',
            name='order',
            field=models.ForeignKey(
                on_delete=django.db.models.deletion.CASCADE,
                to='booking.Order',
                verbose_name='Order'),
        ),
        migrations.CreateModel(
            name='ClubOrderChangeLog',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('created',
                 model_utils.fields.AutoCreatedField(
                     default=django.utils.timezone.now,
                     editable=False,
                     verbose_name='created')),
                ('modified',
                 model_utils.fields.AutoLastModifiedField(
                     default=django.utils.timezone.now,
                     editable=False,
                     verbose_name='modified')),
                ('status',
                 models.IntegerField(choices=[(0, 'Booking opened'),
                                              (1, 'Booking pending'),
                                              (2, 'Booking offered'),
                                              (3, 'Payment completed'),
                                              (4, 'Booking confirmed'),
                                              (5, 'Booking unavailable'),
                                              (6, 'Payment adjustment'),
                                              (7, 'Payment adjusted'),
                                              (8, 'Refund requested'),
                                              (9, 'Refund pending'),
                                              (10, 'Refunded'),
                                              (11, 'Refunded'),
                                              (12, 'Voided')],
                                     db_index=True,
                                     default=0,
                                     verbose_name='Booking status')),
                ('total_selling_price',
                 models.DecimalField(decimal_places=0,
                                     default=0,
                                     max_digits=11,
                                     verbose_name='Total selling price')),
                ('total_cost_price',
                 models.DecimalField(decimal_places=0,
                                     default=0,
                                     max_digits=11,
                                     verbose_name='Total cost price')),
                ('round_date',
                 models.DateField(db_index=True, verbose_name='Round date')),
                ('round_time',
                 models.TimeField(db_index=True, verbose_name='Round time')),
                ('pax', models.IntegerField(default=4, verbose_name='PAX')),
                ('green_fee_selling_price',
                 models.DecimalField(decimal_places=0,
                                     default=0,
                                     help_text='THB',
                                     max_digits=11,
                                     verbose_name='Green fee selling price')),
                ('green_fee_cost_price',
                 models.DecimalField(decimal_places=0,
                                     default=0,
                                     help_text='THB',
                                     max_digits=11,
                                     verbose_name='Green fee cost price')),
                ('club',
                 models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
                                   to='booking.Club',
                                   verbose_name='Golf club')),
                ('order',
                 models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
                                   to='booking.Order',
                                   verbose_name='Order')),
                ('user',
                 models.ForeignKey(
                     blank=True,
                     null=True,
                     on_delete=django.db.models.deletion.SET_NULL,
                     to=settings.AUTH_USER_MODEL,
                     verbose_name='User')),
            ],
            options={
                'verbose_name': 'Golf club order changelog',
                'verbose_name_plural': 'Golf club order changelog',
            },
        ),
        migrations.CreateModel(
            name='ClubListMembership',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('position', models.IntegerField(verbose_name='Position')),
                ('club',
                 models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
                                   to='booking.Club',
                                   verbose_name='Golf club')),
                ('club_list',
                 models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
                                   to='booking.ClubList',
                                   verbose_name='Golf club list')),
            ],
            options={
                'verbose_name': 'Golf club list membership',
                'verbose_name_plural': 'Golf club list membership',
            },
        ),
        migrations.AddField(
            model_name='clublist',
            name='clubs',
            field=models.ManyToManyField(through='booking.ClubListMembership',
                                         to='booking.Club'),
        ),
        migrations.AddField(
            model_name='club',
            name='district',
            field=models.ForeignKey(
                on_delete=django.db.models.deletion.CASCADE,
                to='booking.District',
                verbose_name='District'),
        ),
        migrations.CreateModel(
            name='AssetTransaction',
            fields=[
                ('id',
                 models.AutoField(auto_created=True,
                                  primary_key=True,
                                  serialize=False,
                                  verbose_name='ID')),
                ('created',
                 model_utils.fields.AutoCreatedField(
                     default=django.utils.timezone.now,
                     editable=False,
                     verbose_name='created')),
                ('modified',
                 model_utils.fields.AutoLastModifiedField(
                     default=django.utils.timezone.now,
                     editable=False,
                     verbose_name='modified')),
                ('category',
                 models.IntegerField(choices=[(0, 'Payment'), (1, 'Refund'),
                                              (2, 'Purchase'),
                                              (3, 'Purchase cancel'),
                                              (4, 'Transfer payment'),
                                              (5, 'Gains'), (6, 'Expense')],
                                     db_index=True,
                                     default=0,
                                     verbose_name='Transaction category')),
                ('amount',
                 models.DecimalField(decimal_places=0,
                                     max_digits=11,
                                     verbose_name='Amount')),
                ('transaction_date',
                 models.DateTimeField(verbose_name='Transaction date')),
                ('remarks', models.TextField(blank=True,
                                             verbose_name='Remarks')),
                ('asset',
                 models.ForeignKey(on_delete=django.db.models.deletion.CASCADE,
                                   to='booking.Asset',
                                   verbose_name='Asset')),
                ('order',
                 models.ForeignKey(blank=True,
                                   null=True,
                                   on_delete=django.db.models.deletion.CASCADE,
                                   to='booking.Order',
                                   verbose_name='Order')),
            ],
            options={
                'verbose_name': 'Asset transaction',
                'verbose_name_plural': 'Asset transactions',
            },
        ),
    ]