1project Report COVID19 Hospital Management Renney Emil Toppo
1project Report COVID19 Hospital Management Renney Emil Toppo
By
R 2020-2023
Project Report on
By
R 2020-2023
2
GUIDED BY: SUBMITTED BY:
SUBMITTED TO:
DEPARTMENT OF COMPUTER SCIENCE &
INFORMATION TECHNOLOGY
R 2020-2023
3
4
INTERNSHIP CERTIFICATE
5
ABSTRACT
The purpose of COVID19 Hospital Management is to automate the existing manual system by the
help of computerized equipment’s and full-fledged computer software, fulfilling their requirements,
so that their valuable data can be stored for a longer period with easy accessing and manipulation of
the same. The required software and hardware are easily available and easy to work with.
COVID19 Hospital Management, as described above, can lead to error free, secure, reliable and fast
management system. It can assist the user to concentrate on the record keeping. Thus it will help
organization in better utilization of resources. That means organization can maintain computerized
records without redundant entries. That means that one need not to be distracted by information that
is not relevant, while being able to reach the information.
6
7
DECLARATION
We hereby declare that the project entitled, “COVID19 HOSPITAL MANAGEMENT ” done at
ARKA JAIN UNIVERSITY, has not been in any case duplicated to submit to any other university
for the award of any degree. To the best of my knowledge other than me, no one has submitted to
any other university.
The project is done in partial fulfillment of the requirements for the award of degree of
BACHELOR OF COMPUTER APPLICATION to be submitted as project as part of our
curriculum.
8
Table of Contents
ABSTRACT............................................................................................................................................6
ACKNOWLEDGEMENT.......................................................................................................................7
DECLARATION.....................................................................................................................................8
Chapter 1: Introduction..........................................................................................................................11
1.2 Objective......................................................................................................................................11
1.3 Scope and Feasibility...................................................................................................................12
Chapter 2: Survey of Technology..........................................................................................................13
2.1 Methodology Development Model..............................................................................................13
2.2 Tools and Techniques..................................................................................................................14
Chapter 3: Requirement and Analysis...................................................................................................17
3.1 Problem Definition......................................................................................................................17
3.2 Requirements Specification.........................................................................................................17
3.3 Software and Hardware Requirements........................................................................................18
3.4 Planning and Scheduling.............................................................................................................18
Chapter 4: System Analysis...................................................................................................................19
4.1 Use Case Diagrams......................................................................................................................20
4.2 Data Flow Diagram.....................................................................................................................21
4.2.1 DFD Level 0.........................................................................................................................21
4.2.2 DFD Level 1.........................................................................................................................22
4.2.3 DFD Level 2.........................................................................................................................24
Chapter 5: System Design.....................................................................................................................28
5.1 ER Diagram.................................................................................................................................28
5.2 Normalization..............................................................................................................................31
5.2.1 Normalization 1NF...............................................................................................................33
5.2.2 Normalization 2NF...............................................................................................................35
5.2.3 Normalization 3NF...............................................................................................................37
5.2.4 Normalization Level (BCNF)...............................................................................................39
5.3 Schema Design............................................................................................................................41
5.4 User Interface...............................................................................................................................43
Chapter 6: Implementation and Testing................................................................................................49
6.1 Implementation............................................................................................................................49
6.2 Testing.........................................................................................................................................49
9
6.2.1 Test Generation.....................................................................................................................49
6.2.2 Software Testing...................................................................................................................49
6.3 Source Code.................................................................................................................................50
Chapter 7: Result and Discussion........................................................................................................277
7.1 Test Reports...............................................................................................................................277
7.2 Conclusion.................................................................................................................................278
7.3 Future Scope..............................................................................................................................278
10
Chapter 1: Introduction
1.1 Introduction
This project will automate the daily operations of covid patients in the
hospital. The project keeps track of the member of hospital and patient
(inpatient, outpatient) details. It also takes care of the ward, medical and
the doctor’s appointment details. The system generates the daily ward
availability, the status of patients and beds.
1.2 Objective
11
o Patients responsible user for a new system
• Clarify the user request
• Identify deficiencies in the current system
• Establish goals and objectives for the new system
• Determine the feasibility for the new system
• Prepare a project charter that will be used to guide the remainder of
1.3 Scope and the Project
Feasibility
This activity is also
known as the
feasibility study.
Perform and
evaluate feasibility
studies like cost-
benefit analysis,
technical
feasibility, time
feasibility and
operational
feasibility for the
project. Project
Scheduling should
be made using
chats. Feasibility
study is carried
out decide
whether the
proposed system
is feasible for the
company. It
begins with a
request from the
user for a new
system. It involves
the following:
• Identify the
12
Chapter 2: Survey of Technology
Requirement Gathering and analysis − All possible requirements of the system to be developed
are captured in this phase and documented in a requirement specification document.
• System Design − the requirement specifications from first phase are studied in this phase
and the system design is prepared. This system design helps in specifying hardware and
system requirements and helps in defining the overall system architecture.
• Implementation − with inputs from the system design, the system is first developed in small
programs called units, which are integrated in the next phase. Each unit is developed and
tested for its functionality, which is referred to as Unit Testing.
• Integration and Testing − All the units developed in the implementation phase are
integrated into a system after testing of each unit. Post integration the entire system is tested
for any faults and failures.
• Deployment of system − Once the functional and non-functional testing is done; the product
is deployed in the customer environment or released into the market.
• Maintenance − There are some issues which come up in the client environment. To fix
those issues, patches are released. Also, to enhance the product some better versions are
released. Maintenance is done to deliver these changes in the customer environment.
13
2.2 Tools and Techniques
Technology Tools
Framework Django
HTML
HTML is an acronym which stands for Hyper Text Markup Language which is used for creating web
pages and web applications. Let's see what is meant by Hypertext Markup Language, and Web page.
HyperText simply means "Text within Text." A text has a link within it, is a hypertext. Whenever you
click on a link which brings you to a new webpage, you have clicked on a hypertext. HyperText is a way
to link two or more web pages (HTML documents) with each other.
A markup language is a computer language that is used to apply layout and formatting conventions to a
text document. Markup language makes text more interactive and dynamic. It can turn text into images,
tables, links, etc.
A web page is a document which is commonly written in HTML and translated by a web browser. A web
page can be identified by entering an URL. A Web page can be of the static or dynamic type. With the
help of HTML only, we can create static web pages.
CSS
CSS (Cascading Style Sheets) is used to style and layout web pages — for example, to alter the font,
color, size, and spacing of your content, split it into multiple columns, or add animations and other
decorative features.
It is a style sheet language which is used to describe the look and formatting of a document written in
markup language. It provides an additional feature to HTML. It is generally used with HTML to change
the style of web pages and user interfaces. It can also be used with any kind of XML documents including
plain XML, SVG and XUL.
CSS is used along with HTML and JavaScript in most websites to create user interfaces for web
applications and user interfaces for many mobile applications.
14
SQLITE
SQLite is used to develop embedded software for devices like televisions, cell phones, cameras, etc. It
can manage low to medium-traffic HTTP requests. SQLite can change files into smaller size archives
with lesser metadata. SQLite is used as a temporary dataset to get processed with some data within an
application
Django
Django is an MVT web framework that is used to build web applications. The huge Django web-
framework comes with so many “batteries included” that developers often get amazed as to how
everything manages to work together. The motive behind adding them is to have a same productive goal
to work, so that maximum output can be extracted in a minimum time thus increasing our work capacity
and efficiency.
One of the main reasons behind the popularity of Django framework is the huge Django community. The
community is so huge that a separate website was devoted to it where developers from all corners can
build a website without needing any other server to check whether it is working or not. There is a high
probability that what you are trying to develop is already developed by somebody and you just need to p
Bootstrap
Bootstrap is a free and open-source front-end framework for designing websites and web
applications. It contains HTML- and CSS-based design templates for typography, forms, buttons,
navigation and other interface components, as well as optional JavaScript extensions. Unlike many
web frameworks, it concerns itself with front-end development only.
15
Visual Studio Code
Visual Studio Code is a lightweight but powerful source code editor which runs on your desktop and
is available for Windows, macOS and Linux. It comes with built-in support for JavaScript,
TypeScript and Node.js and has a rich ecosystem of extensions for other languages (such as C++, C#,
Java, Python, PHP, Go) and runtimes (such as .NET and Unity).
16
Chapter 3: Requirement and Analysis
This interface will be actual interface through which the user will communication with the
application and perform the desired tasks.
Admin login
I.D:
Role: Admin wishes to login to the system
Precondition: Username and Password
Success end Condition: Main option of screen display
Failed end Condition: User has entered incorrect Username and Password or both.
17
3.3 Software and Hardware Requirements
Software Development Life Cycle (SDLC) is a process used by the software industry to design,
develop and test high quality Software. The SDLC aims to produce a high-quality software that
meets or exceeds customer expectations, reaches completion within times and cost estimates.
Planning 5 10%
Defining 6 20%
Designing 10 10%
Building 20 20%
Testing 4 10%
Deployment 8 20%
18
Chapter 4: System Analysis
It is a process of collecting and interpreting facts, identifying the problems, and decomposition of a
system into its components.
System analysis is conducted for the purpose of studying a system or its parts in order to identify its
objectives. It is a problem-solving technique that improves the system and ensures that all the
components of the system work efficiently to accomplish their purpose.
The objective of the system analysis activity is to develop structured system specification for the
proposed system. The structured system specification should describe what the proposed system
would do; independent of the technology, which will be used to implement these requirements. The
structured system specification will be used to implement these requirements.
The essential model may itself consist of multiple models, modelling different aspect of the system.
The data flow diagrams may model the data and their relationships and the state transition diagram
may model time dependent behaviour of the system. The essential model thus consists of the
following.
• Context diagram
• Leveled data flow diagrams
• Process specification for elementary bubbles
• Data dictionary for the flow and stores on the DFDs.
19
4.1 Use Case Diagrams
20
4.2 Data Flow Diagram
A Data Flow Diagram (DFD) is a traditional way to visualize the information flows within a system.
A neat and clear DFD can depict a good amount of the system requirements graphically. It can be
manual, automated, or a combination of both.
It shows how information enters and leaves the system, what changes the information and where
information is stored. The purpose of a DFD is to show the scope and boundaries of a system as a
whole. It may be used as a communications tool between a systems analyst and any person who
plays a part in the system that acts as the starting point for redesigning a system.
It is usually beginning with a context diagram as level 0 of the DFD diagram, a simple representation
of the whole system. To elaborate further from that, we drill down to a level 1 diagram with lower-
level functions decomposed from the major functions of the system. This could continue to evolve to
become a level 2 diagram when further analysis is required. Progression to levels 3, 4 and so on is
possible but anything beyond level 3 is not very common. Please bear in mind that the level of detail
for decomposing a particular function depending on the complexity that function.
4.2.1DFD Level 0
1.0
21
4.2.2 DFD Level 1
22
23
4.2.3 DFD Level 2
24
25
Chapter 5: System Design
System design involves transformation of the user implementation model into software design.
The design specification of the proposed system consists of the following:
• Use Case Diagrams
• DFD
• ER Diagrams
• Normalizations
5.1 ER Diagram
An entity-relationship (ER) diagram is a specialized graphic that illustrates the relationships between
entities in a database. ER diagrams often use symbols to represent three different types of
information. Boxes are commonly used to represent entities. Diamonds are normally used to
represent relationships and ovals are used to represent attributes.
26
Relationships are represented by
Diamonds. A relationship is a
Relationship named collection or association
between entities or used to relate to
two or more entities with some
common attributes or meaningful
interaction between the objects.
27
Attributes are represented by Oval.
An attribute is a single data item
Attributes related to a database object. The
database schema associates one or
more attributes with each database
entity.
28
5.2 Normalization
Normalization is a process of organizing data in a database to reduce data redundancy and improve
data integrity. It is a set of guidelines that helps database designers to create efficient, flexible, and
maintainable database schemas.
The normalization process involves breaking down large tables into smaller tables and defining
relationships between them. This helps to minimize data duplication and improves the consistency
and accuracy of data. The result is a set of tables that are better optimized for querying, updating, and
maintaining data.
DOCTOR:
Doc ID Integer (50)
Patient:
Pat ID Integer (50)
29
Price Integer (50)
Payments:
Payment ID Integer (50)
Appoinment:
Pat ID Integer (50)
30
5.2.1 Normalization 1NF
First Normal Form (1NF): This level ensures that each table has a primary key and that all columns
contain atomic (indivisible) values.
31
32
5.2.2 Normalization 2NF
Second Normal Form (2NF): This level ensures that all non-key attributes are dependent on the
primary key and not on other non-key attributes.
33
34
5.2.3 Normalization 3NF
Third Normal Form (3NF): This level ensures that all non-key attributes are dependent only on the
primary key and not on other non-key attributes, and that there are no transitive dependencies.
Payment Table:
Appointment Table:
35
Discharge Table:
36
5.2.4 Normalization Level (BCNF)
BCNF stands for Boyce-Codd Normal Form, and it is a higher level of database normalization than
the third normal form (3NF). It is named after two computer scientists, Raymond Boyce and Edgar
Codd, who independently developed the concept.
Every determinant (attribute or set of attributes that uniquely determine other attributes) is a
candidate key (a minimal set of attributes that can uniquely identify a record in a table).
There are no non-trivial functional dependencies between the candidate keys.
Appointment Table:
Column Name Datatype Constraints Extra
App ID Int (45) Primary Key not null Auto Increment
Patient Table:
Column Name Datatype Constraints Extra
Pat ID Int (45) Primary Key not null Auto Increment
Doctor Table:
Column Name Datatype Constraints Extra
Doc ID Int (45) Primary Key not null Auto Increment
37
Discharge Table:
Column Name Datatype Constraints Extra
Dis ID Int (45) Primary Key not null Auto Increment
38
5.3 Schema Design
Figure 2: Database 1
Figure 3: Database 2
39
5.4 User Interface
Figure4:Home Page
40
Figure6: Admin Dashboard
41
Figure8: Patient Dashboard
42
Figure8: Payment
Figure9: Appointment
43
Figure10: Doctor’s List
44
Chapter 6: Implementation and Testing
6.1 Implementation
This activity includes programming, testing and integration of modules into a progressively more
complete system. Implementation is the process of collect all the required parts and assembles them
into a major product.
6.2 Testing
This activity generates a set of test data, which can be used to test the new system before
accepting it. In the test generation phase, all the parts are come which are to be tested to
ensure that system does not produce any error. If there are some errors then we remove them
and further it goes for accepting.
Software testing is a critical element of software quality assurance and moments the ultimate
reviews of specification, design and coding. Testing presents an interesting anomaly for the
software engineer.
45
6.3 Source Code
{% extends 'hospital/admin_base.html' %}
{% load widget_tweaks %}
{% block content %}
<head>
<style media="screen">
a:link {
text-decoration: none;
}
.note {
text-align: center;
height: 80px;
background: -webkit-linear-gradient(left, #0072ff, #8811c5);
color: #fff;
font-weight: bold;
line-height: 80px;
}
.form-content {
padding: 5%;
border: 1px solid #ced4da;
margin-bottom: 2%;
}
.form-control {
border-radius: 1.5rem;
}
.btnSubmit {
border: none;
border-radius: 1.5rem;
46
padding: 1%;
width: 20%;
cursor: pointer;
background: #0062cc;
color: #fff;
}
.menu {
top: 50px;
}
</style>
47
{% render_field appointmentForm.doctorId class="form-control" placeholder="doctor" %}
</div>
<div class="form-group">
{% render_field appointmentForm.patientId class="form-control" placeholder="patient" %}
</div>
</div>
</div>
<button type="submit" class="btnSubmit">Book</button>
</div>
</div>
</div>
</form>
{% endblock content %}
nt{% extends 'hospital/admin_base.html' %}
{% load widget_tweaks %}
{% block content %}
<head>
<style media="screen">
a:link {
text-decoration: none;
}
.note {
text-align: center;
height: 80px;
background: -webkit-linear-gradient(left, #0072ff, #8811c5);
color: #fff;
font-weight: bold;
48
line-height: 80px;
}
.form-content {
padding: 5%;
border: 1px solid #ced4da;
margin-bottom: 2%;
}
.form-control {
border-radius: 1.5rem;
}
.btnSubmit {
border: none;
border-radius: 1.5rem;
padding: 1%;
width: 20%;
cursor: pointer;
background: #0062cc;
color: #fff;
}
.menu {
top: 50px;
}
</style>
</head>
49
<br><br><br>
<!------ signup page for doctor by admin(SURAJ) ---------->
<form method="post" enctype="multipart/form-data">
{% csrf_token %}
<div class="container register-form">
<div class="form">
<div class="note">
<p>Admit Patient To Hospital</p>
</div>
<div class="form-content">
<div class="row">
<div class="col-md-6">
<div class="form-group">
{% render_field userForm.first_name class="form-control" placeholder="First Name" %}
</div>
<div class="form-group">
{% render_field userForm.username class="form-control" placeholder="Username" %}
</div>
<div class="form-group">
{% render_field patientForm.address class="form-control" placeholder="Address" %}
</div>
<div class="form-group">
{% render_field patientForm.symptoms class="form-control" placeholder="Symptoms" %}
</div>
<div class="form-group">
{% render_field patientForm.profile_pic required="required" class="form-control"
placeholder="Profile Picture" %}
</div>
</div>
<div class="col-md-6">
<div class="form-group">
{% render_field userForm.last_name class="form-control" placeholder="Last Name" %}
</div>
<div class="form-group">
50
{% render_field userForm.password class="form-control" placeholder="Password" %}
</div>
<div class="form-group">
{% render_field patientForm.mobile class="form-control" placeholder="Mobile" %}
</div>
<div class="form-group">
{% render_field patientForm.assignedDoctorId class="form-control" placeholder="Doctor" %}
</div>
</div>
</div>
<button type="submit" class="btnSubmit">Admit</button>
</div>
</div>
</div>
</form>
{% endblock content %}
{% extends 'hospital/admin_base.html' %}
{% load static %}
{% block content %}
<br><br>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<link href="http://netdna.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css"
rel="stylesheet">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.1/css/
all.min.css">
<style type="text/css">
a:link {
text-decoration: none;
51
}
.menu {
top: 50px;
}
h6 {
color: white;
}
.order-card {
color: #fff;
}
.bg-c-blue {
background: linear-gradient(45deg, #4099ff, #73b4ff);
}
.bg-c-green {
background: linear-gradient(45deg, #2ed8b6, #59e0c5);
}
.bg-c-yellow {
background: linear-gradient(45deg, #FFB64D, #ffcb80);
}
.bg-c-pink {
background: linear-gradient(45deg, #FF5370, #ff869a);
}
.card {
border-radius: 5px;
-webkit-box-shadow: 0 1px 2.94px 0.06px rgba(4, 26, 55, 0.16);
52
box-shadow: 0 1px 2.94px 0.06px rgba(4, 26, 55, 0.16);
border: none;
margin-bottom: 30px;
-webkit-transition: all 0.3s ease-in-out;
transition: all 0.3s ease-in-out;
}
.card .card-block {
padding: 25px;
}
.order-card i {
font-size: 26px;
}
.f-left {
float: left;
}
.f-right {
float: right;
}
</style>
</head>
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css"
rel="stylesheet">
<div class="container">
<div class="row">
<div class="col-md-4 col-xl-4">
<div class="card bg-c-blue order-card">
<div class="card-block">
<a href="/admin-view-appointment">
<h6 class="m-b-20">View Appointment</h6>
53
</a>
<br>
<h2 class="text-right"><i class="fas fa-calendar f-left"></i></h2>
</div>
</div>
</div>
</div>
54
</div>
<br><br><br><br><br><br><br>
{% endblock content %}
{% extends 'hospital/admin_base.html' %}
{% load static %}
{% block content %}
<br><br>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<link href="http://netdna.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css"
rel="stylesheet">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.1/css/
all.min.css">
<style type="text/css">
a:link {
text-decoration: none;
}
.menu {
top: 50px;
}
h6 {
color: white;
}
.order-card {
color: #fff;
}
55
.bg-c-blue {
background: linear-gradient(45deg, #4099ff, #73b4ff);
}
.bg-c-green {
background: linear-gradient(45deg, #2ed8b6, #59e0c5);
}
.bg-c-yellow {
background: linear-gradient(45deg, #FFB64D, #ffcb80);
}
.bg-c-pink {
background: linear-gradient(45deg, #FF5370, #ff869a);
}
.card {
border-radius: 5px;
-webkit-box-shadow: 0 1px 2.94px 0.06px rgba(4, 26, 55, 0.16);
box-shadow: 0 1px 2.94px 0.06px rgba(4, 26, 55, 0.16);
border: none;
margin-bottom: 30px;
-webkit-transition: all 0.3s ease-in-out;
transition: all 0.3s ease-in-out;
}
.card .card-block {
padding: 25px;
}
.order-card i {
font-size: 26px;
}
56
.f-left {
float: left;
}
.f-right {
float: right;
}
</style>
</head>
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css"
rel="stylesheet">
<div class="container">
<div class="row">
<div class="col-md-4 col-xl-4">
<div class="card bg-c-blue order-card">
<div class="card-block">
<a href="/admin-view-appointment">
<h6 class="m-b-20">View Appointment</h6>
</a>
<br>
<h2 class="text-right"><i class="fas fa-calendar f-left"></i></h2>
</div>
</div>
</div>
57
<br>
<h2 class="text-right"><i class="fas fa-book-medical f-left"></i></h2>
</div>
</div>
</div>
</div>
</div>
<br><br><br><br><br><br><br>
{% endblock content %}
{% extends 'hospital/admin_base.html' %}
{% load static %}
{% block content %}
<br><br>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<link href="http://netdna.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css"
58
rel="stylesheet">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.1/css/
all.min.css">
<style type="text/css">
a:link {
text-decoration: none;
}
.menu {
top: 50px;
}
h6 {
color: white;
}
.order-card {
color: #fff;
}
.bg-c-blue {
background: linear-gradient(45deg, #4099ff, #73b4ff);
}
.bg-c-green {
background: linear-gradient(45deg, #2ed8b6, #59e0c5);
}
.bg-c-yellow {
background: linear-gradient(45deg, #FFB64D, #ffcb80);
}
.bg-c-pink {
background: linear-gradient(45deg, #FF5370, #ff869a);
59
}
.card {
border-radius: 5px;
-webkit-box-shadow: 0 1px 2.94px 0.06px rgba(4, 26, 55, 0.16);
box-shadow: 0 1px 2.94px 0.06px rgba(4, 26, 55, 0.16);
border: none;
margin-bottom: 30px;
-webkit-transition: all 0.3s ease-in-out;
transition: all 0.3s ease-in-out;
}
.card .card-block {
padding: 25px;
}
.order-card i {
font-size: 26px;
}
.f-left {
float: left;
}
.f-right {
float: right;
}
</style>
</head>
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css"
rel="stylesheet">
<div class="container">
60
<div class="row">
<div class="col-md-4 col-xl-4">
<div class="card bg-c-blue order-card">
<div class="card-block">
<a href="/admin-view-appointment">
<h6 class="m-b-20">View Appointment</h6>
</a>
<br>
<h2 class="text-right"><i class="fas fa-calendar f-left"></i></h2>
</div>
</div>
</div>
61
</div>
</div>
</div>
</div>
</div>
<br><br><br><br><br><br><br>
{% endblock content %}
{% extends 'hospital/admin_base.html' %}
{% block content %}
{%load static%}
<head>
<link href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet"
id="bootstrap-css">
<script src="//netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
<script src="//code.jquery.com/jquery-1.11.1.min.js"></script>
<style media="screen">
a:link {
text-decoration: none;
}
h6 {
text-align: center;
}
.row {
margin: 100px;
}
</style>
</head>
62
<div class="container">
<div class="panel panel-primary">
<div class="panel-heading">
<h6 class="panel-title">Doctors   Applied For Registration</h6>
</div>
<table class="table table-hover" id="dev-table">
<thead>
<tr>
<th>Name</th>
<th>Profile Picture</th>
<th>Mobile</th>
<th>Address</th>
<th>Department</th>
<th>Approve</th>
<th>Reject</th>
</tr>
</thead>
{% for d in doctors %}
<tr>
<td> {{d.get_name}}</td>
<td> <img src="{% static d.profile_pic.url %}" alt="Profile Pic" height="40px" width="40px"
/></td>
<td>{{d.mobile}}</td>
<td>{{d.address}}</td>
<td>{{d.department}}</td>
<td><a class="btn btn-primary btn-xs" href="{% url 'approve-doctor' d.id %}"><span
class="glyphicon glyphicon-ok"></span></a></td>
<td><a class="btn btn-danger btn-xs" href="{% url 'reject-doctor' d.id %}"><span class="glyphicon
glyphicon-trash"></span></a></td>
</tr>
{% endfor %}
</table>
</div>
63
</div>
{% endblock content %}
{% extends 'hospital/admin_base.html' %}
{% block content %}
{%load static%}
<head>
<link href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet"
id="bootstrap-css">
<script src="//netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
<script src="//code.jquery.com/jquery-1.11.1.min.js"></script>
<style media="screen">
a:link {
text-decoration: none;
}
h6 {
text-align: center;
}
.row {
margin: 100px;
}
</style>
</head>
<!--
written By : suraj kumar
-->
<div class="container">
<div class="panel panel-primary">
<div class="panel-heading">
<h6 class="panel-title">Patient Wants To Admit</h6>
64
</div>
<table class="table table-hover" id="dev-table">
<thead>
<tr>
<th>Name</th>
<th>Profile Picture</th>
<th>Symptoms</th>
<th>Mobile</th>
<th>Address</th>
<th>Approve</th>
<th>Reject</th>
</tr>
</thead>
{% for p in patients %}
<tr>
<td> {{p.get_name}}</td>
<td> <img src="{% static p.profile_pic.url %}" alt="Profile Pic" height="40px" width="40px"
/></td>
<td>{{p.symptoms}}</td>
<td>{{p.mobile}}</td>
<td>{{p.address}}</td>
<td><a class="btn btn-primary btn-xs" href="{% url 'approve-patient' p.id %}"><span
class="glyphicon glyphicon-ok"></span></a></td>
<td><a class="btn btn-danger btn-xs" href="{% url 'reject-patient' p.id %}"><span
class="glyphicon glyphicon-trash"></span></a></td>
</tr>
{% endfor %}
</table>
</div>
</div>
65
{% endblock content %}
<!DOCTYPE html>
{% load static %}
<html lang="en">
<head>
<meta charset="UTF-8">
<title>COVID 19 HOSPITAL MANAGEMENT</title>
<style media="screen">
a:link {
text-decoration: none;
}
a{
color: white;
}
a:hover {
color: white;
}
66
/*---------------------------------------
Social section
-----------------------------------------*/
footer {
padding: 0px 0px 0px 0px;
background-color: black;
margin: 0px;
}
#ftr {
padding: 20px;
}
.fa {
font-size: 23px;
width: 60px;
text-align: center;
text-decoration: none;
margin: 5px 2px;
border-radius: 50%;
}
.fa:hover {
opacity: 0.5;
text-decoration: none;
}
.fa-facebook {
background: #3B5998;
color: white;
67
margin-top: 30px;
}
.fa-whatsapp {
background: #25d366;
color: white;
}
.fa-twitter {
background: #55ACEE;
color: white;
}
.fa-instagram {
background: #125688;
color: white;
}
p{
text-align: center;
body {
padding-left: 240px;
}
main {
position: relative;
height: 100vh;
68
}
.menu {
background: #5bc995;
height: 100vh;
width: 240px;
position: fixed;
top: 0px;
left: 0;
z-index: 5;
outline: none;
}
.menu .avatar {
background: rgba(0, 0, 0, 0.1);
padding: 2em 0.5em;
text-align: center;
}
.menu .avatar img {
width: 100px;
border-radius: 50%;
overflow: hidden;
border: 4px solid #ffea92;
box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.2);
}
.menu .avatar h2 {
font-weight: normal;
margin-bottom: 0;
}
.menu ul {
list-style: none;
padding: 0.5em 0;
margin: 0;
}
.menu ul li {
69
padding: 0.5em 1em 0.5em 3em;
font-size: 0.95em;
font-weight: regular;
background-repeat: no-repeat;
background-position: left 15px center;
background-size: auto 20px;
transition: all 0.15s linear;
cursor: pointer;
}
.menu ul li.icon-dashboard {
background-image: url("http://www.entypo.com/images//gauge.svg");
}
.menu ul li.icon-customers {
background-image: url("http://www.entypo.com/images//briefcase.svg");
}
.menu ul li.icon-users {
background-image: url("http://www.entypo.com/images//users.svg");
}
.menu ul li.icon-calendar {
background-image: url("http://www.entypo.com/images//calendar.svg");
}
.menu ul li:hover {
background-color: rgba(0, 0, 0, 0.1);
}
.menu ul li:focus {
outline: none;
}
@media screen and (max-width: 900px) and (min-width: 400px) {
body {
padding-left: 90px;
}
.menu {
width: 90px;
70
}
.menu .avatar {
padding: 0.5em;
position: relative;
}
.menu .avatar img {
width: 60px;
}
.menu .avatar h2 {
opacity: 0;
position: absolute;
top: 50%;
left: 100px;
margin: 0;
min-width: 200px;
border-radius: 4px;
background: rgba(0, 0, 0, 0.4);
transform: translate3d(-20px, -50%, 0);
transition: all 0.15s ease-in-out;
}
.menu .avatar:hover h2 {
opacity: 1;
transform: translate3d(0px, -50%, 0);
}
.menu ul li {
height: 60px;
background-position: center center;
background-size: 30px auto;
position: relative;
}
.menu ul li span {
opacity: 0;
position: absolute;
background: rgba(0, 0, 0, 0.5);
71
padding: 0.2em 0.5em;
border-radius: 4px;
top: 50%;
left: 80px;
transform: translate3d(-15px, -50%, 0);
transition: all 0.15s ease-in-out;
}
.menu ul li span:before {
content: '';
width: 0;
height: 0;
position: absolute;
top: 50%;
left: -5px;
border-top: 5px solid transparent;
border-bottom: 5px solid transparent;
border-right: 5px solid rgba(0, 0, 0, 0.5);
transform: translateY(-50%);
}
.menu ul li:hover span {
opacity: 1;
transform: translate3d(0px, -50%, 0);
}
}
@media screen and (max-width: 400px) {
body {
padding-left: 0;
}
.menu {
width: 230px;
box-shadow: 0 0 0 100em rgba(0, 0, 0, 0);
transform: translate3d(-230px, 0, 0);
transition: all 0.3s ease-in-out;
}
72
.menu .smartphone-menu-trigger {
width: 40px;
height: 40px;
position: absolute;
left: 100%;
background: #5bc995;
}
.menu .smartphone-menu-trigger:before,
.menu .smartphone-menu-trigger:after {
content: '';
width: 50%;
height: 2px;
background: #fff;
border-radius: 10px;
position: absolute;
top: 45%;
left: 50%;
transform: translate3d(-50%, -50%, 0);
}
.menu .smartphone-menu-trigger:after {
top: 55%;
transform: translate3d(-50%, -50%, 0);
}
.menu ul li {
padding: 1em 1em 1em 3em;
font-size: 1.2em;
}
.menu:focus {
transform: translate3d(0, 0, 0);
box-shadow: 0 0 0 100em rgba(0, 0, 0, 0.6);
}
.menu:focus .smartphone-menu-trigger {
pointer-events: none;
}
73
}
</style>
</head>
<body>
<main>
74
<nav class="navbar navbar-expand-md navbar-dark fixed-top" style="background:#337AB7;">
<a href="/admin-dashboard" class="navbar-brand"> COVID 19 HOSPITAL MANAGEMENT</a>
<button type="button" class="navbar-toggler" data-toggle="collapse" data-
target="#navbarCollapse">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse justify-content-between" id="navbarCollapse">
<div class="navbar-nav" style=" margin-left: 90%;">
<br><br>
{% endblock content %}
<!-- content end-->
<br><br><br><br>
<footer>
<p>
<a id="ftr" href="https://www.facebook.com/profile.php?
id=100076830482284&mibextid=ZbWKwL" class="fa fa-facebook"></a>
<a id="ftr" href="https://api.whatsapp.com/send?phone=
8292054306&text=Hello%20Suraj.%0d%0aHow%20are%20you%20%3f%0d%0aI%20came
%20from%20your%20website.&source=&data=#" class="fa fa-whatsapp"></a>
75
<a id="ftr" href="https://www.instagram.com/suryananda002/?igshid=ZDdkNTZiNTM%3D"
class="fa fa-instagram"></a>
</p>
<br>
<div class="container">
<div class="row">
<div class="col-md-12 col-sm-12">
<div style="color:#ffffff;" class="wow fadeInUp footer-copyright">
<p>Made in Jharkhand Boy & Girl <br>
Copyright © 2023 Suraj </p>
</div>
</div>
</div>
</div>
</footer>
</main>
</body>
</html>
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<title></title>
<style media="screen">
.market-update-block {
padding: 2em 2em;
76
background: #999;
}
.market-update-block h3 {
color: #fff;
font-size: 2.5em;
font-family: 'Carrois Gothic', sans-serif;
}
.market-update-block h4 {
font-size: 1.2em;
color: #fff;
margin: 0.3em 0em;
font-family: 'Carrois Gothic', sans-serif;
}
.market-update-block p {
color: #fff;
font-size: 0.8em;
line-height: 1.8em;
}
.market-update-block.clr-block-1 {
background: #ff0000;
margin-right: 0.8em;
box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
transition: 0.5s all;
-webkit-transition: 0.5s all;
-moz-transition: 0.5s all;
-o-transition: 0.5s all;
}
.market-update-block.clr-block-2 {
background: #FC8213;
77
margin-right: 0.8em;
box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
transition: 0.5s all;
-webkit-transition: 0.5s all;
-moz-transition: 0.5s all;
-o-transition: 0.5s all;
}
.market-update-block.clr-block-3 {
background: #1355f9;
box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
transition: 0.5s all;
-webkit-transition: 0.5s all;
-moz-transition: 0.5s all;
-o-transition: 0.5s all;
}
.market-update-block.clr-block-1:hover {
background: #3C3C3C;
transition: 0.5s all;
-webkit-transition: 0.5s all;
-moz-transition: 0.5s all;
-o-transition: 0.5s all;
}
.market-update-block.clr-block-2:hover {
background: #3C3C3C;
transition: 0.5s all;
-webkit-transition: 0.5s all;
-moz-transition: 0.5s all;
-o-transition: 0.5s all;
}
.market-update-block.clr-block-3:hover {
78
background: #3C3C3C;
transition: 0.5s all;
-webkit-transition: 0.5s all;
-moz-transition: 0.5s all;
-o-transition: 0.5s all;
}
.market-update-right i.fa.fa-user-o {
font-size: 3em;
color: #68AE00;
width: 80px;
height: 80px;
background: #fff;
text-align: center;
border-radius: 49px;
-webkit-border-radius: 49px;
-moz-border-radius: 49px;
-o-border-radius: 49px;
line-height: 1.7em;
}
.market-update-right i.fa.fa-user-md {
font-size: 3em;
color: #FC8213;
width: 80px;
height: 80px;
background: #fff;
text-align: center;
border-radius: 49px;
-webkit-border-radius: 49px;
-moz-border-radius: 49px;
-o-border-radius: 49px;
line-height: 1.7em;
}
79
.market-update-right i.fa.fa-calendar {
font-size: 3em;
color: #337AB7;
width: 80px;
height: 80px;
background: #fff;
text-align: center;
border-radius: 49px;
-webkit-border-radius: 49px;
-moz-border-radius: 49px;
-o-border-radius: 49px;
line-height: 1.7em;
}
.market-update-left {
padding: 0px;
}
</style>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-
awesome.min.css">
</head>
<body>
<div class="market-updates">
<div class="col-md-4 market-update-gd">
<div class="market-update-block clr-block-1">
<div class="col-md-8 market-update-left">
<h3>{{doctorcount}}</h3>
<h4>Total Doctor</h4>
<p>Approval Required : {{pendingdoctorcount}}</p>
80
</div>
<div class="col-md-4 market-update-right">
<i class="fa fa-user-md"></i>
</div>
<div class="clearfix"> </div>
</div>
</div>
<div class="col-md-4 market-update-gd">
<div class="market-update-block clr-block-2">
<div class="col-md-8 market-update-left">
<h3>{{patientcount}}</h3>
<h4>Total Patient</h4>
<p>Wants to Admit : {{pendingpatientcount}}</p>
</div>
<div class="col-md-4 market-update-right">
<i class="fa fa-user-o"></i>
</div>
<div class="clearfix"> </div>
</div>
</div>
<div class="col-md-4 market-update-gd">
<div class="market-update-block clr-block-3">
<div class="col-md-8 market-update-left">
<h3>{{appointmentcount}}</h3>
<h4>Total Appointment</h4>
<p>Approve Appointments :{{pendingappointmentcount}} </p>
</div>
<div class="col-md-4 market-update-right">
<i class="fa fa-calendar"> </i>
</div>
<div class="clearfix"> </div>
</div>
</div>
<div class="clearfix"> </div>
81
</div>
</body>
</html>
{% extends 'hospital/admin_base.html' %}
{% load static %}
{% block content %}
{%include 'hospital/admin_dashboard_cards.html'%}
<br><br><br><br>
<div class="container">
<div class="row">
<div class="panel panel-primary col-md-5" style="margin-left:2%;">
<div class="panel-heading" style="text-align:center;">
<h6 class="panel-title">Recent Doctors</h6>
</div>
<table class="table table-hover" id="dev-table">
<thead>
<tr>
<th>Name</th>
<th>Department</th>
<th>Mobile</th>
<th>Status</th>
</tr>
</thead>
{% for d in doctors %}
<tr>
<td> {{d.get_name}}</td>
<td>{{d.department}}</td>
<td>{{d.mobile}}</td>
{%if d.status%}
<td> <span class="label label-primary">Permanent</span></td>
{% else %}
82
<td> <span class="label label-success">On Hold</span></td>
{% endif %}
</tr>
{% endfor %}
</table>
</div>
</tr>
</thead>
{% for p in patients %}
<tr>
<td> {{p.get_name}}</td>
<td>{{p.symptoms}}</td>
<td>{{p.mobile}}</td>
<td>{{p.address}}</td>
{%if p.status%}
<td> <span class="label label-primary">Admitted</span></td>
{% else %}
<td> <span class="label label-success">On Hold</span></td>
{% endif %}
83
</tr>
{% endfor %}
</table>
</div>
</div>
</div>
{% endblock content %}
{% extends 'hospital/admin_base.html' %}
{% block content %}
<head>
<link href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet"
id="bootstrap-css">
<script src="//netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
<script src="//code.jquery.com/jquery-1.11.1.min.js"></script>
<style media="screen">
a:link {
text-decoration: none;
}
h6 {
text-align: center;
}
.row {
margin: 100px;
}
</style>
</head>
<!--
84
written By : suraj kumar
-->
<div class="container">
<div class="panel panel-primary">
<div class="panel-heading">
<h6 class="panel-title">Discharge Patient</h6>
</div>
<table class="table table-hover" id="dev-table">
<thead>
<tr>
<th>Name</th>
<th>Symptoms</th>
<th>Mobile</th>
<th>Discharge</th>
</tr>
</thead>
{% for p in patients %}
<tr>
<td> {{p.get_name}}</td>
<td>{{p.symptoms}}</td>
<td>{{p.mobile}}</td>
<td><a class="btn btn-primary btn-xs" href="{% url 'discharge-patient' p.id %}"><span
class="glyphicon glyphicon-log-out"></span></a></td>
</tr>
{% endfor %}
</table>
</div>
</div>
85
{% endblock content %}
<!DOCTYPE html>
{% load static %}
<html>
<head>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-
awesome.min.css">
<style>
.card {
box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
max-width: 300px;
margin: auto;
text-align: center;
font-family: arial;
}
.title {
color: grey;
font-size: 18px;
}
button {
border: none;
outline: 0;
display: inline-block;
padding: 8px;
color: white;
background-color: #000;
text-align: center;
cursor: pointer;
width: 100%;
font-size: 18px;
}
86
button:hover,
a:hover {
opacity: 0.7;
}
.grid-container {
display: grid;
grid-template-columns: auto auto auto;
padding: 10px;
}
a:link {
text-decoration: none;
}
a{
color: white;
}
</style>
</head>
<body>
<div class="grid-container">
<div class="grid-item">
<div class="card">
<img src="{% static "images/admin.png" %}" alt="John" style="width:100%">
<p class="title">ADMIN</p>
<p><button><a href="/adminclick">View</a></button></p>
</div>
87
</div>
<div class="grid-item">
<div class="card">
<img src="{% static "images/doctor.png" %}" alt="John" style="width:100%">
<p class="title">DOCTOR</p>
<p><button><a href="/doctorclick">View</a></button></p>
</div>
</div>
<div class="grid-item">
<div class="card">
<img src="{% static "images/patient.jpg" %}" alt="John" style="width:100%">
<p class="title">PATIENT</p>
<p><button><a href="/patientclick">View</a></button></p>
</div>
</div>
</div>
</body>
</html>
{% extends 'hospital/admin_base.html' %}
{% load static %}
{% block content %}
<br><br>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<link href="http://netdna.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css"
rel="stylesheet">
88
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.1/css/
all.min.css">
<style type="text/css">
a:link {
text-decoration: none;
}
.menu {
top: 50px;
}
h6 {
color: white;
}
.order-card {
color: #fff;
}
.bg-c-blue {
background: linear-gradient(45deg, #4099ff, #73b4ff);
}
.bg-c-green {
background: linear-gradient(45deg, #2ed8b6, #59e0c5);
}
.bg-c-yellow {
background: linear-gradient(45deg, #FFB64D, #ffcb80);
}
.bg-c-pink {
89
background: linear-gradient(45deg, #FF5370, #ff869a);
}
.card {
border-radius: 5px;
-webkit-box-shadow: 0 1px 2.94px 0.06px rgba(4, 26, 55, 0.16);
box-shadow: 0 1px 2.94px 0.06px rgba(4, 26, 55, 0.16);
border: none;
margin-bottom: 30px;
-webkit-transition: all 0.3s ease-in-out;
transition: all 0.3s ease-in-out;
}
.card .card-block {
padding: 25px;
}
.order-card i {
font-size: 26px;
}
.f-left {
float: left;
}
.f-right {
float: right;
}
</style>
</head>
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css"
rel="stylesheet">
90
<div class="container">
<div class="row">
<div class="col-md-4 col-xl-3">
<div class="card bg-c-blue order-card">
<div class="card-block">
<a href="/admin-view-doctor">
<h6 class="m-b-20">Doctor Record</h6>
</a>
<br>
<h2 class="text-right"><i class="fas fa-user-nurse f-left"></i></h2>
</div>
</div>
</div>
91
<h2 class="text-right"><i class="fas fa-check-circle f-left"></i></h2>
</div>
</div>
</div>
<br><br><br><br><br><br><br>
{% endblock content %}
{% extends 'hospital/admin_base.html' %}
{% load static %}
{% block content %}
<br><br>
<head>
<meta charset="utf-8">
92
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.1/css/
all.min.css">
<style type="text/css">
a:link {
text-decoration: none;
}
.menu {
top: 50px;
}
h6 {
color: white;
}
.order-card {
color: #fff;
}
.bg-c-blue {
background: linear-gradient(45deg, #4099ff, #73b4ff);
}
.bg-c-green {
background: linear-gradient(45deg, #2ed8b6, #59e0c5);
}
.bg-c-yellow {
background: linear-gradient(45deg, #FFB64D, #ffcb80);
}
.bg-c-pink {
93
background: linear-gradient(45deg, #FF5370, #ff869a);
}
.card {
border-radius: 5px;
-webkit-box-shadow: 0 1px 2.94px 0.06px rgba(4, 26, 55, 0.16);
box-shadow: 0 1px 2.94px 0.06px rgba(4, 26, 55, 0.16);
border: none;
margin-bottom: 30px;
-webkit-transition: all 0.3s ease-in-out;
transition: all 0.3s ease-in-out;
}
.card .card-block {
padding: 25px;
}
.order-card i {
font-size: 26px;
}
.f-left {
float: left;
}
.f-right {
float: right;
}
</style>
</head>
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css"
rel="stylesheet">
94
<div class="container">
<div class="row">
<div class="col-md-4 col-xl-3">
<div class="card bg-c-blue order-card">
<div class="card-block">
<a href="/admin-view-patient">
<h6 class="m-b-20">Patient Record</h6>
</a>
<br>
<h2 class="text-right"><i class="fas fa-user-injured f-left"></i></h2>
</div>
</div>
</div>
95
<h2 class="text-right"><i class="fas fa-check-circle f-left"></i></h2>
</div>
</div>
</div>
<br><br><br><br><br><br><br>
{% endblock content %}
{% extends 'hospital/admin_base.html' %}
{% load widget_tweaks %}
{% block content %}
<head>
<style media="screen">
a:link {
text-decoration: none;
}
.note {
text-align: center;
height: 80px;
96
background: -webkit-linear-gradient(left, #0072ff, #8811c5);
color: #fff;
font-weight: bold;
line-height: 80px;
}
.form-content {
padding: 5%;
border: 1px solid #ced4da;
margin-bottom: 2%;
}
.form-control {
border-radius: 1.5rem;
}
.btnSubmit {
border: none;
border-radius: 1.5rem;
padding: 1%;
width: 20%;
cursor: pointer;
background: #0062cc;
color: #fff;
}
.menu {
top: 50px;
}
</style>
97
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
</head>
<br><br>
<!------ update page for doctor by admin(suraj) ---------->
<form method="post" enctype="multipart/form-data">
{% csrf_token %}
<div class="container register-form">
<div class="form">
<div class="note">
<p>Update Doctor Details</p>
</div>
<div class="form-content">
<div class="row">
<div class="col-md-6">
<div class="form-group">
{% render_field userForm.first_name class="form-control" placeholder="First Name" %}
</div>
<div class="form-group">
{% render_field userForm.username class="form-control" placeholder="Username" %}
</div>
<div class="form-group">
{% render_field doctorForm.mobile class="form-control" placeholder="Mobile" %}
</div>
<div class="form-group">
{% render_field doctorForm.department class="form-control" placeholder="Department" %}
</div>
</div>
<div class="col-md-6">
<div class="form-group">
{% render_field userForm.last_name class="form-control" placeholder="Last Name" %}
</div>
<div class="form-group">
{% render_field userForm.password class="form-control" placeholder="Password" %}
</div>
98
<div class="form-group">
{% render_field doctorForm.address class="form-control" placeholder="Address" %}
</div>
<div class="form-group">
{% render_field doctorForm.profile_pic class="form-control" placeholder="Profile Picture" %}
</div>
</div>
</div>
<button type="submit" class="btnSubmit">Update</button>
</div>
</div>
</div>
</form>
{% endblock content %}
{% extends 'hospital/admin_base.html' %}
{% load widget_tweaks %}
{% block content %}
<head>
<style media="screen">
a:link {
text-decoration: none;
}
.note {
text-align: center;
height: 80px;
background: -webkit-linear-gradient(left, #0072ff, #8811c5);
color: #fff;
font-weight: bold;
line-height: 80px;
}
99
.form-content {
padding: 5%;
border: 1px solid #ced4da;
margin-bottom: 2%;
}
.form-control {
border-radius: 1.5rem;
}
.btnSubmit {
border: none;
border-radius: 1.5rem;
padding: 1%;
width: 20%;
cursor: pointer;
background: #0062cc;
color: #fff;
}
.menu {
top: 50px;
}
</style>
10
0
{% csrf_token %}
<div class="container register-form">
<div class="form">
<div class="note">
<p>Update Doctor Details</p>
</div>
<div class="form-content">
<div class="row">
<div class="col-md-6">
<div class="form-group">
{% render_field userForm.first_name class="form-control" placeholder="First Name" %}
</div>
<div class="form-group">
{% render_field userForm.username class="form-control" placeholder="Username" %}
</div>
<div class="form-group">
{% render_field patientForm.address class="form-control" placeholder="Address" %}
</div>
<div class="form-group">
{% render_field patientForm.symptoms class="form-control" placeholder="Symptoms" %}
</div>
<div class="form-group">
{% render_field patientForm.profile_pic class="form-control" placeholder="Profile Picture" %}
</div>
</div>
<div class="col-md-6">
<div class="form-group">
{% render_field userForm.last_name class="form-control" placeholder="Last Name" %}
</div>
<div class="form-group">
{% render_field userForm.password class="form-control" placeholder="Password" %}
</div>
<div class="form-group">
{% render_field patientForm.mobile class="form-control" placeholder="Mobile" %}
10
1
</div>
<div class="form-group">
{% render_field patientForm.assignedDoctorId class="form-control" placeholder="Doctor" %}
</div>
</div>
</div>
<button type="submit" class="btnSubmit">Update</button>
</div>
</div>
</div>
</form>
{% endblock content %}
{% extends 'hospital/admin_base.html' %}
{% block content %}
<head>
<link href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet"
id="bootstrap-css">
<script src="//netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
<script src="//code.jquery.com/jquery-1.11.1.min.js"></script>
<style media="screen">
a:link {
text-decoration: none;
}
h6 {
text-align: center;
}
.row {
margin: 100px;
10
2
}
</style>
</head>
<div class="container">
<div class="panel panel-primary">
<div class="panel-heading">
<h6 class="panel-title">Appointments</h6>
</div>
<table class="table table-hover" id="dev-table">
<thead>
<tr>
<th>Doctor Name</th>
<th>Patient Name</th>
<th>Description</th>
<th>Date</th>
</tr>
</thead>
{% for a in appointments %}
<tr>
<td> {{a.doctorName}}</td>
<td>{{a.patientName}}</td>
<td>{{a.description}}</td>
<td>{{a.appointmentDate}}</td>
</tr>
{% endfor %}
</table>
</div>
</div>
{% endblock content %}
{% extends 'hospital/admin_base.html' %}
{% block content %}
10
3
{%load static%}
<head>
<link href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet"
id="bootstrap-css">
<script src="//netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
<script src="//code.jquery.com/jquery-1.11.1.min.js"></script>
<style media="screen">
a:link {
text-decoration: none;
}
h6 {
text-align: center;
}
.row {
margin: 100px;
}
</style>
</head>
<div class="container">
<div class="panel panel-primary">
<div class="panel-heading">
<h6 class="panel-title">Doctors</h6>
</div>
<table class="table table-hover" id="dev-table">
<thead>
<tr>
<th>Name</th>
<th>Profile Picture</th>
10
4
<th>Mobile</th>
<th>Address</th>
<th>Department</th>
<th>Update</th>
<th>Delete</th>
</tr>
</thead>
{% for d in doctors %}
<tr>
<td> {{d.get_name}}</td>
<td> <img src="{% static d.profile_pic.url %}" alt="Profile Pic" height="40px" width="40px"
/></td>
<td>{{d.mobile}}</td>
<td>{{d.address}}</td>
<td>{{d.department}}</td>
<td><a class="btn btn-primary btn-xs" href="{% url 'update-doctor' d.id %}"><span
class="glyphicon glyphicon-edit"></span></a></td>
<td><a class="btn btn-danger btn-xs" href="{% url 'delete-doctor-from-hospital' d.id %}"><span
class="glyphicon glyphicon-trash"></span></a></td>
</tr>
{% endfor %}
</table>
</div>
</div>
{% endblock content %}
{% extends 'hospital/admin_base.html' %}
{% block content %}
{%load static%}
<head>
<link href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet"
id="bootstrap-css">
10
5
<script src="//netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
<script src="//code.jquery.com/jquery-1.11.1.min.js"></script>
<style media="screen">
a:link {
text-decoration: none;
}
h6 {
text-align: center;
}
.row {
margin: 100px;
}
</style>
</head>
<div class="container">
<div class="panel panel-primary">
<div class="panel-heading">
<h6 class="panel-title">Patient</h6>
</div>
<table class="table table-hover" id="dev-table">
<thead>
<tr>
<th>Name</th>
<th>Profile Picture</th>
<th>Symptoms</th>
<th>Mobile</th>
<th>Address</th>
<th>Update</th>
<th>Delete</th>
</tr>
10
6
</thead>
{% for p in patients %}
<tr>
<td> {{p.get_name}}</td>
<td> <img src="{% static p.profile_pic.url %}" alt="Profile Pic" height="40px" width="40px"
/></td>
<td>{{p.symptoms}}</td>
<td>{{p.mobile}}</td>
<td>{{p.address}}</td>
<td><a class="btn btn-primary btn-xs" href="{% url 'update-patient' p.id %}"><span
class="glyphicon glyphicon-edit"></span></a></td>
<td><a class="btn btn-danger btn-xs" href="{% url 'delete-patient-from-hospital' p.id %}"><span
class="glyphicon glyphicon-trash"></span></a></td>
</tr>
{% endfor %}
</table>
</div>
</div>
{% endblock content %}
{% extends 'hospital/homebase.html' %}
<!--
developed By : suraj kumar
facebook : fb.com/suraj.luv
-->
{% block content %}
<br>
<br>
10
7
<p class="lead">WELCOME TO COVID-19 Hospital Management System.</p>
<hr class="my-4">
<p>You can access various features after Login/SignUp.</p>
<p class="lead">
<a class="btn btn-primary btn-lg" href="/adminsignup" role="button">SignUp</a>
<a class="btn btn-primary btn-lg" href="/adminlogin" role="button">Login</a>
</p>
</div>
{% endblock content %}
<!DOCTYPE html>
{% load widget_tweaks %}
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>COVID 19 HOSPITAL MANAGEMENT SYSYTEM|| SK</title>
<style type="text/css">
body {
color: #aa082e;
background-color: #b6bde7;
font-family: 'Roboto', sans-serif;
}
a:link {
text-decoration: none;
}
.note {
text-align: center;
height: 80px;
10
8
background: -webkit-linear-gradient(left, #0072ff, #8811c5);
color: #fff;
font-weight: bold;
line-height: 80px;
}
.form-content {
padding: 5%;
border: 1px solid #ced4da;
margin-bottom: 2%;
}
.form-control {
border-radius: 1.5rem;
}
.btnSubmit {
border: none;
border-radius: 1.5rem;
padding: 1%;
width: 20%;
cursor: pointer;
background: #0062cc;
color: #fff;
}
</style>
</head>
<body>
{% include "hospital/navbar.html" %}
<br>
<br>
<br><br>
10
9
<!--- login page for admin by admin(suraj) ---------->
<form method="post">
{% csrf_token %}
<div class="container register-form">
<div class="form">
<div class="note">
<p>Admin Login Page</p>
</div>
<div class="form-content">
<div class="row">
<div class="col-md-6">
<div class="form-group">
{% render_field form.username class="form-control" placeholder="Username" %}
</div>
</div>
<div class="col-md-6">
<div class="form-group">
{% render_field form.password class="form-control" placeholder="Password" %}
</div>
</div>
</div>
<button type="submit" class="btnSubmit">Login</button>
<div class="text-center">Do not have account? <a href="adminsignup">Signup here</a></div>
</div>
</div>
</div>
</form>
11
0
<br><br><br>
<!--
developed By : suraj kumar
-->
{% include "hospital/footer.html" %}
</body>
</html>
<!DOCTYPE html>
{% load widget_tweaks %}
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>COVID 19 HOSPITAL MANAGEMENT System || suraj</title>
<style type="text/css">
body {
color: #aa082e;
background-color: #b6bde7;
font-family: 'Roboto', sans-serif;
}
a:link {
text-decoration: none;
}
.note {
text-align: center;
height: 80px;
11
1
background: -webkit-linear-gradient(left, #0072ff, #8811c5);
color: #fff;
font-weight: bold;
line-height: 80px;
}
.form-content {
padding: 5%;
border: 1px solid #ced4da;
margin-bottom: 2%;
}
.form-control {
border-radius: 1.5rem;
}
.btnSubmit {
border: none;
border-radius: 1.5rem;
padding: 1%;
width: 20%;
cursor: pointer;
background: #0062cc;
color: #fff;
}
</style>
</head>
<body>
{% include "hospital/navbar.html" %}
<br>
<br>
11
2
<br>
<br>
<div class="form-content">
<div class="row">
<div class="col-md-6">
<div class="form-group">
{% render_field form.first_name class="form-control" placeholder="First Name" %}
</div>
<div class="form-group">
{% render_field form.username class="form-control" placeholder="Username" %}
</div>
</div>
<div class="col-md-6">
<div class="form-group">
{% render_field form.last_name class="form-control" placeholder="Last Name" %}
</div>
<div class="form-group">
{% render_field form.password class="form-control" placeholder="Password" %}
</div>
11
3
</div>
</div>
<button type="submit" class="btnSubmit">Submit</button>
<div class="text-center">Already have an account? <a href="adminlogin">Login here</a></div>
</div>
</div>
</div>
</form>
{% include "hospital/footer.html" %}
</body>
</html>
<!DOCTYPE html>
{% load static %}
<html lang="en" dir="ltr">
<head>
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
</head>
<body>
{% include "hospital/navbar.html" %}
<br><br>
<center>
<h3 class='alert alert-success'>Send Us Your Valuable Feedback !</h3>
11
4
<form method="POST">
<!-- Very Important csrf Token -->
{% csrf_token %}
<div class="form-group">
<p>
<h3>{{ form.as_p }}</h3>
</p>
<br>
<input type="submit" value="Send Message" class='btn btn-primary btn-lg'>
</div>
</form>
</center>
{% include "hospital/footer.html" %}
</body>
<!--
-->
</html>
<!DOCTYPE html>
{% load static %}
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>suraj</title>
<style media="screen">
.jumbotron {
margin-bottom: 0px;
}
11
5
.jumbotron h1 {
text-align: center;
}
</style>
</head>
<body>
{% include "hospital/navbar.html" %}
<br><br>
<div class="jumbotron">
<h1 class="display-4">Your message sent successfully !</h1>
<p class="lead">We will respond to your feedback soon</p>
<hr class="my-4">
<p>Check other features of website !</p>
<p class="lead">
<a class="btn btn-primary btn-lg" href="/" role="button">HOME</a>
</p>
</div>
{% include "hospital/footer.html" %}
</body>
</html>
{% extends 'hospital/doctor_base.html' %}
{% load static %}
{% block content %}
<br><br>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
11
6
<link href="http://netdna.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css"
rel="stylesheet">
<style type="text/css">
a:link {
text-decoration: none;
}
.menu{
top: 50px;
}
h6 {
color: white;
}
.order-card {
color: #fff;
}
.bg-c-blue {
background: linear-gradient(45deg, #4099ff, #73b4ff);
}
.bg-c-green {
background: linear-gradient(45deg, #2ed8b6, #59e0c5);
}
.card {
border-radius: 5px;
-webkit-box-shadow: 0 1px 2.94px 0.06px rgba(4, 26, 55, 0.16);
box-shadow: 0 1px 2.94px 0.06px rgba(4, 26, 55, 0.16);
border: none;
11
7
margin-bottom: 30px;
-webkit-transition: all 0.3s ease-in-out;
transition: all 0.3s ease-in-out;
}
.card .card-block {
padding: 25px;
}
.order-card i {
font-size: 26px;
}
.f-left {
float: left;
}
.f-right {
float: right;
}
</style>
</head>
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css"
rel="stylesheet">
<div class="container">
<div class="row">
<div class="col-md-4 col-xl-6">
<div class="card bg-c-blue order-card">
<div class="card-block">
<a href="/doctor-view-appointment">
<h6 class="m-b-20">View Your Appointment</h6>
</a>
<br>
11
8
<h2 class="text-right"><i class="fas fa-calendar f-left"></i></h2>
</div>
</div>
</div>
</div>
</div>
<br><br><br><br><br><br><br>
{% endblock content %}
<!DOCTYPE html>
{% load static %}
<html lang="en">
<head>
<meta charset="UTF-8">
<title> covid-19 Hospial Management System</title>
11
9
awesome.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script>
<style media="screen">
a:link {
text-decoration: none;
}
a{
color: white;
}
a:hover {
color: white;
}
/*---------------------------------------
Social section
-----------------------------------------*/
footer {
padding: 0px 0px 0px 0px;
background-color: black;
margin: 0px;
}
#ftr {
12
0
padding: 20px;
}
.fa {
font-size: 23px;
width: 60px;
text-align: center;
text-decoration: none;
margin: 5px 2px;
border-radius: 50%;
}
.fa:hover {
opacity: 0.5;
text-decoration: none;
}
.fa-facebook {
background: #3B5998;
color: white;
margin-top: 30px;
}
.fa-whatsapp {
background: #25d366;
color: white;
}
.fa-twitter {
background: #55ACEE;
color: white;
}
12
1
.fa-instagram {
background: #125688;
color: white;
}
p{
text-align: center;
body {
padding-left: 240px;
}
main {
position: relative;
height: 100vh;
}
.menu {
background: #5bc995;
height: 100vh;
width: 240px;
position: fixed;
top: 0px;
left: 0;
z-index: 5;
outline: none;
}
12
2
.menu .avatar {
background: rgba(0, 0, 0, 0.1);
padding: 2em 0.5em;
text-align: center;
}
.menu .avatar img {
width: 100px;
border-radius: 50%;
overflow: hidden;
border: 4px solid #ffea92;
box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.2);
}
.menu .avatar h2 {
font-weight: normal;
margin-bottom: 0;
}
.menu ul {
list-style: none;
padding: 0.5em 0;
margin: 0;
}
.menu ul li {
padding: 0.5em 1em 0.5em 3em;
font-size: 0.95em;
font-weight: regular;
background-repeat: no-repeat;
background-position: left 15px center;
background-size: auto 20px;
transition: all 0.15s linear;
cursor: pointer;
}
.menu ul li.icon-dashboard {
background-image: url("http://www.entypo.com/images//gauge.svg");
}
12
3
.menu ul li.icon-customers {
background-image: url("http://www.entypo.com/images//briefcase.svg");
}
.menu ul li.icon-users {
background-image: url("http://www.entypo.com/images//users.svg");
}
.menu ul li.icon-calendar {
background-image: url("http://www.entypo.com/images//calendar.svg");
}
.menu ul li:hover {
background-color: rgba(0, 0, 0, 0.1);
}
.menu ul li:focus {
outline: none;
}
@media screen and (max-width: 900px) and (min-width: 400px) {
body {
padding-left: 90px;
}
.menu {
width: 90px;
}
.menu .avatar {
padding: 0.5em;
position: relative;
}
.menu .avatar img {
width: 60px;
}
.menu .avatar h2 {
opacity: 0;
position: absolute;
top: 50%;
12
4
left: 100px;
margin: 0;
min-width: 200px;
border-radius: 4px;
background: rgba(0, 0, 0, 0.4);
transform: translate3d(-20px, -50%, 0);
transition: all 0.15s ease-in-out;
}
.menu .avatar:hover h2 {
opacity: 1;
transform: translate3d(0px, -50%, 0);
}
.menu ul li {
height: 60px;
background-position: center center;
background-size: 30px auto;
position: relative;
}
.menu ul li span {
opacity: 0;
position: absolute;
background: rgba(0, 0, 0, 0.5);
padding: 0.2em 0.5em;
border-radius: 4px;
top: 50%;
left: 80px;
transform: translate3d(-15px, -50%, 0);
transition: all 0.15s ease-in-out;
}
.menu ul li span:before {
content: '';
width: 0;
height: 0;
position: absolute;
12
5
top: 50%;
left: -5px;
border-top: 5px solid transparent;
border-bottom: 5px solid transparent;
border-right: 5px solid rgba(0, 0, 0, 0.5);
transform: translateY(-50%);
}
.menu ul li:hover span {
opacity: 1;
transform: translate3d(0px, -50%, 0);
}
}
@media screen and (max-width: 400px) {
body {
padding-left: 0;
}
.menu {
width: 230px;
box-shadow: 0 0 0 100em rgba(0, 0, 0, 0);
transform: translate3d(-230px, 0, 0);
transition: all 0.3s ease-in-out;
}
.menu .smartphone-menu-trigger {
width: 40px;
height: 40px;
position: absolute;
left: 100%;
background: #5bc995;
}
.menu .smartphone-menu-trigger:before,
.menu .smartphone-menu-trigger:after {
content: '';
width: 50%;
height: 2px;
12
6
background: #fff;
border-radius: 10px;
position: absolute;
top: 45%;
left: 50%;
transform: translate3d(-50%, -50%, 0);
}
.menu .smartphone-menu-trigger:after {
top: 55%;
transform: translate3d(-50%, -50%, 0);
}
.menu ul li {
padding: 1em 1em 1em 3em;
font-size: 1.2em;
}
.menu:focus {
transform: translate3d(0, 0, 0);
box-shadow: 0 0 0 100em rgba(0, 0, 0, 0.6);
}
.menu:focus .smartphone-menu-trigger {
pointer-events: none;
}
}
</style>
</head>
<body>
<!-- partial:index.partial.html -->
<nav class="menu" tabindex="0">
<div class="smartphone-menu-trigger"></div>
<header class="avatar">
<img src="{% static doctor.profile_pic.url %}" alt="Profile Pic" />
<br><br>
12
7
<h6>Doctor</h6>
<h2>{{request.user.first_name}}</h2>
</header>
<ul>
<li tabindex="0" class="icon-dashboard"> <a style="color:white; text-decoration:none;"
href="/doctor-dashboard"><span>Dashboard</span></a> </li>
<li tabindex="0" class="icon-users"> <a style="color:white; text-decoration:none;" href="/doctor-
patient"><span>Patient</span></a></li>
<li tabindex="0" class="icon-calendar"> <a style="color:white; text-decoration:none;" href="/doctor-
appointment"><span>Appointments</span></a></li>
</ul>
</nav>
<main>
<!-- nav start -->
<div class="bs-example">
<nav class="navbar navbar-expand-md navbar-dark fixed-top" style="background:#337AB7;">
<a href="/doctor-dashboard" class="navbar-brand">COVID 19 HOSPITAL MANAGEMENT</a>
<button type="button" class="navbar-toggler" data-toggle="collapse" data-
target="#navbarCollapse">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse justify-content-between" id="navbarCollapse">
<div class="navbar-nav" style=" margin-left: 90%;">
12
8
<!-- content end-->
<br><br><br><br><br><br><br>
<footer>
<p>
<a id="ftr" href="https://www.facebook.com/profile.php?
id=100076830482284&mibextid=ZbWKwL" class="fa fa-facebook"></a>
<a id="ftr" href="https://api.whatsapp.com/send?phone=8092054306&text=Hello%20Suraj.%0d
%0aHow%20are%20you%20%3f%0d%0aI%20came%20from%20your%20website.&source=&data=#"
class="fa fa-whatsapp"></a>
<a id="ftr" href="https://instagram.com/suryananda002?igshid=ZDdkNTZiNTM=" class="fa fa-
instagram"></a>
</p>
<br>
<div class="container">
<div class="row">
<div class="col-md-12 col-sm-12">
<div style="color:#ffffff;" class="wow fadeInUp footer-copyright">
<p>Made in Jharkhand <br>
Copyright © 2023 khushboo & Suraj </p>
</div>
</div>
</div>
</div>
</footer>
</main>
<!-- partial -->
</body>
</html>
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
12
9
<meta charset="utf-8">
<title></title>
<style media="screen">
.market-update-block {
padding: 2em 2em;
background: #999;
}
.market-update-block h3 {
color: #fff;
font-size: 2.5em;
font-family: 'Carrois Gothic', sans-serif;
}
.market-update-block h4 {
font-size: 1.2em;
color: #fff;
margin: 0.3em 0em;
font-family: 'Carrois Gothic', sans-serif;
}
.market-update-block p {
color: #fff;
font-size: 0.8em;
line-height: 1.8em;
}
.market-update-block.clr-block-1 {
background: #ff0000;
margin-right: 0.8em;
box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
transition: 0.5s all;
-webkit-transition: 0.5s all;
13
0
-moz-transition: 0.5s all;
-o-transition: 0.5s all;
}
.market-update-block.clr-block-2 {
background: #FC8213;
margin-right: 0.8em;
box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
transition: 0.5s all;
-webkit-transition: 0.5s all;
-moz-transition: 0.5s all;
-o-transition: 0.5s all;
}
.market-update-block.clr-block-3 {
background: #1355f9;
box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
transition: 0.5s all;
-webkit-transition: 0.5s all;
-moz-transition: 0.5s all;
-o-transition: 0.5s all;
}
.market-update-block.clr-block-1:hover {
background: #3C3C3C;
transition: 0.5s all;
-webkit-transition: 0.5s all;
-moz-transition: 0.5s all;
-o-transition: 0.5s all;
}
.market-update-block.clr-block-2:hover {
background: #3C3C3C;
transition: 0.5s all;
13
1
-webkit-transition: 0.5s all;
-moz-transition: 0.5s all;
-o-transition: 0.5s all;
}
.market-update-block.clr-block-3:hover {
background: #3C3C3C;
transition: 0.5s all;
-webkit-transition: 0.5s all;
-moz-transition: 0.5s all;
-o-transition: 0.5s all;
}
.market-update-right i.fa.fa-user-o {
font-size: 3em;
color: #68AE00;
width: 80px;
height: 80px;
background: #fff;
text-align: center;
border-radius: 49px;
-webkit-border-radius: 49px;
-moz-border-radius: 49px;
-o-border-radius: 49px;
line-height: 1.7em;
}
.market-update-right i.fa.fa-check-circle-o {
font-size: 3em;
color: #FC8213;
width: 80px;
height: 80px;
background: #fff;
text-align: center;
13
2
border-radius: 49px;
-webkit-border-radius: 49px;
-moz-border-radius: 49px;
-o-border-radius: 49px;
line-height: 1.7em;
}
.market-update-right i.fa.fa-calendar {
font-size: 3em;
color: #337AB7;
width: 80px;
height: 80px;
background: #fff;
text-align: center;
border-radius: 49px;
-webkit-border-radius: 49px;
-moz-border-radius: 49px;
-o-border-radius: 49px;
line-height: 1.7em;
}
.market-update-left {
padding: 0px;
}
</style>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-
awesome.min.css">
</head>
<body>
<div class="market-updates">
13
3
<div class="col-md-4 market-update-gd">
<div class="market-update-block clr-block-1">
<div class="col-md-8 market-update-left">
<h3>{{appointmentcount}}</h3>
<h4>Appointments For You</h4>
</div>
<div class="col-md-4 market-update-right">
<i class="fa fa-calendar"> </i>
</div>
<div class="clearfix"> </div>
</div>
</div>
<div class="col-md-4 market-update-gd">
<div class="market-update-block clr-block-2">
<div class="col-md-8 market-update-left">
<h3>{{patientcount}}</h3>
<h4>Patient Under You</h4>
</div>
<div class="col-md-4 market-update-right">
<i class="fa fa-user-o"></i>
</div>
<div class="clearfix"> </div>
</div>
</div>
<div class="col-md-4 market-update-gd">
<div class="market-update-block clr-block-3">
<div class="col-md-8 market-update-left">
<h3>{{patientdischarged}}</h3>
<h4>Your Patient Discharged</h4>
</div>
<div class="col-md-4 market-update-right">
<i class="fa fa-check-circle-o" aria-hidden="true"></i>
</div>
13
4
<div class="clearfix"> </div>
</div>
</div>
<div class="clearfix"> </div>
</div>
</body>
<!--
</html>
{% extends 'hospital/doctor_base.html' %}
{% load static %}
{% block content %}
{%include 'hospital/doctor_dashboard_cards.html'%}
<br><br><br><br>
<div class="container">
<div class="row">
<div class="panel panel-primary" style="margin-left:15%;">
<div class="panel-heading" style="text-align:center;">
<h6 class="panel-title">Recent Appointments For You</h6>
</div>
<table class="table table-hover" id="dev-table">
<thead>
<tr>
<th>Patient Name</th>
<th>Picture</th>
<th>Description</th>
<th>Mobile</th>
<th>Address</th>
<th>Date</th>
</tr>
</thead>
{% for a,p in appointments %}
<tr>
13
5
<td>{{a.patientName}}</td>
<td> <img src="{% static p.profile_pic.url %}" alt="Profile Pic" height="40px" width="40px"
/></td>
<td>{{a.description}}</td>
<td>{{p.mobile}}</td>
<td>{{p.address}}</td>
<td>{{a.appointmentDate}}</td>
</tr>
{% endfor %}
</table>
</div>
</div>
</div>
{% endblock content %}
{% extends 'hospital/doctor_base.html' %}
{% block content %}
{%load static%}
<head>
<link href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet"
id="bootstrap-css">
<script src="//netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
<script src="//code.jquery.com/jquery-1.11.1.min.js"></script>
<style media="screen">
a:link {
text-decoration: none;
}
h6 {
text-align: center;
}
13
6
.row {
margin: 100px;
}
</style>
</head>
<!--
-->
<div class="container">
<div class="panel panel-primary">
<div class="panel-heading">
<h6 class="panel-title">Delete Your Appointments</h6>
</div>
<table class="table table-hover" id="dev-table">
<thead>
<tr>
<th>Patient Name</th>
<th>Picture</th>
<th>Description</th>
<th>Delete</th>
</tr>
</thead>
{% for a,p in appointments %}
<tr>
<td>{{a.patientName}}</td>
<td> <img src="{% static p.profile_pic.url %}" alt="Profile Pic" height="40px" width="40px"
/></td>
<td>{{a.description}}</td>
<td><a class="btn btn-danger btn-xs" href="{% url 'delete-appointment' a.id %}"><span
class="glyphicon glyphicon-trash"></span></a></td>
</tr>
{% endfor %}
</table>
</div>
13
7
</div>
{% endblock content %}
{% extends 'hospital/doctor_base.html' %}
{% load static %}
{% block content %}
<br><br>
<head>
<meta charset="utf-8">
<style type="text/css">
a:link {
text-decoration: none;
}
.menu {
top: 50px;
}
h6 {
color: white;
}
13
8
.order-card {
color: #fff;
}
.bg-c-blue {
background: linear-gradient(45deg, #4099ff, #73b4ff);
}
.bg-c-green {
background: linear-gradient(45deg, #2ed8b6, #59e0c5);
}
.bg-c-yellow {
background: linear-gradient(45deg, #FFB64D, #ffcb80);
}
.bg-c-pink {
background: linear-gradient(45deg, #FF5370, #ff869a);
}
.card {
border-radius: 5px;
-webkit-box-shadow: 0 1px 2.94px 0.06px rgba(4, 26, 55, 0.16);
box-shadow: 0 1px 2.94px 0.06px rgba(4, 26, 55, 0.16);
border: none;
margin-bottom: 30px;
-webkit-transition: all 0.3s ease-in-out;
transition: all 0.3s ease-in-out;
}
.card .card-block {
padding: 25px;
13
9
}
.order-card i {
font-size: 26px;
}
.f-left {
float: left;
}
.f-right {
float: right;
}
</style>
</head>
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css"
rel="stylesheet">
<div class="container">
<div class="row">
<div class="col-md-4 col-xl-6">
<div class="card bg-c-blue order-card">
<div class="card-block">
<a href="/doctor-view-patient">
<h6 class="m-b-20">Your Patient Record</h6>
</a>
<br>
<h2 class="text-right"><i class="fas fa-user-injured f-left"></i></h2>
</div>
</div>
</div>
14
0
<div class="col-md-4 col-xl-6">
<div class="card bg-c-pink order-card">
<div class="card-block">
<a href="/doctor-view-discharge-patient">
<h6 class="m-b-20">Your Discharged Patient</h6>
</a>
<br>
<h2 class="text-right"><i class="fas fa-eject f-left"></i></h2>
</div>
</div>
</div>
</div>
</div>
<!--
<br><br><br><br><br><br><br>
{% endblock content %}
{% extends 'hospital/doctor_base.html' %}
{% block content %}
{%load static%}
<head>
<link href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet"
id="bootstrap-css">
<script src="//netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
<script src="//code.jquery.com/jquery-1.11.1.min.js"></script>
<style media="screen">
a:link {
text-decoration: none;
}
h6 {
text-align: center;
14
1
}
.row {
margin: 100px;
}
</style>
</head>
<!--
-->
<div class="container">
<div class="panel panel-primary">
<div class="panel-heading">
<h6 class="panel-title">Your Appointments</h6>
</div>
<table class="table table-hover" id="dev-table">
<thead>
<tr>
<th>Patient Name</th>
<th>Picture</th>
<th>Description</th>
<th>Mobile</th>
<th>Address</th>
<th>Appointment Date</th>
</tr>
</thead>
{% for a,p in appointments %}
<tr>
<td>{{a.patientName}}</td>
<td> <img src="{% static p.profile_pic.url %}" alt="Profile Pic" height="40px" width="40px"
/></td>
<td>{{a.description}}</td>
<td>{{p.mobile}}</td>
<td>{{p.address}}</td>
14
2
<td>{{a.appointmentDate}}</td>
</tr>
{% endfor %}
</table>
</div>
</div>
{% endblock content %}
{% extends 'hospital/doctor_base.html' %}
{% block content %}
{%load static%}
<head>
<link href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet"
id="bootstrap-css">
<script src="//netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
<script src="//code.jquery.com/jquery-1.11.1.min.js"></script>
<style media="screen">
a:link {
text-decoration: none;
}
h6 {
text-align: center;
}
.row {
margin: 100px;
}
</style>
</head>
-->
14
3
<div class="container">
<div class="panel panel-primary">
<div class="panel-heading">
<h6 class="panel-title">Your Discharged Patient List</h6>
</div>
<table class="table table-hover" id="dev-table">
<thead>
<tr>
<th>Name</th>
<th>Admit Date</th>
<th>Release Date</th>
<th>Symptoms</th>
<th>Mobile</th>
<th>Address</th>
</tr>
</thead>
{% for p in dischargedpatients %}
<tr>
<td> {{p.patientName}}</td>
<td>{{p.admitDate}}</td>
<td>{{p.releaseDate}}</td>
<td>{{p.symptoms}}</td>
<td>{{p.mobile}}</td>
<td>{{p.address}}</td>
</tr>
{% endfor %}
</table>
</div>
</div>
{% endblock content %}
14
4
{% extends 'hospital/doctor_base.html' %}
{% block content %}
{%load static%}
<head>
<link href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet"
id="bootstrap-css">
<script src="//netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
<script src="//code.jquery.com/jquery-1.11.1.min.js"></script>
<style media="screen">
a:link {
text-decoration: none;
}
h6 {
text-align: center;
}
.row {
margin: 100px;
}
</style>
</head>
<div class="container">
14
5
{% if patients %}
<div class="panel panel-primary">
<div class="panel-heading">
<h6 class="panel-title">Your Total Patient List</h6>
</div>
<table class="table table-hover" id="dev-table">
<thead>
<tr>
<th>Name</th>
<th>Profile Picture</th>
<th>Symptoms</th>
<th>Mobile</th>
<th>Address</th>
</tr>
</thead>
{% for p in patients %}
<tr>
<td> {{p.get_name}}</td>
<td> <img src="{% static p.profile_pic.url %}" alt="Profile Pic" height="40px" width="40px"
/></td>
<td>{{p.symptoms}}</td>
<td>{{p.mobile}}</td>
<td>{{p.address}}</td>
</tr>
{% endfor %}
</table>
</div>
{%else%}
<br><br><br>
<h4 style="text-align: center;color: red;">No Patient Found !!!</h4>
{% endif %}
14
6
</div>
{% endblock content %}
<!DOCTYPE html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>COVID 19 HOSPITAL MANAGEMENT SYSTEM || suraj</title>
<style media="screen">
.jumbotron {
margin-top: 0px;
margin-bottom: 0px;
}
.jumbotron h1 {
text-align: center;
}
.alert {
margin: 0px;
}
</style>
</head>
<body>
{% include "hospital/navbar.html" %}
14
7
<br>
<br>
{% include "hospital/footer.html" %}
</body>
</html>
{% extends 'hospital/homebase.html' %}
{% block content %}
<br>
<br>
14
8
<a class="btn btn-primary btn-lg" href="/doctorsignup" role="button">Apply</a>
<a class="btn btn-primary btn-lg" href="/doctorlogin" role="button">Login</a>
</p>
</div>
{% endblock content %}
<!DOCTYPE html>
{% load widget_tweaks %}
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>COVID 19 HOSPITAL MANAGEMENT SYSYTEM|| SK</title>
<style type="text/css">
body {
color: #aa082e;
background-color: #b6bde7;
font-family: 'Roboto', sans-serif;
}
a:link {
text-decoration: none;
}
.note {
text-align: center;
height: 80px;
background: -webkit-linear-gradient(left, #0072ff, #8811c5);
color: #fff;
font-weight: bold;
line-height: 80px;
14
9
}
.form-content {
padding: 5%;
border: 1px solid #ced4da;
margin-bottom: 2%;
}
.form-control {
border-radius: 1.5rem;
}
.btnSubmit {
border: none;
border-radius: 1.5rem;
padding: 1%;
width: 20%;
cursor: pointer;
background: #0062cc;
color: #fff;
}
</style>
</head>
<body>
{% include "hospital/navbar.html" %}
<br>
<br>
<br><br>
15
0
<div class="container register-form">
<div class="form">
<div class="note">
<p>Doctor Login Page</p>
</div>
<div class="form-content">
<div class="row">
<div class="col-md-6">
<div class="form-group">
{% render_field form.username class="form-control" placeholder="Username" %}
</div>
</div>
<div class="col-md-6">
<div class="form-group">
{% render_field form.password class="form-control" placeholder="Password" %}
</div>
</div>
</div>
<button type="submit" class="btnSubmit">Login</button>
<div class="text-center">Do not have account? <a href="doctorsignup">Signup here</a></div>
</div>
</div>
</div>
</form>
<br><br><br>
15
1
{% include "hospital/footer.html" %}
</body>
</html>
<!DOCTYPE html>
{% load widget_tweaks %}
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>COVID 19 HOSPITAL MANAGEMENT SYSTEM|| suraj</title>
<style type="text/css">
body {
color: #aa082e;
background-color: #b6bde7;
font-family: 'Roboto', sans-serif;
}
a:link {
text-decoration: none;
}
.note {
text-align: center;
height: 80px;
background: -webkit-linear-gradient(left, #0072ff, #8811c5);
color: #fff;
font-weight: bold;
line-height: 80px;
}
.form-content {
15
2
padding: 5%;
border: 1px solid #ced4da;
margin-bottom: 2%;
}
.form-control {
border-radius: 1.5rem;
}
.btnSubmit {
border: none;
border-radius: 1.5rem;
padding: 1%;
width: 20%;
cursor: pointer;
background: #0062cc;
color: #fff;
}
</style>
</head>
<body>
{% include "hospital/navbar.html" %}
<br>
<br>
<br>
<br>
15
3
<form method="post" enctype="multipart/form-data">
{% csrf_token %}
<div class="container register-form">
<div class="form">
<div class="note">
<p>Register In Hospital</p>
</div>
<div class="form-content">
<div class="row">
<div class="col-md-6">
<div class="form-group">
{% render_field userForm.first_name class="form-control" placeholder="First Name" %}
</div>
<div class="form-group">
{% render_field userForm.username class="form-control" placeholder="Username" %}
</div>
<div class="form-group">
{% render_field doctorForm.department class="form-control" placeholder="Department" %}
</div>
<div class="form-group">
{% render_field doctorForm.address class="form-control" placeholder="Address" %}
</div>
</div>
<div class="col-md-6">
<div class="form-group">
{% render_field userForm.last_name class="form-control" placeholder="Last Name" %}
</div>
<div class="form-group">
{% render_field userForm.password class="form-control" placeholder="Password" %}
</div>
<div class="form-group">
{% render_field doctorForm.mobile class="form-control" placeholder="Mobile" %}
15
4
</div>
<div class="form-group">
{% render_field doctorForm.profile_pic required="required" class="form-control"
placeholder="Profile Picture" %}
</div>
</div>
</div>
<button type="submit" class="btnSubmit">Register</button>
<div class="text-center">Already have an account? <a href="doctorlogin">Login here</a></div>
</div>
</div>
</div>
</form>
{% include "hospital/footer.html" %}
</body>
</html>
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<style>
@page {
size: A4;
margin: 1cm;
@frame footer {
-pdf-frame-content: footerContent;
bottom: 0cm;
15
5
margin-left: 9cm;
margin-right: 9cm;
height: 1cm;
}
}
.invoice-box {
max-width: 800px;
margin: auto;
padding: 30px;
border: 1px solid #eee;
box-shadow: 0 0 10px rgba(0, 0, 0, .15);
font-size: 16px;
line-height: 24px;
font-family: 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif;
color: #555;
}
.invoice-box table {
width: 100%;
line-height: inherit;
text-align: left;
}
.invoice-box table td {
padding: 5px;
vertical-align: top;
}
15
6
padding-bottom: 20px;
}
15
7
}
.rtl table {
text-align: right;
}
<body>
15
8
<br><br><br>
<div class="invoice-box">
<table cellpadding="0" cellspacing="0">
<tr class="top">
<td colspan="2">
<table>
<tr>
<td class="title">
<h5>Hospital Management</h5>
</td>
<td>
<tr class="information">
<td colspan="2">
<table>
<tr>
<td>
Patient Name : {{patientName}}<br>
Patient Mobile : {{mobile}}<br>
Patient Addres : {{address}}<br>
</td>
<td>
Doctor Name :<br>
15
9
{{assignedDoctorName}}<br>
</td>
</tr>
</table>
</td>
</tr>
<tr class="information">
<td colspan="2">
<table>
<tr>
<td>
Disease and Symptoms :<br>
          {{symptoms}}
</td>
</tr>
</table>
</td>
</tr>
<tr class="information">
<td colspan="2">
<table>
<tr>
<td>
Charges :<br><br>
Room Charge of {{daySpent}} Days : {{roomCharge}}<br>
Doctor Fee : {{doctorFee}}<br>
Medicine Cost : {{medicineCost}}<br>
16
0
Other Charge : {{OtherCharge}} <br><br>
          Total Rupees : {{total}}
</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
</body>
</html>
<!DOCTYPE html>
<html>
<head>
<style>
/*---------------------------------------
Social section
-----------------------------------------*/
footer {
padding: 0px 0px 0px 0px;
background-color: black;
margin: 0px;
}
16
1
.fa {
padding: 20px;
font-size: 23px;
width: 60px;
text-align: center;
text-decoration: none;
margin: 5px 2px;
border-radius: 50%;
}
.fa:hover {
opacity: 0.5;
text-decoration: none;
}
.fa-facebook {
background: #3B5998;
color: white;
margin-top: 30px;
}
.fa-whatsapp {
background: #25d366;
color: white;
}
.fa-twitter {
background: #55ACEE;
color: white;
}
.fa-instagram {
background: #125688;
color: white;
16
2
}
p{
text-align: center;
}
</style>
</head>
<footer>
<p>
<a href=" https://www.facebook.com/profile.php?id=100076830482284&mibextid=ZbWKwL"
class="fa fa-facebook"></a>
<a href="https://api.whatsapp.com/send?phone=8292054306&text=Hello%20SURAJ KUMAR.%0d
%0aHow%20are%20you%20%3f%0d%0aI%20came%20from%20your%20website.&source=&data=#"
class="fa fa-whatsapp"></a>
<a href="https://instagram.com/suryananda002?igshid=ZDdkNTZiNTM=" class="fa fa-
instagram"></a>
</p>
<br>
<div class="container">
<div class="row">
<div class="col-md-12 col-sm-12">
<div style="color:#ffffff;" class="wow fadeInUp footer-copyright">
<p>Made in India <br>
Copyright © 2020 Suraj and Khusboo </p>
</div>
</div>
</div>
</div>
</footer>
16
3
</html>
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<title>COVID 19 HOSPITAL MANAGEMENT</title>
</head>
<body>
{% include "hospital/navbar.html" %}
{%block content%}
{%endblock content%}
{% include "hospital/footer.html" %}
</body>
</html>
{% extends 'hospital/homebase.html' %}
{% load static %}
{% block content %}
<head>
<style media="screen">
.jumbotron {
margin-top: 0px;
margin-bottom: 0px;
16
4
background-image: url('{% static "images/bg.jpg" %}');
background-size: cover;
background-repeat: no-repeat;
}
.jumbotron h5,
h3 {
text-align: center;
}
.alert {
margin: 0px;
}
.glow {
font-size: 50px;
color: white;
text-align: center;
-webkit-animation: glow 1s ease-in-out infinite alternate;
-moz-animation: glow 1s ease-in-out infinite alternate;
animation: glow 1s ease-in-out infinite alternate;
}
@-webkit-keyframes glow {
from {
text-shadow: 0 0 10px #eeeeee, 0 0 20px #000000, 0 0 30px #000000, 0 0 40px #000000, 0 0 50px
#9554b3, 0 0 60px #9554b3, 0 0 70px #9554b3;
}
to {
text-shadow: 0 0 20px #eeeeee, 0 0 30px #ff4da6, 0 0 40px #ff4da6, 0 0 50px #ff4da6, 0 0 60px
16
5
#ff4da6, 0 0 70px #ff4da6, 0 0 80px #ff4da6;
}
}
</style>
</head>
<br>
<br>
<p class="lead">
<a class="btn btn-primary btn-lg" href="/patientclick" role="button">Take Appointment</a>
</p>
<br><br>
</div>
<br><br><br><br>
{% include "hospital/admin_doctor_patient_card.html" %}
<br><br><br>
{% endblock content %}
<!DOCTYPE html>
{% load static %}
<html lang="en">
<head>
<meta charset="utf-8">
16
6
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-
awesome.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"></script>
<style type="text/css">
.bs-example {
margin: 0px;
.navbar-brand {
font-size: 20px;
font-family: sans-serif;
}
</style>
</head>
<body>
<div class="bs-example">
<nav class="navbar navbar-expand-md navbar-dark fixed-top" style="background:#337AB7;">
<a href="/" class="navbar-brand">Covid 19 Hospital Management System</a>
<button type="button" class="navbar-toggler" data-toggle="collapse" data-
target="#navbarCollapse">
<span class="navbar-toggler-icon"></span>
</button>
16
7
<div class="navbar-nav">
</div>
<div class="navbar-nav">
<a href="/aboutus" class="nav-item nav-link">About Us</a>
<a href="/contactus" class="nav-item nav-link">Contact Us</a>
</div>
</div>
</nav>
</div>
<!--
developed By : khushboo kumari
facebook : https://www.facebook.com/profile.php?id=100076830482284&mibextid=ZbWKwL
-->
</body>
</html>
{% extends 'hospital/patient_base.html' %}
{% load static %}
{% block content %}
<br><br>
<head>
<meta charset="utf-8">
16
8
<meta name="viewport" content="width=device-width, initial-scale=1">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<link href="http://netdna.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css"
rel="stylesheet">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.1/css/
all.min.css">
<style type="text/css">
a:link {
text-decoration: none;
}
.menu {
top: 50px;
}
h6 {
color: white;
}
.order-card {
color: #fff;
}
.bg-c-blue {
background: linear-gradient(45deg, #4099ff, #73b4ff);
}
.bg-c-green {
background: linear-gradient(45deg, #2ed8b6, #59e0c5);
}
.bg-c-yellow {
background: linear-gradient(45deg, #FFB64D, #ffcb80);
}
16
9
.bg-c-pink {
background: linear-gradient(45deg, #FF5370, #ff869a);
}
.card {
border-radius: 5px;
-webkit-box-shadow: 0 1px 2.94px 0.06px rgba(4, 26, 55, 0.16);
box-shadow: 0 1px 2.94px 0.06px rgba(4, 26, 55, 0.16);
border: none;
margin-bottom: 30px;
-webkit-transition: all 0.3s ease-in-out;
transition: all 0.3s ease-in-out;
}
.card .card-block {
padding: 25px;
}
.order-card i {
font-size: 26px;
}
.f-left {
float: left;
}
.f-right {
float: right;
}
</style>
</head>
17
0
<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.3.0/css/font-awesome.min.css"
rel="stylesheet">
<div class="container">
<div class="row">
<div class="col-md-4 col-xl-6">
<div class="card bg-c-blue order-card">
<div class="card-block">
<a href="/patient-view-appointment">
<h6 class="m-b-20">View Your Appointment</h6>
</a>
<br>
<h2 class="text-right"><i class="fas fa-calendar f-left"></i></h2>
</div>
</div>
</div>
17
1
-->
<br><br><br><br><br><br><br><br>
{% endblock content %}
<!DOCTYPE html>
{% load static %}
<html lang="en">
<head>
<meta charset="UTF-8">
<title>COVID 19 HOSPITAL MANAGEMENT</title>
<style media="screen">
a:link {
text-decoration: none;
}
a{
color: white;
}
a:hover {
color: white;
}
17
2
/*---------------------------------------
Social section
-----------------------------------------*/
footer {
padding: 0px 0px 0px 0px;
background-color: black;
margin: 0px;
}
#ftr {
padding: 20px;
}
.fa {
font-size: 23px;
width: 60px;
text-align: center;
text-decoration: none;
margin: 5px 2px;
border-radius: 50%;
}
.fa:hover {
opacity: 0.5;
text-decoration: none;
}
.fa-facebook {
17
3
background: #3B5998;
color: white;
margin-top: 30px;
}
.fa-whatsapp {
background: #25d366;
color: white;
}
.fa-twitter {
background: #55ACEE;
color: white;
}
.fa-instagram {
background: #125688;
color: white;
}
p{
text-align: center;
body {
padding-left: 240px;
}
main {
position: relative;
height: 100vh;
17
4
}
.menu {
background: #5bc995;
height: 100vh;
width: 240px;
position: fixed;
top: 0px;
left: 0;
z-index: 5;
outline: none;
}
.menu .avatar {
background: rgba(0, 0, 0, 0.1);
padding: 2em 0.5em;
text-align: center;
}
.menu .avatar img {
width: 100px;
border-radius: 50%;
overflow: hidden;
border: 4px solid #ffea92;
box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.2);
}
.menu .avatar h2 {
font-weight: normal;
margin-bottom: 0;
}
.menu ul {
list-style: none;
padding: 0.5em 0;
margin: 0;
}
.menu ul li {
17
5
padding: 0.5em 1em 0.5em 3em;
font-size: 0.95em;
font-weight: regular;
background-repeat: no-repeat;
background-position: left 15px center;
background-size: auto 20px;
transition: all 0.15s linear;
cursor: pointer;
}
.menu ul li.icon-dashboard {
background-image: url("http://www.entypo.com/images//gauge.svg");
}
.menu ul li.icon-customers {
background-image: url("http://www.entypo.com/images//briefcase.svg");
}
.menu ul li.icon-users {
background-image: url("http://www.entypo.com/images//users.svg");
}
.menu ul li.icon-calendar {
background-image: url("http://www.entypo.com/images//calendar.svg");
}
.menu ul li:hover {
background-color: rgba(0, 0, 0, 0.1);
}
.menu ul li:focus {
outline: none;
}
@media screen and (max-width: 900px) and (min-width: 400px) {
body {
padding-left: 90px;
}
.menu {
width: 90px;
17
6
}
.menu .avatar {
padding: 0.5em;
position: relative;
}
.menu .avatar img {
width: 60px;
}
.menu .avatar h2 {
opacity: 0;
position: absolute;
top: 50%;
left: 100px;
margin: 0;
min-width: 200px;
border-radius: 4px;
background: rgba(0, 0, 0, 0.4);
transform: translate3d(-20px, -50%, 0);
transition: all 0.15s ease-in-out;
}
.menu .avatar:hover h2 {
opacity: 1;
transform: translate3d(0px, -50%, 0);
}
.menu ul li {
height: 60px;
background-position: center center;
background-size: 30px auto;
position: relative;
}
.menu ul li span {
opacity: 0;
position: absolute;
background: rgba(0, 0, 0, 0.5);
17
7
padding: 0.2em 0.5em;
border-radius: 4px;
top: 50%;
left: 80px;
transform: translate3d(-15px, -50%, 0);
transition: all 0.15s ease-in-out;
}
.menu ul li span:before {
content: '';
width: 0;
height: 0;
position: absolute;
top: 50%;
left: -5px;
border-top: 5px solid transparent;
border-bottom: 5px solid transparent;
border-right: 5px solid rgba(0, 0, 0, 0.5);
transform: translateY(-50%);
}
.menu ul li:hover span {
opacity: 1;
transform: translate3d(0px, -50%, 0);
}
}
@media screen and (max-width: 400px) {
body {
padding-left: 0;
}
.menu {
width: 230px;
box-shadow: 0 0 0 100em rgba(0, 0, 0, 0);
transform: translate3d(-230px, 0, 0);
transition: all 0.3s ease-in-out;
}
17
8
.menu .smartphone-menu-trigger {
width: 40px;
height: 40px;
position: absolute;
left: 100%;
background: #5bc995;
}
.menu .smartphone-menu-trigger:before,
.menu .smartphone-menu-trigger:after {
content: '';
width: 50%;
height: 2px;
background: #fff;
border-radius: 10px;
position: absolute;
top: 45%;
left: 50%;
transform: translate3d(-50%, -50%, 0);
}
.menu .smartphone-menu-trigger:after {
top: 55%;
transform: translate3d(-50%, -50%, 0);
}
.menu ul li {
padding: 1em 1em 1em 3em;
font-size: 1.2em;
}
.menu:focus {
transform: translate3d(0, 0, 0);
box-shadow: 0 0 0 100em rgba(0, 0, 0, 0.6);
}
.menu:focus .smartphone-menu-trigger {
pointer-events: none;
}
17
9
}
</style>
</head>
<body>
<!-- partial:index.partial.html -->
<nav class="menu" tabindex="0">
<div class="smartphone-menu-trigger"></div>
<header class="avatar">
<img src="{% static patient.profile_pic.url %}" alt="Profile Pic" />
<br><br>
<h6>Patient</h6>
<h2>{{request.user.first_name}}</h2>
</header>
<ul>
<li tabindex="0" class="icon-dashboard"> <a style="color:white; text-decoration:none;"
href="/patient-dashboard"><span>Dashboard</span></a> </li>
<li tabindex="0" class="icon-calendar"> <a style="color:white; text-decoration:none;" href="/patient-
appointment"><span>Appointments</span></a></li>
<li tabindex="0" class="icon-users"> <a style="color:white; text-decoration:none;" href="/patient-
view-doctor"><span>Doctors</span></a></li>
18
0
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse justify-content-between" id="navbarCollapse">
<div class="navbar-nav" style=" margin-left: 90%;">
</p>
<br>
<div class="container">
<div class="row">
<div class="col-md-12 col-sm-12">
<div style="color:#ffffff;" class="wow fadeInUp footer-copyright">
<p>Made in Jharkhand boy & girl <br>
18
1
Copyright © 2023 KHUSHBOO & SURAJ </p>
</div>
</div>
</div>
</div>
</footer>
</main>
<!--
developed By : khushboo kumari
facebook : https://www.facebook.com/profile.php?id=100076830482284&mibextid=ZbWKwL
-->
</body>
</html>
{% extends 'hospital/patient_base.html' %}
{% load widget_tweaks %}
{% block content %}
<head>
<style media="screen">
a:link {
text-decoration: none;
}
.note {
text-align: center;
height: 80px;
background: -webkit-linear-gradient(left, #0072ff, #8811c5);
color: #fff;
font-weight: bold;
line-height: 80px;
}
18
2
.form-content {
padding: 5%;
border: 1px solid #ced4da;
margin-bottom: 2%;
}
.form-control {
border-radius: 1.5rem;
}
.btnSubmit {
border: none;
border-radius: 1.5rem;
padding: 1%;
width: 20%;
cursor: pointer;
background: #0062cc;
color: #fff;
}
.menu {
top: 50px;
}
</style>
18
3
var a = "{{message}}";
alert(a);
</script>
{% endif %}
</div>
</div>
<button type="submit" class="btnSubmit">Book</button>
</div>
18
4
</div>
</div>
</form>
{% endblock content %}
<!DOCTYPE html>
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<title>covid 19 Hospital Management</title>
<style media="screen">
.market-update-block {
padding: 2em 2em;
background: #999;
}
.market-update-block h3 {
color: #fff;
font-size: 1.5em;
font-family: 'Carrois Gothic', sans-serif;
}
.market-update-block h4 {
font-size: 1.2em;
color: #fff;
margin: 0.3em 0em;
font-family: 'Carrois Gothic', sans-serif;
}
.market-update-block p {
18
5
color: #fff;
font-size: 0.8em;
line-height: 1.8em;
}
.market-update-block.clr-block-1 {
background: #ff0000;
margin-right: 0.8em;
box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
transition: 0.5s all;
-webkit-transition: 0.5s all;
-moz-transition: 0.5s all;
-o-transition: 0.5s all;
}
.market-update-block.clr-block-2 {
background: #4f5905;
margin-right: 0.8em;
box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
transition: 0.5s all;
-webkit-transition: 0.5s all;
-moz-transition: 0.5s all;
-o-transition: 0.5s all;
}
.market-update-block.clr-block-3 {
background: #1355f9;
box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.16), 0 2px 10px 0 rgba(0, 0, 0, 0.12);
transition: 0.5s all;
-webkit-transition: 0.5s all;
-moz-transition: 0.5s all;
-o-transition: 0.5s all;
}
18
6
.market-update-block.clr-block-1:hover {
background: #3C3C3C;
transition: 0.5s all;
-webkit-transition: 0.5s all;
-moz-transition: 0.5s all;
-o-transition: 0.5s all;
}
.market-update-block.clr-block-2:hover {
background: #3C3C3C;
transition: 0.5s all;
-webkit-transition: 0.5s all;
-moz-transition: 0.5s all;
-o-transition: 0.5s all;
}
.market-update-block.clr-block-3:hover {
background: #3C3C3C;
transition: 0.5s all;
-webkit-transition: 0.5s all;
-moz-transition: 0.5s all;
-o-transition: 0.5s all;
}
.market-update-right i.fa.fa-user-o,
i.fa.fa-map-marker {
font-size: 3em;
color: #68AE00;
width: 80px;
height: 80px;
background: #fff;
text-align: center;
border-radius: 49px;
-webkit-border-radius: 49px;
18
7
-moz-border-radius: 49px;
-o-border-radius: 49px;
line-height: 1.7em;
}
.market-update-right i.fa.fa-info-circle,
i.fa.fa-list-alt {
font-size: 3em;
color: #FC8213;
width: 80px;
height: 80px;
background: #fff;
text-align: center;
border-radius: 49px;
-webkit-border-radius: 49px;
-moz-border-radius: 49px;
-o-border-radius: 49px;
line-height: 1.7em;
}
.market-update-right i.fa.fa-mobile,
i.fa.fa-calendar-o {
font-size: 3em;
color: #337AB7;
width: 80px;
height: 80px;
background: #fff;
text-align: center;
border-radius: 49px;
-webkit-border-radius: 49px;
-moz-border-radius: 49px;
-o-border-radius: 49px;
line-height: 1.7em;
}
18
8
.market-update-left {
padding: 0px;
}
</style>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.4.1/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-
awesome.min.css">
</head>
<body>
<div class="market-updates">
<div class="col-md-4 market-update-gd">
<div class="market-update-block clr-block-1">
<div class="col-md-8 market-update-left">
<h3>{{doctorName}}</h3>
<h4>Doctor Name</h4>
</div>
<div class="col-md-4 market-update-right">
<i class="fa fa-user-o"> </i>
</div>
<div class="clearfix"> </div>
</div>
</div>
<div class="col-md-4 market-update-gd">
<div class="market-update-block clr-block-2">
<div class="col-md-8 market-update-left">
<h3>{{symptoms}}</h3>
<h4>Symptoms</h4>
</div>
18
9
<div class="col-md-4 market-update-right">
<i class="fa fa-info-circle"></i>
</div>
<div class="clearfix"> </div>
</div>
</div>
<div class="col-md-4 market-update-gd">
<div class="market-update-block clr-block-3">
<div class="col-md-8 market-update-left">
<h3>{{doctorMobile}}</h3>
<h4>Doctor Mobile</h4>
</div>
<div class="col-md-4 market-update-right">
<i class="fa fa-mobile" aria-hidden="true"></i>
</div>
<div class="clearfix"> </div>
</div>
</div>
<div class="clearfix"> </div>
</div>
<br><br><br>
<div class="market-updates">
<div class="col-md-4 market-update-gd">
<div class="market-update-block clr-block-1">
<div class="col-md-8 market-update-left">
<h3>{{doctorAddress}}</h3>
<h4>Doctor Address</h4>
</div>
19
0
<div class="col-md-4 market-update-right">
<i class="fa fa-map-marker"> </i>
</div>
<div class="clearfix"> </div>
</div>
</div>
<div class="col-md-4 market-update-gd">
<div class="market-update-block clr-block-2">
<div class="col-md-8 market-update-left">
<h3>{{doctorDepartment}}</h3>
<h4>Doctor Department</h4>
</div>
<div class="col-md-4 market-update-right">
<i class="fa fa-list-alt"></i>
</div>
<div class="clearfix"> </div>
</div>
</div>
<div class="col-md-4 market-update-gd">
<div class="market-update-block clr-block-3">
<div class="col-md-8 market-update-left">
<h3>{{admitDate}}</h3>
<h4>Admit Date</h4>
</div>
<div class="col-md-4 market-update-right">
<i class="fa fa-calendar-o" aria-hidden="true"></i>
</div>
<div class="clearfix"> </div>
</div>
</div>
<div class="clearfix"> </div>
</div>
19
1
</body>
</html>
{% extends 'hospital/patient_base.html' %}
{% load static %}
{% block content %}
{%include 'hospital/patient_dashboard_cards.html'%}
<br><br><br><br>
{% endblock content %}
{% extends 'hospital/patient_base.html' %}
{% load static %}
{% block content %}
<head>
<meta charset="utf-8">
<title>A simple, clean, and responsive HTML invoice template</title>
<style>
.invoice-box {
max-width: 800px;
margin: auto;
padding: 30px;
border: 1px solid #eee;
box-shadow: 0 0 10px rgba(0, 0, 0, .15);
font-size: 16px;
line-height: 24px;
font-family: 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif;
color: #555;
}
19
2
.invoice-box table {
width: 100%;
line-height: inherit;
text-align: left;
}
.invoice-box table td {
padding: 5px;
vertical-align: top;
}
19
3
}
19
4
.rtl {
direction: rtl;
font-family: Tahoma, 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif;
}
.rtl table {
text-align: right;
}
.menu {
top: 50px;
}
.download {
text-align: center;
display: block;
}
</style>
</head>
<br><br><br>
{%if is_discharged%}
<div class="invoice-box">
<table cellpadding="0" cellspacing="0">
<tr class="top">
<td colspan="2">
<table>
<tr>
<td class="title">
19
5
<h1> Covid 19 Hospital Management</h1>
</td>
<td>
<tr class="information">
<td colspan="2">
<table>
<tr>
<td>
Patient Name : {{patientName}}<br>
Patient Mobile : {{mobile}}<br>
Patient Addres : {{address}}<br>
</td>
<td>
Doctor Name :<br>
{{assignedDoctorName}}<br>
</td>
</tr>
</table>
</td>
</tr>
19
6
<tr class="heading">
<td>
Disease and Symptoms
</td>
<td>
</td>
</tr>
<tr class="details">
<td>
{{symptoms}}
</td>
</tr>
<tr class="heading">
<td>
Item
</td>
<td>
Price
</td>
</tr>
<tr class="item">
<td>
Room Charge of {{daySpent}} Days
</td>
<td>
{{roomCharge}}
</td>
</tr>
19
7
<tr class="item">
<td>
Doctor Fee
</td>
<td>
{{doctorFee}}
</td>
</tr>
<tr class="item">
<td>
Medicine Cost
</td>
<td>
{{medicineCost}}
</td>
</tr>
<td>
{{OtherCharge}}
</td>
</tr>
<tr class="total">
<td></td>
19
8
<td>
Total Rupees : {{total}}
</td>
</tr>
</table>
</div>
<br><br>
<div class="download">
<button id="rzp-button1" class="btn btn-info">Pay</button>
<a class="btn btn-success" href="{% url 'download-pdf' patientId %}">Download</a>
</div>
{%else%}
<h5 style="text-align:center;">You Are Not Discharged By Hospital !</h5>
<h5 style="text-align:center;">Your Treatment Is Going On !</h5><br><br>
<h6 style="text-align:center;">When You Will Be Discahrged. You Can Download Invoice.</h6>
{%endif%}
<br><br><br><br><br><br><br><br>
<script src="https://checkout.razorpay.com/v1/checkout.js"></script>
<script>
var options = {
"key": "rzp_test_QYBdGV9mYgsG6c", // Enter the Key ID generated from the Dashboard
"amount": {{amount}}, // Amount is in currency subunits. Default currency is INR. Hence, 50000
refers to 50000 paise
"currency": "INR",
"name": "Suraj",
"description": "Test Transaction",
19
9
"order_id": '{{order_id}}', //This is a sample Order ID. Pass the `id` obtained in the response of Step 1
"handler": function (response){
alert(response.razorpay_payment_id);
alert(response.razorpay_order_id);
alert(response.razorpay_signature)
},
"theme": {
"color": "#3399cc"
}
};
var rzp1 = new Razorpay(options);
rzp1.on('payment.failed', function (response){
alert(response.error.code);
alert(response.error.description);
alert(response.error.source);
alert(response.error.step);
alert(response.error.reason);
alert(response.error.metadata.order_id);
alert(response.error.metadata.payment_id);
});
document.getElementById('rzp-button1').onclick = function(e){
rzp1.open();
e.preventDefault();
}
</script>
{% endblock content %}
{% extends 'hospital/admin_base.html' %}
{% load static %}
{% block content %}
<head>
<meta charset="utf-8">
<title>A simple, clean, and responsive HTML invoice template</title>
20
0
<style>
.invoice-box {
max-width: 800px;
margin: auto;
padding: 30px;
border: 1px solid #eee;
box-shadow: 0 0 10px rgba(0, 0, 0, .15);
font-size: 16px;
line-height: 24px;
font-family: 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif;
color: #555;
}
.invoice-box table {
width: 100%;
line-height: inherit;
text-align: left;
}
.invoice-box table td {
padding: 5px;
vertical-align: top;
}
20
1
font-size: 45px;
line-height: 45px;
color: #333;
}
20
2
width: 100%;
display: block;
text-align: center;
}
.rtl table {
text-align: right;
}
.menu {
top: 50px;
}
.download {
text-align: center;
display: block;
}
20
3
</style>
</head>
<br><br><br>
<div class="invoice-box">
<table cellpadding="0" cellspacing="0">
<tr class="top">
<td colspan="2">
<table>
<tr>
<td class="title">
<h1>Hospital Management</h1>
</td>
<td>
<tr class="information">
<td colspan="2">
<table>
<tr>
<td>
Patient Name : {{name}}<br>
Patient Mobile : {{mobile}}<br>
Patient Addres : {{address}}<br>
</td>
20
4
<td>
Doctor Name :<br>
{{assignedDoctorName}}<br>
</td>
</tr>
</table>
</td>
</tr>
<tr class="heading">
<td>
Disease and Symptoms
</td>
<td>
</td>
</tr>
<tr class="details">
<td>
{{symptoms}}
</td>
</tr>
<tr class="heading">
<td>
Item
</td>
<td>
Price
</td>
20
5
</tr>
<tr class="item">
<td>
Room Charge of {{day}} Days
</td>
<td>
{{roomCharge}}
</td>
</tr>
<tr class="item">
<td>
Doctor Fee
</td>
<td>
{{doctorFee}}
</td>
</tr>
<tr class="item">
<td>
Medicine Cost
</td>
<td>
{{medicineCost}}
</td>
</tr>
20
6
Other Charge
</td>
<td>
{{OtherCharge}}
</td>
</tr>
<tr class="total">
<td></td>
<td>
Total Rupees : {{total}}
</td>
</tr>
</table>
</div>
<br><br>
<div class="download">
<a style="background:red; width:500px;" href="{% url 'download-pdf' patientId %}">Download</a>
</div>
{% endblock content %}
{% extends 'hospital/admin_base.html' %}
{% load static %}
{% block content %}
<head>
<meta charset="utf-8">
<title>A simple, clean, and responsive HTML invoice template</title>
<style>
20
7
.invoice-box {
max-width: 800px;
margin: auto;
padding: 30px;
border: 1px solid #eee;
box-shadow: 0 0 10px rgba(0, 0, 0, .15);
font-size: 16px;
line-height: 24px;
font-family: 'Helvetica Neue', 'Helvetica', Helvetica, Arial, sans-serif;
color: #555;
}
.invoice-box table {
width: 100%;
line-height: inherit;
text-align: left;
}
.invoice-box table td {
padding: 5px;
vertical-align: top;
}
20
8
color: #333;
}
20
9
text-align: center;
}
.rtl table {
text-align: right;
}
.menu {
top: 50px;
}
</style>
</head>
<br><br><br>
<div class="invoice-box">
<table cellpadding="0" cellspacing="0">
<tr class="top">
21
0
<td colspan="2">
<table>
<tr>
<td class="title">
<h1>Hospital Management</h1>
</td>
<td>
<tr class="information">
<td colspan="2">
<table>
<tr>
<td>
Patient Name : {{name}}<br>
Patient Mobile : {{mobile}}<br>
Patient Addres : {{address}}<br>
</td>
<td>
Doctor Name :<br>
{{assignedDoctorName}}<br>
</td>
</tr>
21
1
</table>
</td>
</tr>
<tr class="heading">
<td>
Disease and Symptoms
</td>
<td>
</td>
</tr>
<tr class="details">
<td>
{{symptoms}}
</td>
</tr>
<tr class="heading">
<td>
Item
</td>
<td>
Price
</td>
</tr>
<form method="post">
{% csrf_token %}
<tr class="item">
<td>
Room Charge (Per Day)
21
2
</td>
<td>
<input type="number" name="roomCharge" placeholder="In Rupees" value="">
</td>
</tr>
<tr class="item">
<td>
Doctor Fee
</td>
<td>
<input type="number" name="doctorFee" placeholder="In Rupees" value="">
</td>
</tr>
<tr class="item">
<td>
Medicine Cost
</td>
<td>
<input type="number" name="medicineCost" placeholder="In Rupees" value="">
</td>
</tr>
<td>
<input type="number" name="OtherCharge" placeholder="In Rupees" value="">
21
3
</td>
</tr>
<tr class="total">
<td></td>
<td>
<input type="submit" name="submit" value="Generate Bill">
</td>
</tr>
</form>
</table>
</div>
{% endblock content %}
{% extends 'hospital/patient_base.html' %}
{% block content %}
{%load static%}
<head>
<link href="//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet"
id="bootstrap-css">
<script src="//netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js"></script>
<script src="//code.jquery.com/jquery-1.11.1.min.js"></script>
<style media="screen">
a:link {
text-decoration: none;
}
h6 {
21
4
text-align: center;
}
.row {
margin: 100px;
}
</style>
</head>
<div class="container">
{% if doctors %}
<div class="panel panel-primary">
<div class="panel-heading">
<h6 class="panel-title"> Total Doctor List</h6>
</div>
<table class="table table-hover" id="dev-table">
<thead>
<tr>
<th>Name</th>
<th>Profile Picture</th>
<th>Mobile</th>
<th>Address</th>
21
5
<th>Department</th>
</tr>
</thead>
{% for d in doctors %}
<tr>
<td> {{d.get_name}}</td>
<td> <img src="{% static d.profile_pic.url %}" alt="Profile Pic" height="40px" width="40px"
/></td>
<td>{{d.mobile}}</td>
<td>{{d.address}}</td>
<td>{{d.department}}</td>
</tr>
{% endfor %}
</table>
</div>
{%else%}
<br><br><br>
<h4 style="text-align: center;color: red;">No Doctor Found !!!</h4>
{% endif %}
</div>
{% endblock content %}
<!DOCTYPE html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
21
6
<title>COVID 19 HOSPITAL MANAGEMENT</title>
<style media="screen">
.jumbotron {
margin-top: 0px;
margin-bottom: 0px;
}
.jumbotron h1 {
text-align: center;
}
.alert {
margin: 0px;
}
</style>
</head>
<body>
{% include "hospital/navbar.html" %}
<br>
<br>
21
7
</div>
{% include "hospital/footer.html" %}
</body>
</html>
{% extends 'hospital/homebase.html' %}
{% block content %}
<br>
<br>
{% endblock content %}
<!DOCTYPE html>
{% load widget_tweaks %}
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
21
8
<title>COVID 19 HOSPITAL MANAGEMENT</title>
<style type="text/css">
body {
color: #aa082e;
background-color: #b6bde7;
font-family: 'Roboto', sans-serif;
}
a:link {
text-decoration: none;
}
.note {
text-align: center;
height: 80px;
background: -webkit-linear-gradient(left, #0072ff, #8811c5);
color: #fff;
font-weight: bold;
line-height: 80px;
}
.form-content {
padding: 5%;
border: 1px solid #ced4da;
margin-bottom: 2%;
}
.form-control {
border-radius: 1.5rem;
}
.btnSubmit {
21
9
border: none;
border-radius: 1.5rem;
padding: 1%;
width: 20%;
cursor: pointer;
background: #0062cc;
color: #fff;
}
</style>
</head>
<body>
{% include "hospital/navbar.html" %}
<br>
<br>
<br><br>
<form method="post">
{% csrf_token %}
<div class="container register-form">
<div class="form">
<div class="note">
<p>Patient Login Page</p>
</div>
<div class="form-content">
<div class="row">
<div class="col-md-6">
<div class="form-group">
{% render_field form.username class="form-control" placeholder="Username" %}
</div>
22
0
</div>
<div class="col-md-6">
<div class="form-group">
{% render_field form.password class="form-control" placeholder="Password" %}
</div>
</div>
</div>
<button type="submit" class="btnSubmit">Login</button>
<div class="text-center">Do not have account? <a href="patientsignup">Signup here</a></div>
</div>
</div>
</div>
</form>
<br><br><br>
{% include "hospital/footer.html" %}
</body>
</html>
<!DOCTYPE html>
{% load widget_tweaks %}
<html lang="en" dir="ltr">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>COVID 19 HOSPITAL MANAGEMENT</title>
<style type="text/css">
22
1
body {
color: #aa082e;
background-color: #b6bde7;
font-family: 'Roboto', sans-serif;
}
a:link {
text-decoration: none;
}
.note {
text-align: center;
height: 80px;
background: -webkit-linear-gradient(left, #0072ff, #8811c5);
color: #fff;
font-weight: bold;
line-height: 80px;
}
.form-content {
padding: 5%;
border: 1px solid #ced4da;
margin-bottom: 2%;
}
.form-control {
border-radius: 1.5rem;
}
.btnSubmit {
border: none;
border-radius: 1.5rem;
padding: 1%;
width: 20%;
22
2
cursor: pointer;
background: #0062cc;
color: #fff;
}
</style>
</head>
<body>
{% include "hospital/navbar.html" %}
<br>
<br>
<br>
<br>
<div class="form-content">
<div class="row">
<div class="col-md-6">
<div class="form-group">
{% render_field userForm.first_name class="form-control" placeholder="First Name" %}
</div>
22
3
<div class="form-group">
{% render_field userForm.username class="form-control" placeholder="Username" %}
</div>
<div class="form-group">
{% render_field patientForm.address class="form-control" placeholder="Address" %}
</div>
<div class="form-group">
{% render_field patientForm.symptoms class="form-control" placeholder="Symptoms" %}
</div>
<div class="form-group">
{% render_field patientForm.profile_pic required="required" class="form-control"
placeholder="Profile Picture" %}
</div>
</div>
<div class="col-md-6">
<div class="form-group">
{% render_field userForm.last_name class="form-control" placeholder="Last Name" %}
</div>
<div class="form-group">
{% render_field userForm.password class="form-control" placeholder="Password" %}
</div>
<div class="form-group">
{% render_field patientForm.mobile class="form-control" pattern="[6789][0-9]{9}"
placeholder="Mobile Number" %}
</div>
<div class="form-group">
{% render_field patientForm.assignedDoctorId class="form-control" placeholder="Doctor" %}
</div>
</div>
</div>
<button type="submit" class="btnSubmit">Register</button>
<div class="text-center">Already have an account? <a href="patientlogin">Login here</a></div>
</div>
22
4
</div>
</div>
</form>
{% include "hospital/footer.html" %}
</body>
</html>
padding-left: 240px;
}
main {
position: relative;
height: 100vh;
}
.menu {
background: #5bc995;
height: 100vh;
width: 240px;
position: fixed;
top: 0px;
left: 0;
z-index: 5;
outline: none;
}
.menu .avatar {
background: rgba(0, 0, 0, 0.1);
22
5
padding: 2em 0.5em;
text-align: center;
}
.menu .avatar img {
width: 100px;
border-radius: 50%;
overflow: hidden;
border: 4px solid #ffea92;
box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.2);
}
.menu .avatar h2 {
font-weight: normal;
margin-bottom: 0;
}
.menu ul {
list-style: none;
padding: 0.5em 0;
margin: 0;
}
.menu ul li {
padding: 0.5em 1em 0.5em 3em;
font-size: 0.95em;
font-weight: regular;
background-repeat: no-repeat;
background-position: left 15px center;
background-size: auto 20px;
transition: all 0.15s linear;
cursor: pointer;
}
.menu ul li.icon-dashboard {
background-image: url("http://www.entypo.com/images//gauge.svg");
}
.menu ul li.icon-customers {
background-image: url("http://www.entypo.com/images//briefcase.svg");
22
6
}
.menu ul li.icon-users {
background-image: url("http://www.entypo.com/images//users.svg");
}
.menu ul li.icon-calendar {
background-image: url("http://www.entypo.com/images//calendar.svg");
}
.menu ul li:hover {
background-color: rgba(0, 0, 0, 0.1);
}
.menu ul li:focus {
outline: none;
}
@media screen and (max-width: 900px) and (min-width: 400px) {
body {
padding-left: 90px;
}
.menu {
width: 90px;
}
.menu .avatar {
padding: 0.5em;
position: relative;
}
.menu .avatar img {
width: 60px;
}
.menu .avatar h2 {
opacity: 0;
position: absolute;
top: 50%;
left: 100px;
margin: 0;
22
7
min-width: 200px;
border-radius: 4px;
background: rgba(0, 0, 0, 0.4);
transform: translate3d(-20px, -50%, 0);
transition: all 0.15s ease-in-out;
}
.menu .avatar:hover h2 {
opacity: 1;
transform: translate3d(0px, -50%, 0);
}
.menu ul li {
height: 60px;
background-position: center center;
background-size: 30px auto;
position: relative;
}
.menu ul li span {
opacity: 0;
position: absolute;
background: rgba(0, 0, 0, 0.5);
padding: 0.2em 0.5em;
border-radius: 4px;
top: 50%;
left: 80px;
transform: translate3d(-15px, -50%, 0);
transition: all 0.15s ease-in-out;
}
.menu ul li span:before {
content: '';
width: 0;
height: 0;
position: absolute;
top: 50%;
left: -5px;
22
8
border-top: 5px solid transparent;
border-bottom: 5px solid transparent;
border-right: 5px solid rgba(0, 0, 0, 0.5);
transform: translateY(-50%);
}
.menu ul li:hover span {
opacity: 1;
transform: translate3d(0px, -50%, 0);
}
}
@media screen and (max-width: 400px) {
body {
padding-left: 0;
}
.menu {
width: 230px;
box-shadow: 0 0 0 100em rgba(0, 0, 0, 0);
transform: translate3d(-230px, 0, 0);
transition: all 0.3s ease-in-out;
}
.menu .smartphone-menu-trigger {
width: 40px;
height: 40px;
position: absolute;
left: 100%;
background: #5bc995;
}
.menu .smartphone-menu-trigger:before,
.menu .smartphone-menu-trigger:after {
content: '';
width: 50%;
height: 2px;
background: #fff;
border-radius: 10px;
22
9
position: absolute;
top: 45%;
left: 50%;
transform: translate3d(-50%, -50%, 0);
}
.menu .smartphone-menu-trigger:after {
top: 55%;
transform: translate3d(-50%, -50%, 0);
}
.menu ul li {
padding: 1em 1em 1em 3em;
font-size: 1.2em;
}
.menu:focus {
transform: translate3d(0, 0, 0);
box-shadow: 0 0 0 100em rgba(0, 0, 0, 0.6);
}
.menu:focus .smartphone-menu-trigger {
pointer-events: none;
}
}
csss code end
class Migration(migrations.Migration):
dependencies = [
23
0
('hospital', '0001_initial'),
]
operations = [
migrations.DeleteModel(
name='TeacherExtra',
),
]
class Migration(migrations.Migration):
dependencies = [
('hospital', '0002_delete_teacherextra'),
]
operations = [
migrations.AddField(
model_name='patient',
name='admitDate',
field=models.DateField(auto_now=True),
),
]
23
1
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('hospital', '0003_patient_admitdate'),
]
operations = [
migrations.CreateModel(
name='PatientDischargeDetails',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False,
verbose_name='ID')),
('patientId', models.PositiveIntegerField()),
('patientName', models.CharField(max_length=40)),
('assignedDoctorName', models.CharField(max_length=40)),
('address', models.CharField(max_length=40)),
('mobile', models.CharField(max_length=40, null=True)),
('symptoms', models.CharField(max_length=100, null=True)),
('admitDate', models.DateField()),
('releaseDate', models.DateField()),
('daySpent', models.PositiveIntegerField()),
('roomCharge', models.PositiveIntegerField()),
('medicineCost', models.PositiveIntegerField()),
('doctorFee', models.PositiveIntegerField()),
('OtherCharge', models.PositiveIntegerField()),
('total', models.PositiveIntegerField()),
],
),
]
# Generated by Django 3.0.5 on 2020-05-20 02:15
23
2
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('hospital', '0004_patientdischargedetails'),
]
operations = [
migrations.CreateModel(
name='Appointment',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False,
verbose_name='ID')),
('patientId', models.PositiveIntegerField()),
('doctorId', models.PositiveIntegerField()),
('appointmentDate', models.DateField(auto_now=True)),
('description', models.TextField(max_length=500)),
],
),
]
class Migration(migrations.Migration):
dependencies = [
('hospital', '0005_appointment'),
23
3
]
operations = [
migrations.AddField(
model_name='appointment',
name='status',
field=models.BooleanField(default=False),
),
]
class Migration(migrations.Migration):
dependencies = [
('hospital', '0006_appointment_status'),
]
operations = [
migrations.AddField(
model_name='appointment',
name='doctorName',
field=models.CharField(max_length=40, null=True),
),
migrations.AddField(
model_name='appointment',
name='patientName',
field=models.CharField(max_length=40, null=True),
23
4
),
migrations.AlterField(
model_name='patient',
name='mobile',
field=models.CharField(max_length=40),
),
migrations.AlterField(
model_name='patient',
name='symptoms',
field=models.CharField(max_length=100),
),
]
class Migration(migrations.Migration):
dependencies = [
('hospital', '0007_auto_20200520_1023'),
]
operations = [
migrations.AddField(
model_name='doctor',
name='profile_pic',
field=models.ImageField(null=True, upload_to='DoctorProfilePic/'),
),
]
23
5
# Generated by Django 3.0.5 on 2020-05-23 05:48
class Migration(migrations.Migration):
dependencies = [
('hospital', '0008_doctor_profile_pic'),
]
operations = [
migrations.AlterField(
model_name='doctor',
name='profile_pic',
field=models.ImageField(blank=True, null=True, upload_to=''),
),
]
class Migration(migrations.Migration):
dependencies = [
('hospital', '0009_auto_20200523_1118'),
]
operations = [
migrations.AlterField(
model_name='doctor',
23
6
name='profile_pic',
field=models.ImageField(blank=True, null=True, upload_to='static/DoctorProfilePic/'),
),
]
# Generated by Django 3.0.5 on 2020-05-23 08:06
class Migration(migrations.Migration):
dependencies = [
('hospital', '0011_auto_20200523_1325'),
]
operations = [
migrations.AlterField(
model_name='doctor',
name='profile_pic',
field=models.ImageField(blank=True, null=True, upload_to='profile_pic/DoctorProfilePic/'),
),
]
class PatientAdmin(admin.ModelAdmin):
pass
admin.site.register(Patient, PatientAdmin)
23
7
class AppointmentAdmin(admin.ModelAdmin):
pass
admin.site.register(Appointment, AppointmentAdmin)
class PatientDischargeDetailsAdmin(admin.ModelAdmin):
pass
admin.site.register(PatientDischargeDetails, PatientDischargeDetailsAdmin)
from django import forms
from django.contrib.auth.models import User
from . import models
23
8
fields=['address','mobile','department','status','profile_pic']
assignedDoctorId=forms.ModelChoiceField(queryset=models.Doctor.objects.all().filter(status=True),emp
ty_label="Name and Department", to_field_name="user_id")
class Meta:
model=models.Patient
fields=['address','mobile','status','symptoms','profile_pic']
class AppointmentForm(forms.ModelForm):
doctorId=forms.ModelChoiceField(queryset=models.Doctor.objects.all().filter(status=True),empty_label
="Doctor Name and Department", to_field_name="user_id")
patientId=forms.ModelChoiceField(queryset=models.Patient.objects.all().filter(status=True),empty_label
="Patient Name and Symptoms", to_field_name="user_id")
class Meta:
model=models.Appointment
23
9
fields=['description','status']
class PatientAppointmentForm(forms.ModelForm):
doctorId=forms.ModelChoiceField(queryset=models.Doctor.objects.all().filter(status=True),empty_label
="Doctor Name and Department", to_field_name="user_id")
class Meta:
model=models.Appointment
fields=['description','status']
departments=[('Cardiologist','Cardiologist'),
('Dermatologists','Dermatologists'),
('Emergency Medicine Specialists','Emergency Medicine Specialists'),
('Allergists/Immunologists','Allergists/Immunologists'),
('Anesthesiologists','Anesthesiologists'),
('Colon and Rectal Surgeons','Colon and Rectal Surgeons')
]
class Doctor(models.Model):
user=models.OneToOneField(User,on_delete=models.CASCADE)
profile_pic= models.ImageField(upload_to='profile_pic/DoctorProfilePic/',null=True,blank=True)
address = models.CharField(max_length=40)
24
0
mobile = models.CharField(max_length=20,null=True)
department= models.CharField(max_length=50,choices=departments,default='Cardiologist')
status=models.BooleanField(default=False)
@property
def get_name(self):
return self.user.first_name+" "+self.user.last_name
@property
def get_id(self):
return self.user.id
def __str__(self):
return "{} ({})".format(self.user.first_name,self.department)
class Patient(models.Model):
user=models.OneToOneField(User,on_delete=models.CASCADE)
profile_pic= models.ImageField(upload_to='profile_pic/PatientProfilePic/',null=True,blank=True)
address = models.CharField(max_length=40)
mobile = models.CharField(max_length=20,null=False)
symptoms = models.CharField(max_length=100,null=False)
assignedDoctorId = models.PositiveIntegerField(null=True)
admitDate=models.DateField(auto_now=True)
status=models.BooleanField(default=False)
@property
def get_name(self):
return self.user.first_name+" "+self.user.last_name
@property
def get_id(self):
return self.user.id
def __str__(self):
return self.user.first_name+" ("+self.symptoms+")"
class Appointment(models.Model):
24
1
patientId=models.PositiveIntegerField(null=True)
doctorId=models.PositiveIntegerField(null=True)
patientName=models.CharField(max_length=40,null=True)
doctorName=models.CharField(max_length=40,null=True)
appointmentDate=models.DateField(auto_now=True)
description=models.TextField(max_length=500)
status=models.BooleanField(default=False)
24
2
#for showing signup/login button for doctor(by sumit)
def doctorclick_view(request):
if request.user.is_authenticated:
return HttpResponseRedirect('afterlogin')
return render(request,'hospital/doctorclick.html')
def admin_signup_view(request):
form=forms.AdminSigupForm()
if request.method=='POST':
form=forms.AdminSigupForm(request.POST)
if form.is_valid():
user=form.save()
user.set_password(user.password)
user.save()
my_admin_group = Group.objects.get_or_create(name='ADMIN')
my_admin_group[0].user_set.add(user)
return HttpResponseRedirect('adminlogin')
return render(request,'hospital/adminsignup.html',{'form':form})
24
3
def doctor_signup_view(request):
userForm=forms.DoctorUserForm()
doctorForm=forms.DoctorForm()
mydict={'userForm':userForm,'doctorForm':doctorForm}
if request.method=='POST':
userForm=forms.DoctorUserForm(request.POST)
doctorForm=forms.DoctorForm(request.POST,request.FILES)
if userForm.is_valid() and doctorForm.is_valid():
user=userForm.save()
user.set_password(user.password)
user.save()
doctor=doctorForm.save(commit=False)
doctor.user=user
doctor=doctor.save()
my_doctor_group = Group.objects.get_or_create(name='DOCTOR')
my_doctor_group[0].user_set.add(user)
return HttpResponseRedirect('doctorlogin')
return render(request,'hospital/doctorsignup.html',context=mydict)
def patient_signup_view(request):
userForm=forms.PatientUserForm()
patientForm=forms.PatientForm()
mydict={'userForm':userForm,'patientForm':patientForm}
if request.method=='POST':
userForm=forms.PatientUserForm(request.POST)
patientForm=forms.PatientForm(request.POST,request.FILES)
if userForm.is_valid() and patientForm.is_valid():
user=userForm.save()
user.set_password(user.password)
user.save()
patient=patientForm.save(commit=False)
patient.user=user
patient.assignedDoctorId=request.POST.get('assignedDoctorId')
24
4
patient=patient.save()
my_patient_group = Group.objects.get_or_create(name='PATIENT')
my_patient_group[0].user_set.add(user)
return HttpResponseRedirect('patientlogin')
return render(request,'hospital/patientsignup.html',context=mydict)
24
5
return redirect('patient-dashboard')
else:
return render(request,'hospital/patient_wait_for_approval.html')
#---------------------------------------------------------------------------------
#------------------------ ADMIN RELATED VIEWS START ------------------------------
#---------------------------------------------------------------------------------
@login_required(login_url='adminlogin')
@user_passes_test(is_admin)
def admin_dashboard_view(request):
#for both table in admin dashboard
doctors=models.Doctor.objects.all().order_by('-id')
patients=models.Patient.objects.all().order_by('-id')
#for three cards
doctorcount=models.Doctor.objects.all().filter(status=True).count()
pendingdoctorcount=models.Doctor.objects.all().filter(status=False).count()
patientcount=models.Patient.objects.all().filter(status=True).count()
pendingpatientcount=models.Patient.objects.all().filter(status=False).count()
appointmentcount=models.Appointment.objects.all().filter(status=True).count()
pendingappointmentcount=models.Appointment.objects.all().filter(status=False).count()
mydict={
'doctors':doctors,
'patients':patients,
'doctorcount':doctorcount,
'pendingdoctorcount':pendingdoctorcount,
24
6
'patientcount':patientcount,
'pendingpatientcount':pendingpatientcount,
'appointmentcount':appointmentcount,
'pendingappointmentcount':pendingappointmentcount,
}
return render(request,'hospital/admin_dashboard.html',context=mydict)
@login_required(login_url='adminlogin')
@user_passes_test(is_admin)
def admin_view_doctor_view(request):
doctors=models.Doctor.objects.all().filter(status=True)
return render(request,'hospital/admin_view_doctor.html',{'doctors':doctors})
@login_required(login_url='adminlogin')
@user_passes_test(is_admin)
def delete_doctor_from_hospital_view(request,pk):
doctor=models.Doctor.objects.get(id=pk)
user=models.User.objects.get(id=doctor.user_id)
user.delete()
doctor.delete()
return redirect('admin-view-doctor')
24
7
@login_required(login_url='adminlogin')
@user_passes_test(is_admin)
def update_doctor_view(request,pk):
doctor=models.Doctor.objects.get(id=pk)
user=models.User.objects.get(id=doctor.user_id)
userForm=forms.DoctorUserForm(instance=user)
doctorForm=forms.DoctorForm(request.FILES,instance=doctor)
mydict={'userForm':userForm,'doctorForm':doctorForm}
if request.method=='POST':
userForm=forms.DoctorUserForm(request.POST,instance=user)
doctorForm=forms.DoctorForm(request.POST,request.FILES,instance=doctor)
if userForm.is_valid() and doctorForm.is_valid():
user=userForm.save()
user.set_password(user.password)
user.save()
doctor=doctorForm.save(commit=False)
doctor.status=True
doctor.save()
return redirect('admin-view-doctor')
return render(request,'hospital/admin_update_doctor.html',context=mydict)
@login_required(login_url='adminlogin')
@user_passes_test(is_admin)
def admin_add_doctor_view(request):
userForm=forms.DoctorUserForm()
doctorForm=forms.DoctorForm()
mydict={'userForm':userForm,'doctorForm':doctorForm}
if request.method=='POST':
userForm=forms.DoctorUserForm(request.POST)
24
8
doctorForm=forms.DoctorForm(request.POST, request.FILES)
if userForm.is_valid() and doctorForm.is_valid():
user=userForm.save()
user.set_password(user.password)
user.save()
doctor=doctorForm.save(commit=False)
doctor.user=user
doctor.status=True
doctor.save()
my_doctor_group = Group.objects.get_or_create(name='DOCTOR')
my_doctor_group[0].user_set.add(user)
return HttpResponseRedirect('admin-view-doctor')
return render(request,'hospital/admin_add_doctor.html',context=mydict)
@login_required(login_url='adminlogin')
@user_passes_test(is_admin)
def admin_approve_doctor_view(request):
#those whose approval are needed
doctors=models.Doctor.objects.all().filter(status=False)
return render(request,'hospital/admin_approve_doctor.html',{'doctors':doctors})
@login_required(login_url='adminlogin')
@user_passes_test(is_admin)
def approve_doctor_view(request,pk):
doctor=models.Doctor.objects.get(id=pk)
doctor.status=True
doctor.save()
24
9
return redirect(reverse('admin-approve-doctor'))
@login_required(login_url='adminlogin')
@user_passes_test(is_admin)
def reject_doctor_view(request,pk):
doctor=models.Doctor.objects.get(id=pk)
user=models.User.objects.get(id=doctor.user_id)
user.delete()
doctor.delete()
return redirect('admin-approve-doctor')
@login_required(login_url='adminlogin')
@user_passes_test(is_admin)
def admin_view_doctor_specialisation_view(request):
doctors=models.Doctor.objects.all().filter(status=True)
return render(request,'hospital/admin_view_doctor_specialisation.html',{'doctors':doctors})
@login_required(login_url='adminlogin')
@user_passes_test(is_admin)
def admin_patient_view(request):
return render(request,'hospital/admin_patient.html')
@login_required(login_url='adminlogin')
@user_passes_test(is_admin)
def admin_view_patient_view(request):
patients=models.Patient.objects.all().filter(status=True)
return render(request,'hospital/admin_view_patient.html',{'patients':patients})
25
0
@login_required(login_url='adminlogin')
@user_passes_test(is_admin)
def delete_patient_from_hospital_view(request,pk):
patient=models.Patient.objects.get(id=pk)
user=models.User.objects.get(id=patient.user_id)
user.delete()
patient.delete()
return redirect('admin-view-patient')
@login_required(login_url='adminlogin')
@user_passes_test(is_admin)
def update_patient_view(request,pk):
patient=models.Patient.objects.get(id=pk)
user=models.User.objects.get(id=patient.user_id)
userForm=forms.PatientUserForm(instance=user)
patientForm=forms.PatientForm(request.FILES,instance=patient)
mydict={'userForm':userForm,'patientForm':patientForm}
if request.method=='POST':
userForm=forms.PatientUserForm(request.POST,instance=user)
patientForm=forms.PatientForm(request.POST,request.FILES,instance=patient)
if userForm.is_valid() and patientForm.is_valid():
user=userForm.save()
user.set_password(user.password)
user.save()
patient=patientForm.save(commit=False)
patient.status=True
patient.assignedDoctorId=request.POST.get('assignedDoctorId')
patient.save()
25
1
return redirect('admin-view-patient')
return render(request,'hospital/admin_update_patient.html',context=mydict)
@login_required(login_url='adminlogin')
@user_passes_test(is_admin)
def admin_add_patient_view(request):
userForm=forms.PatientUserForm()
patientForm=forms.PatientForm()
mydict={'userForm':userForm,'patientForm':patientForm}
if request.method=='POST':
userForm=forms.PatientUserForm(request.POST)
patientForm=forms.PatientForm(request.POST,request.FILES)
if userForm.is_valid() and patientForm.is_valid():
user=userForm.save()
user.set_password(user.password)
user.save()
patient=patientForm.save(commit=False)
patient.user=user
patient.status=True
patient.assignedDoctorId=request.POST.get('assignedDoctorId')
patient.save()
my_patient_group = Group.objects.get_or_create(name='PATIENT')
my_patient_group[0].user_set.add(user)
return HttpResponseRedirect('admin-view-patient')
return render(request,'hospital/admin_add_patient.html',context=mydict)
25
2
#------------------FOR APPROVING PATIENT BY ADMIN----------------------
@login_required(login_url='adminlogin')
@user_passes_test(is_admin)
def admin_approve_patient_view(request):
#those whose approval are needed
patients=models.Patient.objects.all().filter(status=False)
return render(request,'hospital/admin_approve_patient.html',{'patients':patients})
@login_required(login_url='adminlogin')
@user_passes_test(is_admin)
def approve_patient_view(request,pk):
patient=models.Patient.objects.get(id=pk)
patient.status=True
patient.save()
return redirect(reverse('admin-approve-patient'))
@login_required(login_url='adminlogin')
@user_passes_test(is_admin)
def reject_patient_view(request,pk):
patient=models.Patient.objects.get(id=pk)
user=models.User.objects.get(id=patient.user_id)
user.delete()
patient.delete()
return redirect('admin-approve-patient')
25
3
@user_passes_test(is_admin)
def admin_discharge_patient_view(request):
patients=models.Patient.objects.all().filter(status=True)
return render(request,'hospital/admin_discharge_patient.html',{'patients':patients})
@login_required(login_url='adminlogin')
@user_passes_test(is_admin)
def discharge_patient_view(request,pk):
patient=models.Patient.objects.get(id=pk)
days=(date.today()-patient.admitDate) #2 days, 0:00:00
assignedDoctor=models.User.objects.all().filter(id=patient.assignedDoctorId)
d=days.days # only how many day that is 2
patientDict={
'patientId':pk,
'name':patient.get_name,
'mobile':patient.mobile,
'address':patient.address,
'symptoms':patient.symptoms,
'admitDate':patient.admitDate,
'todayDate':date.today(),
'day':d,
'assignedDoctorName':assignedDoctor[0].first_name,
}
if request.method == 'POST':
feeDict ={
'roomCharge':int(request.POST['roomCharge'])*int(d),
'doctorFee':request.POST['doctorFee'],
'medicineCost' : request.POST['medicineCost'],
'OtherCharge' : request.POST['OtherCharge'],
'total':(int(request.POST['roomCharge'])*int(d))+int(request.POST['doctorFee'])
+int(request.POST['medicineCost'])+int(request.POST['OtherCharge'])
}
25
4
patientDict.update(feeDict)
#for updating to database patientDischargeDetails (pDD)
pDD=models.PatientDischargeDetails()
pDD.patientId=pk
pDD.patientName=patient.get_name
pDD.assignedDoctorName=assignedDoctor[0].first_name
pDD.address=patient.address
pDD.mobile=patient.mobile
pDD.symptoms=patient.symptoms
pDD.admitDate=patient.admitDate
pDD.releaseDate=date.today()
pDD.daySpent=int(d)
pDD.medicineCost=int(request.POST['medicineCost'])
pDD.roomCharge=int(request.POST['roomCharge'])*int(d)
pDD.doctorFee=int(request.POST['doctorFee'])
pDD.OtherCharge=int(request.POST['OtherCharge'])
pDD.total=(int(request.POST['roomCharge'])*int(d))+int(request.POST['doctorFee'])
+int(request.POST['medicineCost'])+int(request.POST['OtherCharge'])
pDD.save()
return render(request,'hospital/patient_final_bill.html',context=patientDict)
return render(request,'hospital/patient_generate_bill.html',context=patientDict)
25
5
html = template.render(context_dict)
result = io.BytesIO()
pdf = pisa.pisaDocument(io.BytesIO(html.encode("ISO-8859-1")), result)
if not pdf.err:
return HttpResponse(result.getvalue(), content_type='application/pdf')
return
def download_pdf_view(request,pk):
dischargeDetails=models.PatientDischargeDetails.objects.all().filter(patientId=pk).order_by('-id')[:1]
dict={
'patientName':dischargeDetails[0].patientName,
'assignedDoctorName':dischargeDetails[0].assignedDoctorName,
'address':dischargeDetails[0].address,
'mobile':dischargeDetails[0].mobile,
'symptoms':dischargeDetails[0].symptoms,
'admitDate':dischargeDetails[0].admitDate,
'releaseDate':dischargeDetails[0].releaseDate,
'daySpent':dischargeDetails[0].daySpent,
'medicineCost':dischargeDetails[0].medicineCost,
'roomCharge':dischargeDetails[0].roomCharge,
'doctorFee':dischargeDetails[0].doctorFee,
'OtherCharge':dischargeDetails[0].OtherCharge,
'total':dischargeDetails[0].total,
}
return render_to_pdf('hospital/download_bill.html',dict)
#-----------------APPOINTMENT START--------------------------------------------------------------------
@login_required(login_url='adminlogin')
@user_passes_test(is_admin)
def admin_appointment_view(request):
25
6
return render(request,'hospital/admin_appointment.html')
@login_required(login_url='adminlogin')
@user_passes_test(is_admin)
def admin_view_appointment_view(request):
appointments=models.Appointment.objects.all().filter(status=True)
return render(request,'hospital/admin_view_appointment.html',{'appointments':appointments})
@login_required(login_url='adminlogin')
@user_passes_test(is_admin)
def admin_add_appointment_view(request):
appointmentForm=forms.AppointmentForm()
mydict={'appointmentForm':appointmentForm,}
if request.method=='POST':
appointmentForm=forms.AppointmentForm(request.POST)
if appointmentForm.is_valid():
appointment=appointmentForm.save(commit=False)
appointment.doctorId=request.POST.get('doctorId')
appointment.patientId=request.POST.get('patientId')
appointment.doctorName=models.User.objects.get(id=request.POST.get('doctorId')).first_name
appointment.patientName=models.User.objects.get(id=request.POST.get('patientId')).first_name
appointment.status=True
appointment.save()
return HttpResponseRedirect('admin-view-appointment')
return render(request,'hospital/admin_add_appointment.html',context=mydict)
@login_required(login_url='adminlogin')
@user_passes_test(is_admin)
25
7
def admin_approve_appointment_view(request):
#those whose approval are needed
appointments=models.Appointment.objects.all().filter(status=False)
return render(request,'hospital/admin_approve_appointment.html',{'appointments':appointments})
@login_required(login_url='adminlogin')
@user_passes_test(is_admin)
def approve_appointment_view(request,pk):
appointment=models.Appointment.objects.get(id=pk)
appointment.status=True
appointment.save()
return redirect(reverse('admin-approve-appointment'))
@login_required(login_url='adminlogin')
@user_passes_test(is_admin)
def reject_appointment_view(request,pk):
appointment=models.Appointment.objects.get(id=pk)
appointment.delete()
return redirect('admin-approve-appointment')
#---------------------------------------------------------------------------------
#------------------------ ADMIN RELATED VIEWS END ------------------------------
#---------------------------------------------------------------------------------
#---------------------------------------------------------------------------------
#------------------------ DOCTOR RELATED VIEWS START ------------------------------
25
8
#---------------------------------------------------------------------------------
@login_required(login_url='doctorlogin')
@user_passes_test(is_doctor)
def doctor_dashboard_view(request):
#for three cards
patientcount=models.Patient.objects.all().filter(status=True,assignedDoctorId=request.user.id).count()
appointmentcount=models.Appointment.objects.all().filter(status=True,doctorId=request.user.id).count()
patientdischarged=models.PatientDischargeDetails.objects.all().distinct().filter(assignedDoctorName=req
uest.user.first_name).count()
appointments=models.Appointment.objects.all().filter(status=True,doctorId=request.user.id).order_by('-
id')
patientid=[]
for a in appointments:
patientid.append(a.patientId)
patients=models.Patient.objects.all().filter(status=True,user_id__in=patientid).order_by('-id')
appointments=zip(appointments,patients)
mydict={
'patientcount':patientcount,
'appointmentcount':appointmentcount,
'patientdischarged':patientdischarged,
'appointments':appointments,
'doctor':models.Doctor.objects.get(user_id=request.user.id), #for profile picture of doctor in sidebar
}
return render(request,'hospital/doctor_dashboard.html',context=mydict)
@login_required(login_url='doctorlogin')
@user_passes_test(is_doctor)
25
9
def doctor_patient_view(request):
mydict={
'doctor':models.Doctor.objects.get(user_id=request.user.id), #for profile picture of doctor in sidebar
}
return render(request,'hospital/doctor_patient.html',context=mydict)
@login_required(login_url='doctorlogin')
@user_passes_test(is_doctor)
def doctor_view_patient_view(request):
patients=models.Patient.objects.all().filter(status=True,assignedDoctorId=request.user.id)
doctor=models.Doctor.objects.get(user_id=request.user.id) #for profile picture of doctor in sidebar
return render(request,'hospital/doctor_view_patient.html',{'patients':patients,'doctor':doctor})
@login_required(login_url='doctorlogin')
@user_passes_test(is_doctor)
def search_view(request):
doctor=models.Doctor.objects.get(user_id=request.user.id) #for profile picture of doctor in sidebar
# whatever user write in search box we get in query
query = request.GET['query']
patients=models.Patient.objects.all().filter(status=True,assignedDoctorId=request.user.id).filter(Q(sympto
ms__icontains=query)|Q(user__first_name__icontains=query))
return render(request,'hospital/doctor_view_patient.html',{'patients':patients,'doctor':doctor})
@login_required(login_url='doctorlogin')
@user_passes_test(is_doctor)
def doctor_view_discharge_patient_view(request):
26
0
dischargedpatients=models.PatientDischargeDetails.objects.all().distinct().filter(assignedDoctorName=re
quest.user.first_name)
doctor=models.Doctor.objects.get(user_id=request.user.id) #for profile picture of doctor in sidebar
return render(request,'hospital/doctor_view_discharge_patient.html',
{'dischargedpatients':dischargedpatients,'doctor':doctor})
@login_required(login_url='doctorlogin')
@user_passes_test(is_doctor)
def doctor_appointment_view(request):
doctor=models.Doctor.objects.get(user_id=request.user.id) #for profile picture of doctor in sidebar
return render(request,'hospital/doctor_appointment.html',{'doctor':doctor})
@login_required(login_url='doctorlogin')
@user_passes_test(is_doctor)
def doctor_view_appointment_view(request):
doctor=models.Doctor.objects.get(user_id=request.user.id) #for profile picture of doctor in sidebar
appointments=models.Appointment.objects.all().filter(status=True,doctorId=request.user.id)
patientid=[]
for a in appointments:
patientid.append(a.patientId)
patients=models.Patient.objects.all().filter(status=True,user_id__in=patientid)
appointments=zip(appointments,patients)
return render(request,'hospital/doctor_view_appointment.html',
{'appointments':appointments,'doctor':doctor})
@login_required(login_url='doctorlogin')
@user_passes_test(is_doctor)
26
1
def doctor_delete_appointment_view(request):
doctor=models.Doctor.objects.get(user_id=request.user.id) #for profile picture of doctor in sidebar
appointments=models.Appointment.objects.all().filter(status=True,doctorId=request.user.id)
patientid=[]
for a in appointments:
patientid.append(a.patientId)
patients=models.Patient.objects.all().filter(status=True,user_id__in=patientid)
appointments=zip(appointments,patients)
return render(request,'hospital/doctor_delete_appointment.html',
{'appointments':appointments,'doctor':doctor})
@login_required(login_url='doctorlogin')
@user_passes_test(is_doctor)
def delete_appointment_view(request,pk):
appointment=models.Appointment.objects.get(id=pk)
appointment.delete()
doctor=models.Doctor.objects.get(user_id=request.user.id) #for profile picture of doctor in sidebar
appointments=models.Appointment.objects.all().filter(status=True,doctorId=request.user.id)
patientid=[]
for a in appointments:
patientid.append(a.patientId)
patients=models.Patient.objects.all().filter(status=True,user_id__in=patientid)
appointments=zip(appointments,patients)
return render(request,'hospital/doctor_delete_appointment.html',
{'appointments':appointments,'doctor':doctor})
#---------------------------------------------------------------------------------
#------------------------ DOCTOR RELATED VIEWS END ------------------------------
#---------------------------------------------------------------------------------
26
2
#---------------------------------------------------------------------------------
#------------------------ PATIENT RELATED VIEWS START ------------------------------
#---------------------------------------------------------------------------------
@login_required(login_url='patientlogin')
@user_passes_test(is_patient)
def patient_dashboard_view(request):
patient=models.Patient.objects.get(user_id=request.user.id)
doctor=models.Doctor.objects.get(user_id=patient.assignedDoctorId)
mydict={
'patient':patient,
'doctorName':doctor.get_name,
'doctorMobile':doctor.mobile,
'doctorAddress':doctor.address,
'symptoms':patient.symptoms,
'doctorDepartment':doctor.department,
'admitDate':patient.admitDate,
}
return render(request,'hospital/patient_dashboard.html',context=mydict)
@login_required(login_url='patientlogin')
@user_passes_test(is_patient)
def patient_appointment_view(request):
patient=models.Patient.objects.get(user_id=request.user.id) #for profile picture of patient in sidebar
return render(request,'hospital/patient_appointment.html',{'patient':patient})
26
3
@login_required(login_url='patientlogin')
@user_passes_test(is_patient)
def patient_book_appointment_view(request):
appointmentForm=forms.PatientAppointmentForm()
patient=models.Patient.objects.get(user_id=request.user.id) #for profile picture of patient in sidebar
message=None
mydict={'appointmentForm':appointmentForm,'patient':patient,'message':message}
if request.method=='POST':
appointmentForm=forms.PatientAppointmentForm(request.POST)
if appointmentForm.is_valid():
print(request.POST.get('doctorId'))
desc=request.POST.get('description')
doctor=models.Doctor.objects.get(user_id=request.POST.get('doctorId'))
appointment=appointmentForm.save(commit=False)
appointment.doctorId=request.POST.get('doctorId')
appointment.patientId=request.user.id #----user can choose any patient but only their info will be
stored
appointment.doctorName=models.User.objects.get(id=request.POST.get('doctorId')).first_name
appointment.patientName=request.user.first_name #----user can choose any patient but only their
info will be stored
appointment.status=False
appointment.save()
return HttpResponseRedirect('patient-view-appointment')
return render(request,'hospital/patient_book_appointment.html',context=mydict)
def patient_view_doctor_view(request):
doctors=models.Doctor.objects.all().filter(status=True)
patient=models.Patient.objects.get(user_id=request.user.id) #for profile picture of patient in sidebar
return render(request,'hospital/patient_view_doctor.html',{'patient':patient,'doctors':doctors})
26
4
def search_doctor_view(request):
patient=models.Patient.objects.get(user_id=request.user.id) #for profile picture of patient in sidebar
@login_required(login_url='patientlogin')
@user_passes_test(is_patient)
def patient_view_appointment_view(request):
patient=models.Patient.objects.get(user_id=request.user.id) #for profile picture of patient in sidebar
appointments=models.Appointment.objects.all().filter(patientId=request.user.id)
return render(request,'hospital/patient_view_appointment.html',
{'appointments':appointments,'patient':patient})
@login_required(login_url='patientlogin')
@user_passes_test(is_patient)
def patient_discharge_view(request):
patient=models.Patient.objects.get(user_id=request.user.id) #for profile picture of patient in sidebar
dischargeDetails=models.PatientDischargeDetails.objects.all().filter(patientId=patient.id).order_by('-
id')[:1]
patientDict=None
if dischargeDetails:
razorpayclient=razorpay.Client(auth=(settings.KEY_ID,settings.KEY_SECRET))
26
5
payment=razorpayclient.order.create({ "amount":dischargeDetails[0].total*100, "currency":
"INR",'payment_capture':1 })
patientDict ={
'is_discharged':True,
'patient':patient,
'patientId':patient.id,
'patientName':patient.get_name,
'assignedDoctorName':dischargeDetails[0].assignedDoctorName,
'address':patient.address,
'mobile':patient.mobile,
'symptoms':patient.symptoms,
'admitDate':patient.admitDate,
'releaseDate':dischargeDetails[0].releaseDate,
'daySpent':dischargeDetails[0].daySpent,
'medicineCost':dischargeDetails[0].medicineCost,
'roomCharge':dischargeDetails[0].roomCharge,
'doctorFee':dischargeDetails[0].doctorFee,
'OtherCharge':dischargeDetails[0].OtherCharge,
'total':dischargeDetails[0].total,
'order_id':payment['id'],
'amount':payment['amount']
}
print(patientDict)
else:
patientDict={
'is_discharged':False,
'patient':patient,
'patientId':request.user.id,
}
return render(request,'hospital/patient_discharge.html',context=patientDict)
26
6
#------------------------ PATIENT RELATED VIEWS END ------------------------------
#---------------------------------------------------------------------------------
#---------------------------------------------------------------------------------
#------------------------ ABOUT US AND CONTACT US VIEWS START ------------------------------
#---------------------------------------------------------------------------------
def aboutus_view(request):
return render(request,'hospital/aboutus.html')
def contactus_view(request):
sub = forms.ContactusForm()
if request.method == 'POST':
sub = forms.ContactusForm(request.POST)
if sub.is_valid():
email = sub.cleaned_data['Email']
name=sub.cleaned_data['Name']
message = sub.cleaned_data['Message']
send_mail(str(name)+' || '+str(email),message,settings.EMAIL_HOST_USER,
settings.EMAIL_RECEIVING_USER, fail_silently = False)
return render(request, 'hospital/contactussuccess.html')
return render(request, 'hospital/contactus.html', {'form':sub})
#---------------------------------------------------------------------------------
#------------------------ ADMIN RELATED VIEWS END ------------------------------
#---------------------------------------------------------------------------------
26
7
"""
Django settings for hospitalmanagement project.
import os
#Email details
# EMAIL_HOST_USER='[email protected]'
26
8
# EMAIL_HOST_PASSWORD='Suraj002@1'
#E
ALLOWED_HOSTS = []
# Application definition
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'hospital',
'widget_tweaks',
]
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
ROOT_URLCONF = 'hospitalmanagement.urls'
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
26
9
'DIRS': [TEMPLATE_DIR,],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
WSGI_APPLICATION = 'hospitalmanagement.wsgi.application'
# Database
# https://docs.djangoproject.com/en/3.0/ref/settings/#databases
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
# Password validation
# https://docs.djangoproject.com/en/3.0/ref/settings/#auth-password-validators
AUTH_PASSWORD_VALIDATORS = [
{
'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
},
27
0
{
'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
},
{
'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
},
{
'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
},
]
KEY_ID='rzp_test_QYBdGV9mYgsG6c'
KEY_SECRET='oa479SHPw47CPmymnNcDrkLQ'
# Internationalization
# https://docs.djangoproject.com/en/3.0/topics/i18n/
LANGUAGE_CODE = 'en-us'
TIME_ZONE = 'UTC'
USE_I18N = True
USE_L10N = True
USE_TZ = True
STATIC_URL = '/static/'
27
1
STATICFILES_DIRS=[STATIC_DIR,]
MEDIA_ROOT=os.path.join(BASE_DIR,'static')
LOGIN_REDIRECT_URL='/afterlogin'
Testing Software1
Testing Software 2
Testing Software 4:
Testing Software 5:
Testing Software 6:
Testing Software 7:
27
3
7.2 Conclusion
The project entitled “COVID19 Hospital Management System” is developed using HTML,CSS AND
Bootstrap as frontend and python language and Sqlite database in backend to computerized management.
This project covers only the basic features required.
The project was successfully completed after a lot of efforts and work hours. This project underwent
number of compiling, debugging, removing errors, making it bug free, adding more facilities in Hospital
Management System and interactivity making it more reliable and useful.
This project focused that scheduling a project and adhering to that schedule creates a hard sense of time-
management. It has also let us known that co-operative teamwork always produce effective results.
The entire project has been developed and deployed as per the requirements stated by
the user. It is found to be bug free as per the testing standards that are implemented
A number of directions can be followed as an extension of this research. Some challenges and open
questions still to be explored in the research work are as follows:
27
4