Tải bản đầy đủ (.doc) (27 trang)

Báo cáo đồ án Thiết Kế Website Bán Điện Thoại Di Động Online

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (893.7 KB, 27 trang )


TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT VINH
KHOA CÔNG NGHỆ THÔNG TIN
BỘ MÔN LẬP TRÌNH PHP
***
ĐỒ ÁN MÔN HỌC
MÔN HỌC
THIẾT KẾ WEBSITE
Tên đề tài: Thiết Kế Website Bán Điện Thoại Online
Nhóm sinh viên: 1. Phạm Văn Trọng
2. Đức Minh Tường
Lớp: CĐ Tin K37
Giáo viên hướng dẫn: Lê Văn Vinh
Nghệ An, ngày 8 tháng 4 năm 2014
TRƯỜNG ĐHSPKT VINH
KHOA CNTT
BỘ MÔN LẬP TRÌNH PHP
CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc Lập-Tự Do-Hạnh Phúc
PHIẾU GIAO ĐỒ ÁN MÔN HỌC
MÔN HỌC:THIẾT KẾ WEBSITE
Nhóm Sinh Viên:
Stt Họ Và Tên SĐT Email
1 Phạm Văn Trọng 0975852693
2 Đức Minh Tường 01658559995
Lớp : CĐ Tin K37 : Cao Đẳng Công nghệ thông tin K37
Ngày giao đề tài : 22/3/2014 Ngày hoàn thành:9/4/2014
1.Tên đề tài: Thiết Kế Website Bán Điện Thoại Di Động Online.
2. Báo cáo và chương trình:
- Báo cáo thuyết minh trình bày theo mẫu (đã cho).
- Chương trình: ghi vào đĩa CD để nạp.


PHẦN THEO DÕI QUÁ TRÌNH THỰC HIỆN ĐỒ ÁN
Ngày kiểm tra Tiến độ công việc Nhận xét của GVHD Chứ kỹ của GVHD
3. Điểm hướng dẫn ( điểm chữ và điểm số )
………………………………………………………………………………………………
………………………………………………………………………………………………
4.Đồng ý cho bảo vệ hay không đồng ý:
………………………………………………………………………………………
………………………………………………………………………………………
TỔ TRƯỞNG BỘ MÔN: GIÁO VIÊN HD NHÓM SINH VIÊN:
Lê Văn Vinh Phạm Văn Trọng
Đức Minh Tường
NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
………………………………………………………………………………………………
…………………………………………………………………………………………
Vinh, Ngày 1 tháng 1 năm 2014
Giáo viên hướng dẫn
(Ký ghi rõ họ tên )
LỜI NÓI ĐẦU
Ngành công nghệ thông tin là một ngành khoa học đang trên đà phát
triển mạnh và ứng dụng rộng rãi trên nhiều lĩnh vực. Cùng với xu hướng phát
triển của các phương tiện truyền thông như Báo, Radio… thì việc sử dụng
Internet ngày càng phổ biến. Truy cập Internet, chúng ta có được một kho
thông tin khổng lồ phục vụ mọi nhu cầu, mục đích của chúng ta chỉ bằng một
cái nhấp chuột.
Nhận thức được nhu cầu tìm hiểu thông tin, giải trí của xã hội, là sự ra
đời của hàng loạt website cho các mục đích thương mại, giải trí, tin tức…Để
đáp ứng nhu cầu mua sắm hàng ngày của con người… thì website bán hàng

trực tuyến online là một nhu cầu tất yếu. Do đó, chúng em đã vận dụng ngôn
ngữ PHP, MySQL và công cụ Dreamweaver để xây dựng ứng dụng Website
Bán Điện Thoại Di Động Online.
Hoàn thành xong để tài, chúng em vô cùng biết ơn thầy, cô đã nhiệt
tình giảng dạy, hướng dẫn và đặc biệt là thầy Lê Văn Vinh, người trực tiếp
hướng dẫn nhiệt tình cho chúng em trong suốt quá trình nghiên cứu và thực
hiện đề tài này.
Chúng em xin chân thành cảm ơn !!!
Vinh, Ngày 1 tháng 1 năm 2014
Nhóm SV: Phạm Văn Trọng
Đức Minh Tường
Lớp : CĐ Tin K37
CHƯƠNG 1: PHÂN TÍCH BÀI TOÁN
1.1. Tên đề tài :Cài đặt ứng dụng Quản Lý Nhân Sự
1.2. Yêu cầu đặt ra:
1.2.1. Tạo cơ sở dữ liệu
Gồm các bảng:
- NHANSU(Mans, Hovaten, Ngaysinh, Gioitinh, Quequan, Dienthoai,
Madtoc, Macv, TrinhdoID, Mapb)
- DANTOC(Madtoc, Tendtoc)
- CHUCVU(Macv, Tencv, Phucapcv)
- TRINHDO(TrinhdoID, Tentrinhdo)
- PHONGBAN(Mapb, Tenpb)
- LUONG(Mans, Luongcb, Phucapcv, Thuclinh);
1.2.2. Thiết kế các Form thực hiện các yêu cầu sau:
1.Cho phép cập nhật dữ liệu lên các bảng NHANSU, LUONG
2.Tạo form cập nhật thông tin nhân viên.
3.Tạo Form tìm kiếm nhân sự theo Mans, Hovaten
4. Tạo Form In ra danh sách nhân viên.
5.Thiết kế Form MID gọi tới các form trên

1.3. Công cụ phát triển:
- Hệ điều hành windows
- Công cụ lập trình: Microsoft Visual Studio 2010
- Cơ sở dữ liệu : Microsoft SQL Server 2008
- Ngôn ngữ lập trình: C#
CHƯƠNG 2: THIẾT KẾ HỆ THỐNG
2.1. Các bảng cơ sở dữ liệu:
- NHANSU(Mans, Hovaten, Ngaysinh, Gioitinh, Quequan, Dienthoai,
Madtoc, Macv, TrinhdoID, Mapb)
- DANTOC(Madtoc, Tendtoc)
- CHUCVU(Macv, Tencv, Phucapcv)
- TRINHDO(TrinhdoID, Tentrinhdo)
- PHONGBAN(Mapb, Tenpb)
- LUONG(Mans, Luongcb, Phucapcv, Thuclinh);
+Với bảng NHANSU
Tên thuộc tính Kiểu Chiều dài Ràng buộc Diễn giải
Mans NVARCHAR 50 Not Null Mã Nhân Sự
Hovaten NVARCHAR 50 Null Họ và Tên
Ngaysinh DATE 50 Null Ngày Sinh
Gioitinh NVARCHAR 50 Null Giới Tính
Quequan NVARCHAR 50 Null Quê Quán
Dienthoai NVARCHAR 50 Null Điện Thoại
Madtoc NVARCHAR 50 Null Mã Dân Tộc
Macv NVARCHAR 50 Null Mã Chức Vụ
TrinhdoID NVARCHAR 50 Null Trình Độ ID
Mapb NVARCHAR 50 Null Mã Phòng Ban
+ Bảng DANTOC:
Tên thuộc tính Kiểu Chiều dài Ràng buộc Diễn giải
Madtoc NVARCHAR 50 Not Null Mã Dân Tộc
Tendtoc NVARCHAR 50 Null Tên Dân Tộc

+ Bảng CHUCVU:
Tên thuộc tính Kiểu Chiều dài Ràng buộc Diễn giải
Macv NVARCHAR 50 Not Null Mã Chức Vụ
Tencv NVARCHAR 50 Null Tên Chức Vụ
Phucapcv NVARCHAR 50 Null Phụ Cấp CV
+ Bảng TRINHDO:
Tên thuộc tính Kiểu Chiều dài Ràng buộc Diễn giải
TrinhdoID NVARCHAR 50 Not Null Trình Độ ID
Tentrinhdo NVARCHAR 50 Null Tên Trình Độ
+ Bảng PHONGBAN:

