示例#1
0
class User(models.Model):
    slug = models.SlugField('Identificador', max_length=100, unique=True)
    nome = models.CharField('Nome', max_length=100)
    cpf = models.CharField('CPF', max_length=11, default='')
    dataNascimento = models.DateField('Data de Nascimento', default='')
    email = models.EmailField('E-mail', max_length=40, unique=True)
    emailConfirmado = models.BooleanField('E-mail confirmado', default=False)
    senha = models.CharField('Senha', max_length=30)
    telefone = PhoneField('Telefone', help_text='Telefone para contato', default='')
    cep = models.CharField('CEP', max_length=8, default='')
    numeroCasa = models.IntegerField('Número', default='')
    rua = models.CharField('Rua', max_length=100, default='')
    bairro = models.CharField('Bairro', max_length=100, default='')
    cidade = models.CharField('Cidade', max_length=100, default='')
    estado = models.CharField('Estado', max_length=5, choices=[(tag, tag.value) for tag in BRStates])
    complemento = models.CharField('Complemento', max_length=100, default='')

    isProdutor = models.BooleanField("Produtor", default=False)
    isAfiliado = models.BooleanField("Afiliado", default=False)
    isAtivo = models.BooleanField("Ativo", default=True)

    dataCriacao = models.DateTimeField('Criado em', auto_now_add=True)
    dataModificacao = models.DateTimeField('Última modificação', auto_now=True)

    class Meta:
        verbose_name = 'Usuário'
        verbose_name_plural = 'Usuários'
        ordering = ['nome']

    # def save(self):
    # self.save()

    def save(self, *args, **kwargs):
        self.slug = self.slug or slugify(self.nome)
        super().save(*args, **kwargs)

    def _str_(self):
        return self.nome
示例#2
0
class store(base):
    suuid= models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
    tuuid=models.ForeignKey(tenant, on_delete = models.CASCADE)
    map_id=models.CharField(max_length=100,blank=False)
    address=models.CharField(max_length=200,blank=False)
    start_time=models.DateTimeField(max_length=50, blank=False)
    end_time=models.DateTimeField(max_length=50,blank=False)
    choices=(
        ('GROCERY','GROCERIES'),
        ('MEDICAL','MEDICINE'),
        ('APPARELS','APPARELS'),
        ('ELECTRONICS','ELECTRONICS'),
        ('WHOLESALE','WHOLESALE'),
        ('SUPERMARKET','SUPERMARKET'),
        ('AUTOMOBILE','AUTOMOBILE'),
        ('ENTERTAINMENT AND ARTS','ENTERTAINMENT AND ARTS'),
        ('HEALTH AND BEAUTY','HEALTH AND BEAUTY'),
        ('FOOD','FOOD'),
        ('TRAVEL','TRAVEL'),
        ('SPORTS','SPORTS')
    )
    category=models.CharField(max_length=50,choices=choices,blank=False)
    contact_id=PhoneField(max_length=50,blank=False,help_text='Contact phone number')
示例#3
0
class owner(models.Model):
    user = models.OneToOneField(user_login_details, on_delete=models.CASCADE)
    name = models.CharField(max_length=20)
    photo = models.ImageField(upload_to='owner', blank=True, null=True)
    sex = models.CharField(max_length=1,
                           choices=(('M', 'Male'), ('F', 'Female'),
                                    ('W', 'Dont wish to disclose')))
    bio = models.TextField(max_length=500)
    dob = models.DateField(max_length=8)  #import birthday
    longitude = models.CharField(max_length=500)
    latitude = models.CharField(max_length=500)
    home_address = models.CharField(max_length=500)
    emergency_address = models.CharField(max_length=500)
    emergency_contact = PhoneField(blank=True,
                                   help_text='Emergency Contact number')
    updated = models.DateTimeField(auto_now=True, auto_now_add=False)
    no_of_pets = models.IntegerField(default=0)

    class Meta:
        db_table = "owner"

    def __str__(self):
        return self.name
