Exemplo n.º 1
0
    def test_department_model(self):
        """
        Test number of records in Department table
        """

        # create test department
        department = Department(name="IT", description="The IT Department")

        # save department to database
        db.session.add(department)
        db.session.commit()

        self.assertEqual(Department.query.count(), 1)
 def setUp(self) -> None:
     self.app = create_app('testing')
     self.app_context = self.app.app_context()
     self.app_context.push()
     db.create_all()
     Role.insert_roles()
     a = User(name='admin', email='*****@*****.**', password='******')
     u1 = User(name='10', email='10', password='******')
     u2 = User(name='20', email='20', password='******')
     u3 = User(name='30', email='30', password='******')
     d = Department(name='kids')
     u1.department = d
     db.session.add_all([a, u1, u2, u3, d])
     db.session.commit()
Exemplo n.º 3
0
def create_department():
    form = DepartmentForm()
    if form.validate_on_submit():
        department = Department(name=form.name.data,
                                description=form.description.data)

        db.session.add(department)
        db.session.commit()

        flash('Department created succesfully')

        return redirect(url_for('admin.departments'))

    return render_template('admin/create_department.html',
                           title='Create Departments',
                           form=form)
def get_department(session, state_id, department_type):
    """Get department from database"""
    department = session.query(Department).filter(
        Department.state_id == state_id).filter(
            Department.department_type == department_type).first()
    if department is None:
        department = Department()
        state = session.query(State).get(state_id)
        if not state:
            state = State()
            state.id = state_id
            session.add(state)
        department.state_id = state.id
        department.department_type = department_type
        session.add(department)
        session.commit()
    return department
Exemplo n.º 5
0
def departments():

    number_of_employees = current_user.number_of_employees
    number_of_bathrooms = 0

    # add one bathroom per 10 employees, if 11, 2 is added.
    while(number_of_employees > 0):
        number_of_bathrooms+=1
        number_of_employees-=10

    # suggested bathrooms
    suggested_departments = [{"name": "Bathroom "+str(i),"size":6} for i in range(number_of_bathrooms)]


    departments = Department.query.all()

    window_room = 0
    transit_room = 0

    if request.method == 'POST':
        if request.form.get('action') != 'add':
            print("name of department: ",str(request.form.get('action')))
            name_of_department = str(request.form.get('action')).capitalize()
            dep = Department.query.filter_by(name = name_of_department).first()
            db.session.delete(dep)
            db.session.commit()
        if request.form.get('action') == 'add':
            if request.form.get('window_room'):
                window_room = 1
            if request.form.get('transit_room'):
                transit_room = 1
            name_of_department = str(request.form.get('name_of_department')).capitalize()
            if request.form.get('number_of_employees'):
                number_of_employees = int(request.form.get('number_of_employees'))
            else:
                number_of_employees = 0
            # check if an area has been submitted, if not calculate area from number of employees
            if request.form.get('area_of_department'):
                area = int(request.form.get('area_of_department'))
            else:
                area = number_of_employees*7
            dep = Department(name = name_of_department, size = area, employees = number_of_employees, transit = transit_room, window = window_room, owner = current_user)
            db.session.add(dep)
            db.session.commit()
        return redirect(url_for('departments'))
    return render_template('departments.html', title='Departments', departments=departments, suggested_departments = suggested_departments)
