from django.db import models
import uuid

# Create your models here.


class customer_table(models.Model): 
    company_id      = models.IntegerField(default=0,null=True)
    branch_id       = models.IntegerField(default=0,null=True)
    c_type          = models.CharField(max_length=30)
    customer_type   = models.CharField(max_length=30)
    name            = models.CharField(max_length=100)
    contact_person  = models.CharField(max_length=100)
    phone           = models.CharField(max_length=50)
    mobile          = models.CharField(max_length=50)
    email           = models.CharField(max_length=50)
    password        = models.CharField(max_length=100)
    address_line1   = models.CharField(max_length=150)
    address_line2   = models.CharField(max_length=150)
    city            = models.CharField(max_length=50)
    receivable      = models.DecimalField(max_digits=10, decimal_places=2, default=0,null=True)
    payable         = models.DecimalField(max_digits=10, decimal_places=2, default=0,null=True)
    state           = models.CharField(max_length=50)
    pincode         = models.IntegerField(null=True,blank=True)
    gst             = models.CharField(max_length=50,null=True,blank=True)
    credit_days     = models.IntegerField(default=0,null=True)
    credit_limit    = models.DecimalField(max_digits=10, decimal_places=2, default=0,null=True)
    remarks         = models.CharField(max_length=50)
    is_wholesale    = models.IntegerField(default=0,null=True)
    is_active       = models.IntegerField(default=1,null=True)
    status          = models.IntegerField(default=1,null=True)
    created_on      = models.DateTimeField(null=True)
    updated_on      = models.DateTimeField(null=True)
    created_by      = models.IntegerField(null=True)
    updated_by      = models.IntegerField(null=True)
    uuid            = models.CharField(max_length=100, null=True, blank=True)
    class Meta:
        db_table="customer"

    def save(self, *args, **kwargs):
        if not self.uuid:
            self.uuid = str(uuid.uuid4())
        if self.name:
            self.name = self.name.strip().title()       
        super(customer_table, self).save(*args, **kwargs)



class customer_opening_table(models.Model): 
    company_id      = models.IntegerField(default=0,null=True)
    branch_id       = models.IntegerField(default=0,null=True)
    current_fy      = models.IntegerField(default=0,null=True)
    customer_id     = models.IntegerField(default=0,null=True)
    year            = models.IntegerField(default=0,null=True)
    date            = models.DateField(default=0,null=True)
    time            = models.TimeField(default=0,null=True)
    credit          = models.FloatField(default=0,null=True)    
    debit           = models.FloatField(default=0,null=True)    
    remarks         = models.CharField(max_length=50,null=True)    
    is_migrated     = models.IntegerField(default=0,null=True)
    is_active       = models.IntegerField(default=1,null=True)
    status          = models.IntegerField(default=1,null=True)  
    created_on      = models.DateTimeField(null=True)
    updated_on      = models.DateTimeField(null=True)
    created_by      = models.IntegerField(null=True)
    updated_by      = models.IntegerField(null=True)
    class Meta:
        db_table="customer_ob"