Tên thuộc tính Kiểu Chiều dài Ràng buộc Diễn giải
Madtoc NVARCHAR 50 Not Null Mã Dân Tộc
Tendtoc NVARCHAR 50 Null Tên Dân Tộc
+ Bảng LUONG:
Tên thuộc tính Kiểu Chiều dài Ràng buộc Diễn giải
Mans NVARCHAR 50 Not Null Mã Nhân Sự
Luongcb NVARCHAR 50 Null Lương Cơ Bản
Phucapcv NVARCHAR 50 Null Phụ Cấp CV
Thuclinh NVARCHAR 50 Null Thực Lĩnh
2.2. Sơ đồ dữ liệu kết nối giữa các bảng:
Hình 2.1 : Sơ đồ kết nối giữa các bảng
2.3. Xây dựng form :
2.3.1. Form Main :
Ràng Buộc hệ thống:
• DataGridview hiển thị thông tin của nhân sự
• MenuStrip là đường dẫn đến các form con.
2.3.2. Form Cập Nhật Thông Tin và Tìm Kiếm Nhân Viên
Ràng buộc hệ thống
• DataGridview hiển thị thông tin của nhân sự

• Khi click button Xóa , thông tin nhân viên sẽ được xoá .
• Khi click button Thêm , Thông Tin Nhân viên được thêm vào
2.3.3. Form In ấn
2.4. Các công cụ dùng để xây dựng chương trình”Quản Lý Giáo Viên”
2.4.1. SQL server 2008
SQL server 2008 là một hệ thống quản lý cơ sở dữ liệu sử dụng Transact- SQL để
trao đổi dữ liệu giữa Client computer và SQL server computer.
SQL server 2008 được tối ưu để có thể chạy trên môi trường cơ sở dữ liệu rất lớn
lên đến Tera-Byte và có thể phục vụ cùng lúc cho hàng ngàn user. SQL server 2008
có thể kết hợp “ăn ý” với các server khác như Microsoft Information Server(IIS),
Proxy server…
Để tạo một database chúng ta thiết lập các thông tin cần thiết rồi ấn conect sẽ xuất
hiện giao diện:
Ta ấn chuột phải lên database chọn newdatabase và tạo cở sở dữ liệu
2.4.2. Tìm hiểu về Microsoft Visual Studio 2010:
Phiên bản Visual Studio 2010 hỗ trợ các ngôn ngữ lập trình hướng đối tượng mới
như C#, J#, VB.Net, C++.Net, Visual Studio 2010 là bộ công cụ phát triển phần
mềm tích hợp mạnh mẽ với những tính năng:
Thiết kế giao diện, hỗ trợ viết mã: Visual Studio 2010 có khả năng sử dụng lại các
đoạn mã mẫu. Không những thế Visual Studio 2010 cho phép tạo ứng dụng với giao
diện giống của Outlook
2.4.2.1. Thuộc tính, phương thức và sự kiện
• Đối tượng
Đối tượng là những thành phần tạo nên giao diện người sử dụng cho ứng dụng.
Các điều khiển là những đối tượng. Những nới chứa (container) như biểu mẫu
(Form), khung (frame), hay hộp ảnh (picture box) cũng là một đối tượng.
Visual Studio 2010 hỗ trợ một cách lập trình tương đối mới là lập trình hướng đối
tượng ( Object Oriented Programming).
• Thuộc tính
Nói một cách đơn giản, thuộc tính (properties) mô tả đối tượng.

Mỗi đối tượng đều có một bộ thuộc tính mô tả đối tượng. Biểu mẫu và đIều khiển
đều có thuộc tính. Thậm chí, màn hình và máy in, là những đối tượng chỉ cho phép
can thiệp lúc thi hành, cũng có thuộc tính. Ví dụ: vị trí và kích cỡ của biểu mẫu trên
màn hình được xác định trong các thuộc tính Left, Top, Height và Width. Màu nền
của biểu mẫu được quy định trong thuộc tính BackColor. Thuộc tính BorderStyle
quyết định người sử dụng có thể co giãn cửa sổ được hay không.
Mặc dù mỗi đối tượng có những bộ thuộc tính khác nhau, nhưng trong đó, vẫn có
một số thuộc tính thông dụng cho hầu hết các đIều khiển.
Các thuộc tính thông dụng
Thuộc tính Giải thích
Left Vị trí cạnh trái của điều khiển so với vật chứa nó.
Top Vị trí cạnh trên của điều khiển so với vật chứa nó.
Height Chiều cao của điều khiển.
Width Chiều rộng của điều khiển.
Name Một giá trị chuỗi được dùng để nói đến điều khiển.
Enabled
Giá trị logic (True hoặc False) quyết định người sử dụng có
được làm việc với điều khiển hay không.
Visible
Giá trị logic (True hoặc False) quyết định người sử dụng có
thấy điều khiển hay không.
Một thuộc tính quan trọng khác là BorderStyle, quyết định thành phần của cửa
sổ (như thanh tiêu đề, nút Phóng to, nút Thu nhỏ, ) mà một biểu mẫu sẽ có.
• Phương thức
Là những đoạn chương trình chứa trong đIều khiển, cho đIều khiển biết cách
thức để thể hiện một công việc nào đó, chẳng hạn dời đIều khiển đến một vị trí mới
trên biểu mẫu. Tương tự thuộc tính, mỗi đIều khiển có những phương thức khác
nhau, nhưng vẫn có một số phương thức rất thông dụng cho hầu hết các đIều khiển.
Các phương thức thông dụng
Phương thức GiảI thích

Move Thay đổi vị trí một đối tượng theo yêu cầu của chương trình.
Drag Thi hành hoạt động kéo và thả của người sử dụng.
SetFocus Cung cấp tầm ngắm cho đối tượng được chỉ ra trong lệnh gọi
phương thức.
Zorder Quy đnh thứ tự xuất hiện của các đIều khiển trên màn hình.
• Sự kiện
Nếu như thuộc tính mô tả đối tượng, phương thức chỉ ra cách thức đối tượng hành
động thì sự kiện là những phản ứng của đối tượng. Ví dụ khi người sử dụng nhấn
vào nút lệnh, nhiều sự kiện xảy ra: nút chuột được nhấn, CommandBotton trong
ứng dụng được nhấn, sau đó, nút chuột được thả. Ba hoạt động này tương đương
với ba sự kiện: MouseDown, Click và MouseUp. Đồng thời, hai sự kiện GotFocus
và LostFocus của CommnadButton cũng xảy ra.
Tương tự thuộc tính và phương thức, mỗi đIều khiển có những bộ sự kiện khác
nhau, nhưng một số sự kiện rất thông dụng với hầu hết các đIều khiển. Các sự kiện
này xảy ra thường là kết qủa của một hành động nào đó, như là di chuyển chuột,
nhấn nút bàn phím, hoặc gõ vào hộp văn bản. Kiểu sự kiện này được gọi là sự kiện
khởi tạo bởi người sử dụng, và ta sẽ phải lập trình cho chúng.
Các sự kiện thông dụng
Sự kiện Xảy ra khi
Change Người sử dụng sửa đổi chuỗi kí tự trong hộp kết hợp (combobox)
hoặc hộp văn bản (textbox).
Click Người sử dụng sử dụng nút chuột để nhấn lên đối tượng.
DblClick Người sử dụng sử dụng nút chuột để nhấn đúp lên đối tượng.
DragDrop Người sử dụng kéo lê một đối tượng sang nơI khác.
DragOver Người sử dụng kéo lê một đối tượng ngang qua một đIều khiển
khác.
GotFocus Đưa một đối tượng vào tầm ngắm của người sử dụng.
KeyDown Người sử dụng nhấn một nút trên bàn phím trong khi một đối
tượng đang trong tầm ngắm.
KeyPress Người sử dụng nhấn và thả một nút trên bàn phím trong khi một