Exemplo n.º 6
0
	def test_reassign(self):
		"""
		Test that an admin can assign a new role and department
		to an employee
		"""

		# Create new department
		department = Department(name=test_department2_name,
                                description=test_department2_description)

		# Create new role
		role = Role(name=test_role2_name,
                    description=test_role2_description)

		# Add to database
		db.session.add(department)
		db.session.add(role)
		db.session.commit()

		# Login as admin user
		self.login_admin_user()

		# Click employees menu link
		self.driver.find_element_by_id("employees_link").click()
		time.sleep(1)

		# Click on assign link
		self.driver.find_element_by_class_name("assign").click()
		time.sleep(1)

		# Select new department and role
		select_dept = Select(self.driver.find_element_by_id("department"))
		select_dept.select_by_visible_text(test_department2_name)
		select_role = Select(self.driver.find_element_by_id("role"))
		select_role.select_by_visible_text(test_role2_name)
		self.driver.find_element_by_id("submit").click()
		time.sleep(2)

		# Assert success message is shown
		success_message = self.driver.find_element_by_class_name("alert").text
		assert "You have successfully assigned a department and role" in success_message

		# Assert that employee's department and role has changed
		employee = Employee.query.get(2)
		self.assertEqual(employee.role.name, test_role2_name)
		self.assertEqual(employee.department.name, test_department2_name)
Exemplo n.º 7
0
 def test_department_model(self):
     """Test number of records in Department table"""
     self.assertEqual(Department.query.count(), 0)
     # create test department
     department = Department(name="IT", description="The IT Department")
     # save department to database
     db.session.add(department)
     db.session.commit()
     self.assertEqual(Department.query.count(), 1)
     # retrive department from database
     it = Department.query.filter_by(name="IT").first()
     self.assertEqual(it.description, "The IT Department")
     # edit a department
     it.description = "My IT Department"
     db.session.commit()
     newit = Department.query.filter_by(name="IT").first()
     self.assertEqual(it.description, "My IT Department")
Exemplo n.º 8
0
def add_course():
    form = AddCourseForm()
    form.existing_dept.choices = [(0, 'NEW DEPARTMENT')]+[(row.id, row.name) for row in Department.query.all()]

    if form.validate_on_submit():
        if form.existing_dept.data != 0:
            course = Course(dept_id=form.existing_dept.data, number=form.number.data, name=form.name.data)
            db.session.add(course)
        else:
            dept = Department(name=form.new_dept_name.data, abbr=form.new_dept_abbr.data)
            db.session.add(dept)
            course = Course(department=dept, number=form.number.data, name=form.name.data)
            db.session.add(course)
        db.session.commit()
        return redirect(url_for('edit_account'))
    else:
        print(form.errors)

    return render_template('newCourse.html', form=form)
Exemplo n.º 9
0
def manage_department_names():
    name_list = Department.query.all()
    adddnform = AddDeptNameForm()
    dsdnForm = DeleteSelectedForm()
    adddnSuccessful = False
    if request.method == "POST":
        try:
            if adddnform.validate_on_submit():
                deptname = Department(department_name=adddnform.newdn.data)
                db.session.add(deptname)
                db.session.commit()
                adddnSuccessful = True
        except sqlalchemy.exc.SQLAlchemyError as e:
            db.session.rollback()
    return render_template('admin/manage_department_names.html',
                           name_list=name_list,
                           adddnform=adddnform,
                           adddnSuccessful=adddnSuccessful,
                           dsdnForm=dsdnForm)
Exemplo n.º 10
0
    def post(self):
        json_data = request.get_json(force=True)
        if not json_data:
            return {'message': 'No Input Data Provided'}, 400
        # validate and deserialize input
        data = department_schema.load(json_data)

        department = Department.query.filter(
            Department.name == json_data['name']).first()
        if department:
            return {'message': 'Department with that name already exists'}
        department = Department(name=json_data['name'],
                                description=json_data['description'])
        db.session.add(department)
        db.session.commit()

        result = department_schema.dump(department)

        return {'status': 'success', 'data': result}, 201