示例#4
0
class passenger(TimeStampMixin):
    from .CONSTANTS import GENDER
    passenger_id = models.UUIDField(primary_key=True,
                                    default=uuid.uuid4,
                                    editable=False)
    first_name = models.CharField(max_length=25, blank=False)
    last_name = models.CharField(max_length=25, blank=False)
    email = models.EmailField(blank=False)
    contact = PhoneField(max_length=50,
                         blank=False,
                         help_text='Contact phone number')

    Gender = models.CharField(max_length=2,
                              choices=GENDER.choices,
                              blank=False)
    seat_id = models.OneToOneField(SeatModel, on_delete=models.DO_NOTHING)
    trip_id = models.OneToOneField(TripModel, on_delete=models.DO_NOTHING)
    pnr = models.ForeignKey(booking,
                            related_name="pnrlink",
                            on_delete=models.DO_NOTHING)
    booking_id = models.ForeignKey(booking,
                                   related_name="bookidlink",
                                   on_delete=models.CASCADE)
示例#5
0
class Staff(models.Model):

    id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
    name = models.CharField(max_length=100)

    phone_number = PhoneField(blank=True, null=True)
    email = models.EmailField(max_length=100, blank=True, null=True)

    history = HistoricalRecords()

    def check_email(self):
        if self.email is None or self.email == '':
            name = self.name.split()
            mail = get_ldap_mail(name[0], name[1])
            if mail is None:
                mail = get_ldap_mail(name[1], name[0])

            if mail is not None:
                self.email = mail
                self.save()

    def __str__(self):
        return self.name
示例#6
0
class Customer(models.Model):
    user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE, null=True, blank=True)
    first_name = models.CharField(max_length=50)
    last_name = models.CharField(max_length=50)
    full_name = models.CharField(max_length=100, null=True, blank=True)
    phone_number = PhoneField()


    @property
    def get_slug_name(self):
        full_name = self.first_name + '_' + self.last_name
        return full_name

    def get_full_name(self, first_name, last_name):
        full_name = first_name + ' ' + last_name
        return full_name

    def save(self, *args, **kwargs):
        self.full_name = self.get_full_name(self.first_name, self.last_name)
        super(Customer, self).save(*args, **kwargs)

    def __str__(self):
        return self.full_name
示例#7
0
class Contact(models.Model):
    # contact_user=models.ManyToManyField(User)
    contact_user = models.ForeignKey(User,
                                     on_delete=models.CASCADE,
                                     default='user',
                                     related_name="contacts")
    contact_email = models.CharField(max_length=300,
                                     default='contactemail',
                                     unique=True)
    contact_first_name = models.CharField(max_length=200, default="first")
    contact_last_name = models.CharField(max_length=300, default="last")
    contact_phone_number = PhoneField()
    contact_home_address = models.TextField(default="address")
    contact_relation = models.CharField(max_length=200, default="relation")
    contact_group = models.CharField(max_length=300, default="group")
    contact_age = models.IntegerField(default=int())
    contact_notes = models.TextField(default="notes")

    def __str__(self):
        return self.contact_email

    def get_absolute_url(self):
        return (reverse('contact_info', kwargs={'pk': self.pk}))
示例#8
0
class Order(models.Model):
    """Заказ"""

    order_number = models.CharField("Номер заказа", max_length=50)
    customer_name = models.CharField("Имя заказчика", max_length=100)
    phone = PhoneField("Номер телефона")
    address = models.TextField("Адрес", max_length=150)
    payment_type = models.CharField(
        "Способ оплаты",
        choices=(("cash", "Наличными"), ("card", "Картой на сайте")),
        max_length=100,
    )
    session_id = models.CharField("Сессия", max_length=100)

    @staticmethod
    def generate_order_number():
        date = datetime.date.today().strftime("%y%m%d")
        number = random.randint(100000, 999999)
        return f"{date}-{number}"

    class Meta:
        verbose_name = "Заказ"
        verbose_name_plural = "Заказы"