đối tượng đang trong tầm ngắm.
KeyUp Người sử dụng thả một nút trên bàn phím trong khi một đối tượng
đang trong tầm ngắm.
LostFocus Đưa một đối tượng ra khỏi tầm ngắm.
MouseDown Người sử dụng nhấn một nút chuột bất kì trong khi con trỏ chuột
đang nằm trên một đối tượng
MouseMove Người sử dụng di chuyển con trỏ chuột ngang qua một đối tượng.
MouseUp Người sử dụng thả nút chuột trong khi con trỏ chuột đang nằm trên
một đối tượng.
2.4.3. Tìm hiểu về ngôn ngữ C#:
C# bao gồm tất cả những hỗ trợ cho cấu trúc, thành phần component, lập trình
hướng đối tượng. Những tính chất đó hiện diện trong một ngôn ngữ lập trình hiện
đại. Và ngôn ngữ C# hội đủ những điều kiện như vậy, hơn nữa nó được xây dựng
trên nền tảng của hai ngôn ngữ mạnh nhất là C++ và Java
C# là ngôn ngữ hướng đối tượng
C# hỗ trợ tất cả những đặc tính của ngôn ngữ hướng đối tượng là:
- Sự đóng gói (encapsulation)
- Sự kế thừa (inheritance)
- Đa hình (polymorphism)
C# là ngôn ngữ mạnh mẽ và mềm dẻo
- Với ngôn ngữ C#, chúng ta chỉ bị giới hạn ở chính bản thân của chúng ta.
Ngôn ngữ này không đặt ra những ràng buộc lên những việc có thể làm.
- C# được sử dụng cho nhiều dự án khác nhau như: tạo ra ứng dụng xử lý văn
bản, ứng dụng đồ họa, xử lý bảng tính; thậm chí tạo ra những trình biên dịch cho
các ngôn ngữ khác.
- C# là ngôn ngữ sử dụng giới hạn những từ khóa. Phần lớn các từ khóa dùng
để mô tả thông tin, nhưng không gì thế mà C# kém phần mạnh mẽ. Chúng ta có thể
tìm thấy rằng ngôn ngữ này có thể được sử dụng để làm bất cứ nhiệm vụ nào.
C# là ngôn ngữ hướng module
- Mã nguồn của C# được viết trong Class (lớp). Những Class này chứa các

Method(phương thức) thành viên của nó.
- Class (lớp) và các Method (phương thức) thành viên của nó có thể được sử
dụng lại trong những ứng dụng hay chương trình khác.
C# sẽ trở nên phổ biến
C# mang đến sức mạnh của C++ cùng với sự dễ dàng của ngôn ngữ Visual
Basic.
2.4.4. Danh mục công cụ và chức năng sử dụng trong xây dựng hệ thống:
- Lable: Hiển thị chuỗi ký tự không thay đổi trên form (nhãn)
- TextBox: Hiển thị nội dung, thay đổi được
- Groupbox: Tạo ra một nhóm
- Menustrip: Tạo menu
- Combobox: Dùng để hiện thị một danh sách các lựa chọn hoặc nhập vào một giá
trị
- Checkbox: Dùng để lựa chọn 1 hoặc nhiều nhóm thông tin
- RadioButton: Dùng để chọn 1 trong số các nhóm thông tin
- TabControl: Tạo thành các Tab thông tin khác nhau.
- ReportViewer: In danh sách dữ liệu
- Button: Dùng để thực hiển 1 thao tác nào đó
- Datagridview: Hiển thị các Table lên lưới
CHƯƠNG 3: XÂY DỰNG HỆ THỐNG
3.1. Menu Hệ Thống
Form này giúp cho người dùng có thể đăng nhập vào tài khoản của mình để làm
việc và có một số quyền do SuperAdmin cung cấp. Khi nhập đầy đủ thông tin, hệ
thống sẽ kiểm tra và phân chức năng theo người dùng đó. Giúp cho người dùng có
thể bảo vệ được dữ liệu của mình không bị người khác phá hoại.
Code :
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;

using System.Data.SqlClient;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace DOAN
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
SqlConnection con = new SqlConnection(@"Data
Source=TRONG\SQLEXPRESS;Initial Catalog=QLNS;Integrated Security=True");
private void ketnoicsdl()
{
con.Open();
string sql = "select * from NHANSU";
SqlCommand com = new SqlCommand(sql, con);
com.CommandType = CommandType.Text;
SqlDataAdapter da = new SqlDataAdapter(com);
DataTable dt = new DataTable();
da.Fill(dt);
dataGridView1.DataSource = dt;
con.Close();
}
private void txtNS_FormatDate(object sender, ConvertEventArgs e)
{
if (e.DesiredType != typeof(string)) return;

if (e.Value.GetType() != typeof(DateTime)) return;
DateTime dt = (DateTime)e.Value;
e.Value = dt.ToShortDateString();
}
private void txtNS_ParseDate(object sender, ConvertEventArgs e)
{
if (e.DesiredType != typeof(DateTime)) return;
if (e.Value.GetType() != typeof(string)) return;
string value = (string)e.Value;
try
{
e.Value = DateTime.Parse(value);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
private void Loaddata()
{
txtMNS.DataBindings.Clear();
txtMNS.DataBindings.Add("Text", dataGridView1.DataSource, "Mans");
txtHVT.DataBindings.Clear();
txtHVT.DataBindings.Add("Text", dataGridView1.DataSource, "Hovaten");
txtNS.DataBindings.Clear();
Binding b = new Binding("Text", dataGridView1.DataSource, "Ngaysinh");
b.Format += new ConvertEventHandler(this.txtNS_FormatDate);
b.Parse += new ConvertEventHandler(this.txtNS_ParseDate);
txtNS.DataBindings.Add(b);


txtGT.DataBindings.Clear();
txtGT.DataBindings.Add("Text",dataGridView1.DataSource, "Gioitinh");
txtQQ.DataBindings.Clear();
txtQQ.DataBindings.Add("Text", dataGridView1.DataSource, "Quequan");
txtSDT.DataBindings.Clear();
txtSDT.DataBindings.Add("Text", dataGridView1.DataSource, "Dienthoai");
txtDT.DataBindings.Clear();
txtDT.DataBindings.Add("Text", dataGridView1.DataSource, "Madtoc");
txtCV.DataBindings.Clear();
txtCV.DataBindings.Add("Text", dataGridView1.DataSource, "Macv");
txtTD.DataBindings.Clear();
txtTD.DataBindings.Add("Text", dataGridView1.DataSource, "TrinhdoID");
txtPB.DataBindings.Clear();
txtPB.DataBindings.Add("Text", dataGridView1.DataSource, "Mapb");
}
private void Form1_Load(object sender, EventArgs e)
{
ketnoicsdl();
Loaddata();
}
private void dataGridView1_SelectionChanged(object sender, EventArgs e)
{
try
{
dataGridView1.CurrentRow.Selected = true;
}
catch
{
}
}

private void cậpNhậtThôngTinNhânViênToolStripMenuItem_Click(object sender,
EventArgs e)
{
NhapNhanSu nns = new NhapNhanSu();
nns.ShowDialog();
}
private void inẤnToolStripMenuItem1_Click(object sender, EventArgs e)
{
baocaocs a = new baocaocs();
a.Show();

}
}
}
3.2. Menu Cập Nhật Thông Tin Nhân Sự
Form này giúp người có quyền cao nhất ( SA) cung cấp, sửa đổi tài khoản cho
user.
Code:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Businesslogic;
namespace DOAN
{

public partial class NhapNhanSu : Form
{
public NhapNhanSu()
{
InitializeComponent();
}
SqlConnection con = new SqlConnection(@"Data
Source=TRONG\SQLEXPRESS;Initial Catalog=QLNS;Integrated Security=True");
Lop lop1 = new Lop();

private void NhapNhanSu_Load(object sender, EventArgs e)
{
DataTable dt = new DataTable();
dt = lop1.Show();
nHANSUDataGridView.DataSource = dt;
btnluu.Enabled = false;
btnHuy.Enabled = false;
}
int flag;
private void btnThem_Click(object sender, EventArgs e)
{
flag = 1;
txtMNS.Clear();
txtHVT.Clear();
txtQQ.Clear();
txtDT.Clear();
txtSDT.Clear();
btnThem.Enabled = false;
btnSua.Enabled = false;
btnXoa.Enabled = false;

btnluu.Enabled = true;
btnHuy.Enabled = true;
}
private void btnSua_Click(object sender, EventArgs e)
{
flag = 0;
btnThem.Enabled = false;
btnSua.Enabled = false;
btnXoa.Enabled = false;
btnluu.Enabled = true;
btnHuy.Enabled = true;
}
private void btnXoa_Click(object sender, EventArgs e)
{
if (this.txtMNS.TextLength == 0)
{
MessageBox.Show("Phải có dữ liệu để xóa ", "Thông báo");
}
else
{
lop1.Delete(txtMNS.Text);
MessageBox.Show("Bạn đã xóa" + txtMNS.Text + " thành công ", "Thông
báo");
NhapNhanSu_Load(sender, e);
btnThem.Enabled = true;
btnSua.Enabled = true;
btnXoa.Enabled = true;
txtMNS.Clear();
txtHVT.Clear();
cboGT.Refresh();

txtQQ.Clear();
txtSDT.Clear();
txtDT.Clear();
cboCV.Refresh();
cboTD.Refresh();
cboPB.Refresh();
}
}

private void btnEdit_Click_1(object sender, EventArgs e)
{
if (flag == 1)
{
if (this.txtMNS.TextLength == 0)
{
MessageBox.Show("Mã Nhân Sự không được bỏ trống", "Thông Báo");
}
else
if (this.txtHVT.TextLength == 0)
{
MessageBox.Show("Họ Tên không được bỏ trống", "Thông báo");
}
else
if (this.cboGT.Text == "")
{
MessageBox.Show("Giới Tính không được bỏ trống", "Thông Báo");
}
else
if (this.txtQQ.TextLength == 0)
{

MessageBox.Show("Quê Quán không được bỏ trống", "Thông Báo");
}
else
if (this.txtSDT.TextLength == 0)
{
MessageBox.Show("Số Điện Thoại không được bỏ trống",
"Thông báo");
}
else
if (this.cboTD.Text == "")
{
MessageBox.Show("Dân Tộc không được bỏ trống", "Thông
báo");
}
else
if (this.cboCV.Text == "")
{
MessageBox.Show("Chức Vụ không được bỏ trống",
"Thông báo");
}
else
if (this.cboPB.Text =="")
{
MessageBox.Show("Phòng Ban không được vượt quá 5
ký tự", "Thông báo");
}
else
if (this.txtMNS.TextLength > 5)
{
MessageBox.Show("Mã nhân sự không được vượt quá

5 ký tự", "Thông báo");
}

else
{
try
{

{

lop1.Insert(this.txtMNS.Text,this.txtHVT.Text,this.txtngaysinh.Value,this.cboGT.Text,this
.txtQQ.Text,this.txtSDT.Text,this.txtDT.Text,this.cboTD.Text,this.cboCV.Text,this.cboPB
.Text);
MessageBox.Show("Bạn đã thêm mã phiếu " +
txtMNS.Text + " thành công ", "Thông báo");
NhapNhanSu_Load(sender, e);
btnThem.Enabled = true;
btnSua.Enabled = true;
btnXoa.Enabled = true;
txtMNS.Clear();
txtHVT.Clear();
cboGT.Refresh();
txtQQ.Clear();
txtSDT.Clear();
txtDT.Clear();
cboCV.Refresh();
cboTD.Refresh();
cboPB.Refresh();
}
}

catch
{
MessageBox.Show("Mã phiếu " + txtMNS.Text + " đã tồn
tại ", "Thông báo");
btnluu.Enabled = false;
btnHuy.Enabled = false;
btnThem.Enabled = true;
btnSua.Enabled = true;
btnXoa.Enabled = true;
}
}
}
//sua du lieu
else if(flag==0)
{
if (this.txtMNS.TextLength == 0)
{
MessageBox.Show("Mã nhân sự không được bỏ trống", "Thông Báo");
}
else
if (this.txtHVT.TextLength == 0)
{
MessageBox.Show("Họ và tên không được bỏ trống", "Thông Báo");
}
else
if (this.cboGT.Text == "")
{
MessageBox.Show("Giới Tính không được bỏ trống", "Thông Báo");
}
else

if (this.txtQQ.TextLength == 0)
{
MessageBox.Show("Quê quán không được bỏ trống", "Thông báo");
}
else
if (this.txtSDT.TextLength == 0)
{
MessageBox.Show("Số điện thoại không được bỏ trống", "Thông
báo");
}
else
if (this.cboTD.Text == "")
{
MessageBox.Show("Dân Tộc không được bỏ trống", "Thông
báo");
}
else
if (this.cboCV.Text =="")
{
MessageBox.Show("Chức vụ không được bỏ trống", "Thông
báo");
}
else
if (this.cboPB.Text == "")
{
MessageBox.Show("Phòng Ban không được bỏ trống",
"Thông báo");
}
else
if (this.txtMNS.TextLength >5)

{
MessageBox.Show("Mã nhân sự không được vượt quá 5
ký tự", "Thông báo");
}

else
{
try
{
lop1.Update(mans1,this.txtMNS.Text, this.txtHVT.Text,
this.txtngaysinh.Value , this.cboGT.Text, this.txtQQ.Text, this.txtSDT.Text,
this.txtDT.Text, this.cboTD.Text, this.cboCV.Text, this.cboPB.Text);
MessageBox.Show("Bạn đã sửa thành công", "Thông
báo");
NhapNhanSu_Load(sender, e);
btnThem.Enabled = true;
btnSua.Enabled = true;
btnXoa.Enabled = true;
txtMNS.Clear();
txtHVT.Clear();
cboGT.Refresh();
txtQQ.Clear();
txtSDT.Clear();
txtDT.Clear();
cboCV.Refresh();
cboTD.Refresh();
cboPB.Refresh();

}
catch

{
MessageBox.Show("Dữ liệu đã tồn tại ", "Thông báo");
btnluu.Enabled = false;
btnHuy.Enabled = false;
btnThem.Enabled = true;
btnSua.Enabled = true;
btnXoa.Enabled = true;
}
}
}
}
string mans1;
private void nHANSUDataGridView_RowEnter(object sender,
DataGridViewCellEventArgs e)
{
int dong;
dong=e.RowIndex;
this.txtMNS.Text =
nHANSUDataGridView.Rows[dong].Cells[0].Value.ToString();
mans1 = nHANSUDataGridView.Rows[dong].Cells[0].Value.ToString();
this.txtHVT.Text =
nHANSUDataGridView.Rows[dong].Cells[1].Value.ToString();
this.txtngaysinh.Text =
nHANSUDataGridView.Rows[dong].Cells[2].Value.ToString();
this.cboGT.Text = nHANSUDataGridView.Rows[dong].Cells[3].Value.ToString();
this.txtQQ.Text = nHANSUDataGridView.Rows[dong].Cells[4].Value.ToString();
this.txtSDT.Text =
nHANSUDataGridView.Rows[dong].Cells[5].Value.ToString();
this.txtDT.Text = nHANSUDataGridView.Rows[dong].Cells[6].Value.ToString();
this.cboTD.Text = nHANSUDataGridView.Rows[dong].Cells[8].Value.ToString();

this.cboCV.Text = nHANSUDataGridView.Rows[dong].Cells[7].Value.ToString();
this.cboPB.Text = nHANSUDataGridView.Rows[dong].Cells[9].Value.ToString();
}
private void btntimkiem_Click(object sender, EventArgs e)
{
if (flag == 12)
{
if (this.txttimkiem.TextLength == 0)
{
MessageBox.Show("Thông tin tìm kiếm không được bỏ trống", "THÔNG
BÁO");
}
else
{
DataTable dt = new DataTable();
dt= lop1.Timkiem(this.txttimkiem.Text);
nHANSUDataGridView.DataSource=dt;
if (dt.Rows.Count == 0)
{
this.statut.ForeColor = Color.Red;
this.statut.Text = "Không tìm thấy dữ liệu";
}
else
this.statut.ResetText();


}
}
else if (flag == 21)
{

if (this.txttimkiem.TextLength == 0)
{
MessageBox.Show("Thông tin tìm kiếm không được bỏ trống", "THÔNG
BÁO");
}
else
{
DataTable dt = new DataTable();
dt = lop1.Timkiem(this.txttimkiem.Text);
nHANSUDataGridView.DataSource = dt;
if (dt.Rows.Count == 0)
{
this.statut.ForeColor = Color.Red;
this.statut.Text = "Không tìm thấy dữ liệu";
}
else
this.statut.ResetText();
}
}
}
private void btnthoat_Click(object sender, EventArgs e)
{
this.Close();
}
private void btnHuy_Click(object sender, EventArgs e)
{
txtMNS.Clear();
txtHVT.Clear();
txtQQ.Clear();
txtSDT.Clear();

txtDT.Clear();
}
private void nHANSUDataGridView_SelectionChanged(object sender, EventArgs e)
{
try
{
dataGridView1.CurrentRow.Selected = true;
}
catch
{
}
}
}
}
3.3 Sau khi ấn nút in, form in sẽ là:
Cho phép user in ra thông tin chi tiết về giờ dạy cũng như tổng số giờ dạy
của giáo viên đó.
Code :
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace DOAN
{
public partial class baocaocs : Form
{

public baocaocs()
{
InitializeComponent();
}
private void baocaocs_Load(object sender, EventArgs e)
{

this.NHANSUTableAdapter.Fill(this.QLNSDataSet1.NHANSU);

this.rptbaocao.RefreshReport();
}
}
}

×