Exemplo n.º 11
0
def import_data(request):
    rb = xlrd.open_workbook('D:\pydata\prepod_goda.xlsx')
    sheet = rb.sheet_by_index(0)
    ins = Institute.objects.all()[0]
    n = sheet.nrows
    s = 'sdads'
    for rownum in range(sheet.nrows):
        row = sheet.row_values(rownum)
        d = row[0].strip()
        t = row[1].strip()
        g = row[2].strip()
        dep = Department()
        tech = Teacher()
        group = Group()

        db_d = Department.objects.filter(name=d)
        if (db_d.count() == 0):
            dep.name = d
            dep.institute = ins
            dep.save()
        else:
            dep = db_d[0]

        db_t = Teacher.objects.filter(last_name=t)
        if (db_t.count() == 0):
            tech.last_name = t
            tech.department = dep
            tech.save()
        else:
            tech = db_t[0]

        db_g = Group.objects.filter(name=g)
        if (db_g.count() == 0):
            group.name = g
            group.department = dep
            group.save()
        else:
            group = db_g[0]

        group.teachers.add(tech)
        group.save()

    return HttpResponse("OK " + s)
Exemplo n.º 12
0
    def setUp(self):
        """Create tables and fill them up with testing data.

        Being invoked before each test of current class for creating test tables and filling them.

        Returns:
            None
        """
        db.create_all()
        logger.info('Test database has been created')

        # Create test admin user.
        admin = Employee(email='*****@*****.**',
                         username='******',
                         password='******',
                         is_admin=True)
        logger.info(f'{admin.username} has been created')

        # Create test non-admin user.
        employee = Employee(email='*****@*****.**',
                            first_name='Test',
                            last_name='TestLastName',
                            username="******",
                            salary=1000,
                            date_of_birth=datetime.strptime(
                                '1996-01-01', '%Y-%m-%d').date(),
                            password="******")
        logger.info(f'{employee.username} has been created')

        # Create test department.
        department = Department(name='TestDep')
        logger.info(f'{department.name} has been created')

        # save users to database
        db.session.add(department)
        db.session.add(admin)
        db.session.add(employee)
        db.session.commit()
        logger.info(
            f'Test {department.name}, {admin.username} and {employee.username} have been committed'
        )

        return None
Exemplo n.º 13
0
def create(**kwargs):
    #1获取参数
    check_field_exists(Department, kwargs)

    if kwargs.get("pid", 0) != 0:
        check_value_exists(Department, "id", kwargs.get("pid", None))

    #2处理数据
    #print inspect.getmembers(Department, predicate=inspect.is)
    #return 1
    print kwargs
    #3实例化record
    record = Department(**kwargs)
    #4插入到数据库
    db.session.add(record)
    try:
        db.session.commit()
    except Exception, e:
        raise Exception(e.message.split(") ")[1])
Exemplo n.º 14
0
def create_department():
    """
    Add department to db.
    """
    form = DepartmentForm()
    if form.validate_on_submit():
        department = Department(
            department_name=form.name.data,
            description=form.data.data
        )
        db.session.add(department)
        db.session.commit()

        flash('New department was added!')
        return redirect(url_for('main.home'))
    return render_template('department/create_department.html',
                           title='Add new department',
                           form=form,
                           legend='New department'
                           )
Exemplo n.º 15
0
def dbinit():
		data = []
		data.append(File(filename="default.png"))
		data.append(Rol(descripcion="administrador"))
		data.append(Rol(descripcion="supervisor"))
		data.append(Rol(descripcion="agente"))
		data.append(Rol(descripcion="cliente"))
		data.append(State(descripcion="New"))
		data.append(State(descripcion="Proccess"))
		data.append(State(descripcion="Pending"))
		data.append(State(descripcion="Close"))
		data.append(State(descripcion="Re-Open"))
		data.append(State(descripcion="Abandoned"))
		data.append(Department(descripcion="IT"))
		data.append(Priority(descripcion="standar", respuesta = 8, resuelto = 72))
		data.append(Priority(descripcion="High", respuesta = 4, resuelto = 24, escalable = 1))
		data.append(Priority(descripcion="Critical", respuesta = 1, resuelto = 4 ))
		data.append(Priority(descripcion="Scheduled or Low", respuesta = 3, resuelto = 7))
		data.append(Client(nombre="Default"))
		db.session.add_all(data)
		db.session.commit()
		rolAdm =  Rol.query.filter_by(descripcion="administrador").first()
		sys = User(
			username="******",
			nombre = "COMPUTER",
			apellido = "SYS",
			email = "*****@*****.**",
			rol_id = rolAdm.id
		)
		administrador = User(
			username="******",
			nombre = "Super",
			apellido = "admin",
			email = "*****@*****.**",
			rol_id = rolAdm.id
		)
		administrador.set_password("admin")
		sys.set_password(''.join(random.choices(string.ascii_uppercase + string.digits, k = N)))
		db.session.add(sys)
		db.session.add(administrador)
		db.session.commit()
