simple refactor ObjectAbstract & User class -> models.py (generalApp)
parent
c4d4a1c0e7
commit
7ddfa6deb2
|
|
@ -4,6 +4,7 @@ from django.db.models import Avg
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
from .utilities import *
|
from .utilities import *
|
||||||
|
|
||||||
|
|
||||||
class ObjectAbstract(models.Model):
|
class ObjectAbstract(models.Model):
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
|
|
@ -37,6 +38,7 @@ class ObjectAbstract(models.Model):
|
||||||
return False
|
return False
|
||||||
return True
|
return True
|
||||||
|
|
||||||
|
@classmethod
|
||||||
def allObjectsDict(model):
|
def allObjectsDict(model):
|
||||||
objectAll = model.objects.all()
|
objectAll = model.objects.all()
|
||||||
list = []
|
list = []
|
||||||
|
|
@ -136,6 +138,7 @@ class ObjectAbstract(models.Model):
|
||||||
class Meta:
|
class Meta:
|
||||||
abstract = True
|
abstract = True
|
||||||
|
|
||||||
|
|
||||||
class Users(ObjectAbstract):
|
class Users(ObjectAbstract):
|
||||||
login = models.CharField(max_length=30)
|
login = models.CharField(max_length=30)
|
||||||
password = models.CharField(max_length=200)
|
password = models.CharField(max_length=200)
|
||||||
|
|
@ -156,6 +159,29 @@ class Users(ObjectAbstract):
|
||||||
"email": self.email,
|
"email": self.email,
|
||||||
"privilige": self.privilige}
|
"privilige": self.privilige}
|
||||||
|
|
||||||
|
def addObject(self, request, parentID, privilige):
|
||||||
|
newUser = jsonLoad(request)
|
||||||
|
newUser['privilige'] = 1
|
||||||
|
newUser['password'] = createPassHash(object['password'])
|
||||||
|
if self.validateUnique(self, parentID, newUser):
|
||||||
|
return self.saveObject(self, parentID, newUser)
|
||||||
|
else:
|
||||||
|
return HttpResponse("User Is Already Exist")
|
||||||
|
|
||||||
|
def __validateUnique(self, parentID, userDict):
|
||||||
|
usersAll = self.allObjectsDict(User)
|
||||||
|
for user in usersAll:
|
||||||
|
if user['login'].upper() == userDict['login'].upper():
|
||||||
|
return False
|
||||||
|
return True
|
||||||
|
|
||||||
|
def __saveObject(model, parentID, objectDict):
|
||||||
|
newUser = User()
|
||||||
|
newUser.fromDict(objectDict)
|
||||||
|
newUser.save()
|
||||||
|
return HttpResponse(f"Add new User: {newUser.toDict()}")
|
||||||
|
|
||||||
|
|
||||||
class Threads(ObjectAbstract):
|
class Threads(ObjectAbstract):
|
||||||
name = models.CharField(max_length=30)
|
name = models.CharField(max_length=30)
|
||||||
user = models.ForeignKey(Users, on_delete = models.CASCADE)
|
user = models.ForeignKey(Users, on_delete = models.CASCADE)
|
||||||
|
|
@ -174,6 +200,7 @@ class Threads(ObjectAbstract):
|
||||||
"moderator_avatar": self.user.avatar,
|
"moderator_avatar": self.user.avatar,
|
||||||
"moderator_privilige": self.user.privilige}
|
"moderator_privilige": self.user.privilige}
|
||||||
|
|
||||||
|
|
||||||
class Subjects(ObjectAbstract):
|
class Subjects(ObjectAbstract):
|
||||||
name = models.CharField(max_length=30)
|
name = models.CharField(max_length=30)
|
||||||
user = models.ForeignKey(Users, on_delete = models.CASCADE)
|
user = models.ForeignKey(Users, on_delete = models.CASCADE)
|
||||||
|
|
@ -203,6 +230,7 @@ class Subjects(ObjectAbstract):
|
||||||
"thread_id": self.thread.id,
|
"thread_id": self.thread.id,
|
||||||
"thread_name": self.thread.name}
|
"thread_name": self.thread.name}
|
||||||
|
|
||||||
|
|
||||||
class Comments(ObjectAbstract):
|
class Comments(ObjectAbstract):
|
||||||
text = models.CharField(max_length=1000)
|
text = models.CharField(max_length=1000)
|
||||||
user = models.ForeignKey(Users, on_delete = models.CASCADE)
|
user = models.ForeignKey(Users, on_delete = models.CASCADE)
|
||||||
|
|
@ -236,6 +264,7 @@ class Comments(ObjectAbstract):
|
||||||
"subject_id": self.subject.id,
|
"subject_id": self.subject.id,
|
||||||
"subject_name": self.subject.name}
|
"subject_name": self.subject.name}
|
||||||
|
|
||||||
|
|
||||||
class Ratings(ObjectAbstract):
|
class Ratings(ObjectAbstract):
|
||||||
value = models.IntegerField()
|
value = models.IntegerField()
|
||||||
user = models.ForeignKey(Users, on_delete = models.CASCADE)
|
user = models.ForeignKey(Users, on_delete = models.CASCADE)
|
||||||
|
|
@ -264,6 +293,7 @@ class Ratings(ObjectAbstract):
|
||||||
"comment_id": self.comment.id,
|
"comment_id": self.comment.id,
|
||||||
"subject": self.comment.subject.name}
|
"subject": self.comment.subject.name}
|
||||||
|
|
||||||
|
|
||||||
class Transactions(ObjectAbstract):
|
class Transactions(ObjectAbstract):
|
||||||
price = models.FloatField(default=255)
|
price = models.FloatField(default=255)
|
||||||
price_forecast = models.FloatField(default=255)
|
price_forecast = models.FloatField(default=255)
|
||||||
|
|
@ -296,6 +326,7 @@ class Transactions(ObjectAbstract):
|
||||||
"author": self.user.login,
|
"author": self.user.login,
|
||||||
"exchange_id": self.exchange.id}
|
"exchange_id": self.exchange.id}
|
||||||
|
|
||||||
|
|
||||||
class Triggers(ObjectAbstract):
|
class Triggers(ObjectAbstract):
|
||||||
course_values_for_trigger = models.FloatField(default=255)
|
course_values_for_trigger = models.FloatField(default=255)
|
||||||
date_of_trigger = models.CharField(max_length=255)
|
date_of_trigger = models.CharField(max_length=255)
|
||||||
|
|
@ -327,6 +358,7 @@ class Triggers(ObjectAbstract):
|
||||||
def setActualTime(self):
|
def setActualTime(self):
|
||||||
self.date_of_trigger = str(datetime.now().strftime("%Y-%d-%m %H:%M"))
|
self.date_of_trigger = str(datetime.now().strftime("%Y-%d-%m %H:%M"))
|
||||||
|
|
||||||
|
|
||||||
class Notifications(ObjectAbstract):
|
class Notifications(ObjectAbstract):
|
||||||
message = models.CharField(max_length=255)
|
message = models.CharField(max_length=255)
|
||||||
user = models.ForeignKey(Users, on_delete = models.CASCADE)
|
user = models.ForeignKey(Users, on_delete = models.CASCADE)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue