Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 115 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
115
Dung lượng
1,65 MB
Nội dung
Chuyên đề thực tập tốt nghiệp - Lời cảm ơn Sau thời gian học tập nghiên cứu dới mái trờng Đại học Kinh tế quốc dân, em đà đợc thầy cô giáo trờng đặc biệt thầy, cô giáo khoa Tin học kinh tế đà dẫn dắt bảo tận tình Những kiến thức mà thầy cô đà truyền đạt cho em hành trang cho em vững bớc sau trờng Em xin bày tỏ lòng biết ơn sâu sắc tới thầy cô Em xin chân thành cảm ơn sâu sắc thầy cô khoa Tin học kinh tế, thầy cô đà truyền đạt cho em kiến thức chuyên môn để em tự tin bớc vào sống nghề nghiệp tơng lai Em xin chân thành cảm ơn thầy giáo ThS Trần Công Uẩn ngời đà trực tiếp hớng dẫn giúp đỡ em trình hoàn thành chuyên đề thực tập Cuối em xin cảm ơn Ban lÃnh đạo toàn thành viên Công ty cổ phần phần mềm Việt - VietSoftware đà tạo điều kiện cho em đợc thực tập hớng dẫn em thời gian thực tập công ty Hà nội, ngày 03 tháng 05 năm 2006 SINH VIÊN Đào Việt Cờng SV Đào Việt Cường – Tin học kinh tế 44 B Trang Chuyên đề thực tập tốt nghiệp - Lời mở đầu Thế kû 21 - thÕ kû cđa sù bïng nỉ c«ng nghệ thông tin, công nghệ tiên tiến phát triển nh vị b·o, mang mét lng giã míi thỉi vµo nhận thức ngời Song song đó, giới xu toàn cầu hóa, tất mang ý nghĩa hội nhập Lúc này, doanh nghiệp không cạnh tranh với doanh nghiệp quốc gia mà cạnh tranh với doanh nghiệp khắp giới Vì thế, để tồn phát triển, mục tiêu mà doanh nghiệp hớng đến nâng cao chất lợng dịch vụ khách hàng Khách hàng yếu tố sống doanh nghiệp kỷ 21 Để có khách hàng đà khó, để giữ khách hàng khó nhiều Doanh nghiệp làm cho khách hàng thỏa mÃn, doanh nghiệp phát triển tốt Trong doanh nghiệp dịch vụ vận tải hành khách nói chung cụ thể công ty xe buýt Hà nội lợng khách hàng sử dụng dịch vụ doanh nghiệp lớn Vấn đề đặt cho doanh nghiệp làm để nhanh chóng giải đáp thắc mắc, khiếu kiện, góp ý khách hàng thời gian nhanh Chính vậy, đề tài Xây dựng hệ thống quản lý thông tin phản hồi khách hàng đợc đa nhằm mục đích giúp doanh nghiệp vận tải nói chung công ty xe buýt Hà nội nói riêng hỗ trợ khách hàng hiệu Với đề tài này, em mong muốn xây dựng đợc hệ thống quản lý thông tin phản hồi doanh nghiệp vận tải hành khách giúp doanh nghiệp thống kê đợc nhu cầu, mức độ hài lòng khách hàng qua cải thiện chất lợng dịch vụ công ty Nội dung đề tài bao gồm phần sau: Chơng 1: Giới thiệu tổng quan sở thực tập đề tài Xây dựng hệ thống quản lý thông tin phản hồi khách hàng Chơng giới thiệu tổng quát công ty cỉ phÇn phÇn mỊm ViƯt - VietSoftware cịng nh cần thiết đề tài nghiên cứu, mục tiêu phơng pháp sử dụng để nghiên cứu đề tài SV Đào Việt Cường – Tin học kinh tế 44 B Trang Chuyên đề thực tập tốt nghiệp - Ch¬ng 2: Cơ sở lý luận phân tích thiết kế hệ thống thông tin công cụ sử dụng Chơng 3: Phân tích thiết kế hệ thống quản lý thông tin phản hồi khách hàng Chơng trình bày chi tiết trình phân tích thiết kế hệ thống quản lý thông tin phản hồi khách hàng Ngoài chuyên đề có danh mục tài liệu tham khảo liệt kê tài liệu đà sử dụng phần phụ lục trình bày mà nguồn chơng trình Mặc dù đà cố gắng việc hoàn thiện chơng trình nhng khả hiểu biết có hạn nên không tránh khỏi thiếu sót Em mong thầy cô bạn đóng góp ý kiến để đề tài đợc hoàn thiện SV Đào Việt Cường – Tin học kinh tế 44 B Trang Chuyên đề thực tập tốt nghiệp - Mơc lơc Ch¬ng 1: Giíi thiƯu tổng quan sở thực tập đề tài Xây dựng hệ thống quản lý thông tin phản hồi khách hàng 1.1 Giới thiệu tổng quan công ty cỉ phÇn phÇn mỊm ViƯt -VietSoftware 1.2 Tỉ chøc cđa công ty 1.3 Tổng quan đề tài nghiên cứu 1.3.1 Tên đề tài 1.3.2 Lý lựa chọn đề tài CHƯƠNG II : CƠ Sở Lý LUậN Về PHÂN TíCH Và THIếT Kế Hệ THốNG THÔNG TIN 2.1 Tổng quan vỊ hƯ thèng th«ng tin 2.1.1 HƯ thèng th«ng tin 2.2 Phơng pháp phát triển hệ thống thông tin 2.2.1 Nguyên nhân dẫn tới việc phát triển hệ thống thông tin 2.2.2 Phơng pháp phát triển hệ thống thông tin 2.3 Các công cụ mô hình hóa hệ thống thông tin 2.3.1 Sơ đồ luồng thông tin IFD 2.3.2 Sơ đồ luồng liệu DFD 2.4 Thiết kế sở liệu phơng pháp mô hình hóa 2.5 Hệ thống quản lý thông tin phản hồi khách hàng 2.6 Khái quát công cụ sử dụng để thực đề tài CHƯƠNG III : PHÂN TíCH Và THIếT Kế Hệ THốNG quản lý thông tin phản hồi khách hàng 3.1 Mô tả hệ thống quản lý thông tin phản hồi khách hàng 3.2 Xác định yêu cầu chức hệ thống 3.3 Sơ đồ hệ thống 3.3.1 Sơ đồ ngữ cảnh 3.3.2 Sơ đồ chức hệ thống (BFD) 3.3.3 Sơ đồ luồng liƯu cđa hƯ thèng (DFD) 3.4 ThiÕt kÕ gi¶i tht 3.5 Thiết kế sở liệu 3.6 Đặc tả tình hệ thống SV Đào Việt Cường – Tin học kinh tế 44 B Trang Chuyên đề thực tập tốt nghiệp - 3.7 Mét sè giao diÖn chÝnh chơng trình Phụ lục SV Đào Việt Cường – Tin học kinh tế 44 B Trang Chuyên đề thực tập tốt nghiệp - Ch¬ng Giíi thiƯu tỉng quan vỊ sở thực tập đề tài Xây dựng hệ thống quản lý thông tin phản hồi khách hàng 1.1 Giới thiệu tổng quan công ty cổ phần phần mềm Việt - VietSoftware Tên doanh nghiệp Ngày thành lập Tên giao dịch quốc tế Địa Điện thoại Email Website Văn phòng Hà Nội Công ty Cổ phần Phần mềm Việt - VietSoftware 31 tháng năm 2000 VietSoftware, Inc Tầng 8, 51 Lê Đại Hành, Hà Nội 84-4-9745699 Fax: 84-4-9745700 contact@vietsoftware.com http://www.vietsoftware.com Trung tâm phát triển phần mềm nớc Văn phòng thành phố công ty IBM, 14 Thụy Khuê, Hà Nội 17/10 Nguyễn Huy Tởng, Bình Thạnh, 08- Hồ Chí Minh Họ tên ngời đại diện Chức vụ Sinh viên thực tập Cán hớng dẫn thực tập 8430453, 08-5103146 Trần Lơng Sơn Tel: 84-4-9745699 Giám đốc 5-25 lợt / năm Hoàng Quốc Dũng Mobile:0983349929 VietSoftware công ty phát triển phần mềm công nghệ Internet, đợc sáng lập lÃnh đạo số chuyên gia công nghệ quản lý hàng đầu đợc đào tạo trờng đại học nớc XHCN cũ nớc công nghiệp phát triển bao gồm Mỹ, Châu Âu, úc Nhật Bản SV Đào Việt Cường – Tin học kinh tế 44 B Trang Chuyên đề thực tập tốt nghiệp - VietSoftware cung cấp sản phẩm dịch vụ đa dạng cho khách hàng, bao gồm ứng dụng sở Web, tích hợp hệ thống t vấn hệ thống Công nghệ thông tin Trong chiến lợc mở thị trờng phần mềm phục vụ doanh nghiệp, VietSoftware đà có liên minh chiến lợc với công ty tổ chức nớc Hiện công ty dẫn đầu thị trờng lĩnh vực dịch vụ lập trình cho khách hàng quốc tế nh đầu thị trờng nớc với sở khách hàng bao gồm quan Nhà nớc, Tỉnh/Thành phố, Bộ, ngành, công ty nớc Công ty có đội ngũ đông đảo gần 80 lập trình viên có nhiều kinh nghiệm trình độ cao việc thực dự án phần mềm quy mô lớn nớc quốc tế Các lĩnh vực trọng tâm ã Dịch vụ lập trình quốc tế ã Phát triển ứng dụng Web ã Tích hợp hệ thống, cung cấp dịch vụ quản trị hệ thống lớn ã T vấn hệ thống Công nghệ thông tin ã Dịch vụ phân phối có giá trị gia tăng Các dịch vụ khác ã T vấn xây dựng web site ã Thiết kế đồ họa ấn phẩm, bìa, mẫu ã Chuyển đổi số liệu ã Hợp tác nghiên cứu khoa học Ngành nghề kinh doanh theo đăng ký kinh doanh ã Sản xuất phần mềm tin học SV Đào Việt Cường – Tin học kinh tế 44 B Trang Chuyên đề thực tập tốt nghiệp ã Buôn bán t liệu sản xuất, t liệu tiêu dùng (chủ yếu thiết bị tin học, viễn thông, điều khiển, tự động hóa, điện, điện tử, điện lạnh, văn phòng) ã T vấn chuyển giao công nghệ lĩnh vực tin học, điện, viễn thông, điều khiển, điện tử, tự động hóa, điện lạnh, văn phòng ã Lắp đặt, bảo hành, sửa chữa mạng máy tính, truyền thông, hệ thống thông tin Lĩnh vực chuyên môn ã Các ứng dụng Thơng mại điện tử Internet ã Cổng giao dịch điện tử (Portals) ã Phát triển ứng dụng Web bao gồm t vấn, thiết kế, cài đặt liên kết liệu doanh nghiệp ã T vấn xây dựng hệ thống thông tin ã Dịch vụ bảo hành bảo trì hệ thống thông tin chuyên nghiệp Một số sản phẩm tiêu biểu ã VPortal: Là giải pháp Cổng giao dịch ®iƯn tư cho tỉ chøc vµ doanh nghiƯp, VPortal cung cấp khả quản lý ngời dùng, cá nhân hóa, tùy biến, tạo lập quản lý kênh, giao dịch Các tiện ích cộng tác ứng dụng dịch vụ tích hợp vào VPortal VPortal giải pháp Intranet-Extranet cho tổ chức doanh nghiệp VPortal cung cấp tảng để tích hợp ứng dụng coi bớc xây dựng chế cửa cho giao tiếp dịch vụ thông qua Internet ã Autonomous DWeb: Công cụ mạnh để xây dựng, trì, cập nhật quản lý Website mà không đòi hỏi kỹ lập trình chuyên nghiệp Autonomous DWeb cung cấp khả tích hợp quản lý nội dung, cấu trúc chức Website SV Đào Việt Cường – Tin học kinh tế 44 B Trang Chuyên đề thực tập tốt nghiệp ã DocPro: Phần mềm quản lý công văn tài liệu hồ sơ công việc, giúp tổ chức doanh nghiệp xử lý, theo dõi, chia sẻ, lu trữ quản lý văn bản, công văn tài liệu Hệ thống xây dựng môi trờng web, công nghệ Lotus Notes/Domino dễ sử dụng điều chỉnh phù hợp với tổ chức, quan hành ã AIS: Hệ thống thông tin phục vụ điều hành tác nghiệp Đây Hệ thống phần mềm kèm, đợc xây dựng nhằm phục vụ cho mục đích tin học hoá toàn hay phần hệ thống thông tin quản lý, điều hành tác nghiệp tổ chức, đặc biệt quan quản lý nhà nớc Hệ thống có nhiệm vụ lu trữ, quản lý, phân phối thông tin, ứng dụng dịch vụ hỗ trợ cho lÃnh đạo cán quan, đơn vị trình thực chức quản lý, điều hành, chức tác nghiệp chuyên môn (gọi tắt hoạt động điều hành tác nghiệp), chức trao đổi thông tin điều hành, tác nghiệp với đơn vị cá nhân hay với tổ chức liên quan khác ã e-CFM: Hệ thống quản lý vận hành công ty trực tuyến theo qui trình ISO quản lý tri thức ã QRS: Hệ thống báo cáo nhanh cung cấp công cụ mạnh cho việc chuẩn bị, phân tích, tổng kết nộp báo cáo, sử dụng diện rộng, theo mô hình phân cấp trung ơng địa phơng, thích hợp cho quan Nhà nớc Tỉnh, Thành phố ã BMS: Giải pháp trợ giúp lÃnh đạo quản trị doanh nghiệp với cách tổ chức thông tin liên kết quan hệ khách hàng, chi tiết thực hợp đồng tài liệu liên quan Đây bớc khởi đầu quản lý tri thức ERP cho doanh nghiệp ã AMOS: Hệ thống quản trị tài nguyên doanh nghiệp (ERP) cho doanh nghiệp vừa nhỏ AMOS có phiên gồm số module SV Đào Việt Cường – Tin học kinh tế 44 B Trang Chuyên đề thực tập tốt nghiệp - hệ thống nh kế toán tài chính, quản lý kho phiên có toàn module giải pháp ERP toàn tổng thể ã TaskMan: Phần mềm quản lý công việc cho phép tổ chức phân công quản lý công việc cho cá nhân nhóm làm việc tổ chức hay doanh nghiệp ã TìmtiengViet: Máy tìm kiếm tiếng Việt cho phép thực tìm kiếm tiếng Việt mạng Internet sở liệu, PC ã NetShop: Các gói thơng mại điện tử cho doanh nghiệp hay cộng đồng Thơng mại điện tử ã VPress: Hệ thống xuất quản trị nội dung dành cho trang tin điện tử, báo điện tử Hệ thống đợc xây dựng môi trờng web sẵn sàng tích hợp nh ứng dụng VPortal ã ElitePro: Phần mềm xuất nội dung bảo mật liệu dùng cho sản xuất đĩa CD-ROM tra cứu Một số khách hàng ã IBM USA ã Toyota Motor Vietnam ã Văn phòng Chính phủ ã Thành phố Hà Nội: Cổng giao tiếp điện tử TP Hà Nội: www.hanoi.gov.vn ã UBND Tỉnh Bình Định, UBND tỉnh Đăk Lăk, UBND tỉnh Hải Dơng ã Uỷ ban Dân số Gia đình Trẻ em Hà Nội ã Bộ Công An, Bộ Nông Nghiệp Phát Triển Nông Thôn, Bộ Tài nguyên Môi Trờng, Bộ T Pháp Văn phòng: ã Trụ sở Tầng 8, Tòa nhà 51 Lê Đại Hành, Hà Nội SV Đào Việt Cường – Tin học kinh tế 44 B Trang 10 Chuyên đề thực tập tốt nghiệp - } try { this.assign(); } catch (Exception ex) { MessageBox.Show(ex.Message); } finally { this.refreshComplaint(); this.populateComplaint(); this.toFbPanel(); } private void cmdCancel_Click(object sender, EventArgs e) { this.toFbPanel(); } private void cmdAssign_Click(object sender, EventArgs e) { this.toEmpPanel(); } private void grdFb_CellDoubleClick(object sender, DataGridViewCellEventArgs e) { this.toEmpPanel(); } private void toEmpPanel() { this.pnlEmp.Visible = true; this.pnlCpl.Visible = false; } private void toFbPanel() { this.pnlEmp.Visible = false; this.pnlCpl.Visible = true; } private void lstEmp_SelectedIndexChanged(object sender, EventArgs e) { this.lblInfo.Text = "\n"; Employee emp = this.getSelectedEmp(); this.lblInfo.Text += "Tên đầy đủ : " + emp.FullName + "\n\n"; this.lblInfo.Text += "Địa : " + emp.Address + "\n\n"; this.lblInfo.Text += "Thành phố : " + emp.City + "\n\n"; SV Đào Việt Cường – Tin học kinh tế 44 B Trang 101 Chuyên đề thực tập tốt nghiệp this.lblInfo.Text += "Số điện thoại : " + emp.Phone + "\n\n"; } } } AssignForm.cs using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace MainApp.Feedback { public partial class AssignForm : Form { public AssignForm() { InitializeComponent(); } private void cmdOK_Click(object sender, EventArgs e) { } private void cmdCancel_Click(object sender, EventArgs e) { } } } EmpViewForm.cs using System; using System.Threading; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using FeedbackTrackingBiz; using FeedbackTrackingBiz.service; using FeedbackTrackingBiz.util; SV Đào Việt Cường – Tin học kinh tế 44 B Trang 102 Chuyên đề thực tập tốt nghiệp namespace MainApp.Feedback { public partial class EmpViewForm : Form { ComplaintRegisterCollection cplC = null; ComplaintService cplService = null; Registry reg = Registry.getInstance(); public EmpViewForm() { InitializeComponent(); this.cplService = ServiceFactory.getComplaintService(); this.refreshComplaint(); this.populateComplaint(); //reg.add("EmpId", "cuongdv"); } private ComplaintRegister getSelectedComplaint() { Object id = grdFb.SelectedRows[0].Cells[0].Value; Int32 fbId = 0; try { fbId = System.Convert.ToInt32(id.ToString()); } catch (Exception e) { } ComplaintRegister fb = cplC.FindById(fbId); return fb; } private void refreshComplaint() { this.cplC = cplService.findAllAssignedByEmp(reg.get("EMPID").ToString()); } private void viewDetail() { ComplaintRegister fb = this.getSelectedComplaint(); if (fb != null) { FBDetailForm detailForm ; detailForm = new FBDetailForm(fb.Id); detailForm.ShowDialog(); } else { MessageBox.Show("Complaint is null"); } return; } private void populateComplaint() { this.grdFb.Rows.Clear(); //this.grdFb.DataSource = cplC.SortById(OrmLib.SortDirection.Descending); grdFb.ColumnCount = 3; SV Đào Việt Cường – Tin học kinh tế 44 B Trang 103 Chuyên đề thực tập tốt nghiệp grdFb.Columns[0].Name = "ID"; grdFb.Columns[0].Width = 50; grdFb.Columns[1].Name = "Created Date"; grdFb.Columns[1].Width = 100; grdFb.Columns[2].Name = "Description"; grdFb.Columns[2].Width = 300; DataGridViewRowCollection rows = this.grdFb.Rows; foreach (ComplaintRegister cpl in cplC) { string[] rowI = { cpl.Id.ToString(), cpl.DateCreated.ToString(), cpl.Description }; rows.Add(rowI); } DataGridViewCellStyle style = new DataGridViewCellStyle(); style.BackColor = Color.Beige; style.ForeColor = Color.Brown; style.Font = new Font("Verdana", 8); } // Apply the style as the default cell style this.grdFb.AlternatingRowsDefaultCellStyle = style; private void grdFb_CellDoubleClick(object sender, DataGridViewCellEventArgs e) { this.viewDetail(); } private void grdFb_CellContentClick(object sender, DataGridViewCellEventArgs e) { } private void cmdView_Click(object sender, EventArgs e) { this.viewDetail(); } } } FBDetailForm.cs using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Data; using System.Text; using System.Windows.Forms; SV Đào Việt Cường – Tin học kinh tế 44 B Trang 104 Chuyên đề thực tập tốt nghiệp using FeedbackTrackingBiz; using FeedbackTrackingBiz.service; using FeedbackTrackingBiz.util; namespace MainApp.Feedback { public partial class FbRegisterComp : UserControl { CustomerService custService = null; ComplaintService complaintService = null; ComplaintCategoryService catService = null; ComplaintTypeService typeService = null; RouteService routeService = null; ComplaintTypeCollection typC = null; ComplaintCategoryCollection catC = null; RouteCollection rteC = null; Registry reg = Registry.getInstance(); public FbRegisterComp() { InitializeComponent(); custService = ServiceFactory.getCustomerService(); complaintService = ServiceFactory.getComplaintService(); catService = ServiceFactory.getCategoryService(); typeService = ServiceFactory.getTypeService(); routeService = ServiceFactory.getRouteService(); this.populateCombo(); reg.add("EmpId", "cuongdv"); } private ComplaintType getSelectedType() { Object typName = this.cboType.SelectedItem; if (typName != null) { ComplaintType typ = typC.FindByName(typName.ToString()); return typ; } return null; } private Route getSelectedRoute() { Object rteName = this.cboRoute.SelectedItem; Route rte = rteC.FindByName(rteName.ToString()); SV Đào Việt Cường – Tin học kinh tế 44 B Trang 105 Chuyên đề thực tập tốt nghiệp return rte; } private ComplaintCategory getSelectedCat() { Object catName = this.cboCategory.SelectedItem; if (catName != null) { ComplaintCategory cat = catC.FindByName(catName.ToString()); return cat; } return null; } private void populateCombo() { typC = typeService.findAll(); catC = catService.findAll(); rteC = routeService.findAll(); foreach (Route rte in rteC) { this.cboRoute.Items.Add(rte.Name); } foreach (ComplaintCategory cat in catC) { this.cboCategory.Items.Add(cat.Name); } foreach (ComplaintType typ in typC) { this.cboType.Items.Add(typ.Name); } } private bool validateCust() { if (this.txtFName.Text.Length < || this.txtFName.Text.Length > 50 || this.txtLName.Text.Length < || this.txtLName.Text.Length > 50 || this.txtPhone.Text.Length < || this.txtPhone.Text.Length > 50 || this.txtZip.Text.Length < || this.txtZip.Text.Length > 50 || this.txtAddress.Text.Length < || this.txtAddress.Text.Length > 50 || this.txtCity.Text.Length < || this.txtCity.Text.Length > 50 || this.txtEmail.Text.Length < || this.txtEmail.Text.Length > 50) { return false; SV Đào Việt Cường – Tin học kinh tế 44 B Trang 106 Chuyên đề thực tập tốt nghiệp } return true; } private bool validateFb() { return true; } private void cmdNext_Click(object sender, EventArgs e) { if (!validateCust()) { MessageBox.Show(this, "You must enter valid data."); return; } this.pnlCust.Visible = false; this.pnlFb.Visible = true; } private void cmdCancel2_Click(object sender, EventArgs e) { } private void cmdCancel_Click(object sender, EventArgs e) { } private void cmdBack_Click(object sender, EventArgs e) { this.pnlFb.Visible = false; this.pnlCust.Visible = true; } private void cmdFinish_Click(object sender, EventArgs e) { if (!validateCust() || !validateFb()) { MessageBox.Show(this, "You must enter valid data"); return; } Int32 custId = custService.insert(this.txtFName.Text.Trim() , this.txtLName.Text.Trim() , this.txtAddress.Text.Trim() , this.txtCity.Text.Trim() , this.txtZip.Text.Trim() , this.txtEmail.Text.Trim() , this.txtPhone.Text.Trim()); SV Đào Việt Cường – Tin học kinh tế 44 B Trang 107 Chuyên đề thực tập tốt nghiệp Int32 typId = this.getSelectedType().Id; Int32 catId = this.getSelectedCat().Id; Int32 rteId = this.getSelectedRoute().Id; String source = this.cboSource.SelectedItem.ToString(); complaintService.insert(custId, typId, catId, source, this.dtInDate.Value, this.txtInPlace.Text.Trim() , this.txtBusStop.Text.Trim(), this.txtDesc.Text.Trim() , rteId, this.txtVhReg.Text.Trim() , (String)reg.get("EmpId")); } } } FBRegisterForm.cs using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; using FeedbackTrackingBiz; using FeedbackTrackingBiz.service; using FeedbackTrackingBiz.util; namespace MainApp.Feedback { public partial class FBRegisterForm : Form { String msgError = "Thông tin không hợp lệ.\n" + " Xin mời nhập lại thông tin.\n "; CustomerService custService = null; ComplaintService complaintService = null; ComplaintCategoryService catService = null; ComplaintTypeService typeService = null; RouteService routeService = null; ComplaintTypeCollection typC = null; ComplaintCategoryCollection catC = null; RouteCollection rteC = null; Registry reg = Registry.getInstance(); public FBRegisterForm() { InitializeComponent(); custService = ServiceFactory.getCustomerService(); complaintService = ServiceFactory.getComplaintService(); catService = ServiceFactory.getCategoryService(); SV Đào Việt Cường – Tin học kinh tế 44 B Trang 108 Chuyên đề thực tập tốt nghiệp typeService = ServiceFactory.getTypeService(); routeService = ServiceFactory.getRouteService(); this.populateCombo(); reg.add("EmpId", "cuongdv"); } private ComplaintType getSelectedType() { Object typName = this.cboType.SelectedItem; if (typName != null) { ComplaintType typ = typC.FindByName(typName.ToString()); return typ; } return null; } private Route getSelectedRoute() { Object rteName = this.cboRoute.SelectedItem; Route rte = rteC.FindByName(rteName.ToString()); return rte; } private ComplaintCategory getSelectedCat() { Object catName = this.cboCategory.SelectedItem; if (catName != null) { ComplaintCategory cat = catC.FindByName(catName.ToString()); return cat; } return null; } private void populateCombo() { typC = typeService.findAll(); catC = catService.findAll(); rteC = routeService.findAll(); foreach (Route rte in rteC) { this.cboRoute.Items.Add(rte.Name); } foreach (ComplaintCategory cat in catC) { this.cboCategory.Items.Add(cat.Name); } foreach (ComplaintType typ in typC) { this.cboType.Items.Add(typ.Name); } } private bool validateCust() { if (this.txtFName.Text.Length < || this.txtFName.Text.Length > 50 || this.txtLName.Text.Length < || this.txtLName.Text.Length > 50 || this.txtPhone.Text.Length < SV Đào Việt Cường – Tin học kinh tế 44 B Trang 109 Chuyên đề thực tập tốt nghiệp || this.txtPhone.Text.Length > 50 || this.txtAddress.Text.Length < || this.txtAddress.Text.Length > 50 || this.txtCity.Text.Length < || this.txtCity.Text.Length > 50 || this.txtEmail.Text.Length < || this.txtEmail.Text.Length > 50) { return false; } return true; } private bool validateFb() { return true; } private void cmdNext_Click(object sender, EventArgs e) { if (!validateCust()) { MessageBox.Show(this, this.msgError, "Thông tin không hợp lệ" , MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } this.pnlCust.Visible = false; this.pnlFb.Visible = true; } private void cmdCancel2_Click(object sender, EventArgs e) { this.Close(); } private void cmdCancel_Click(object sender, EventArgs e) { this.Close(); } private void cmdBack_Click(object sender, EventArgs e) { this.pnlFb.Visible = false; this.pnlCust.Visible = true; } private void cmdFinish_Click(object sender, EventArgs e) { if (!validateCust() || !validateFb()) { SV Đào Việt Cường – Tin học kinh tế 44 B Trang 110 Chuyên đề thực tập tốt nghiệp MessageBox.Show(this, this.msgError , "Invalid data", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } Int32 custId = custService.insert(this.txtFName.Text.Trim() , this.txtLName.Text.Trim() , this.txtAddress.Text.Trim() , this.txtCity.Text.Trim() , this.txtZip.Text.Trim() , this.txtEmail.Text.Trim() , this.txtPhone.Text.Trim()); Int32 typId = this.getSelectedType().Id; Int32 catId = this.getSelectedCat().Id; Int32 rteId = this.getSelectedRoute().Id; String source = this.cboSource.SelectedItem.ToString(); complaintService.insert(custId, typId, catId, source, this.dtInDate.Value, this.txtInPlace.Text.Trim() , this.txtBusStop.Text.Trim(), this.txtDesc.Text.Trim() , rteId, this.txtVhReg.Text.Trim() , (String)reg.get("EmpId")); this.Close(); } } } Registry.cs using System; using System.Collections; using System.Collections.Generic; using System.Text; namespace FeedbackTrackingBiz.util { public class Registry { private Registry() { } private static Registry instance = new Registry(); public static Registry getInstance() { if (instance == null) { instance = new Registry(); } return instance; } private Hashtable dic = new Hashtable(); public Object get(String key) { SV Đào Việt Cường – Tin học kinh tế 44 B Trang 111 Chuyên đề thực tập tốt nghiệp - } if(dic.ContainsKey(key)){ return dic[key]; } return "BAD_KEY"; public void add(String key, Object value) { dic[key] = value; } public bool isEmpty() { if (dic.Count < 1) { return true; } return false; } public void clear() { dic.Clear(); } } } ComplaintService.cs using System; using System.Collections.Generic; using System.Text; using System.Windows.Forms; namespace FeedbackTrackingBiz.service { public class ComplaintService { public void insert(Int32 custId, Int32 typeId, Int32 catId, String source ,DateTime incidentDate,String inPlace, String busStop, String desc ,Int32 routeId, String vhReg,String empId ) { try { DataManager dm = new DataManager(Config.Dsn); dm.QueryCriteria.Clear(); ComplaintRegister cpl = dm.NewComplaintRegister(); cpl.CustId = custId; cpl.DateCreated = System.DateTime.Now; cpl.TypeId = typeId; cpl.Source = source; cpl.CatId = catId; cpl.IncidentDate = incidentDate; cpl.InPlace = inPlace; cpl.BusStop = busStop; SV Đào Việt Cường – Tin học kinh tế 44 B Trang 112 Chuyên đề thực tập tốt nghiệp cpl.Description = desc; cpl.RouteId = routeId; cpl.VhReg = vhReg; cpl.Status = 0; cpl.IsClosed = 0; cpl.EmpId = empId; dm.CommitAll(); } catch (Exception e) { throw e; } } public void assign(ComplaintRegisterCollection cplC, String empId) { try { DataManager dm = new DataManager(Config.Dsn); foreach (ComplaintRegister cpl in cplC) { dm.QueryCriteria.And(JoinPath.ComplaintRegister.Columns.Id, cpl.Id, OrmLib.MatchType.Exact); ComplaintRegister tmp = dm.GetComplaintRegister(); tmp.Assignee = empId; tmp.Status = 1; dm.QueryCriteria.Clear(); } dm.CommitAll(); } catch (Exception e) { throw e; } } public void assign(Int32 fbId, String empId) { try { DataManager dm = new DataManager(Config.Dsn); dm.QueryCriteria.Clear(); dm.QueryCriteria.And(JoinPath.ComplaintRegister.Columns.Id,fbId, OrmLib.MatchType.Exact); ComplaintRegister cpl = dm.GetComplaintRegister(); cpl.Assignee = empId; cpl.Status = 1; dm.CommitAll(); } catch (Exception e) { throw e; } } SV Đào Việt Cường – Tin học kinh tế 44 B Trang 113 Chuyên đề thực tập tốt nghiệp public void investigate(Int32 fbId, String empId, Int32 drvId, Int32 validity, String invalidReason) { try { InvDetailRegister inv = null; DataManager dm = new DataManager(Config.Dsn); dm.QueryCriteria.And(JoinPath.InvDetailRegister.Columns.FbId, fbId, OrmLib.MatchType.Exact); inv = dm.GetInvDetailRegister(); if (inv == null) { dm.QueryCriteria.Clear(); inv = dm.NewInvDetailRegister(); } inv.FbId = fbId; inv.EmpId = empId; inv.DriverId = drvId; inv.Validity = validity; inv.InvalidReason = invalidReason; inv.DtCompletion = System.DateTime.Now; dm.CommitAll(); } catch (Exception e) { throw e; } } public void updateInvestigateDetail(Int32 fbId, String empId, Int32 drvId, Int32 validity, String invalidReason) { try { DataManager dm = new DataManager(Config.Dsn); dm.QueryCriteria.Clear(); dm.QueryCriteria.And(JoinPath.InvDetailRegister.Columns.FbId, fbId, OrmLib.MatchType.Exact); InvDetailRegister inv = dm.GetInvDetailRegister(); inv.EmpId = empId; inv.DriverId = drvId; inv.Validity = validity; inv.InvalidReason = invalidReason; inv.DtCompletion = System.DateTime.Now; dm.CommitAll(); } catch (Exception e) { throw e; } } public void correctAction(Int32 fbId, String empId, String action) { try { CorrectiveActionsRegister crr = null; DataManager dm = new DataManager(Config.Dsn); dm.QueryCriteria.Clear(); SV Đào Việt Cường – Tin học kinh tế 44 B Trang 114 Chuyên đề thực tập tốt nghiệp dm.QueryCriteria.And(JoinPath.CorrectiveActionsRegister.Columns.FbId, fbId, OrmLib.MatchType.Exact); crr = dm.GetCorrectiveActionsRegister(); if (crr == null) { dm.QueryCriteria.Clear(); crr = dm.NewCorrectiveActionsRegister(); } crr.FbId = fbId; crr.EmpID = empId; crr.CorrectiveAction = action; crr.DtAction = System.DateTime.Now; dm.CommitAll(); } catch (Exception e) { throw e; } } public void updateCorrectAction(Int32 fbId, String empId, String action) { try { DataManager dm = new DataManager(Config.Dsn); dm.QueryCriteria.Clear(); dm.QueryCriteria.And(JoinPath.CorrectiveActionsRegister.Columns.FbId, fbId, OrmLib.MatchType.Exact); CorrectiveActionsRegister crr = dm.GetCorrectiveActionsRegister(); crr.EmpID = empId; crr.CorrectiveAction = action; crr.DtAction = System.DateTime.Now; dm.CommitAll(); } catch (Exception e) { throw e; } } public ComplaintRegisterCollection findAll() { try { DataManager dm = new DataManager(Config.Dsn); } catch (Exception e) { throw e; } return null; } SV Đào Việt Cường – Tin học kinh tế 44 B Trang 115 ... Kế Hệ THốNG quản lý thông tin phản hồi khách hàng 3.1 Mô tả hệ thống quản lý thông tin phản hồi khách hàng 3.2 Xác định yêu cầu chức hệ thống 3.3 Sơ đồ hệ thống 3.3.1 Sơ đồ ngữ cảnh 3.3.2 Sơ đồ. .. Chơng 3: Phân tích thiết kế hệ thống quản lý thông tin phản hồi khách hàng Chơng trình bày chi tiết trình phân tích thiết kế hệ thống quản lý thông tin phản hồi khách hàng Ngoài chuyên đề có danh... Tại trụ sở công ty, cụ thể phòng Chăm sóc khách hàng có phần mềm dùng để quản lý thông tin phản hồi mà khách hàng gửi đến Khách hàng gửi phản hồi thông qua website Ngoài thông tin phản hồi đợc gửi