upgrade AbstractCRUD
parent
5641420acd
commit
607866bcb0
|
|
@ -33,7 +33,7 @@ class AbstractUtilsCRUD():
|
||||||
|
|
||||||
class AbstractGet(AbstractUtilsCRUD):
|
class AbstractGet(AbstractUtilsCRUD):
|
||||||
"""
|
"""
|
||||||
This class have a abstract getOne / getAll / getByParent
|
This class have a abstract `getOne` / `getAll` / `getByParent`
|
||||||
"""
|
"""
|
||||||
|
|
||||||
parent_id_field = ''
|
parent_id_field = ''
|
||||||
|
|
@ -65,58 +65,76 @@ class AbstractGet(AbstractUtilsCRUD):
|
||||||
return HttpResponse(self.__getAllByParentID(parentID))
|
return HttpResponse(self.__getAllByParentID(parentID))
|
||||||
|
|
||||||
def __getAllByParentID(self, parentID):
|
def __getAllByParentID(self, parentID):
|
||||||
list = [ x.toDict() for x in self.objectFactory()
|
list = [
|
||||||
.__get.objects.filter(**{ parent_id_field: parentID })]
|
x.toDict()
|
||||||
|
for x in self.objectFactory()
|
||||||
|
.__get.objects.filter(**{ parent_id_field: parentID })
|
||||||
|
]
|
||||||
return json.dumps(list)
|
return json.dumps(list)
|
||||||
|
|
||||||
|
|
||||||
class AbstractCreate(AbstractUtilsCRUD):
|
class AbstractCreate(AbstractUtilsCRUD):
|
||||||
|
"""
|
||||||
|
This class have a abstract `create`
|
||||||
|
"""
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def addObject(request, privilige):
|
def addObject(request, privilige):
|
||||||
|
"""
|
||||||
|
create object
|
||||||
|
"""
|
||||||
object = jsonLoad(request)
|
object = jsonLoad(request)
|
||||||
if checkSession(request, privilige):
|
if checkSession(request, privilige):
|
||||||
if self.__validateUnique(object):
|
if self.validateUnique(object):
|
||||||
return self.__saveObject(object)
|
return self.saveObject(object)
|
||||||
else:
|
else:
|
||||||
return HttpResponse("Object Is Already Exist")
|
return HttpResponse("Object Is Already Exist")
|
||||||
else:
|
else:
|
||||||
return HttpResponse("No Permission")
|
return HttpResponse("No Permission")
|
||||||
|
|
||||||
@classmethod
|
def validateUnique(self, userDict):
|
||||||
def __validateUnique(self, userDict):
|
"""
|
||||||
|
use validate in override this method
|
||||||
|
"""
|
||||||
return True
|
return True
|
||||||
|
|
||||||
@classmethod
|
def saveObject(self, objectDict):
|
||||||
def __saveObject(self, objectDict):
|
"""
|
||||||
newObject = self.__getObject()
|
save object without parent
|
||||||
|
"""
|
||||||
|
newObject = self.objectFactory()
|
||||||
newObject.fromDict(objectDict)
|
newObject.fromDict(objectDict)
|
||||||
newObject.save()
|
newObject.save()
|
||||||
return HttpResponse(f"Add new Object: {newObject.toDict()}")
|
return HttpResponse(f"Add new Object: {newObject.toDict()}")
|
||||||
|
|
||||||
@classmethod
|
def saveObject(self, parentID, objectDict):
|
||||||
def __saveObject(self, parentID, objectDict):
|
"""
|
||||||
newObject = self.__getObject()
|
save object with parent & subject + comment & set trigger time
|
||||||
|
"""
|
||||||
|
newObject = self.objectFactory()
|
||||||
newObject.fromDict(objectDict)
|
newObject.fromDict(objectDict)
|
||||||
|
|
||||||
self.__setParentID(parentID)
|
self.setParentID(parentID)
|
||||||
self.__createFirstComment(newObject, objectDict)
|
self.createFirstComment(newObject, objectDict)
|
||||||
self.__setActualTimeTrigger()
|
self.setActualTimeTrigger()
|
||||||
|
|
||||||
newObject.save()
|
newObject.save()
|
||||||
return HttpResponse(f"Add new Subject: {newObject.toDict()} -> {newComment.toDict()}")
|
return HttpResponse(f"Add new Object: {newObject.toDict()}")
|
||||||
|
|
||||||
@classmethod
|
def createFirstComment(newSubject, objectDict):
|
||||||
def __createFirstComment(newSubject, objectDict):
|
|
||||||
pass
|
pass
|
||||||
|
|
||||||
@classmethod
|
def setActualTimeTrigger():
|
||||||
def __setActualTimeTrigger():
|
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
class AbstractUpdate(AbstractUtilsCRUD):
|
class AbstractUpdate(AbstractUtilsCRUD):
|
||||||
pass
|
|
||||||
|
def updateObject(self, request, objectDict, objectID):
|
||||||
|
objectOld = self.objectFactory().objects.get(pk = objectID)
|
||||||
|
objectOld.fromDict(objectDict)
|
||||||
|
objectOld.save()
|
||||||
|
return HttpResponse(f"Update Object: {objectOld.toDict()}")
|
||||||
|
|
||||||
|
|
||||||
class AbstractDelete(AbstractUtilsCRUD):
|
class AbstractDelete(AbstractUtilsCRUD):
|
||||||
|
|
|
||||||
|
|
@ -184,8 +184,11 @@ class Users(ObjectAbstract):
|
||||||
else:
|
else:
|
||||||
return HttpResponse('Bad Password')
|
return HttpResponse('Bad Password')
|
||||||
putUser.fromDict(userDict)
|
putUser.fromDict(userDict)
|
||||||
|
if checkUserPermission(PutUser.toDict(), request):
|
||||||
putUser.save()
|
putUser.save()
|
||||||
return HttpResponse(f"User: {putUser.toDict()} has been updated")
|
return HttpResponse(f"User: {putUser.toDict()} has been updated")
|
||||||
|
else
|
||||||
|
return HttpResponse("No Permission")
|
||||||
|
|
||||||
# Delete User
|
# Delete User
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue