예제 #1
0
    def post(self):
        data = parser.parse_args()

        if ClassModel.find_by_name(data['name']):
            return {
                'message': 'This class {} already exists '.format(data['name'])
            }

        if ClassModel.find_by_code(data['code']):
            return {
                'message': 'This code {} already exists '.format(data['code'])
            }

        #CREATE MODEL DATA FOR SAVE
        new_class = ClassModel(
            name=data['name'],
            code=data['code'],
        )
        try:
            new_class.save_to_db()  #CALL THIS FUNCTION FOR COMMIT DATA

            return {
                'message':
                ' This {} class data  created successfully'.format(
                    data['name'])
            }, 200
        except:
            return {'message': 'Something went wrong'}, 500
예제 #2
0
    def put(self, name):
        data = Enroll.parser.parse_args()
        try:
            enroll_class = ClassModel.find_by_name(name)
            student_id = get_jwt_claims()['id']
            if enroll_class:
                enroll = EnrollModel.deactive(student_id, enroll_class.id)
                return {
                    'message':
                    'Deregistered {} successfully!'.format(data['name']),
                    'isRemoved': enroll.isRemoved
                }, 201
            return {'message': 'Class not found!'}

        except AssertionError as exception_message:
            return {'message': 'Error: {}.'.format(exception_message)}, 400
예제 #3
0
    def post(self, name):
        data = Enroll.parser.parse_args()
        try:
            enroll_class = ClassModel.find_by_name(name)
            student_id = get_jwt_claims()['id']
            if enroll_class:
                if enroll_class.isAvailable(
                ) and not EnrollModel.get_by_student_and_class(
                        student_id, enroll_class.id):
                    enroll = EnrollModel(student_id, enroll_class.id)
                    enroll.save_to_db()
                    return {
                        'message':
                        'Enroll {} successfully!'.format(data['name']),
                        'class': enroll_class.json()
                    }, 201
                return {
                    'message':
                    'No slot available or you cannot register this class'
                }
            return {'message': 'Class not found!'}

        except AssertionError as exception_message:
            return {'message': 'Error: {}.'.format(exception_message)}, 400