示例#9
0
class CustomUser(AbstractUser):

    username = None
    email = models.EmailField(_('email address'), unique=True)

    USERNAME_FIELD = 'email'
    REQUIRED_FIELDS = []

    objects = CustomUserManager()

    phone_number = PhoneField(blank=True,
                              null=True,
                              help_text='Contact phone number')

    role = models.CharField(max_length=100,
                            blank=False,
                            null=False,
                            default="role")

    avatar = models.FileField(upload_to=upload_avatar, blank=True, null=True)

    def __str__(self):
        return self.email
示例#10
0
class User(AbstractUser):
    username = models.CharField(blank=True, null=True, max_length=10)
    first_name = models.CharField(_('first name'), max_length=30, blank=True)
    last_name = models.CharField(_('last name'), max_length=30, blank=True)
    email = models.EmailField(_('email address'), unique=True)
    address_line_1 = models.TextField(blank=True, null=True)
    address_line_2 = models.TextField(blank=True, null=True)
    phone = PhoneField(blank=True, help_text='Contact phone number')
    is_seller = models.BooleanField(_('is seller'), default=False)
    image = ProcessedImageField(upload_to='BackgroundImages/',
                                processors=[ResizeToFill(550, 550)],
                                format='JPEG',
                                options={'quality': 60},
                                blank=True,
                                null=True)

    USERNAME_FIELD = 'email'
    REQUIRED_FIELDS = [
        'username',
    ]

    def __str__(self):
        return "{}".format(self.email)
示例#11
0
class Profile(Forge):
    """Model definition for Profile."""

    first_name = models.CharField(max_length=30)
    last_name = models.CharField(max_length=30)
    address_1 = models.CharField(max_length=60, null=True)
    address_2 = models.CharField(max_length=60, null=True)
    city = models.CharField(max_length=60, null=True)
    state = models.CharField(max_length=2)
    zip_code = models.CharField(max_length=5, null=True)
    phone_number = PhoneField(blank=True)
    date_of_birth = models.DateField(null=True)
    users = models.ForeignKey(Account, on_delete=models.CASCADE)

    class Meta:
        """Meta definition for Profile."""

        verbose_name = "Profile"
        verbose_name_plural = "Profiles"

    def __str__(self):
        """Unicode representation of Profile."""
        pass
示例#12
0
class Userregister(models.Model):
    postuser = models.ForeignKey(User, on_delete=models.CASCADE)
    fullname = models.CharField(max_length=20, null=False)
    phone = PhoneField(
        blank=True,
        help_text='Contact phone number',
        E164_only=False,
    )
    city = models.CharField(max_length=20, null=False)
    state = models.CharField(max_length=20, null=False)
    location = models.CharField(max_length=20, null=False)
    iteam = models.CharField(max_length=20, null=False)
    landmark = models.CharField(max_length=20, null=False)
    datetime = models.DateTimeField()
    content = models.TextField()
    iteam_pic = models.ImageField(null=False, blank=False)

    def get_absolute_url(self):
        return reverse("detail", kwargs={"id":
                                         self.id})  #f"/search/{self.id}/"

    def __str__(self):
        return self.fullname
示例#13
0
class UserProfile(models.Model):
    user = models.OneToOneField(settings.AUTH_USER_MODEL,
                                on_delete=models.CASCADE,
                                related_name='userprofile')
    image = models.ImageField(default='default.png', upload_to='profile_pics')
    complete = models.BooleanField(default=False)
    phone = PhoneField(blank=True, help_text='Contact phone number'
                       )  #add international phone number field
    name = models.CharField(max_length=200, blank=True)
    desc = models.TextField(blank=True)

    def __str__(self):
        return self.user.username

    def save(self, **kwargs):
        super().save()

        img = Image.open(self.image.path)

        if img.height > 300 or img.width > 300:
            output_size = (300, 300)
            img.thumbnail(output_size)
            img.save(self.image.path)
示例#14
0
class CustomUser(AbstractBaseUser, PermissionsMixin):
    email = models.EmailField(max_length=255, unique=True, db_index=True)
    username = models.CharField(max_length=255, unique=True, db_index=True)
    is_staff = models.BooleanField(default=False)
    is_active = models.BooleanField(default=True)
    id = models.AutoField(primary_key=True)
    phone_no = PhoneField(blank=False)
    auth_provider = models.CharField(max_length=255,
                                     blank=False,
                                     null=False,
                                     default=AUTH_PROVIDERS.get('email'))

    USERNAME_FIELD = 'email'
    REQUIRED_FIELDS = ['username']

    objects = CustomUserManager()

    def __str__(self):
        return self.email

    def tokens(self):
        refresh = RefreshToken.for_user(self)
        return {'refresh': str(refresh), 'access': str(refresh.access_token)}
示例#15
0
class vendor(models.Model):
    pet_adoption_centre_name = models.CharField(max_length=50)
    user = models.OneToOneField(User, on_delete=models.CASCADE)
    #username = models.CharField(max_length = 10)
    #password = models.CharField(max_length = 15)
    #vendor_emailid = models.EmailField()
    pet_adoption_centre_logo = models.ImageField(
        upload_to='media/adoption_centre_logo', blank=True, null=True)
    vendor_contact = PhoneField(blank=True, help_text='Contact number')
    vendor_timestamp = models.DateTimeField(auto_now_add=True, auto_now=False)
    vendor_update = models.DateTimeField(auto_now_add=False, auto_now=True)
    pet_adoption_location = models.CharField(max_length=500)
    pet_location_longitude = models.CharField(max_length=500)
    pet_location_latitude = models.CharField(max_length=500)

    class Meta:
        db_table = "vendor"

    def __str__(self):
        return self.pet_adoption_centre_name

    def save(self):
        super().save()

        img = Image.open(self.pet_adoption_centre_logo.path)

        if img.height > 300 or img.width > 300:
            output_size = (300, 300)
            img.thumbnail(output_size)
            img.save(self.pet_adoption_centre_logo.path)

    @property
    def pet_adoption_centre_logo_url(self):
        if self.pet_adoption_centre_logo and hasattr(
                self.pet_adoption_centre_logo, 'url'):
            return self.pet_adoption_centre_logo.url
        return '#'
示例#16
0
class User(AbstractUser):
    USERNAME_FIELD = 'email'
    REQUIRED_FIELDS = ['username']

    email = models.EmailField(unique=True)
    username = models.CharField(verbose_name='username',
                                max_length=200,
                                unique=True)
    first_name = models.CharField(
        verbose_name='first name',
        max_length=200,
        blank=True,
    )
    last_name = models.CharField(
        verbose_name='last name',
        max_length=200,
        blank=True,
    )
    location = models.CharField(
        verbose_name='location',
        max_length=200,
        blank=True,
    )
    phone = PhoneField(blank=True, help_text='Contact phone number')
    things_love = models.CharField(
        blank=True,
        max_length=200,
    )
    description = models.CharField(blank=True, max_length=200)
    date_joined = models.DateTimeField(auto_now_add=True)
    profile_picture = models.ImageField(upload_to='', blank=True)

    def __str__(self):
        return self.username

    def get_full_name(self):
        return f'{self.first_name} {self.last_name}'