Exemplo n.º 16
0
    def setUp(self):
        """Setup the test driver and create test users"""
        chrome_options = webdriver.ChromeOptions()
        chrome_options.add_argument('--headless')
        chrome_options.add_argument('--no-sandbox')
        self.driver = webdriver.Chrome(
            chrome_options=chrome_options,
            service_args=['--verbose', '--log-path=/tmp/chrome.log'])
        self.driver.get(self.get_server_url())

        db.session.commit()
        db.drop_all()
        db.create_all()

        # create test admin user
        self.admin = Employee(username=test_admin_username,
                              email=test_admin_email,
                              password=test_admin_password,
                              is_admin=True)

        # create test employee user
        self.employee = Employee(username=test_employee1_username,
                                 first_name=test_employee1_first_name,
                                 last_name=test_employee1_last_name,
                                 email=test_employee1_email,
                                 password=test_employee1_password)

        # create test department
        self.department = Department(name=test_department1_name,
                                     description=test_department1_description)

        # create test role
        self.role = Role(name=test_role1_name,
                         description=test_role1_description)

        # save users to database
        db.session.add(self.admin)
        db.session.add(self.employee)
        db.session.add(self.department)
        db.session.add(self.role)
        db.session.commit()
Exemplo n.º 17
0
def departments():
    form1 = DepartmentRegistrationForm()
    form2 = TypeRegistrationForm()
    if form1.validate_on_submit():
        department_name = Department(name=form1.dept_name.data)
        db.session.add(department_name)
        db.session.commit()
        return redirect(url_for('departments'))
    if form2.validate_on_submit():
        type_name = Type(name=form2.type_name.data)
        db.session.add(type_name)
        db.session.commit()
        return redirect(url_for('departments'))
    departments = Department.query.order_by(Department.name.asc()).all()
    types = Type.query.order_by(Type.name.asc()).all()
    return render_template('inventory_management/departments.html',
                           title='Departments',
                           form1=form1,
                           form2=form2,
                           departments=departments,
                           types=types)
Exemplo n.º 18
0
def add_department():
    check_admin()
    add_department = True
    form = DepartmentForm()
    if form.validate_on_submit():
        department = Department(name=form.name.data,
                                description=form.description.data)
        try:
            db.session.add(department)
            db.session.commit()
            flash('You have successfully added a new department.', 'success')
        except:
            flash('Error: department name already exists.', 'danger')

        return redirect(url_for('list_departments'))

    return render_template('admin/department.html',
                           action="Add",
                           add_department=add_department,
                           form=form,
                           title='Add Department')
Exemplo n.º 19
0
 def test_add_to_department(self):
     a = User(name='sorvihead',
              password='******',
              role=Role.query.filter_by(name='Administrator').first())
     m = User(name='sorvihead',
              password='******',
              role=Role.query.filter_by(name='Moderator').first())
     user = User(name='sorvihead',
                 password='******',
                 role=Role.query.filter_by(name='User').first())
     u = User(name='test', password='******')
     db.session.add_all([a, u, m, user])
     db.session.commit()
     s = Shop(name='afi', shop_code='9066')
     d = Department(name='kids', shop=s)
     a.add_to_shop(user, s)
     a.add_to_department(user, d)
     self.assertTrue(user.department == d)
     self.assertTrue(user.shop == s)
     a.add_to_department(u, d)
     self.assertFalse(u.department, d)
     self.assertRaises(PermissionError, u.add_to_department, user, d)
Exemplo n.º 20
0
	def setUp(self):
		"""
		Setup the test driver and create test users
		"""
		self.driver = webdriver.Chrome()
		# Gets the home URL
		self.driver.get(self.get_server_url())

		db.session.commit()
		db.drop_all()
		db.create_all()

		# Create test admin user
		self.admin = Employee(username=test_admin_username,
							  email=test_admin_email,
							  password=test_admin_password,
							  is_admin=True)

		# Create test employee user
		self.employee = Employee(username=test_employee1_username,
								 first_name=test_employee1_first_name,
								 last_name=test_employee1_last_name,
								 email=test_employee1_email,
								 password=test_employee1_password)

		# create test department
		self.department = Department(name=test_department1_name,
									 description=test_department1_description)

		# create test role
		self.role = Role(name=test_role1_name,
						 description=test_role1_description)

		# save users to database
		db.session.add(self.admin)
		db.session.add(self.employee)
		db.session.add(self.department)
		db.session.add(self.role)
		db.session.commit()
Exemplo n.º 21
0
def add_department():
    check_admin()
    add_department = True
    form = DepartmentForm()
    if form.validate_on_submit():
        department = Department(name=form.name.data,
                                description=form.description.data)
        try:
            # add department to the database
            db.session.add(department)
            db.session.commit()
            flash('You have successfully added a new department.')
        except:
            # in case department name already exists
            flash('Error: department name already exists.')
        # redirect to departments page
        return redirect(url_for('admin.list_departments'))
    # load department template
    return render_template('admin/departments/department.html',
                           action="Add",
                           add_department=add_department,
                           form=form,
                           title="Add Department")
Exemplo n.º 22
0
def manage_departments():

    form = NewDepartmentForm(request.form)

    if request.method == 'POST':
        name = form.department_name.data
        admin_id = form.users.data

        department = Department(admin_id=admin_id, name=name)

        try:
            db.session.add(department)
            db.session.commit()
            flash("New Department Created Successfully", category='info')
        except Exception:
            flash("Department Creation failed", category='info')
            db.session.rollback()

    departments = db.session.query(Department.id, Department.name, User.fullname) \
        .outerjoin(User, Department.admin_id == User.id).all()

    return render_template('admin/departments.html',
                           departments=departments,
                           form=form)
Exemplo n.º 23
0
    def setUp(self):
        TestFactory.setUp(self)
        data = []
        data.append(State(descripcion="abierto"))
        data.append(State(descripcion="cerrado"))
        data.append(Priority(descripcion="baja"))
        data.append(Priority(descripcion="Alta"))
        data.append(Department(descripcion="default"))
        data.append(Client(nombre="default"))
        db.session.add_all(data)
        db.session.commit()
        data = Ticket(
            titulo="prueba",
            content=
            """My money's in that office, right? If she start giving me some bullshit about it ain't there, and we got to go someplace 
			else and get it, I'm gonna shoot you in the head then and there. Then I'm gonna shoot that bitch in the kneecaps, find out where my 
			goddamn money is. She gonna tell me too. Hey, look at me when I'm talking to you, m**********r. You listen: we go in there, and that
			 n***a Winston or anybody else is in there, you the first m**********r to get shot. You understand?""",
            email="*****@*****.**",
            client_id=1,
            department_id=1,
            priority_id=1,
            state_id=1,
            user_id=1)
        db.session.add(data)
        db.session.commit()
        message = Message(
            body="fgkljhdfkljhgklfgjhkldfjhdk",
            privado=False,
            ticket_id=1,
            from_user_id=1,
            to_user_id=None,
        )
        db.session.add(message)
        db.session.commit()
        self.path = '/messages'
