Online Pharmacy
Abstract: Online pharmacy is a web based application. User can post requirement for medicine. User can purchase medicine by online. Medicine delivery is provided by the nearest associate store. Prescription is mandatory for ordering medicine. As per prescription user can search medicine and useful information. This application can provide information for daily consumption of medicine. This application provides pre-information of side effects and allergy of medicine. This application provides login to the users. They can maintain their account. The prescription should be given by an IMA certified doctor. Here IMA certified doctors provide prescription to patient along with a secure token. Tokens are destroyed after the request is accomplished. Existing System
Existing systems are working manually. We need to search medical shop for medicine. If we couldn’t find a medicine in one pharmacy we have to search it again and again until we found. This take lot of time and energy. A fully manual system causes human error such as forget to purchase or forget to add in bill etc. this make the system’s accuracy level not cent percent. Proposed system Here we are creating an online solution for this problem. Here we split the system into 4 modules they are admin, pharmacy, doctor and users. This will help the system working in a connected chain and it produce a valuable output without any errors. Users can easily search and locate a doctor also search for a medicine and order online. Doctors can upload the prescription directly so he can ensure that the patient will get the medicine. Pharmacy will get a chance to increase their sales and they can develop their customer service by delivering the medicine on door step of the patient. Administrator account will monitor all the processes, this make the system error free and complaint free.
Module description 1. Admin a. Doctor approval b. View Doctors c. Medicine category registration d. View Medicine stock e. Update stock f. Pharmacy Registration(District wise) g. View order h. View order report 2. Doctor a. Patient management and token allocation b. View status c. Sent complaint and view reply 3. User a. Sent request for medicine b. View status c. View recent orders d. Sent feedback 4. Pharmacy a. Delivery boys management b. View orders allocated to the agency c. Delivery entry
SOFTWARE DESCRIPTION MYSQL MySQL, the most popular Open Source SQL database management system, is developed, distributed, and supported by Oracle Corporation.
MySQL is a database management system.
A database is a structured collection of data. It may be anything from a simple shopping list to a picture gallery or the vast amounts of information in a corporate network. To add, access, and process data stored in a computer database, you need a database management system such as MySQL Server. Since computers are very good at handling large amounts of data, database management systems play a central role in computing, as standalone utilities, or as parts of other applications.
MySQL databases are relational.
A relational database stores data in separate tables rather than putting all the data in one big storeroom. The database structures are organized into physical files optimized for speed. The logical model, with objects such as databases, tables, views, rows, and columns, offers a flexible programming environment. You set up rules governing the relationships between different data fields, such as one-to-one, one-to-many, unique, required or optional, and “pointers” between different tables. The database enforces these rules, so that with a well-designed database, your application never sees inconsistent, duplicate, orphan, out-of-date, or missing data. The SQL part of “MySQL” stands for “Structured Query Language”. SQL is the most common standardized language used to access databases. Depending on your programming environment, you might enter SQL directly (for example, to generate reports), embed SQL statements into code written in another language, or use a language-specific API that hides the SQL syntax. SQL is defined by the ANSI/ISO SQL Standard. The SQL standard has been evolving since 1986 and several versions exist
1. MySQL software is Open Source. Open Source means that it is possible for anyone to use and modify the software. Anybody can download the MySQL software from the Internet and use it without paying anything. If you wish, you may study the source code and change it to suit your needs. The MySQL software uses the GPL (GNU General Public License), to define what you may and may not do with the software in different situations.
The MySQL Database Server is very fast, reliable, scalable, and easy to use.
MySQL Server can run comfortably on a desktop or laptop, alongside your other applications, web servers, and so on, requiring little or no attention. If you dedicate an entire machine to MySQL, you can adjust the settings to take advantage of all the memory, CPU power, and I/O capacity available. MySQL
can
also
scale
up
to
clusters
of
machines,
network
together.
Apache Tomcat Apache Tomcat is a web server that is an open source software implementation of the Java Servlet and Java Server Pages technologies. The Java Servlet and Java Server Pages specifications are developed under the Java Community Process. Apache Tomcat is developed in an open and participatory environment. Apache Tomcat is intended to be a collaboration of the best-of-breed developers from around the world. Apache Tomcat powers numerous large-scale, mission-critical web applications across a diverse range of industries and organizations Apache Tomcat is an open source software implementation of the Java Servlet and Java Server Pages technologies. The Java Servlet and Java Server Pages specifications are developed under the Java Community process. Apache Tomcat, Tomcat, Apache, the Apache feather, and the Apache Tomcat project logo are trademarks of the Apache Software Foundation.
----------------------------------------------------------------------------------------------------------------------------
Android Studio Android Studio is the official integrated development environment (IDE) for the Android platform.
It was announced on May 16, 2013 at the Google I/O conference. Android Studio is freely available under the Apache License 2.0.
Android Studio was in early access preview stage starting from version 0.1 in May 2013, then entered beta stage starting from version 0.8 which was released in June 2014. The first stable build was released in December 2014, starting from version 1.0. Based on JetBrains' IntelliJ IDEA software, Android Studio is designed specifically for Android development. It is available for download on Windows, macOS and Linux, and replaced Eclipse Android Development Tools (ADT) as Google's primary IDE for native Android application development.
Features New features are expected to be rolled out with each release of Android Studio. The following features are provided in the current stable version:
Gradle-based build support
Android-specific refactoring and quick fixes
Lint tools to catch performance, usability, version compatibility and other problems
ProGuard integration and app-signing capabilities
Template-based wizards to create common Android designs and components
A rich layout editor that allows users to drag-and-drop UI components, option to preview layouts on multiple screen configurations
Support for building Android Wear apps
Built-in support for Google Cloud Platform, enabling integration with Google Cloud Messaging and App Engine
An Android Virtual Device that is used to run and debug apps
Android Fundamentals and Components
Important building blocks / components of android are as below.
1. 2. 3.
Activities Services Broadcast Receivers
4.
Content Providers
When we are developing application, always we will have some requirements like, passing messages with in an application (one screen to another) or between different applications. For example: Let’s say a new message came to your phone, so we update the notification bar for that new message. So we will have to pass the information from message application to notification bar. Moral of the story is, the means of communication between the above mentioned components is through the below components.
Intents Intent Filters
Let’s come to the GUI part. The User Interface elements are made up the below components, which we called:
Views Notifications
1. Android Activity Activity is the basic building block of every visible android application. It provides the means to render a GUI. Every screen in an application is an activity by itself. We can call each visible component as an activity in android. Though more than one activities work together to present an application sequence, each activity is an independent entity.
2. Android Services Service is another building block of android applications which does not provide a UI. It is a program that can run in the background for an indefinite period. In windows platform, we call it a thread.
3. Android Broadcast Receivers Broadcast Receiver is yet another type of component that can receive and respond to any broadcast announcements. Let’s take an example: when a new message came to your inbox, this information will be broadcast to all applications. If any application wants to do something while a new message came, then it can receive the broadcasted message details (Like: sender’s number, content etc.) and process accordingly.
4. Android Content Providers Content Providers are a separate league of components that expose a specific set of data to applications. Let’s take an example: If you want to search a contact in your contact database (Like: name, number etc), then you can use Content Provider for this purpose. You can say Content provider is the pointer in your application to a specific data base from other application. The android platform offers a new concept of communication through intents and intent filters.
Android Intents Intents are messages that are passed between components. So we have a question in our mind. Is it equivalent to parameters passed to API calls? Yes, it is close to that. However, the
fundamental differences between API calls and intents is’ the way of invoking it. Have a look the difference between these two as below. 1. API calls are synchronous while intent-based invocation is asynchronous (mostly) 2. API calls are bound at compile time while intent-based calls are run-time bound (mostly) It is these two differences that take Android platform to a different league. In simple word, the core android components of an application — activities, services, and broadcast receivers — are activated through messages, called intents. For example an activity can send an intent to the Android system which starts another activity. So Intent is just a way to send message in android. Android intents are basically 2 types in nature. 1. Implicit Intents Implicit intents specify the action which should be performed by other components or applications. For Example: If you want to open an URL in a web browser from your application code, Then following code tells the Android system to view a webpage. Typically the web browser is registered to this Intent but other component could also register them self to this to that intent. That means if you have installed web browsers like IE, Mozilla Firefox and Google Chrome, then all browsers might be registered to the intent (Intent.ACTION_VIEW) to show a web page as per you request.
If only one component (here web browser in our example) is found, Android starts this component directly. If several components are identifier by the Android system, the user will get an selection dialog and can decide which component should be used for that Intent. 2. Explicit Intents Explicit intents are explicitly defines the exact component which should be called by the Android system, by using the Java class as identifier. The following code shows how to create an explicit intents and send it to the Android system. That means Android system will directly execute your intent request as you requested. Explicit intents are typically used within an application as the classes in an application are controlled by the application developer. If you want to open an Android Activity from another activity, then below is the code using intent. Also you can send some data to that activity if required.
1 Intent i = new Intent(this, ActivityTwo.class); 2 i.putExtra("First Value", "This First Value for ActivityTwo"); 3 i.putExtra("Second Value", "This Second Value ActivityTwo");
Android Intent Filters To inform the system which implicit intents they can handle, activities, services, and broadcast receivers can have one or more intent filters. Each filter describes a capability of the component, a set of intents that the component is willing to receive. Let’s take an Example: The ‘Notepad Editor’ activity of the sample Note Pad application has two filters — one for starting up with a specific note that the user can view or edit, and another for starting with a new, blank note that the user can fill in and save.
Basically Intent Filters are defined in the AndroidManifest.xml file. For Broadcast Receiver it is possible to define in coding. An Intent Filters is defined by its category, action and data filters. It can also contain additional metadata. If a component does not define an Intent filter, then it can only be called by explicit Intents.
Android Layers Basically android has the following layers:
1.
applications (written in java, executing in Dalvik). All your custom applications will be available
in this layer. This is the top most layer in android OS.
2.
framework services and libraries (written mostly in java). Internally all of your custom
application APIs will call this layer. So whatever API we will call from the java layer, all of them will go through this layer.
3.
Android Runtime. All applications and most framework code executes in a virtual machine. It
means all the Java and framework code will be converted into executable code in this layer. The Android virtual machine is also called Dalvik virtual machine.
4.
Native libraries, daemons and services (written in C or C++). Native libraries are nothing but part
of internal Android OS. These libraries are used when we called any API from the application layer. Basically When we call any API from Java layer or from the upper layer, then it calls the API from the native layer which is mostly written in C/C++, SO we can say here the Java API converted into C/C+ + API.
5.
the Linux kernel, which includes drivers for hardware, networking, file system access and inter-
process-communication. This is the most complex layer in the Android OS. Whatever we will do on the upper layer, everything will be pass through this layers, which give us the final output.
==========================================================================
PHP
PHP is a server-side scripting language designed primarily for web development but also used as a general-purpose programming language. Originally created by Rasmus Lerdorf in 1994, the PHP reference implementation is now produced by The PHP Development Team, PHP originally stood for Personal Home Page, but it now stands for the recursive acronym PHP: Hypertext Preprocessor.
PHP code may be embedded into HTML or HTML5 code, or it can be used in combination with various web template systems, web content management systems and web frameworks. PHP code is usually processed by a PHP interpreter implemented as a module in the web server or as a Common Gateway Interface (CGI) executable. The web server combines the results of the interpreted and executed PHP code, which may be any type of data, including images, with the generated web page. PHP code may also be executed with a command-line interface (CLI) and can be used to implement standalone graphical applications.
The standard PHP interpreter, powered by the Zend Engine, is free software released under the PHP License. PHP has been widely ported and can be deployed on most web servers on almost every operating system and platform, free of charge.
The PHP language evolved without a written formal specification or standard until 2014, leaving the canonical PHP interpreter as a de facto standard. Since 2014 work has gone on to create a formal PHP specification. +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
SYSTEM SPECIFICATION
Hardware and software requirements for the installation and smooth functioning of this project could be configured based on the requirements needed by the component of the operating environment that works as front-end system here we suggest minimum configuration for the both hardware and software components. Working off with this software is requirements concrete on system environments. It includes two phases •
Hardware requirements
•
Software requirements
HARDWARE REQUIREMENTS •
INPUT DEVICE
•
OUTPUT DEVICE
•
MEMORY
•
PROCESSOR
:MOUSE,KEYBOARD :MONITOR :512 MB RAM(MINIMUM) :PENTIUM III PROCESSOR
SOFTWARE REQUIREMENTS •
OPERATING SYSTEM
:WINDOWS 7/8 for better performance
•
FRONT END
: PHP/ Android
•
BACK END
: SQL server 2008 / MySQL
SOFTWARES USED •
WEB BROWSER application)
: Dreamwiewer/ Android Studio :Internet Explorer/Google Chrome/firefox(for web