示例#17
0
class vendor(models.Model):
    choices = (
        ("1", "Pending"),
        ("2", "Approved"),
        ("3", "Rejected"),
    )
    user = models.ForeignKey(User, on_delete=models.CASCADE)
    birth_date = models.DateField(null=True, blank=True)
    phone = PhoneField(help_text='Contact phone number')
    aadhar_regex = RegexValidator(regex=r'^\+?1?\d{12}$', message="Aadhar number must be entered only 12 digits allowed.")
    aadhar_number = models.CharField(validators=[aadhar_regex], max_length=12)
    address = models.ForeignKey(address, on_delete=models.SET_NULL, null=True, blank=True)
    aadhar_front = models.FileField(null=True, blank=True, upload_to="aadhar")
    aadhar_back = models.FileField(null=True, blank=True,upload_to="aadhar")
    created_date = models.DateTimeField(default=now, blank=True)
    status = models.CharField(choices=choices,max_length=20, blank=True, null=True)

    def __str__(self):
        return self.user.username
    
    def __init__(self, *args, **kwargs):
        super(vendor, self).__init__(*args, **kwargs)
        self.__original_status = self.status

    def save(self, force_insert=False, force_update=False, *args, **kwargs):
        if self.status != self.__original_status:
            if self.status == "2":
                msg = "Approved"
            elif self.status == "3":
                msg = "Rejected"
            elif self.status == "1":
                msg = "Pending"
            send_mail('HOPON - Account verified!',"Your request for Vendor with HopON is "+ msg +"\n \nPlease login to your account and proceed further.", settings.EMAIL_HOST_USER, [self.user.email])


        super(vendor, self).save(force_insert, force_update, *args, **kwargs)
        self.__original_status = self.status
示例#18
0
class Profile(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE)
    image = models.ImageField(default='default.jpg', upload_to='profile_pics')
    firstname = models.CharField(max_length=20, null=True, blank=True)
    surname = models.CharField(max_length=20, null=True, blank=True)
    sex = models.CharField(max_length=3,
                           choices=sex_choices,
                           default="ຊາຍ",
                           null=True,
                           blank=True)
    tel = PhoneField(blank=True,
                     help_text='Contact phone number e.g 2055667788-856',
                     null=True)
    village = models.CharField(max_length=20, null=True, blank=True)
    district = models.CharField(max_length=12,
                                choices=vt_districts,
                                default="ຈັນທະບູລິ",
                                null=True,
                                blank=True)
    province = models.CharField(max_length=17,
                                default="ນະຄອນຫຼວງວຽງຈັນ",
                                null=True,
                                blank=True)
    birthday = models.DateField(help_text='YY-MM-DD', null=True, blank=True)

    def __str__(self):
        return f'{self.user.username} Profile'

    def save(self, *args, **kwargs):
        super(Profile, self).save(*args, **kwargs)

        img = Image.open(self.image.path)

        if img.height > 300 or img.width > 300:
            output_size = (300, 300)
            img.thumbnail(output_size)
            img.save(self.image.path)
示例#19
0
class Account(AbstractBaseUser):
    email = models.EmailField(verbose_name="email", max_length=60, unique=True)
    organization_name = models.CharField(max_length=60, unique=True)
    organization_website = models.URLField(max_length=1000, unique=True)
    organization_description = models.CharField(max_length=200)
    admin_name = models.CharField(max_length=60)
    phone_number = PhoneField(blank=True)
    country = CountryField(blank_label='(select country')
    postal_code = models.CharField(max_length=60)
    logo = models.ImageField(upload_to="account/media", default="")
    #Not important
    is_admin = models.BooleanField(default=False)
    is_active = models.BooleanField(default=True)
    is_staff = models.BooleanField(default=False)
    is_superuser = models.BooleanField(default=False)
    date_joined = models.DateTimeField(verbose_name='last login',
                                       auto_now_add=True)
    last_login = models.DateTimeField(verbose_name='last login', auto_now=True)
    #Not important

    objects = MyAccountManager()

    USERNAME_FIELD = 'email'
    REQUIRED_FIELDS = [
        'organization_name', 'organization_website',
        'organization_description', 'admin_name', 'phone_number', 'country',
        'postal_code', 'logo'
    ]

    def __str__(self):
        return self.organization_name

    def has_perm(self, perm, obj=None):
        return self.is_admin

    def has_module_perms(self, app_label):
        return True
示例#20
0
class Employee(models.Model):
    """Сотрудник компании"""

    first_name = models.CharField(max_length=50, verbose_name='Имя')
    middle_name = models.CharField(max_length=50, verbose_name='Отчество')
    last_name = models.CharField(max_length=50, verbose_name='Фамилия')
    birthday = models.DateField(verbose_name='Дата рождения')
    email = models.EmailField(verbose_name='e-mail')
    phone = PhoneField(verbose_name='Телефон')
    begin_work = models.DateField(verbose_name='Начало работы')
    end_work = models.DateField(
        blank=True,
        null=True,
        help_text='Введите дату увольнения сотрудника',
        verbose_name='Окончание работы'
    )
    position = models.CharField(max_length=200, verbose_name='Должность')
    department = models.ForeignKey(
        Department,
        on_delete=models.SET_NULL,
        blank=True,
        null=True,
        verbose_name='Отдел')

    class Meta:
        db_table = 'employee'
        ordering = ['last_name', 'first_name', 'middle_name']

    def get_absolute_url(self):
        return reverse('employee-detail', args=[str(self.id)])

    def display_last_name(self):
        return '{0} {1} {2}'.format(self.last_name, self.first_name, self.middle_name)
    display_last_name.short_description = 'Ф.И.О.'

    def __str__(self):
        return self.display_last_name()
示例#21
0
class Profile(models.Model):
    user = models.OneToOneField(User, on_delete=models.CASCADE)
    title = models.CharField(max_length=25, null=True, blank=True)
    summary = models.TextField(max_length=500, null=True, blank=True)
    image = models.ImageField(default='user_profiles/images/default.jpg',
                              upload_to='user_profiles/images/',
                              null=True)
    address_line_1 = models.CharField(max_length=200, null=True, blank=True)
    address_line_2 = models.CharField(max_length=200, null=True, blank=True)
    street_address = models.TextField(max_length=500, null=True, blank=True)
    country = CountryField(blank_label='(select country)')
    gender = models.CharField(max_length=10, choices=GENDER_CHOICES)
    date_of_birth = models.DateField(null=True, blank=True)
    phone = PhoneField(blank=True)
    reg_date = models.DateTimeField(auto_now_add=True, auto_now=False)
    modified_date = models.DateTimeField(auto_now_add=False, auto_now=True)
    timezone = models.CharField(max_length=50, default='UTC')

    def __str__(self):
        return '{} Profile'.format(self.user.username.capitalize())

    # Override the save method
    def save(self):
        super().save()
        img = Image.open(self.image.path)
        if img.width != 200 and img.height != 200:
            output_size = (200, 200)
            img.resize(output_size, Image.ANTIALIAS).save(self.image.path)

    def delete(self, using=None, keep_parents=False):
        super().delete()
        if self.image.path != os.path.join(settings.MEDIA_ROOT,
                                           'user_profiles/images/default.jpg'):
            os.remove(self.image.path)

    def get_absolute_url(self):
        return reverse('user_profiles:profile')
示例#22
0
class Order(models.Model):
    ref_code = models.CharField(max_length=15)
    owner = models.ForeignKey(Account, on_delete=models.SET_NULL, null=True)
    items = models.ManyToManyField(OrderItem)
    date_ordered = models.DateTimeField(auto_now=True)

    # DELIVERY
    delivery_option = models.ForeignKey(Delivery,
                                        on_delete=models.SET_NULL,
                                        null=True)
    is_ordered = models.BooleanField(default=False)
    is_done = models.BooleanField(default=False)
    is_payed = models.BooleanField(default=False)
    is_sent = models.BooleanField(default=False)

    # ADDRESS
    address = models.CharField(max_length=120, default=None, null=True)
    postcode = models.CharField(max_length=6, default=None, null=True)
    city = models.CharField(max_length=30, default=None, null=True)
    phone_number = PhoneField(blank=True, null=True)

    def get_cart_items(self):
        return self.items.all()

    def get_items_number(self):
        return self.items.all().count()

    def get_cart_total(self):
        return sum([item.product.price for item in self.items.all()])

    def get_cart_plus_delivery(self):
        return sum([item.product.price for item in self.items.all()],
                   self.delivery_option.option_price)

    def __str__(self):
        return str(self.date_ordered)
示例#23
0
class ArtistPortfolio(models.Model):
    artistry_category = models.ForeignKey(ArtistryCategory, on_delete=models.CASCADE)
    business_name = models.CharField(max_length=200)
    business_owner = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE) # noqa
    profile_image = models.ImageField(upload_to='pics')
    email_address = models.EmailField(max_length=70, blank=True, null=True)
    phone_number = PhoneField(null=False, blank=False)
    description = RichTextUploadingField(max_length=10000, blank=True, null=True) # noqa
    portfolio_images = RichTextUploadingField(max_length=10000, blank=True, null=True, config_name='special', external_plugin_resources=[('youtube', '/static/personal/vendor/ckeditor_plugins/youtube', 'plugin.js',)],) # noqa
    slug = models.SlugField(max_length=255, blank=True, null=True, unique=True)
    status = models.CharField(max_length=1, choices=STATUS)

    class Meta:
        verbose_name = "Artist Portfolio"
        verbose_name_plural = "Artist Porfolios"
        ordering = ['business_owner', 'business_name']

    # methods
    def __str__(self):
        return self.business_name

    def save(self, *args, **kwargs):
        self.slug = slugify(self.business_name + "-" + self.business_owner.username) # noqa
        super().save(*args, **kwargs)
示例#24
0
class Application(models.Model):
    owner = models.ForeignKey(User,
                              on_delete=models.CASCADE,
                              related_name="job_applications")
    company = models.CharField(max_length=255)
    position = models.CharField(max_length=255)
    description = models.TextField(
        blank=True,
        null=True,
    )
    notes = models.TextField(
        blank=True,
        null=True,
    )
    contact_name = models.CharField(max_length=255, blank=True, null=True)
    contact_email = models.CharField(max_length=255, blank=True, null=True)
    contact_phone = PhoneField(blank=True,
                               null=True,
                               help_text='Contact phone number')
    date_submitted = models.DateTimeField(auto_now_add=True)
    status = models.CharField(max_length=255, blank=True, null=True)

    def __str__(self):
        return f"{self.company} {self.position} submitted on {self.date_submitted}"
示例#25
0
class Profile(models.Model):
    user_id = models.ForeignKey(User,
                                related_name='profiles',
                                on_delete=models.CASCADE)
    gender = models.CharField(max_length=12, blank=False)
    mobile_no = PhoneField(max_length=20, blank=True)
    #email = models.EmailField(max_length=150)
    signup_confirmation = models.BooleanField(default=False)
    about = models.CharField(max_length=150, blank=True)
    photo = models.ImageField(upload_to='', blank=False)
    #TODO chanage location field here #Have to think of it... Experimental
    location = models.CharField("Office location",
                                blank=False,
                                null=False,
                                max_length=50)
    # created_at = models.DateTimeField(auto_now=True)
    updated_at = models.DateTimeField(auto_now_add=True)

    # def __str__(self):
    #     return self.user.username

    class Meta:
        unique_together = ["user_id", "gender", "mobile_no", "location"]
        ordering = ['user_id']
示例#26
0
class Party_Wholeseller(models.Model):
    #add auto increment
    #do not make id default
    party_id = models.CharField(max_length=10, null=False, primary_key=True)
    name = models.CharField(max_length=20, null=False)
    address = models.CharField(max_length=50)
    city = models.CharField(max_length=10)
    state = models.CharField(max_length=20)
    gstin = models.CharField(null=False,
                             verbose_name="GST Number",
                             max_length=20)
    dl_number = models.CharField(null=False, max_length=10)
    contact = PhoneField(blank=True)
    pan_number = models.CharField(max_length=11,
                                  null=False,
                                  unique=True,
                                  verbose_name="Pan Number")
    cheque = GenericRelation(Cheque)

    def __str__(self):
        return self.name

    def get_absolute_url(self):
        return reverse('create-wholeseller')
示例#27
0
class Psychologue(CustomUser):
    is_client = models.BooleanField(default = False)
    is_psychologist = models.BooleanField(default = True)
    user = models.OneToOneField(CustomUser, on_delete=models.CASCADE, parent_link=True)
    permis_num = models.CharField(max_length=15, blank=True, null=True)
    permis_date = models.DateField(blank=True, default='2018-01-01', null=True)
    avatar = models.ImageField(upload_to = 'media/profile_picture/')
    phone = PhoneField(blank=True, help_text='Contact phone number')
    fax = models.CharField(max_length=10, blank=True)
    bio = models.TextField(max_length=1700, blank=True)
    education = models.CharField(max_length=70, blank=True)
    site_web = models.URLField(blank=True)
    linked_in = models.URLField(blank=True)
    tps = models.CharField(max_length=20, blank=True, null=True)
    tvq = models.CharField(max_length=20, blank=True, null=True)
    USERNAME_FIELD = 'email'
    def __str__(self):
        user_info = Psychologue.objects.get(id=self.user_id)
        return user_info.first_name + ' ' + user_info.last_name
    class Meta:
        verbose_name = 'Psychologue'
        verbose_name_plural = 'Psychologues'
    def get_absolute_url(self):
            return reverse('profile', kwargs={'pk': self.pk})
示例#28
0
class Visioneer(models.Model):
    firstname = models.CharField('First Name', max_length=100, null=False)
    lastname = models.CharField('Last Name', max_length=100, null=False)
    visioneerEmailAddress = models.EmailField('*****@*****.**',
                                              max_length=100,
                                              null=False,
                                              unique=True)
    password = models.CharField('Password', max_length=100, null=False)
    passwordhashfunction = models.CharField(max_length=100,
                                            null=False,
                                            default='MD%')
    orgunitpath = models.CharField(max_length=100, null=False, default='org')
    recoveryemail = models.EmailField('Recovery Email',
                                      max_length=100,
                                      null=False)
    recoveryphone = PhoneField(
        'Phone Number',
        blank=True,
    )
    homeaddress = models.CharField('Primary Address',
                                   max_length=100,
                                   null=False)
    employeeid = models.CharField('USN', max_length=100, null=False)
    departement = models.CharField(max_length=100, null=False, default='title')
示例#29
0
class CustomUser(AbstractBaseUser, PermissionsMixin):
    username = models.CharField(max_length=100, unique=True)
    DOB = models.DateField(blank=True,null=True)
    email = models.EmailField(null=True, blank=True)
    first_name = models.CharField(max_length=100,null=True, blank=True)
    last_name = models.CharField(max_length=100,null=True, blank=True)
    is_Doctor = models.BooleanField(default=False)
    is_Patient = models.BooleanField(default=False)
    is_staff = models.BooleanField(default=False)
    is_active = models.BooleanField(default=True)
    is_superuser = models.BooleanField(default=False)
    is_hospital_staff=models.BooleanField(default=False)
    date_joined = models.DateTimeField(auto_now_add=True)
    # profile_pic = models.ImageField(
    #     upload_to="uploads/%Y/%m/%d/", null=True, blank=True
    # )
    profile_pic=models.TextField(null=True,blank=True)
    contact_no = PhoneField(blank=True, help_text = 'Contact phone number',null=True)


    objects = CustomManager()

    USERNAME_FIELD = "username"
    REQUIRED_FIELDS = []
示例#30
0
class Record(models.Model):
	user = models.ForeignKey(User, on_delete=models.CASCADE, related_name='records')
	title = models.CharField(max_length=225)
	sex = models.CharField(max_length=225)
	age = models.PositiveIntegerField()
	phone = PhoneField(blank=False, help_text='Contact phone number')
	created_at = models.DateTimeField(auto_now=True)
	surgery_history = models.TextField()
	surgery_history_html = models.TextField(editable=False)


	def __str__(self):
		return "User: {}, Title: {}, Sex: {}, ".format(self.user.username, self.title, self.sex)

	def save(self, *args, **kwargs):
		self.surgery_history_html = misaka.html(self.surgery_history)
		super().save(*args, **kwargs)

	def get_absolute_url(self):
		return reverse('records:single', kwargs={'username':self.user.username,'pk':self.pk})

	class Meta:
		ordering = ['-created_at']
		unique_together = ['user', 'surgery_history']