Exemplo n.º 24
0
def create_department():
    form = CreateDepartmentForm()
    if not current_user.can_create_departments:
        raise Forbidden

    # Ensure the user has no other pending organisation applications
    for dep in current_user.departments:
        if dep.verification_status == t.VerificationStatus.pending:
            raise TooManyRequests(
                description=
                "You cannot register more than one organisation at once")

    if form.validate_on_submit():

        # Find the corresponding organisation
        org = Organisation.query.filter_by(
            display_name=form.organisation_name.data).first()

        # Create a pending department
        supporting_evidence = [DepartmentFile(document=f) \
            for f in form.supporting_evidence.data]
        dep = Department(
            display_name=form.department_name.data,
            description='',
            users=[current_user],
            organisation=org,
            verification_status=t.VerificationStatus.pending,
            temp_organisation=form.organisation_name.data if org is None \
                else None,
            supporting_evidence=supporting_evidence)

        db.session.add(dep)
        db.session.commit()

        return redirect(url_for('profile.edit_profile'))
    return render_template('profile/create_department.html', form=form)
Exemplo n.º 25
0
    # appointment_encounter_type.encounters.append(encounter_ten)
    # appointment_encounter_type.encounters.append(encounter_eleven)

    # demo_provider.encounters.append(encounter_eight)
    # demo_provider.encounters.append(encounter_seven)
    # demo_provider.encounters.append(encounter_six)
    # demo_provider.encounters.append(encounter_five)
    # demo_provider.encounters.append(encounter_four)
    # demo_provider.encounters.append(encounter_three)
    # demo_provider.encounters.append(encounter_two)
    # demo_provider.encounters.append(encounter_one)
    # demo_provider.encounters.append(encounter_eleven)
    # demo_provider.encounters.append(encounter_ten)
    # demo_provider.encounters.append(encounter_nine)

    radiology_department = Department(name="Radiology")
    fam_department = Department(name="Demo Outpatient Family Medicine")
    demo_organization = Organization(name="Saga Demo Health Network")
    demo_organization.departments.append(fam_department)

    exam_room_a = Resource(name="Exam Room A", active=1)
    exam_room_b = Resource(name="Exam Room B", active=1)
    exam_room_c = Resource(name="Exam Room C", active=1)
    exam_room_d = Resource(name="Exam Room D", active=1)

    # exam_room_a.encounters.append(encounter_one)
    # exam_room_b.encounters.append(encounter_two)
    # exam_room_c.encounters.append(encounter_three)
    # exam_room_d.encounters.append(encounter_four)
    # exam_room_d.encounters.append(encounter_five)
    # exam_room_d.encounters.append(encounter_six)
Exemplo n.º 26
0
 def test_basic(self):
     d = Department()
     self.assertTrue(d.id is None)
     self.assertTrue(d.name is None)
     self.assertTrue(d.users is not None)
     self.assertTrue(d.leaveLogs is not None)
