Пример #1
0
def CreateSingleInvite(current_user, user_type):

    if not request.data:
        return ResponseHelper.ReturnBadRequestResponse()

    else:
        request_data = json.loads(request.data)

        invite = Invite(
            None,  # For Id that is auto generated by a trigger
            request_data[str(InvitesTable.INVITE_TYPE)],
            current_user,  # Ensure log is created for the current user,
            request_data[str(InvitesTable.SENT_TO)],
            request_data[str(InvitesTable.STATUS)],
            request_data[str(InvitesTable.SEND_DATE)],
            request_data[str(InvitesTable.EVENT_ID)])

        invite_dao = InviteDao()

        if invite_dao.CreateSingleInvite(invite):

            return ResponseHelper.ReturnCreatedResponse("Invite Created")

        else:

            return ResponseHelper.ReturnConflictResponse(
                "Unable to Create Invite!")
Пример #2
0
    def CreateCoachAccessWithInvite(self, access):

        create_invite_dao = InviteDao()

        invite = Invite(
            None,  # For Id that is auto generated by a trigger
            3,
            access.Coach_Id.__str__(),
            access.Athlete_Id.__str__(),
            1,
            access.Start_Date.__str__(),
            None)

        if create_invite_dao.CreateSingleInvite(invite):

            get_invite_dao = InviteDao()

            invite_confirm = get_invite_dao.GetInvite(invite.Sent_By,
                                                      invite.Sent_To,
                                                      invite.Status,
                                                      invite.Invite_Type,
                                                      invite.Send_Date)

            if invite_confirm:

                cursor = self.db.cursor()

                sql = QueryBuilder() \
                    .Insert() \
                    .Into() \
                    .Table(CoachAthleteTable.TABLE_NAME) \
                    .ColumnsBrackets([
                        CoachAthleteTable.ATHLETE_ID,
                        CoachAthleteTable.COACH_ID,
                        CoachAthleteTable.CAN_ACCESS_TRAINING_LOG,
                        CoachAthleteTable.CAN_ACCESS_TARGETS,
                        CoachAthleteTable.IS_ACTIVE,
                        CoachAthleteTable.START_DATE,
                        CoachAthleteTable.INVITE_ID,
                    ]) \
                    .ValuesKeyword() \
                    .ValuesBrackets([
                        access.Athlete_Id.__str__(),
                        access.Coach_Id.__str__(),
                        access.Can_Access_Training_Log.__str__(),
                        access.Can_Access_Targets.__str__(),
                        access.Is_Active.__str__(),
                        access.Start_Date.__str__(),
                        invite_confirm[str(InvitesTable.ID)]
                    ]) \
                    .Build()

                cursor.execute(sql,
                               QueryBuilder().CountNulls(sql).BuildNullTuple())

                if cursor.rowcount != 0:
                    self.db.commit()
                    cursor.close()
                    self.db.close()
                    return True
                else:
                    cursor.close()
                    self.db.close()
                    return None

            else:
                return None

        else:
            return None