Professional Documents
Culture Documents
OBJECTIVE
If we are trying to cope with QuickBooks or a series of Excel Spreadsheets, we are undoubtedly spending countless hours making crucial decisions with questionable data. If we are struggling with some other very expensive and complicated form of software, Restaurant Management System will give us something that desperately needs MORE TIME TO GROW YOUR BUSINESS! It is designed to avoid paper work. It is designed to increase operational efficiency, saving our money and time, maximizing profit and provide more security. This software is developed to manage the restaurant more effectively and efficiently by computerizing Meal Ordering, Billing, and Stock Maintenance & Accounting. This application is also designed for inventory control, menu, recipe and liquor costing, sales management.
SCOPE
Our software can be used in any kind of restaurant like Bar, Sandwich Shop, Pizzeria, Steak House, and Cafe Shop, Deli, Buffet, and Catering business, Doughnut or Pastry Shop, Hotel restaurant/kitchen and more. It is not Web Based Application, it is standby Application.
10
11
Various Advantages
It increases operational efficiency. It is designed to help you cost your recipes and track inventory saving your Money and Time and maximizing profit. It helps the restaurant manager to manage the restaurant more effectively and efficiently by computerizing Meal Ordering, Billing, and Sales Management. Accounting. It is also designed for inventory control, menu, recipe and liquor costing, nutrition. It increases the security. It avoids paper work. It is Simple to learn and easy to use. It is portable.
12
MODULES
The Restaurant Management Software is a Powerful Database Application which helps the restaurant manager to manage the restaurant more effectively and efficiently by computerizing Meal Ordering, Billing, and Stock Maintenance & Accounting. This application is also designed for inventory control, menu, recipe and liquor costing, sales management. It includes the following Modules as:
User Management Menu Management Customer Management Reservation Management Billing and Printing Accountancy and Sales Integration and Testing
13
MENU MANAGEMENT
FORMS Add Menu Items View Full Menu Search Item Edit Item Delete Item ADMINISTRATOR MANAGER SERVICE MANAGER
CUSTOMER MANAGEMENT
FORMS Add Customer View All Customers Edit Customer Search Customer Delete Customer ADMINISTRATOR MANAGER SERVICE MANAGER
RESERVATION MANAGEMENT
FORMS Add Reservation Search Reservation ADMINISTRATOR MANAGER SERVICE MANAGER
14
BILLING MANAGEMENT
FORMS Billing ADMINISTRATOR MANAGER SERVICE MANAGER
15
16
Software Requirements
C# 2010 on Visual Studio 2010 Express Edition. SQL Server 2008 Express Edition. Windows XP (Service Pack 3), Window 7, Window Vista (Service Pack 1). .NET Framework 4.0
SQL Server 2008 Express Edition. Windows XP (Service Pack 3), Window 7, Window Vista (Service Pack 1). .NET Framework 4.0
17
Hardware Requirements
Colored Monitor. Keyboard. RAM (1GB). Hard disk (20 GB). CD ROM. Intel Core 2 DUO 1.6 GHZ Processor. Mouse.
Colored Monitor. Keyboard. RAM (1GB). Hard disk (20 GB). CD ROM. Intel Core 2 DUO 1.6 GHZ Processor. Mouse. Printer.
18
19
Languages
Title
Description Editor. The features include implicit line continuation, autoimplemented properties, collection initializes, and more.
Visual Basic 2010 Describes new features in the Visual Basic language and Code
Visual C# 2010
Describes new features in the C# language and Code Editor. The features include the dynamic type, named and optional arguments, enhanced Office programmability, and variance.
Describes new and revised features in Visual C++. The features include lambda expressions, the rvalue reference declarator, and the auto, decltype, and static_assert keywords.
Visual F# 2010
Describes the F# language, which is a language that supports functional programming for the .NET Framework.
20
.NET Framework
The Microsoft .NET Framework is a software framework that can be installed on computers running Microsoft Windows operating systems. It includes a large library of coded solutions to common programming problems and a virtual machine that manages the execution of programs written specifically for the framework. The .NET framework supports multiple programming languages in a manner that allows language interoperability, whereby each language can utilize code written in other languages; in particular, the .NET library is available to all the programming languages that .NET encompasses. The .NET Framework is a Microsoft offering and is intended to be used by most new applications created for the Windows platform. The framework's Base Class Library provides a large range of features including user interface, data access, database connectivity, cryptography, web application development, numeric algorithms, and network communications. The class library is used by programmers, who combine it with their own code to produce applications.
21
22
23
Type bool sbyte byte short ushort int uint long ulong char float double decimal object string
Size in Bytes 1 1 1 2 2 4 4 8 8 2 4
Description Boolean value. The only valid literals are true and false. Signed byte integer. Unsigned byte integer. Signed short integer. Unsigned short integer. Signed integer. Literals may be in decimal (default) or hexadecimal notation (with a 0x prefix). Examples: 26, 0x1A Unsigned integer. Examples: 26U, 0x1AU (mandatory U suffix) Signed long integer. Examples: 26L, 0x1AL (mandatory L suffix) Unsigned long integer. Examples: 26UL, 0x1AUL (mandatory UL suffix) Unicode character. Example: 'A' (contained within single quotes) IEEE 754 single precision floating point number. Examples: 1.2F, 1E10F (mandatory F suffix) IEEE 754 double precision floating point number. Examples: 1.2, 1E10, 1D (optional D suffix) Numeric data type suitable for financial and monetary calculations, exact to the 28th decimal place. Example: 123.45M (mandatory M suffix) Ultimate base type for both value and reference types. Has no literal representation. Immutable sequence of Unicode characters. Example: "hello world!\n" (contained within double quotes)
16
8+
20+
24
25
26
The relationship of each stage to the others can be roughly described as a waterfall, where the outputs from a specific stage serve as the initial inputs for the following stage. During each stage, additional information is gathered or developed, combined with the inputs, and used to produce the stage deliverables.
27
Different Phases
System planning
The system planning is used to determine if the project should get the go-ahead. If the project is to proceed, the system plan will produce a project plan and budget estimates for the future stages of development.
Maintenance
Inevitably the system will need maintenance. Software will definitely undergo change once it is delivered to the customer. Change could happen because of some unexpected input values into the system. In addition, the changes in the system could directly affect the software operations. The software should be developed to accommodate changes that could happen during the post implementation period.
28
PROJECT PLANNING
29
Project Planning
The planning stage establishes a bird's eye view of the intended software product, and uses this to establish the basic project structure, evaluate feasibility and risks associated with the project, and describe appropriate management and technical approaches Project planning is part of Project Management. It is a well-established approach to managing and controlling the introduction of new initiatives or organizational changes. Projects are finite in length, usually one-time pieces of work involving a number of activities that must be completed within a given time frame, and often on a fixed budget. While the very simplest projects can be managed easily by applying common sense and just getting on with things, projects that are more complex need a great deal of planning, and benefit from a formal, disciplined management approach. From making sure that activities will actually meet the specified need, to devising a workable schedule, developing systems for reporting progress, and managing requests for changes all of these issues require thoughtful consideration. Managing projects well requires a great deal of time, skill, and finesse. There are many sides to project management and this is what makes it so interesting and demanding
Application Goals
Profile Management of three categories of users(Administrator, Manager, Service Manager) Providing different access to different categories of user. Creating accounts of Customer by using unique Customer ID. Giving Facility of Home Delivery to Customers. Giving Facility of Discount.
30
31
32
Requirements Analysis
Requirements Analysis in systems engineering and software engineering, encompasses those tasks that go into determining the needs or conditions to meet for a new or altered product, taking account of the possibly conflicting requirements of the various stakeholders, such as beneficiaries or users. Requirements analysis is critical to the success of a development project. Requirements must be documented, actionable, measurable, testable, related to identified business needs or opportunities, and defined to a level of detail sufficient for system design. Requirements can be functional and non-functional.
Eliciting requirements: the task of communicating with customers and users to determine what their requirements are. This is sometimes also called requirements gathering. Analyzing requirements: determining whether the stated requirements are unclear, incomplete, ambiguous, or contradictory, and then resolving these issues. Recording requirements: Requirements might be documented in various forms, such as natural-language documents, use cases, user stories, or process specifications.
33
Create User
Edit User
Delete User
In a restaurant, a Menu is a printed brochure or public display on a poster or chalkboard that shows the list of options for a diner to select. A good restaurant menu design is key to any restaurant's marketing plan. It expresses your eaterys personality, focuses your overall operations, promotes profitability, establishes your budget and keeps your brand fresh in your customers mind. Menu management is done by using following features Add Menu Items In this we Add Items in a Menu by assigning a unique Item Code to each item. When we add any item; we give full description (ingredients), type, price, category for each item. The access of adding the items is given to both Administrator and Manager. View Full Menu As the name indicates, in this we display the full information of all the items in a menu. Only outlook of all the items is displayed, no editing is performed. Search Item When we want to find a single item from a number of items this feature is very useful. Here searching is performed through item name, when we enter name of any item the full information of that item is displayed. This saves our lots of time. Searching is performed for editing or deletion also. Edit Item If any information about the menu items is changed or incorrect then editing can be performed. After editing we can save the item again, the new changes are updated automatically. Editing is also performed by search also. Delete Item By using this feature, we can delete any item from the menu. Deletion is performed by searching also. If we have large number of items and want to delete some item firstly we search that item from menu, item is displayed then we delete that item. CUSTOMER MANAGEMENT The Customer Management System is an application, which allows the users to store,
35
manage, and exchange customer information for efficient and effective management. It is a broadly recognized, widely-implemented strategy for managing and nurturing a companys interactions with customers, clients and sales prospects. Customer Management is done by using following features Add Customer In this we can make a New Customer Account which provides full information about the customer like Customer Name, Address, Customer Type, Phone no, etc. We also allot a unique Customer ID to each customer for future use. This customer ID is useful in the case of home delivery. View all Customers It includes the display of the full information of all the Customers. It is a read-only operation, no editing can be performed. Only outlook of all the customers is displayed, no changes are performed. Edit Customer If any information about the customer has been changed or incorrect then editing can be performed. If we have large number of customers then we can find the customer by using search operation. Then editing will be performed. This saves our lots of time. Search Customer Here searching is performed either by customer name or phone number. When we enter customer name or phone number full information of the customer is displayed. Only customers outlook is there, no changes can be performed in the displayed information. Delete Customer We can delete the customer account by using this option. Deletion is also performed by searching, In case we have large number of customer. RESERVATION MANAGEMENT
36
A reservation Management is an arrangement made in advance to have a table available at a restaurant. The software automates the process of taking restaurant reservations and manages guest seating. It manages the coordination of servers, tables, walk-ins, and arriving parties, while providing information to support customer service initiatives. This leads to dramatically improve table management improve your customer care improve planning, flexibility, efficiency Reservation management includes following features Add Reservation By using this feature we can Add New Reservation by providing unique Reservation ID to each customer. This reservation account includes the information like Occasion, Gathering, Date of Reservation, Occasion Spot etc. Search Reservation Here Searching is performed through Date of Reservation. When we enter the date of reservation, the full information is displayed about that reservation. Edit Reservation If we want to perform any changes in the existing information of any reservation than editing can be done. The Edit Reservation Form is the Child Form of the Search Reservation.
BILL MANAGEMENT
37
The process of sending a bill to customers for goods or services is called billing. Restaurant Billing System is a new generation of restaurant management software for Windows. It is a complete solution starting from taking orders from clients in producing bills, bookings and closing bills with different payment options. User interface is carefully optimized for high speed entering of client orders. The system represents rich set of reports that shows whole picture about restaurant operations and life cycles. In this module we can create a bill by assigning a unique bill number to each and every bill. In this we prepare bill for two type of customers they are Walk in Home delivery We also provide a facility of discount to our customer. Our bill includes Total Price, Total VAT and Payable Amount. At last bill is raised and we can print out a bill.
ACCOUNTANCY & SALES Accounting is called "the language of business". Accountancy is a branch of mathematical science that is useful in discovering the causes of success and failure in business. Sales is defined as a amount a company receives from the sale of its products, after deducting discounts, returns of products by customers, and damaged, missing, or stolen products. Value added tax (VAT) is similar to a sales tax. It is a tax on the estimated market value added to a product or material at each stage of its manufacture or distribution, ultimately passed on to the consumer. VAT was invented because very high sales taxes and tariffs encourage cheating and smuggling.
View Home Delivery This feature provides us full information about all the Home Deliveries. The information includes Address of Customer, Phone Number, Customer Name, Home Delivery ID, Total Amount etc. It only provides outlook of home delivery, no editing can be performed. We can also find information by using searching operation. When we enter date of home delivery then the full information is displayed. View Sales We can view Total Sales of restaurant by using this feature. Sales can be viewed in three ways-per day, per month, per year. It only provides outlook of sales according to day. When we enter date of sales then full information of sales of that particular day is displayed. View Sales Graph In this we have the Graphical View of Sales. When we enter the starting and the last date to View Sales then the Total Sales of per day is displayed, according to that a Graph is prepared. This graph tells us on which day sales were maximum and minimum. View Tax Collection By using this feature we can View the Tax Collection. We can view tax collection in two ways- according to Month and Year. When we enter a particular month or year, then Total Tax of that particular month or year is displayed.
39
DESIGN
40
DESIGN PHASE
In systems, design functions and operations are described in detail, including screen layouts, business rules, process diagrams and other documentation. The output of this stage will describe the new system as a collection of modules or subsystems. The design stage takes as its initial input the requirements identified in the approved requirements document. For each requirement, a set of one or more design elements will be produced as a result of interviews, workshops, and/or prototype efforts. Design elements describe the desired software features in detail, and generally include functional hierarchy diagrams, screen layout diagrams, tables of business rules, business process diagrams, pseudo code, and a complete entity-relationship diagram with a full data dictionary. These design elements are intended to describe the software in sufficient detail that skilled programmers may develop the software with minimal additional input.
Requirements Document
DESIGN STAGE
Design Document
41
42
ER Diagram
43
Administrator
Users Outlook, View Full Menu and Customers, View Accountancy and Sales.
Create, Edit & Delete User, Change Password, Add, Search, Edit & Delete Items and Customers, Add & Search Reservation, Bill.
Manager
View Full Menu and Customers, View Accountancy & Sales.
Service Manager
Change Password, Search Item, Bill. View Full Menu and Customers, View Home Delivery.
Create User, Change Password, Add, Search & Edit Items, Add, Search, Edit and Delete Customers, Add & Search Reservation, Bill.
Restaurant Management
Billing
Printer
Store
Retrieve
RESTDATABASE
44
DFD Level-1
LOGIN
Login Successful
SECURITY
Close Window
45
DFD Level-1
CREATE USER
UserName Cannot Contain Space & Must Starts With An Alphabet Invalid Email ID Invalid Password
Administrator/ Manager
UserName, Password, Confirm Password, LastName, FirstName, DateofBirth, Location, Contact No, Email ID, UserType.
Check Password
Check Email ID
Check UserName
Create User
SECURITY
New User Created Successfully
SECURITY
46
DFD Level-1
ADD MENU ITEMS
Price Must Be In Numerics Item Name Must Contain Alphabets Fields Marked * Are Mandatory
Administrator/ Manager
Item Added
Check Price
LISTOFITEMS
47
DFD Level-1
BILLING
Item Code & Quantity Should Be Numeric Invalid Item Code OR Quantity
Add Item
Remove Item
Check Out
Fetch
Bill Raised
Print Bill
Printer
48
49
MAIN SCREEN
50
Coding
public partial class Main_Screen : Form { public Main_Screen() { InitializeComponent(); } private void Main_Screen_Load(object sender, EventArgs e) { Form1 f1 = new Form1(); f1.ShowDialog(); Login log=new Login(); log.receive(this); log.ShowDialog();
private void createUserToolStripMenuItem_Click(object sender, EventArgs e) { Create_User cu = new Create_User(); cu.MdiParent = this; cu.Show(); } private void alterUserToolStripMenuItem_Click(object sender, EventArgs e) { Edit_User ed = new Edit_User(); ed.MdiParent = this; ed.Show(); } private void changePasswordToolStripMenuItem_Click(object sender, EventArgs e) { Change cp = new Change(); cp.MdiParent = this; cp.Show(); } private void quitToolStripMenuItem_Click(object sender, EventArgs e) { Environment.Exit(0); } private void addToolStripMenuItem_Click(object sender, EventArgs e) { Add_menu_items ami = new Add_menu_items(); ami.MdiParent = this; ami.Show(); } private void deleteUserToolStripMenuItem_Click(object sender, EventArgs e) { Edit_User ed = new Edit_User(); ed.MdiParent = this; ed.Show();
51
} private void searchItemToolStripMenuItem_Click(object sender, EventArgs e) { search_item si = new search_item(); si.MdiParent = this; si.Show(); } private void deleteItemToolStripMenuItem_Click(object sender, EventArgs e) { Edit ei = new Edit(); ei.MdiParent = this; ei.Show(); } private void addCustomerToolStripMenuItem_Click(object sender, EventArgs e) { Add_Customer ac = new Add_Customer(); ac.MdiParent = this; ac.Show(); } private void editCustomerToolStripMenuItem_Click(object sender, EventArgs e) { Edit_Customer ec = new Edit_Customer(); ec.MdiParent = this; ec.Show(); } private void searchCustumerToolStripMenuItem_Click(object sender, EventArgs e) { Search_Customer sc = new Search_Customer(); sc.MdiParent = this; sc.Show(); } private void deleteCustomerToolStripMenuItem_Click(object sender, EventArgs e) { Edit_Customer ec = new Edit_Customer(); ec.MdiParent = this; ec.Show(); } private void viewToolStripMenuItem_Click(object sender, EventArgs e) { User_Outlook uo = new User_Outlook(); uo.MdiParent = this; uo.Show(); } private void viewAllCustomerToolStripMenuItem_Click(object sender, EventArgs e) { View_Customer vc = new View_Customer(); vc.MdiParent = this; vc.Show(); }
52
private void addReservationToolStripMenuItem_Click(object sender, EventArgs e) { Table_Reservation tr = new Table_Reservation(); tr.MdiParent = this; tr.Show(); } private void viewReservationToolStripMenuItem_Click(object sender, EventArgs e) { search_reservations sr = new search_reservations(); sr.MdiParent = this; sr.Show(); } private void billingToolStripMenuItem_Click(object sender, EventArgs e) { Billing b = new Billing(); b.MdiParent = this; b.Show(); } private void timer1_Tick(object sender, EventArgs e) { toolStripStatusLabel1.Text = DateTime.Now.ToString(); } private void viewFullMenuToolStripMenuItem_Click(object sender, EventArgs e) { View_Menu vm = new View_Menu(); vm.MdiParent = this; vm.Show(); } private void editToolStripMenuItem_Click(object sender, EventArgs e) { Edit ei = new Edit(); ei.MdiParent = this; ei.Show(); } private void viewHomeDeliveryToolStripMenuItem1_Click(object sender, EventArgs e) { Form3 f3 = new Form3(); f3.MdiParent = this; f3.Show(); } private void viewSalesToolStripMenuItem1_Click(object sender, EventArgs e) { Sales s = new Sales(); s.MdiParent = this; s.Show(); } private void viewSalesGraphToolStripMenuItem_Click(object sender, EventArgs e) { sales_graph sg= new sales_graph(); sg.MdiParent = this;
53
sg.Show();
private void viewTaxCollectionToolStripMenuItem_Click(object sender, EventArgs e) { tax tx = new tax(); tx.MdiParent = this; tx.Show(); } private void signOutToolStripMenuItem_Click(object sender, EventArgs e) { Login log = new Login(); log.receive(this); log.ShowDialog(); }
54
LOGIN
55
Coding
public partial class Login : Form { Main_Screen obj; public void receive(Main_Screen o1) { obj = o1; } public Login() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { try { restdatabaseDataSetTableAdapters.SecurityTableAdapter ta = new restdatabaseDataSetTableAdapters.SecurityTableAdapter(); restdatabaseDataSet ds = new restdatabaseDataSet(); ta.Fill(ds.Security); int flag = 0; int i = 0; string p, q; for (i = 0; i <= ds.Security.Rows.Count - 1; i++) { p = Convert.ToString(ds.Security.Rows[i]["UserName"]); q = Convert.ToString(ds.Security.Rows[i]["Password"]); if ((textBox1.Text == p) && (textBox2.Text == q) && (comboBox1.SelectedItem.ToString() == ds.Security.Rows[i]["UserType"].ToString())) { flag = 1; break; } } if (flag == 1) { MessageBox.Show("Login Successful"); if (comboBox1.SelectedItem.ToString() == "Manager") { obj.createUserToolStripMenuItem.Visible = true; obj.viewToolStripMenuItem.Visible = false; obj.alterUserToolStripMenuItem.Visible = false; obj.deleteUserToolStripMenuItem.Visible = false; obj.changePasswordToolStripMenuItem.Visible = true; obj.signOutToolStripMenuItem.Visible = true; obj.quitToolStripMenuItem.Visible = true; obj.addToolStripMenuItem.Visible = true; obj.viewFullMenuToolStripMenuItem.Visible = true; obj.searchItemToolStripMenuItem.Visible = true; obj.editToolStripMenuItem.Visible = true;
56
obj.deleteItemToolStripMenuItem.Visible = false; obj.addCustomerToolStripMenuItem.Visible = true; obj.viewAllCustomerToolStripMenuItem.Visible = true; obj.editCustomerToolStripMenuItem.Visible = true; obj.searchCustumerToolStripMenuItem.Visible = true; obj.deleteCustomerToolStripMenuItem.Visible = true; obj.addReservationToolStripMenuItem.Visible = true; obj.viewReservationToolStripMenuItem.Visible = true; obj.billingToolStripMenuItem.Visible = true; obj.viewHomeDeliveryToolStripMenuItem1.Visible = true; obj.viewSalesToolStripMenuItem1.Visible = true; obj.viewSalesGraphToolStripMenuItem.Visible = true; obj.viewTaxCollectionToolStripMenuItem.Visible = true;
} else if (comboBox1.SelectedItem.ToString() == "Service Manager") { obj.createUserToolStripMenuItem.Visible = false; obj.viewToolStripMenuItem.Visible = false; obj.alterUserToolStripMenuItem.Visible = false; obj.deleteUserToolStripMenuItem.Visible = false; obj.changePasswordToolStripMenuItem.Visible = true; obj.signOutToolStripMenuItem.Visible = true; obj.quitToolStripMenuItem.Visible = true; obj.addToolStripMenuItem.Visible = false; obj.viewFullMenuToolStripMenuItem.Visible = true; obj.searchItemToolStripMenuItem.Visible = true; obj.editToolStripMenuItem.Visible = false; obj.deleteItemToolStripMenuItem.Visible = false; obj.addCustomerToolStripMenuItem.Visible = false; obj.viewAllCustomerToolStripMenuItem.Visible = true; obj.editCustomerToolStripMenuItem.Visible = false; obj.searchCustumerToolStripMenuItem.Visible = false; obj.deleteCustomerToolStripMenuItem.Visible = false; obj.addReservationToolStripMenuItem.Visible = false; obj.viewReservationToolStripMenuItem.Visible = false; obj.billingToolStripMenuItem.Visible = true; obj.viewHomeDeliveryToolStripMenuItem1.Visible = true; obj.viewSalesToolStripMenuItem1.Visible = false; obj.viewSalesGraphToolStripMenuItem.Visible = false; obj.viewTaxCollectionToolStripMenuItem.Visible = false;
} else if (comboBox1.SelectedItem.ToString() == "Administrator") { obj.createUserToolStripMenuItem.Visible = true; obj.viewToolStripMenuItem.Visible = true; obj.alterUserToolStripMenuItem.Visible = true; obj.deleteUserToolStripMenuItem.Visible = true; obj.changePasswordToolStripMenuItem.Visible = true; obj.signOutToolStripMenuItem.Visible = true;
57
obj.quitToolStripMenuItem.Visible = true; obj.addToolStripMenuItem.Visible = true; obj.viewFullMenuToolStripMenuItem.Visible = true; obj.searchItemToolStripMenuItem.Visible = true; obj.editToolStripMenuItem.Visible = true; obj.deleteItemToolStripMenuItem.Visible = true; obj.addCustomerToolStripMenuItem.Visible = true; obj.viewAllCustomerToolStripMenuItem.Visible = true; obj.editCustomerToolStripMenuItem.Visible = true; obj.searchCustumerToolStripMenuItem.Visible = true; obj.deleteCustomerToolStripMenuItem.Visible = true; obj.addReservationToolStripMenuItem.Visible = true; obj.viewReservationToolStripMenuItem.Visible = true; obj.billingToolStripMenuItem.Visible = true; obj.viewHomeDeliveryToolStripMenuItem1.Visible = true; obj.viewSalesToolStripMenuItem1.Visible = true; obj.viewSalesGraphToolStripMenuItem.Visible = true; obj.viewTaxCollectionToolStripMenuItem.Visible = true;
} else { MessageBox.Show("Login Not Successful"); textBox1.Text = ""; textBox2.Text = ""; comboBox1.SelectedIndex = -1; textBox1.Focus(); }
} this.Dispose();
private void on_close(object sender, FormClosingEventArgs e) { e.Cancel = true; } private void button2_Click(object sender, EventArgs e) { Environment.Exit(0); }
58
Logged In Screen
59
CREATE USER
60
Coding
public partial class Create_User : Form { public Create_User() { InitializeComponent(); } private void button1_Click_1(object sender, EventArgs e) { try { char ch = ' '; if (textBoxusername.Text != "") { ch = textBoxusername.Text[0]; } if ((textBoxusername.Text == "") || (textBoxpassword.Text == "") || (textBoxconfirmpassword.Text == "") || (textBoxfirstname.Text == "") || (textBoxlocation.Text == "") || (comboBoxusertype.SelectedIndex == -1)||(textBoxemailid.Text=="")) { MessageBox.Show("Fields Marked * are Mandatory"); } else if ((textBoxconfirmpassword.Text != textBoxpassword.Text)) { MessageBox.Show("Invalid Password"); } else if (!((textBoxemailid.Text.Contains("@")) && (textBoxemailid.Text.Contains(".")))) { MessageBox.Show("Invalid E-mail ID"); } else if ((textBoxemailid.Text.IndexOf("@")) > (textBoxemailid.Text.LastIndexOf("."))) { MessageBox.Show("Invalid E-mail ID"); } else if (textBoxusername.Text.Contains(" ")) { MessageBox.Show("Username Cannot Contain Space"); } else if (!(((Convert.ToInt16(ch) >= 65) && (Convert.ToInt16(ch) <= 90)) || ((Convert.ToInt16(ch) >= 97) && (Convert.ToInt16(ch) <= 122)))) { MessageBox.Show("Username Must starts with an Alphabet"); } else { restdatabaseDataSetTableAdapters.SecurityTableAdapter ta = new restdatabaseDataSetTableAdapters.SecurityTableAdapter(); restdatabaseDataSet ds = new restdatabaseDataSet(); ta.Fill(ds.Security); DataTable dt; DataRow dr; dt = ds.Security; dr = dt.NewRow(); dr["UserName"] = textBoxusername.Text; dr["Password"] = textBoxpassword.Text; dr["Last_Name"] = textBoxlastname.Text;
61
dr["First_Name"] = textBoxfirstname.Text; dr["DateofBirth"] = dateTimePickerdateofbirth.Value.ToShortDateString(); dr["Location"] = textBoxlocation.Text; dr["Contact_No"] = textBoxcontactno.Text; dr["Email_ID"] = textBoxemailid.Text; dr["UserType"] = comboBoxusertype.SelectedItem; dt.Rows.Add(dr); ta.Update(ds.Security); MessageBox.Show("New User Created Successfully"); ta.Fill(ds.Security); textBoxusername.Text = ""; textBoxpassword.Text = ""; textBoxconfirmpassword.Text = ""; textBoxlastname.Text = ""; textBoxfirstname.Text = ""; dateTimePickerdateofbirth.Value = DateTime.Now; textBoxlocation.Text = ""; textBoxcontactno.Text = ""; textBoxemailid.Text = ""; comboBoxusertype.SelectedIndex = -1; textBoxusername.Focus();
62
USERS OUTLOOK
63
Coding
public partial class User_Outlook : Form { public User_Outlook() { InitializeComponent(); } private void User_Outlook_Load(object sender, EventArgs e) { // TODO: This line of code loads data into the 'restdatabaseDataSet.Security' table. You can move, or remove it, as needed. this.securityTableAdapter.Fill(this.restdatabaseDataSet.Security); } }
64
EDIT/DELETE USER
65
Coding
public partial class Edit_User : Form { DataRow dr; restdatabaseDataSetTableAdapters.SecurityTableAdapter ta = new restdatabaseDataSetTableAdapters.SecurityTableAdapter(); restdatabaseDataSet ds = new restdatabaseDataSet(); public Edit_User() { InitializeComponent(); } private void Edit_User_Load(object sender, EventArgs e) { // TODO: This line of code loads data into the 'restdatabaseDataSet.Security' table. You can move, or remove it, as needed. this.securityTableAdapter.Fill(this.restdatabaseDataSet.Security); ta.Fill(ds.Security); } private void buttonfirst_Click_1(object sender, EventArgs e) { securityBindingSource.MoveFirst(); } private void buttonprevious_Click_1(object sender, EventArgs e) { securityBindingSource.MovePrevious(); } private void buttonnext_Click_1(object sender, EventArgs e) { securityBindingSource.MoveNext(); } private void buttonlast_Click_1(object sender, EventArgs e) { securityBindingSource.MoveLast(); } private void buttonedit_Click_1(object sender, EventArgs e) { textBoxusername.ReadOnly = true; textBoxpassword.ReadOnly = true; textboxlastname.ReadOnly = false; textBoxfirstname.ReadOnly = false; dateTimePickerdateofbirth.Enabled = true; textBoxlocation.ReadOnly = false; textBoxcontactno.ReadOnly = false; textBoxemailid.ReadOnly = false; comboBoxusertype.Enabled = true; buttonfirst.Enabled = false; buttonprevious.Enabled = false; buttonnext.Enabled = false;
66
buttonlast.Enabled = false;
private void buttonsave_Click(object sender, EventArgs e) { try { if ((textBoxusername.Text == "") || (textBoxpassword.Text == "") || (textBoxfirstname.Text == "") || (textBoxlocation.Text == "") || (comboBoxusertype.SelectedIndex == -1)||(textBoxemailid.Text=="")) { MessageBox.Show("Fields Marked * are Mandatory"); } else if (!((textBoxemailid.Text.Contains("@")) && (textBoxemailid.Text.Contains(".")))) { MessageBox.Show("Invalid E-mail ID"); } else if ((textBoxemailid.Text.IndexOf("@")) > (textBoxemailid.Text.LastIndexOf("."))) { MessageBox.Show("Invalid E-mail ID"); } else { dr = restdatabaseDataSet.Security.Rows[securityBindingSource.Position]; dr.BeginEdit(); dr["UserName"] = textBoxusername.Text; dr["Password"] = textBoxpassword.Text; dr["Last_Name"] = textboxlastname.Text; dr["First_Name"] = textBoxfirstname.Text; dr["DateofBirth"] = dateTimePickerdateofbirth.Value.ToShortDateString(); dr["Location"] = textBoxlocation.Text; dr["Contact_No"] = textBoxcontactno.Text; dr["Email_ID"] = textBoxemailid.Text; dr["UserType"] = comboBoxusertype.SelectedItem; dr.EndEdit(); securityTableAdapter.Update(restdatabaseDataSet.Security); MessageBox.Show("Record Updated"); securityTableAdapter.Fill(restdatabaseDataSet.Security); textBoxusername.ReadOnly = true; textBoxpassword.ReadOnly = true; textboxlastname.ReadOnly = true; textBoxfirstname.ReadOnly = true; dateTimePickerdateofbirth.Enabled = false; textBoxlocation.ReadOnly = true; textBoxcontactno.ReadOnly = true; textBoxemailid.ReadOnly = true; comboBoxusertype.Enabled = false; buttonfirst.Enabled = true; buttonprevious.Enabled = true; buttonnext.Enabled = true; buttonlast.Enabled = true;
67
MessageBox.Show(ex.Message);
private void buttondelete_Click(object sender, EventArgs e) { try { DialogResult ans; ans = MessageBox.Show("Are you sure you want to delete the User's account?", "Delete Confirmation", MessageBoxButtons.YesNo); if (ans == DialogResult.Yes) { dr = this.restdatabaseDataSet.Security.Rows[securityBindingSource.Position]; dr.Delete(); this.securityTableAdapter.Update(this.restdatabaseDataSet.Security); MessageBox.Show("User Deleted"); this.securityTableAdapter.Fill(this.restdatabaseDataSet.Security); } } catch (Exception ex) { MessageBox.Show(ex.Message); } } }
68
CHANGE PASSWORD
69
Coding
public partial class Change : Form { public Change() { InitializeComponent(); } private void changepassword_Click(object sender, EventArgs e) { try { restdatabaseDataSetTableAdapters.SecurityTableAdapter ta = new restdatabaseDataSetTableAdapters.SecurityTableAdapter(); restdatabaseDataSet ds = new restdatabaseDataSet(); ta.Fill(ds.Security); int flag = 0, pos = 0, i; string p, q; for (i = 0; i <= (ds.Security.Rows.Count - 1); i++) { p = Convert.ToString(ds.Security.Rows[i]["UserName"]); q = Convert.ToString(ds.Security.Rows[i]["Password"]); if ((textBoxusername.Text == p) && (textBoxoldpassword.Text == q)) { flag = 1; pos = i; break; } } if ((textBoxusername.Text == "") || (textBoxoldpassword.Text == "") || (textBoxnewpassword.Text == "") || (textBoxconfirmpassword.Text == "")) { MessageBox.Show("All fields are Mandatory"); } else if (textBoxnewpassword.Text != textBoxconfirmpassword.Text) { MessageBox.Show("New Password and Confirm new Password does not match"); } else if (flag == 0) { MessageBox.Show("Username and Old Password does not match"); } else { DataRow dr; dr = ds.Security.Rows[pos]; dr.BeginEdit(); dr["Password"] = textBoxnewpassword.Text; dr.EndEdit(); ta.Update(ds.Security); ta.Fill(ds.Security); MessageBox.Show("Password changed successfully"); textBoxusername.Text = ""; textBoxoldpassword.Text = "";
70
71
72
Coding
public partial class Add_menu_items : Form { int temp = 0; restdatabaseDataSetTableAdapters.listofitemsTableAdapter ta = new restdatabaseDataSetTableAdapters.listofitemsTableAdapter(); restdatabaseDataSet ds = new restdatabaseDataSet(); public Add_menu_items() { InitializeComponent(); } private void buttonadditem_Click(object sender, EventArgs e) { try { char ch = ' '; if (textBoxitemname.Text != "") { ch = textBoxitemname.Text[0]; } if ((textBoxitemname.Text == "") || (comboBoxcategory.SelectedIndex == -1) || (textBoxdescription.Text == "") || (textBoxprice.Text == "") || (comboBoxtax.SelectedIndex == 1) || (comboBoxtype.SelectedIndex == -1)) { MessageBox.Show("Fields Marked * Are Mandatory"); } else if (!(((Convert.ToInt16(ch) >= 65) && (Convert.ToInt16(ch) <= 90)) || ((Convert.ToInt16(ch) >= 97) && (Convert.ToInt16(ch) <= 122)))) { MessageBox.Show("Item Name Must Contain Alphabets"); } else if (!int.TryParse(textBoxprice.Text, out temp) == true) { MessageBox.Show("Price Must Be In Numerics"); } else { DataRow dr; dr = ds.listofitems.NewRow(); //ta.Fill(ds.listofitems); dr["item_code"] = Convert.ToInt32(textBoxitemcode.Text); dr["item_name"] = textBoxitemname.Text; dr["category"] = comboBoxcategory.SelectedItem; dr["description"] = textBoxdescription.Text; dr["price"] = textBoxprice.Text; dr["tax"] = comboBoxtax.SelectedItem; dr["type"] = comboBoxtype.SelectedItem; ds.listofitems.Rows.Add(dr); ta.Update(ds.listofitems); MessageBox.Show("Item Added"); ta.Fill(ds.listofitems); if (ds.listofitems.Rows.Count == 0) { textBoxitemcode.Text = Convert.ToString(100);
73
} else { int x; x = Convert.ToInt32(ta.ScalarQuery()); textBoxitemcode.Text = Convert.ToString(x + 1); } textBoxitemname.Text = ""; comboBoxcategory.SelectedIndex = -1; textBoxdescription.Text = ""; textBoxprice.Text = ""; comboBoxtax.SelectedIndex = -1; comboBoxtype.SelectedIndex = -1; textBoxitemname.Focus();
private void Add_menu_items_Load(object sender, EventArgs e) { ta.Fill(ds.listofitems); if (ds.listofitems.Rows.Count == 0) { textBoxitemcode.Text = Convert.ToString(100); } else { int x; x = Convert.ToInt32(ta.ScalarQuery()); textBoxitemcode.Text = Convert.ToString(x + 1); }
74
75
Coding
public partial class View_Menu : Form { public View_Menu() { InitializeComponent(); } private void View_Menu_Load(object sender, EventArgs e) { // TODO: This line of code loads data into the 'restdatabaseDataSet.listofitems' table. You can move, or remove it, as needed. this.listofitemsTableAdapter.Fill(this.restdatabaseDataSet.listofitems); } }
76
77
Coding
public partial class search_item : Form { public search_item() { InitializeComponent(); } private void search_item_Load(object sender, EventArgs e) { // TODO: This line of code loads data into the 'restdatabaseDataSet.listofitems' table. You can move, or remove it, as needed. this.listofitemsTableAdapter.Fill(this.restdatabaseDataSet.listofitems); } private void buttongo_Click(object sender, EventArgs e) { try { listofitemsTableAdapter.FillBy(restdatabaseDataSet.listofitems, textBoxsearch.Text); dataGridView1.DataSource = restdatabaseDataSet.listofitems; } catch (Exception ex) { MessageBox.Show(ex.Message); } } }
78
79
Coding
public partial class Edit : Form { int temp = 0; restdatabaseDataSetTableAdapters.listofitemsTableAdapter ta = new restdatabaseDataSetTableAdapters.listofitemsTableAdapter(); restdatabaseDataSet ds = new restdatabaseDataSet(); public Edit() { InitializeComponent(); } private void Edit_Load(object sender, EventArgs e) { // TODO: This line of code loads data into the 'restdatabaseDataSet.listofitems' table. You can move, or remove it, as needed. this.listofitemsTableAdapter.Fill(this.restdatabaseDataSet.listofitems); } private void buttonfirst_Click(object sender, EventArgs e) { listofitemsBindingSource. MoveFirst(); } private void buttonprevious_Click(object sender, EventArgs e) { listofitemsBindingSource.MovePrevious(); } private void buttonnext_Click(object sender, EventArgs e) { listofitemsBindingSource.MoveNext(); } private void buttonlast_Click(object sender, EventArgs e) { listofitemsBindingSource.MoveLast(); } private void buttonedit_Click(object sender, EventArgs e) { textBoxitemname.ReadOnly = false; comboBoxcategory.Enabled = true; textBoxdescription.ReadOnly = false; textBoxprice.ReadOnly = false; comboBoxtax.Enabled = true; comboBoxtype.Enabled = true; buttonfirst.Enabled = false; buttonprevious.Enabled = false; buttonnext.Enabled = false; buttonlast.Enabled = false;
} private void buttonsave_Click(object sender, EventArgs e) { try { char ch = ' '; if (textBoxitemname.Text != "") { ch = textBoxitemname.Text[0]; }
80
if ((textBoxitemname.Text == "") || (comboBoxcategory.SelectedIndex == -1) || (textBoxdescription.Text == "") || (textBoxprice.Text == "") || (comboBoxtax.SelectedIndex == 1) || (comboBoxtype.SelectedIndex == -1)) { MessageBox.Show("All Fields Are Mandatory"); } else if (!(((Convert.ToInt16(ch) >= 65) && (Convert.ToInt16(ch) <= 90)) || ((Convert.ToInt16(ch) >= 97) && (Convert.ToInt16(ch) <= 122)))) { MessageBox.Show("Item Name Must Contain Alphabets"); } else { restdatabaseDataSetTableAdapters.listofitemsTableAdapter ta = new restdatabaseDataSetTableAdapters.listofitemsTableAdapter(); restdatabaseDataSet ds = new restdatabaseDataSet(); DataRow dr; dr = restdatabaseDataSet.listofitems.Rows[listofitemsBindingSource.Position]; dr.BeginEdit(); dr["Item_Name"] = textBoxitemname.Text; dr["Category"] = comboBoxcategory.SelectedItem; dr["Description"] = textBoxdescription.Text; dr["Price"] = textBoxprice.Text; dr["Tax"] = comboBoxtax.SelectedItem; dr["Type"] = comboBoxtype.SelectedItem; dr.EndEdit(); ta.Update(this.restdatabaseDataSet.listofitems); MessageBox.Show("Item Updated"); ta.Fill(this.restdatabaseDataSet.listofitems); textBoxitemname.ReadOnly = true; comboBoxcategory.Enabled = false; textBoxdescription.ReadOnly = true; textBoxprice.ReadOnly = true; comboBoxtax.Enabled = false; comboBoxtype.Enabled = false; buttonfirst.Enabled = true; buttonprevious.Enabled = true; buttonnext.Enabled = true; buttonlast.Enabled = true;
private void buttonsearch_Click(object sender, EventArgs e) { try { string n, p; n = textBoxsearch.Text; restdatabaseDataSetTableAdapters.listofitemsTableAdapter ta = new restdatabaseDataSetTableAdapters.listofitemsTableAdapter();
81
restdatabaseDataSet ds = new restdatabaseDataSet(); ta.Fill(ds.listofitems); int i, count, pos = -1; count = ds.listofitems.Rows.Count; for (i = 0; i <= count - 1; i++) { p = Convert.ToString(ds.listofitems.Rows[i]["Item_Name"]); if (p == n) { pos = i; break; } } if (pos == -1) { MessageBox.Show("No Such Item Found"); } else { textBoxitemname.Text = ds.listofitems.Rows[pos]["Item_Name"].ToString(); comboBoxcategory.SelectedItem = ds.listofitems.Rows[pos]["Category"].ToString(); textBoxdescription.Text = ds.listofitems.Rows[pos]["Description"].ToString(); textBoxprice.Text = ds.listofitems.Rows[pos]["Price"].ToString(); comboBoxtax.SelectedItem = ds.listofitems.Rows[pos]["Tax"].ToString(); comboBoxtype.SelectedItem = ds.listofitems.Rows[pos]["Type"].ToString(); } } catch (Exception ex) { MessageBox.Show(ex.Message); } } private void buttondelete_Click(object sender, EventArgs e) { try { DataRow dr; DialogResult ans; ans = MessageBox.Show("Are You Sure You Want To Delete The Item?", "Delete Confirmation", MessageBoxButtons.YesNo); if (ans == DialogResult.Yes) { dr = this.restdatabaseDataSet.listofitems.Rows[this.listofitemsBindingSource.Position]; dr.Delete(); this.listofitemsTableAdapter.Update(dr); MessageBox.Show("Item Deleted"); this.listofitemsTableAdapter.Fill(this.restdatabaseDataSet.listofitems); } } catch (Exception ex) { MessageBox.Show(ex.Message); } }
82
ADD CUSTOMER
83
Coding
public partial class Add_Customer : Form { restdatabaseDataSetTableAdapters.CustomerTableAdapter ta = new restdatabaseDataSetTableAdapters.CustomerTableAdapter(); restdatabaseDataSet ds = new restdatabaseDataSet(); DataRow dr; long temp = 0; public Add_Customer() { InitializeComponent(); } private void buttonaddcust_Click(object sender, EventArgs e) { try { ta.Fill(ds.Customer); char ch = ' '; int flag = 0; if (textBoxcustomername.Text != "") { ch = textBoxcustomername.Text[0]; } for (int i = 0; i <= ds.Customer.Rows.Count - 1; i++) { if (ds.Customer.Rows[i]["Phone"].ToString() == textBoxphoneno.Text) { flag = 1; break; } } if ((textBoxcustomername.Text == "") || (textBoxaddress.Text == "") || (textBoxphoneno.Text == "") || (comboBoxcustomertype.SelectedIndex == -1)) { MessageBox.Show("Fields Marked * Are Mandatory"); } else if (!long.TryParse(textBoxphoneno.Text, out temp) == true) { MessageBox.Show("Invalid Phone Number"); } else if (flag == 1) { MessageBox.Show("Phone Number Already Exist"); textBoxphoneno.Text = ""; textBoxphoneno.Focus(); } else if ((textBoxemailid.Text.IndexOf("@")) > (textBoxemailid.Text.LastIndexOf("."))) { MessageBox.Show("Invalid E-mail ID"); } else if (!(((Convert.ToInt16(ch) >= 65) && (Convert.ToInt16(ch) <= 90)) || ((Convert.ToInt16(ch) >= 97) && (Convert.ToInt16(ch) <= 122)))) { MessageBox.Show("Customer Name Must starts with an Alphabet");
84
} else { dr = ds.Customer.NewRow(); dr["Cust_name"] = textBoxcustomername.Text; dr["address"] = textBoxaddress.Text; dr["phone"] = textBoxphoneno.Text; dr["email_id"] = textBoxemailid.Text; dr["cust_type"] = comboBoxcustomertype.SelectedItem; dr["DOB"] = dateTimePickerdob.Value.ToShortDateString(); dr["maritalstatus"] = comboBoxmaritalstatus.SelectedItem; ds.Customer.Rows.Add(dr); ta.Update(ds.Customer); MessageBox.Show("New Customer Added Successfully"); ta.Fill(ds.Customer); textBoxcustomername.Text = ""; textBoxaddress.Text = ""; textBoxphoneno.Text = ""; textBoxemailid.Text = ""; comboBoxcustomertype.SelectedIndex = -1; dateTimePickerdob.Value = DateTime.Now; comboBoxmaritalstatus.SelectedIndex = -1; textBoxcustomername.Focus(); }
85
86
Coding
public partial class View_Customer : Form { public View_Customer() { InitializeComponent(); } private void View_Customer_Load(object sender, EventArgs e) { // TODO: This line of code loads data into the 'restdatabaseDataSet.Customer' table. You can move, or remove it, as needed. this.customerTableAdapter.Fill(this.restdatabaseDataSet.Customer); } }
87
EDIT/DELETE CUSTOMER
88
Coding
public partial class Edit_Customer : Form { long temp=0; restdatabaseDataSetTableAdapters.CustomerTableAdapter ta = new restdatabaseDataSetTableAdapters.CustomerTableAdapter(); restdatabaseDataSet ds = new restdatabaseDataSet(); public Edit_Customer() { InitializeComponent(); } private void Edit_Customer_Load(object sender, EventArgs e) { // TODO: This line of code loads data into the 'restdatabaseDataSet.Customer' table. You can move, or remove it, as needed. this.customerTableAdapter.Fill(this.restdatabaseDataSet.Customer); } private void buttonfirst_Click(object sender, EventArgs e) { customerBindingSource.MoveFirst(); } private void buttonprevious_Click(object sender, EventArgs e) { customerBindingSource.MovePrevious(); } private void buttonnext_Click(object sender, EventArgs e) { customerBindingSource.MoveNext(); } private void buttonlast_Click(object sender, EventArgs e) { customerBindingSource.MoveLast(); } private void buttonedit_Click(object sender, EventArgs e) { textBoxcustomername.ReadOnly = false; textBoxaddress.ReadOnly = false; textBoxphoneno.ReadOnly = false; textBoxemailid.ReadOnly = false; comboBoxcustomertype.Enabled = true; dateTimePickerdob.Enabled = true; comboBoxmaritalstatus.Enabled = true; buttonfirst.Enabled = false; buttonprevious.Enabled = false; buttonnext.Enabled = false; buttonlast.Enabled = false;
89
for (int i = 0; i <= ds.Customer.Rows.Count - 1; i++) { if (ds.Customer.Rows[i]["Phone"].ToString() == textBoxphoneno.Text) { flag = 1; break; } } if ((textBoxcustomername.Text == "") || (textBoxaddress.Text == "") || (textBoxphoneno.Text == "") || (comboBoxcustomertype.SelectedIndex == -1)) { MessageBox.Show("Fields Marked * Are Mandatory"); } else if (!long.TryParse(textBoxphoneno.Text, out temp) == true) { MessageBox.Show("Invalid Phone Number"); } else if (flag == 1) { MessageBox.Show("Phone Number Already Exist"); textBoxphoneno.Text = ""; textBoxphoneno.Focus(); } else if ((textBoxemailid.Text.IndexOf("@")) > (textBoxemailid.Text.LastIndexOf("."))) { MessageBox.Show("Invalid E-mail ID"); } else if (!(((Convert.ToInt16(ch) >= 65) && (Convert.ToInt16(ch) <= 90)) || ((Convert.ToInt16(ch) >= 97) && (Convert.ToInt16(ch) <= 122)))) { MessageBox.Show("Customer Name Must starts with an Alphabet"); } else { restdatabaseDataSetTableAdapters.CustomerTableAdapter ta = new restdatabaseDataSetTableAdapters.CustomerTableAdapter(); restdatabaseDataSet ds = new restdatabaseDataSet(); DataRow dr; dr = restdatabaseDataSet.Customer.Rows[customerBindingSource.Position]; dr.BeginEdit(); dr["cust_name"] = textBoxcustomername.Text; dr["address"] = textBoxaddress.Text; dr["phone"] = textBoxphoneno.Text; dr["email_id"] = textBoxemailid.Text; dr["cust_type"] = comboBoxcustomertype.SelectedItem; dr["DOB"] = dateTimePickerdob.Value.ToShortDateString(); dr["maritalstatus"] = comboBoxmaritalstatus.SelectedItem; dr.EndEdit();
90
ta.Update(this.restdatabaseDataSet.Customer); MessageBox.Show("Customer Record Updated"); ta.Fill(this.restdatabaseDataSet.Customer); textBoxcustomername.ReadOnly = true; textBoxaddress.ReadOnly = true; textBoxphoneno.ReadOnly = true; textBoxemailid.ReadOnly = true; comboBoxcustomertype.Enabled = false; dateTimePickerdob.Enabled = false; comboBoxmaritalstatus.Enabled = false; buttonfirst.Enabled = true; buttonprevious.Enabled = true; buttonnext.Enabled = true; buttonlast.Enabled = true;
private void buttondelete_Click(object sender, EventArgs e) { try { DataRow dr; DialogResult ans; ans = MessageBox.Show("Are You Sure You Want To Delete The Item?", "Delete Confirmation", MessageBoxButtons.YesNo); if (ans == DialogResult.Yes) { dr = this.restdatabaseDataSet.Customer.Rows[this.customerBindingSource.Position]; dr.Delete(); this.customerTableAdapter.Update(this.restdatabaseDataSet.Customer); MessageBox.Show("Item Deleted"); this.customerTableAdapter.Fill(this.restdatabaseDataSet.Customer); } } catch (Exception) { MessageBox.Show("Deletion of This Particular Customer Cannot be Possible, Unless You Delete its Reservation Record"); this.customerTableAdapter.Fill(this.restdatabaseDataSet.Customer); } } private void buttonsearch_Click(object sender, EventArgs e) { try { string n; n = Convert.ToString(textBoxsearch.Text); ta.Fill(ds.Customer);
91
int i, count, pos = -1; count = ds.Customer.Rows.Count; for (i = 0; i <= count - 1; i++) { if (ds.Customer.Rows[i]["phone"].ToString() == n) { pos = i; break; } } if (pos == -1) { MessageBox.Show("No such Record Found"); } else { textBoxcustomername.Text = ds.Customer.Rows[pos]["cust_name"].ToString(); textBoxaddress.Text = ds.Customer.Rows[pos]["address"].ToString(); textBoxphoneno.Text = ds.Customer.Rows[pos]["phone"].ToString(); textBoxemailid.Text = ds.Customer.Rows[pos]["email_id"].ToString(); comboBoxcustomertype.SelectedItem = ds.Customer.Rows[pos]["cust_type"].ToString(); dateTimePickerdob.Value = Convert.ToDateTime(ds.Customer.Rows[pos]["dob"]); comboBoxmaritalstatus.SelectedItem = ds.Customer.Rows[pos]["maritalstatus"].ToString(); textBoxsearch.Text = ""; textBoxsearch.Focus(); } } catch (Exception ex) { MessageBox.Show(ex.Message); } } }
92
SEARCH CUSTOMER
93
Coding
public partial class Search_Customer : Form { public Search_Customer() { InitializeComponent(); } private void Search_Customer_Load(object sender, EventArgs e) { // TODO: This line of code loads data into the 'restdatabaseDataSet.Customer' table. You can move, or remove it, as needed. this.customerTableAdapter.Fill(this.restdatabaseDataSet.Customer); } private void fillByToolStripButton_Click(object sender, EventArgs e) { try { // this.customerTableAdapter.FillBy(this.restdatabaseDataSet.Customer); } catch (System.Exception ex) { System.Windows.Forms.MessageBox.Show(ex.Message); } } private void button1_Click(object sender, EventArgs e) { try { if (radioButton1.Checked == true) { customerTableAdapter.FillBy(restdatabaseDataSet.Customer, textBox1.Text); dataGridView1.DataSource = restdatabaseDataSet.Customer; textBox1.Text = ""; textBox1.Focus(); } else { customerTableAdapter.FillBy1(restdatabaseDataSet.Customer, Convert.ToInt64(textBox1.Text)); dataGridView1.DataSource = restdatabaseDataSet.Customer; textBox1.Text = ""; textBox1.Focus(); } } catch (Exception) { MessageBox.Show("First Select the Type of Search & then Enter it in the Text Box"); } } private void radioButton1_CheckedChanged(object sender, EventArgs e)
94
if (radioButton1.Checked == true) { label3.Text = "Enter Customer Name :"; label3.Visible = true; } else { label3.Text = "Enter Phone No :"; label3.Visible = true; }
95
ADD RESERVATION
96
Coding
public partial class Table_Reservation : Form { int temp = 0; public Table_Reservation() { InitializeComponent(); } private void Table_Reservation_Load(object sender, EventArgs e) { // TODO: This line of code loads data into the 'restdatabaseDataSet.Reservation' table. You can move, or remove it, as needed. this.reservationTableAdapter.Fill(this.restdatabaseDataSet.Reservation); // TODO: This line of code loads data into the 'restdatabaseDataSet.Customer' table. You can move, or remove it, as needed. this.customerTableAdapter.Fill(this.restdatabaseDataSet.Customer); } private void buttonbook_Click(object sender, EventArgs e) { try { if ((comboBoxoccasion.SelectedIndex == -1) || (textBoxgathering.Text == "") || (comboBoxcustid.SelectedIndex == -1) || (comboBoxspot.SelectedIndex == -1)) { MessageBox.Show(" Fields Marked * Are Mandatory"); } else if (!int.TryParse(textBoxadvance.Text, out temp) == true) { MessageBox.Show("Invalid Advance Amount"); } else { DataRow dr; dr = this.restdatabaseDataSet.Reservation.NewRow(); dr["type"] = comboBoxoccasion.SelectedItem; dr["noofpeople"] = textBoxgathering.Text; dr["customer_id"] = comboBoxcustid.SelectedValue.ToString(); dr["dateofbooking"] = dateTimePickerdob.Value.ToShortDateString(); dr["advance"] = textBoxadvance.Text; dr["splinstruction"] = textBoxsplinst.Text; dr["location"] = comboBoxspot.SelectedItem; dr["status"] = "ACTIVE"; this.restdatabaseDataSet.Reservation.Rows.Add(dr); MessageBox.Show("Reservation Done"); this.reservationTableAdapter.Update(dr); this.reservationTableAdapter.Fill(this.restdatabaseDataSet.Reservation); comboBoxoccasion.SelectedIndex = -1; textBoxgathering.Text = ""; comboBoxcustid.Text = ""; dateTimePickerdob.Value = DateTime.Now; textBoxadvance.Text = ""; textBoxsplinst.Text = "";
97
98
SEARCH RESERVATION
99
Coding
public partial class search_reservations : Form { public search_reservations() { InitializeComponent(); } private void search_reservations_Load(object sender, EventArgs e) { // TODO: This line of code loads data into the 'restdatabaseDataSet.Reservation' table. You can move, or remove it, as needed. this.reservationTableAdapter.Fill(this.restdatabaseDataSet.Reservation); } private void on_doubleclick(object sender, EventArgs e) { Edit_Reservation er = new Edit_Reservation(); er.Show(); er.receive(dataGridView1.SelectedRows[0].Cells[0].Value.ToString()); } private void button1_Click(object sender, EventArgs e) { try { reservationTableAdapter.FillBy(restdatabaseDataSet.Reservation, dateTimePicker1.Value.ToShortDateString()); dataGridView1.DataSource = restdatabaseDataSet.Reservation; } catch (Exception ex) { MessageBox.Show(ex.Message); } } }
100
EDIT RESERVATION
101
Coding
public partial class Edit_Reservation : Form { int temp = 0; restdatabaseDataSet ds = new restdatabaseDataSet(); restdatabaseDataSetTableAdapters.ReservationTableAdapter ta = new restdatabaseDataSetTableAdapters.ReservationTableAdapter(); int pos; public Edit_Reservation() { InitializeComponent(); } private void Edit_Reservation_Load(object sender, EventArgs e) { // TODO: This line of code loads data into the 'restdatabaseDataSet.Reservation' table. You can move, or remove it, as needed. this.reservationTableAdapter.Fill(this.restdatabaseDataSet.Reservation); // TODO: This line of code loads data into the 'restdatabaseDataSet.Customer' table. You can move, or remove it, as needed. this.customerTableAdapter.Fill(this.restdatabaseDataSet.Customer); } public void receive(string rid) { ta.Fill(ds.Reservation); for (int i = 0; i <= ds.Reservation.Rows.Count - 1; i++) { if (rid == ds.Reservation.Rows[i]["reservationID"].ToString()) { textBoxreservationid.Text = ds.Reservation.Rows[i]["reservationid"].ToString(); comboBoxoccasion.SelectedItem = ds.Reservation.Rows[i]["type"].ToString(); textBoxgathering.Text = ds.Reservation.Rows[i]["noofpeople"].ToString(); comboBoxcustid.SelectedItem = ds.Reservation.Rows[i]["customer_id"].ToString(); dateTimePickerdob.Value = Convert.ToDateTime(ds.Reservation.Rows[i]["dateofbooking"]); textBoxadvance.Text = ds.Reservation.Rows[i]["advance"].ToString(); textBoxsplinst.Text = ds.Reservation.Rows[i]["splinstruction"].ToString(); comboBoxstatus.SelectedItem = ds.Reservation.Rows[i]["status"].ToString(); comboBoxspot.SelectedItem = ds.Reservation.Rows[i]["location"].ToString(); pos = i; break; } } } private void buttonedit_Click(object sender, EventArgs e) { textBoxreservationid.ReadOnly = true; comboBoxoccasion.Enabled = true; textBoxgathering.ReadOnly = false; comboBoxcustid.Enabled = false; dateTimePickerdob.Enabled = true; textBoxadvance.ReadOnly = false; textBoxsplinst.ReadOnly = false;
102
private void buttonsave_Click(object sender, EventArgs e) { try { if ((comboBoxoccasion.SelectedIndex == -1) || (textBoxgathering.Text == "") || (comboBoxcustid.SelectedIndex == -1) || (comboBoxspot.SelectedIndex == -1)) { MessageBox.Show(" Fields Marked * Are Mandatory"); } else if (!int.TryParse(textBoxadvance.Text, out temp) == true) { MessageBox.Show("Invalid Advance Amount"); } else { DataRow dr; dr = this.restdatabaseDataSet.Reservation.Rows[pos]; dr.BeginEdit(); //dr["reservationid"]=textBoxreservationid.Text; dr["type"] = comboBoxoccasion.SelectedItem; dr["noofpeople"] = textBoxgathering.Text; //dr["customer_id"] = comboBoxcustid.SelectedItem; dr["dateofbooking"] = dateTimePickerdob.Value.ToShortDateString(); dr["advance"] = textBoxadvance.Text; dr["splinstruction"] = textBoxsplinst.Text; dr["status"] = comboBoxstatus.SelectedItem; dr["location"] = comboBoxspot.SelectedItem; dr.EndEdit(); this.reservationTableAdapter.Update(this.restdatabaseDataSet.Reservation); MessageBox.Show("Reservation Updated"); this.reservationTableAdapter.Fill(this.restdatabaseDataSet.Reservation); textBoxreservationid.ReadOnly = true; comboBoxoccasion.Enabled = false; textBoxgathering.ReadOnly = true; comboBoxcustid.Enabled = false; dateTimePickerdob.Enabled = false; textBoxadvance.ReadOnly = true; textBoxsplinst.ReadOnly = true; comboBoxstatus.Enabled = false; comboBoxspot.Enabled = false;
103
BILLING
104
Coding
public partial class Billing : Form { double totalprice, totalvat, amountpayable,discount; int srno = 1; restdatabaseDataSet ds = new restdatabaseDataSet(); restdatabaseDataSetTableAdapters.listofitemsTableAdapter ta = new restdatabaseDataSetTableAdapters.listofitemsTableAdapter(); int pos = -1; int temp1 = 0, temp2 = 0; restdatabaseDataSetTableAdapters.bill_tableTableAdapter ta1 = new restdatabaseDataSetTableAdapters.bill_tableTableAdapter(); restdatabaseDataSetTableAdapters.bill_detailTableAdapter ta2 = new restdatabaseDataSetTableAdapters.bill_detailTableAdapter(); restdatabaseDataSetTableAdapters.CustomerTableAdapter ta3 = new restdatabaseDataSetTableAdapters.CustomerTableAdapter(); restdatabaseDataSet dsc = new restdatabaseDataSet(); restdatabaseDataSetTableAdapters.homedeliveryTableAdapter ta4 = new restdatabaseDataSetTableAdapters.homedeliveryTableAdapter(); public Billing() { InitializeComponent(); } private void buttonadd_Click(object sender, EventArgs e) { try { ta.Fill(ds.listofitems); int flag = 0; for (int i = 0; i <= ds.listofitems.Rows.Count - 1; i++) { if (textBoxitemcode.Text == ds.listofitems.Rows[i]["item_code"].ToString()) { flag = 1; pos = i; break; } } if ((textBoxitemcode.Text == "") || (textBoxquantity.Text == "")) { MessageBox.Show("Invalid Item Code or Quantity"); } else if ((!int.TryParse(textBoxitemcode.Text, out temp1) == true) || (!int.TryParse(textBoxquantity.Text, out temp2) == true)) { MessageBox.Show("Item Code and Quantity should be Numeric"); } else if (flag == 0) { MessageBox.Show("Invalid Item Code"); } else { ListViewItem lt = new ListViewItem(srno.ToString()); lt.SubItems.Add(ds.listofitems.Rows[pos]["item_code"].ToString());
105
lt.SubItems.Add(ds.listofitems.Rows[pos]["item_name"].ToString()); lt.SubItems.Add(ds.listofitems.Rows[pos]["price"].ToString()); lt.SubItems.Add(textBoxquantity.Text); double vat, p; vat = Convert.ToDouble(ds.listofitems.Rows[pos]["price"]) * Convert.ToDouble(ds.listofitems.Rows[pos]["tax"]) / 100; lt.SubItems.Add(vat.ToString()); p = (Convert.ToDouble(ds.listofitems.Rows[pos]["price"]) + Convert.ToDouble(vat)) * Convert.ToDouble(textBoxquantity.Text); lt.SubItems.Add(p.ToString()); listViewbilling.Items.Add(lt); updatebill(); srno = srno + 1; } } catch (Exception ex) { MessageBox.Show(ex.Message); } } private void buttonremove_Click(object sender, EventArgs e) { try { if (listViewbilling.Items.Count > 0) { if (listViewbilling.SelectedItems.Count > 0) { listViewbilling.Items.RemoveAt(listViewbilling.SelectedIndices[0]); serialgen(); updatebill(); } } } catch (Exception ex) { MessageBox.Show(ex.Message); } } public void serialgen() { for (int i = 0; i <= listViewbilling.Items.Count - 1; i++) { listViewbilling.Items[i].Text = Convert.ToString(i + 1); } srno = listViewbilling.Items.Count + 1; } public void updatebill() { totalprice = 0; totalvat = 0; amountpayable = 0; for (int i = 0; i <= listViewbilling.Items.Count - 1; i++) {
106
totalprice = totalprice + (Convert.ToDouble(listViewbilling.Items[i].SubItems[3].Text) * Convert.ToDouble(listViewbilling.Items[i].SubItems[4].Text)); totalvat = totalvat + (Convert.ToDouble(listViewbilling.Items[i].SubItems[5].Text) * Convert.ToDouble(listViewbilling.Items[i].SubItems[4].Text)); amountpayable = amountpayable + Convert.ToDouble(listViewbilling.Items[i].SubItems[6].Text); } textBoxtotalprice.Text = totalprice.ToString(); textBoxtotalvat.Text = totalvat.ToString(); textBoxpayableamount.Text = amountpayable.ToString();
private void Billing_Load(object sender, EventArgs e) { // TODO: This line of code loads data into the 'restdatabaseDataSet.Customer' table. You can move, or remove it, as needed. // this.customerTableAdapter.Fill(this.restdatabaseDataSet.Customer); textBoxdateofbilling.Text = DateTime.Now.ToShortDateString(); ta1.Fill(ds.bill_table); ta2.Fill(ds.bill_detail); if (ds.bill_table.Rows.Count == 0) { textBoxbillno.Text = Convert.ToString(1000); } else { int x; x = Convert.ToInt32(ta1.ScalarQuery()); textBoxbillno.Text = Convert.ToString(x + 1); }
private void buttoncheckout_Click(object sender, EventArgs e) { try { if (radioButtonwalkin.Checked == true ) { buttoncheckout.Enabled = true; DataRow drbill_table; DataRow drbill_detail; if (listViewbilling.Items.Count == 0) { MessageBox.Show("Empty Bill"); } else { drbill_table = ds.bill_table.NewRow(); drbill_table["billno"] = textBoxbillno.Text; drbill_table["dateofbilling"] = textBoxdateofbilling.Text; drbill_table["totalprice"] = textBoxtotalprice.Text; drbill_table["totalvat"] = textBoxtotalvat.Text; drbill_table["discount"] = textBoxdiscount.Text;
107
drbill_table["amt_payable"] = textBoxpayableamount.Text; ds.bill_table.Rows.Add(drbill_table); for (int i = 0; i <= listViewbilling.Items.Count - 1; i++) { drbill_detail = ds.bill_detail.NewRow(); drbill_detail["srno"] = listViewbilling.Items[i].Text; drbill_detail["billno"] = textBoxbillno.Text; drbill_detail["item_code"] = listViewbilling.Items[i].SubItems[1].Text; drbill_detail["item_name"] = listViewbilling.Items[i].SubItems[2].Text; drbill_detail["price"] = listViewbilling.Items[i].SubItems[3].Text; drbill_detail["quantity"] = listViewbilling.Items[i].SubItems[4].Text; drbill_detail["vat"] = listViewbilling.Items[i].SubItems[5].Text; drbill_detail["total"] = listViewbilling.Items[i].SubItems[6].Text; } ds.bill_detail.Rows.Add(drbill_detail);
ta1.Update(ds.bill_table); ta2.Update(ds.bill_detail); ta1.Fill(ds.bill_table); ta2.Fill(ds.bill_detail); MessageBox.Show("Bill Raised"); printPreviewDialog1.Document = printDocument1; printPreviewDialog1.ShowDialog(); listViewbilling.Items.Clear(); textBoxitemcode.Text = ""; textBoxquantity.Text = ""; textBoxtotalprice.Text = ""; textBoxtotalvat.Text = ""; textBoxpayableamount.Text = ""; textBoxitemcode.Focus(); textBoxdateofbilling.Text = DateTime.Now.ToShortDateString(); ta1.Fill(ds.bill_table); ta2.Fill(ds.bill_detail); if (ds.bill_table.Rows.Count == 0) { textBoxbillno.Text = Convert.ToString(1000); } else { int x; x = Convert.ToInt32(ta1.ScalarQuery()); textBoxbillno.Text = Convert.ToString(x + 1); }
108
else if (rbhomedelivery.Checked == true ) { if ((radioButtoncustid.Checked == true || radioButtonphoneno.Checked == true ) && textBoxsearch.Text == "") { MessageBox.Show("Enter Search Criteria"); } else { DataRow drbill_table; DataRow drbill_detail; if (listViewbilling.Items.Count == 0) { MessageBox.Show("Empty Bill"); } else { drbill_table = ds.bill_table.NewRow(); drbill_table["billno"] = textBoxbillno.Text; drbill_table["dateofbilling"] = textBoxdateofbilling.Text; drbill_table["totalprice"] = textBoxtotalprice.Text; drbill_table["totalvat"] = textBoxtotalvat.Text; drbill_table["discount"] = textBoxdiscount.Text; drbill_table["amt_payable"] = textBoxpayableamount.Text; ds.bill_table.Rows.Add(drbill_table); for (int i = 0; i <= listViewbilling.Items.Count - 1; i++) { drbill_detail = ds.bill_detail.NewRow(); drbill_detail["srno"] = listViewbilling.Items[i].Text; drbill_detail["billno"] = textBoxbillno.Text; drbill_detail["item_code"] = listViewbilling.Items[i].SubItems[1].Text; drbill_detail["item_name"] = listViewbilling.Items[i].SubItems[2].Text; drbill_detail["price"] = listViewbilling.Items[i].SubItems[3].Text; drbill_detail["quantity"] = listViewbilling.Items[i].SubItems[4].Text; drbill_detail["vat"] = listViewbilling.Items[i].SubItems[5].Text; drbill_detail["total"] = listViewbilling.Items[i].SubItems[6].Text; } ds.bill_detail.Rows.Add(drbill_detail);
DataRow drhd; drhd = ds.homedelivery.NewRow(); drhd["cust_name"] = textBoxcustname.Text; drhd["address"] = textBoxaddress.Text; drhd["phone"] = textBoxphoneno.Text; drhd["billno"] = textBoxbillno.Text; ds.homedelivery.Rows.Add(drhd); ta1.Update(ds.bill_table); ta2.Update(ds.bill_detail); ta4.Update(ds.homedelivery);
109
ta1.Fill(ds.bill_table); ta2.Fill(ds.bill_detail); ta4.Fill(ds.homedelivery); MessageBox.Show("Bill Raised"); printPreviewDialog1.Document = printDocument1; printPreviewDialog1.ShowDialog(); listViewbilling.Items.Clear(); textBoxitemcode.Text = ""; textBoxquantity.Text = ""; textBoxtotalprice.Text = ""; textBoxtotalvat.Text = ""; textBoxpayableamount.Text = ""; textBoxsearch.Text = ""; textBoxcustname.Text = ""; textBoxaddress.Text = ""; textBoxphoneno.Text = ""; textBoxitemcode.Focus(); textBoxdateofbilling.Text = DateTime.Now.ToShortDateString(); ta1.Fill(ds.bill_table); ta2.Fill(ds.bill_detail); ta4.Fill(ds.homedelivery); if (ds.bill_table.Rows.Count == 0) { textBoxbillno.Text = Convert.ToString(1000); } else { int x; x = Convert.ToInt32(ta1.ScalarQuery()); textBoxbillno.Text = Convert.ToString(x + 1); }
110
private void rbhomedelivery_CheckedChanged(object sender, EventArgs e) { if (rbhomedelivery.Checked == true) { panel1.Visible = true; } } private void buttonsearch_Click(object sender, EventArgs e) { try { //DataRow drcust; if (radioButtoncustid.Checked == true) { string n; n = Convert.ToString(textBoxsearch.Text); ta3.Fill(dsc.Customer); int i, count, pos = -1; count = dsc.Customer.Rows.Count; for (i = 0; i <= count - 1; i++) { if (dsc.Customer.Rows[i]["customer_id"].ToString() == n) { pos = i; break; } } if (pos == -1) { MessageBox.Show("No Customer Record Found"); } else { textBoxcustname.Text = dsc.Customer.Rows[pos]["cust_name"].ToString(); textBoxaddress.Text = dsc.Customer.Rows[pos]["address"].ToString(); textBoxphoneno.Text = dsc.Customer.Rows[pos]["phone"].ToString(); } } if (radioButtonphoneno.Checked == true) { string n1; n1 = Convert.ToString(textBoxsearch.Text); ta3.Fill(dsc.Customer); int j, count1, pos1 = -1; count1 = dsc.Customer.Rows.Count; for (j = 0; j <= count1 - 1; j++) { if (dsc.Customer.Rows[j]["phone"].ToString() == n1) { pos1 = j; break; } } if (pos1 == -1) { MessageBox.Show("No Customer Record Found");
111
private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e) { Font heading = new Font("lucida handwriting", 22); Font heading1 = new Font("Bradley Hand ITC", 28,FontStyle.Bold); Font letter = new Font("times new roman", 14); Font letter1 =new Font ("times new roman",14, FontStyle.Bold); e.Graphics.DrawString("WELCOME", heading, Brushes.DarkGreen,330, 70); e.Graphics.DrawString("THE SPICY HUT", heading1, Brushes.Firebrick, 280, 120); e.Graphics.DrawImage(Image.FromFile("C:\\Documents and Settings\\Administrator\\Desktop\\FOODVILLA\\restaurant pic\\spice1.jpg"),70,60); e.Graphics.DrawImage(Image.FromFile("C:\\Documents and Settings\\Administrator\\Desktop\\FOODVILLA\\restaurant pic\\spinach1.jpg"), 650, 50); e.Graphics.DrawString("Bill No :", letter1, Brushes.Black, 100, 250); e.Graphics.DrawString(textBoxbillno.Text,letter , Brushes.Black, 180, 250); e.Graphics.DrawString("Dated :", letter1, Brushes.Black, 600, 250); e.Graphics.DrawString(textBoxdateofbilling.Text, letter, Brushes.Black, 670, 250); e.Graphics.DrawString("Sr No.", letter1, Brushes.Black, 60, 350); e.Graphics.DrawString("Item Code", letter1, Brushes.Black, 140, 350); e.Graphics.DrawString("Item Name", letter1, Brushes.Black, 250, 350); e.Graphics.DrawString("Price", letter1, Brushes.Black, 460, 350); e.Graphics.DrawString("Qauntity", letter1, Brushes.Black, 550, 350); e.Graphics.DrawString("VAT", letter1, Brushes.Black, 650, 350); e.Graphics.DrawString("Total", letter1, Brushes.Black, 740, 350); int q=400; int p; int i; for (i = 0; i <= listViewbilling.Items.Count - 1; i++) { p = q + i * 25; e.Graphics.DrawString(listViewbilling.Items[i].Text, letter, Brushes.Black, 80,
e.Graphics.DrawString(listViewbilling.Items[i].SubItems[1].Text, letter, Brushes.Black, 150, p); e.Graphics.DrawString(listViewbilling.Items[i].SubItems[2].Text, letter, Brushes.Black, 250, p); e.Graphics.DrawString(listViewbilling.Items[i].SubItems[3].Text, letter, Brushes.Black, 460, p);
p);
112
e.Graphics.DrawString(listViewbilling.Items[i].SubItems[4].Text, letter, Brushes.Black, 575, p); e.Graphics.DrawString(listViewbilling.Items[i].SubItems[5].Text, letter, Brushes.Black, 655, p); e.Graphics.DrawString(listViewbilling.Items[i].SubItems[6].Text, letter, Brushes.Black, 740, p); } i = i + 1; p = q + i * 25; e.Graphics.DrawString("Total Price :", letter1, Brushes.Black, 470, p); e.Graphics.DrawString(textBoxtotalprice.Text, letter, Brushes.Black, 700, p); i = i + 1; p = q + i * 25; e.Graphics.DrawString("Total VAT :", letter1, Brushes.Black, 470, p); e.Graphics.DrawString(textBoxtotalvat.Text, letter, Brushes.Black, 700, p); i = i + 1; p = q + i * 25; e.Graphics.DrawString("Discount :", letter1, Brushes.Black, 470, p); e.Graphics.DrawString(textBoxdiscount.Text+"%", letter, Brushes.Black, 700, p); i = i + 1; p = q + i * 25; e.Graphics.DrawString("Payable Amount :", letter1, Brushes.Black, 470, p); e.Graphics.DrawString(textBoxpayableamount.Text, letter, Brushes.Black, 700, p); i = i + 1; 920); e.Graphics.DrawString("THANKS FOR VISITING", heading, Brushes.DarkGreen, 230,
e.Graphics.DrawString("=========================================================", letter1, Brushes.Black, 100, 955); e.Graphics.DrawString("7, Block-B",letter1,Brushes.Black,365,980); e.Graphics.DrawString("The District Shopping Complex", letter1, Brushes.Black, 275, 1000); e.Graphics.DrawString("Amritsar", letter1, Brushes.Black, 375, 1025); e.Graphics.DrawString("Phone no: 0183-2509876,98765-43210", letter1, Brushes.Black, 260, 1050); } private void textBoxdiscount_TextChanged(object sender, EventArgs e) { if (textBoxdiscount.Text != "") { discount = Convert.ToDouble(textBoxdiscount.Text); discount = (discount * amountpayable) / 100; amountpayable = amountpayable - discount; textBoxpayableamount.Text = amountpayable.ToString(); } }
113
BILL PRINTING
114
115
Coding
public partial class Form3 : Form { public Form3() { InitializeComponent(); } private void Form3_Load(object sender, EventArgs e) { // TODO: This line of code loads data into the 'restdatabaseDataSet.DataTable1' table. You can move, or remove it, as needed. this.dataTable1TableAdapter.Fill(this.restdatabaseDataSet.DataTable1); } private void buttongo_Click(object sender, EventArgs e) { try { dataTable1TableAdapter.FillBy(restdatabaseDataSet.DataTable1, dateTimePicker1.Value.Day, dateTimePicker1.Value.Month, dateTimePicker1.Value.Year); dataGridView1.DataSource = restdatabaseDataSet.DataTable1; } catch (Exception ex) { MessageBox.Show(ex.Message); } } }
116
VIEW SALES
117
Coding
public partial class Sales : Form { public Sales() { InitializeComponent(); } private void Sales_Load(object sender, EventArgs e) { // TODO: This line of code loads data into the 'restdatabaseDataSet.bill_table' table. You can move, or remove it, as needed. this.bill_tableTableAdapter.Fill(this.restdatabaseDataSet.bill_table); } private void buttongo_Click(object sender, EventArgs e) { try { long p; p = Convert.ToInt64(bill_tableTableAdapter.ScalarQuery1(dateTimePicker1.Value.Day, dateTimePicker1.Value.Month, dateTimePicker1.Value.Year)); bill_tableTableAdapter.FillBy(restdatabaseDataSet.bill_table, dateTimePicker1.Value.Day, dateTimePicker1.Value.Month, dateTimePicker1.Value.Year); textBoxsales.Text = Convert.ToString(p); dataGridView1.DataSource = restdatabaseDataSet.bill_table; } catch (Exception ex) { MessageBox.Show(ex.Message); } } }
118
119
Coding
public partial class sales_graph : Form { public sales_graph() { InitializeComponent(); } private void buttongraph_Click(object sender, EventArgs e) { graph gr; gr = new graph(dateTimePicker1.Value.ToShortDateString(), dateTimePicker2.Value.ToShortDateString()); gr.Show(); } private void buttongo_Click(object sender, EventArgs e) { try { bill_table1TableAdapter.Fill(restdatabaseDataSet.bill_table1, dateTimePicker1.Value.ToShortDateString(), dateTimePicker2.Value.ToShortDateString()); } catch (Exception ex) { MessageBox.Show(ex.Message); } } }
120
VIEW GRAPH
121
Coding
public partial class graph : Form { string start, enddate; public graph(string a, string b) { start = a; enddate = b; InitializeComponent(); } private void graph_Load(object sender, EventArgs e) { restdatabaseDataSet ds = new restdatabaseDataSet(); restdatabaseDataSetTableAdapters.bill_table1TableAdapter ta = new restdatabaseDataSetTableAdapters.bill_table1TableAdapter(); ta.Fill(ds.bill_table1, start, enddate); chart1.DataSource = ds.bill_table1; chart1.Series[0].XValueMember = "dateofbilling"; chart1.Series[0].YValueMembers = "total_sales";
122
123
Coding
public partial class tax : Form { public tax() { InitializeComponent(); } private void radioButtonmonth_CheckedChanged(object sender, EventArgs e) { if (radioButtonmonth.Checked == true) { label3.Text = "Enter Month :"; label3.Visible = true; } else { label3.Text = "Enter Year :"; label3.Visible = true; } } private void buttongo_Click(object sender, EventArgs e) { try { if (radioButtonmonth.Checked == true) { long p; p = Convert.ToInt64(bill_tableTableAdapter.ScalarQuery2(dateTimePicker1.Value.Month, dateTimePicker1.Value.Year)); bill_tableTableAdapter.FillBy1(restdatabaseDataSet.bill_table, dateTimePicker1.Value.Month, dateTimePicker1.Value.Year); textBoxtotalvat.Text = Convert.ToString(p); dataGridView1.DataSource = restdatabaseDataSet.bill_table; } else { long q; q = Convert.ToInt64(bill_tableTableAdapter.ScalarQuery3(dateTimePicker1.Value.Year)); bill_tableTableAdapter.FillBy2(restdatabaseDataSet.bill_table, dateTimePicker1.Value.Year); textBoxtotalvat.Text = Convert.ToString(q); dataGridView1.DataSource = restdatabaseDataSet.bill_table; } } catch (Exception ex) { MessageBox.Show(ex.Message); } } private void tax_Load(object sender, EventArgs e) { // TODO: This line of code loads data into the 'restdatabaseDataSet.bill_table' table. You can move, or remove it, as needed. this.bill_tableTableAdapter.Fill(this.restdatabaseDataSet.bill_table); } }
124
125
126
127
Conclusion
In our Project entitled RESTAURANT MANAGEMENT SYSTEM we have tried our best to fulfill all the requirements of restaurant. The project being simple and flexible is running successfully. The main advantage of our project is that its simplicity attracts a lot of users. It can be easily run by a novice user. Our software can be used in any kind of restaurant (Bar, Sandwich Shop, Pizzeria, Steak House, Caf Shop, Deli, Buffet, and Catering business, Doughnut or Pastry Shop, Hotel restaurant/kitchen and more). The Restaurant Management System helps the restaurant manager to manage the restaurant more effectively and efficiently by computerizing meal ordering, billing and inventory control. The system processes transaction and stores the resulting data. Reports will be generated from these data which help the manager to make appropriate business decisions for the restaurant. For example, knowing the number of customers for a particular time interval, the manager can decide whether more waiters and chefs are required. This project when implemented it will remove all the security issues. Also, there will be speedy and secured authentication procedure for the maintenance of records. Data entry is fast and simple because it automatically picks up information about a customer from the database on subsequent visits. Therefore, our software will definitely prove to be a successful stepping stone in replacing the outdated manual method of maintaining secure records. The work plan also includes the detailed features of the technology used in the project defining the front end and back end. The objectives and scope of the project in future have been elaborated.
128
BIBLIOGRAPHY
129
Bibliography
Books SQL Notes .NET Notes Visual Basic 2010 Black Book By Steven Holzner Teach Yourself T-SQL 21 days Beginning Visual Basic 2010 By Thearon Willis, Bryan Newsome
130
(O_0)Abee(0_O)