Exemplo n.º 27
0
def newreport():
    form = NewReportForm()
    if form.validate_on_submit():
        #See if the medication is in db yet
        med_options = form.med_id.data.split(",")
        for med_id in med_options:
            if not Medication.query.get(med_id) and med_id:
                print("didn't see this med, adding")
                m = Medication(report_id=form.report_id.data, med_id=med_id)
                db.session.add(m)
                db.session.commit()
                print("added meds: ", Medication.query.get(med_id))

        #DOCTOR CHECK
        #NEED TO CREATE DOCTOR W/ GIVEN INFO
        if not Doctor.query.get(
                form.doc_id.data
        ) and form.doc_name.data and form.doc_address.data:
            print("didn't see this doc, adding")
            d = Doctor(doc_id=form.doc_id.data,
                       doc_name=form.doc_name.data,
                       address=form.doc_address.data)
            db.session.add(d)
            db.session.commit()
            print("added doc: ", Doctor.query.get(form.doc_id.data))

            #IF DOC GIVEN BUT NEW ADDY: Create HOP and DEPO
            if not Hospital.query.get(
                    form.doc_address.data) and form.hospital_name.data:
                print("didn't see this hospital, adding")
                h = Hospital(hospital_name=form.hospital_name.data,
                             address=form.doc_address.data)
                db.session.add(h)
                dep = Department(address=form.doc_address.data,
                                 department_name=form.department_name.data)
                db.session.add(dep)
                db.session.commit()
                print("add hop :", Hospital.query.get(form.doc_address.data))
            #BUT IF HOP and DEPO INFO not available
            elif not Hospital.query.get(form.doc_address.data):
                return render_template(
                    'newreport.html',
                    title='New Report',
                    form=form,
                    error="New Hospital Detected: Please Include All Info")

            #THIS SHOULD BE IF WE HAVE HOSPITAL INFO
            if not Department.query.get(
                    form.doc_address.data) and form.department_name.data:
                print("didn't see this department, adding")
                dep = Department(address=form.doc_address.data,
                                 department_name=form.department_name.data)
                db.session.add(dep)
                db.session.commit()
                print("add depo :", Hospital.query.get(form.doc_address.data))
            elif not Department.query.get(form.doc_address.data):
                return render_template(
                    'newreport.html',
                    title='New Report',
                    form=form,
                    error="New Department Detected: Please Include All Info")

        elif not Doctor.query.get(form.doc_id.data):
            return render_template(
                'newreport.html',
                title='New Report',
                form=form,
                error="New Doctor Detected: Please Include All Info")

        #See if the hopsital exists
        if (not Doctor.query.get(form.doc_id.data)
                and not Hospital.query.get(form.doc_address.data)
            ) and form.hospital_name.data and form.doc_address.data:
            print("didn't see this hospital, adding")
            h = Hospital(hospital_name=form.hospital_name.data,
                         address=form.doc_address.data)
            db.session.add(h)
            db.session.commit()
            print("added hospital: ",
                  Hospital.query.get(form.doc_address.data))
        elif not Hospital.query.get(
                form.doc_address.data) and not Doctor.query.get(
                    form.doc_id.data):
            return render_template(
                'newreport.html',
                title='New Report',
                form=form,
                error="New Hospital Detected: Please Include All Info")

        #See if the department exists
        if (not Doctor.query.get(form.doc_id.data)
                and not Department.query.get(form.doc_address.data)
            ) and form.doc_address.data and form.department_name.data:
            print("didn't see this department, adding")
            d = Department(address=form.doc_address.data,
                           department_name=form.department_name.data)
            db.session.add(d)
            db.session.commit()
            print("added department: ",
                  Department.query.get(form.doc_address.data))
        elif (not Doctor.query.get(form.doc_id.data)
              and not Department.query.get(form.doc_address.data)):
            return render_template(
                'newreport.html',
                title='New Report',
                form=form,
                error="New Department Detected: Please Include All Info")

        #Add report to the db
        if Report.query.get(form.report_id.data):
            return render_template('newreport.html',
                                   title='New Report',
                                   form=form,
                                   error="Duplicated Report ID")
        r = Report(
            report_id=form.report_id.data,
            ssn=form.ssn.data,
            doc_id=form.doc_id.data,
            med_id=form.med_id.data,
            purpose=form.purpose.data,
            patient_info=form.patient_info.data,
        )
        db.session.add(r)
        db.session.commit()

        print(
            "Added: ",
            form.report_id.data,
            form.ssn.data,
            form.doc_id.data,
            form.med_id.data,
            form.purpose.data,
            form.patient_info.data,
        )
        return render_template('index.html', create="Report", form=form)
    return render_template('newreport.html', title='NewReport', form=form)
Exemplo n.º 28
0
from app import db
from app.models import User, Student, Parent, Department

d = Department(dept_id='CSE', dept_name='Computer Science Engineering')

u = Student(
    s_email_id='*****@*****.**',
    f_name='stud1',
    l_name='studlname',
    usn='1rv18csxxx',
)
Exemplo n.º 29
0
 def test_department_model(self):
     department = Department(name='IT', description='The IT Department')
     db.session.add(department)
     db.session.commit()
     self.assertEqual(Department.query.count(), 1)
Exemplo n.º 30
0
def generate():
    # Generate a few users
    try:
        edd = User(id='edd',
                   password=generate_password_hash('e'),
                   display_name='Edd Salkield',
                   description='My description',
                   primary_email='*****@*****.**',
                   developer=Developer())
        edd_role = MailUserRole(user=edd,
                                creator=True,
                                relationship='Interested')
        edd_role_c = MailUserRole(user=edd,
                                  creator=True,
                                  relationship='Current')
        edd_role_p = MailUserRole(user=edd, creator=True, relationship='Past')
        edd_role_o = MailUserRole(user=edd, creator=True, relationship='Other')
        db.session.add(edd)
        db.session.add(edd_role)
        rogan = User(id='rogan',
                     password=generate_password_hash('e'),
                     display_name='Rogan Clark',
                     description='My description',
                     primary_email='*****@*****.**',
                     developer=Developer())
        rogan_role = MailUserRole(user=rogan,
                                  creator=False,
                                  relationship='Current')
        db.session.add(rogan)
        db.session.add(rogan_role)
        mark = User(id='mark',
                    password=generate_password_hash('e'),
                    display_name='Mark Todd',
                    description='My description',
                    primary_email='*****@*****.**',
                    developer=Developer())
        mark_role = MailUserRole(user=mark, creator=False, relationship='Past')
        db.session.add(mark)
        db.session.add(mark_role)
        josh = User(id='josh',
                    password=generate_password_hash('e'),
                    display_name='Josh Smailes',
                    description='My description',
                    primary_email='*****@*****.**',
                    developer=Developer())
        josh_role = MailUserRole(user=josh,
                                 creator=False,
                                 relationship='Other')
        db.session.add(josh)
        db.session.add(josh_role)

        # Generate some organisations
        oxford_cs = Department(display_name='Computer Science',
                               description='''
            Oxford CS description
        ''',
                               users=[edd])
        oxford_anthro = Department(display_name='Anthropology',
                                   description='''
            Oxford Anthropology description
        ''',
                                   users=[edd])
        oxford = Organisation(display_name='University of Oxford',
                              description='''
            This is the description of the Universty of Oxford
        ''',
                              departments=[oxford_cs, oxford_anthro])

        cambridge_anthro = Department(display_name='Anthropology',
                                      description='''
            Cambridge Anthropology description
        ''',
                                      users=[edd])
        cambridge = Organisation(display_name='University of Cambridge',
                                 description='''
            This is the description of the Universty of Cambridge 
        ''',
                                 departments=[cambridge_anthro])

        db.session.add(oxford)
        db.session.add(cambridge)

        # Generate a group chat
        user_roles = [edd_role, rogan_role, mark_role, josh_role]
        empty_group = MailGroup(display_name='The empty chat',
                                user_roles=user_roles)
        db.session.add(empty_group)

        group = MailGroup(display_name='The friend chat',
                          user_roles=user_roles)
        db.session.add(group)
        group = MailGroup(display_name='The current chat',
                          user_roles=[edd_role_c])
        db.session.add(group)
        group = MailGroup(display_name='The past chat',
                          user_roles=[edd_role_p])
        db.session.add(group)
        group = MailGroup(display_name='The other chat',
                          user_roles=[edd_role_o])
        db.session.add(group)
        db.session.commit()

        # Create some messages
        messages = []
        message = MailMessage(user=edd,
                              body='yo wassup',
                              date_created=datetime.utcnow())
        db.session.add(message)
        messages.append(message)
        time.sleep(2)
        message = MailMessage(user=josh,
                              body='nm',
                              date_created=datetime.utcnow())
        db.session.add(message)
        messages.append(message)
        time.sleep(2)
        message = MailMessage(user=mark,
                              body='nm 2',
                              date_created=datetime.utcnow())
        db.session.add(message)
        messages.append(message)
        db.session.commit()
        group.messages = messages

        # Save changes
        db.session.commit()
    except IntegrityError:
        db.session.rollback()
        group = MailGroup.query.filter_by(
            display_name='The friend chat').first()
        return f'messages already generated. Group id: {group.id}'
    else:
        return 'messages generated'