【正文】
................................................................22 聲 明 .......................................................................................................................................................23 1 引言 課題研究背景 汽車(chē)產(chǎn)業(yè)的興旺發(fā)展帶動(dòng)顧客對(duì)于汽車(chē)類(lèi)型選擇的大步前進(jìn),目前大多數(shù)汽車(chē)銷(xiāo)售連鎖店的 銷(xiāo)售管理是用 簡(jiǎn)易 進(jìn)行的。要想解決這些難題,就必須有一套科學(xué)、高效、嚴(yán)密汽車(chē)銷(xiāo)售管理系統(tǒng)作為依托進(jìn)行和客戶的交易。 以此前提作為系統(tǒng)設(shè)計(jì)的基礎(chǔ) ,開(kāi)發(fā)一個(gè)更適合客戶和銷(xiāo)售人員交流的這樣一個(gè)汽車(chē)銷(xiāo)售系統(tǒng) ,來(lái)滿足日益發(fā)展的汽車(chē)銷(xiāo)售業(yè) .的要求。 本課題的研究方法 本系統(tǒng)是在充分理解 MIS 系統(tǒng),具備了一定的軟件設(shè)計(jì)與開(kāi)發(fā)的能力的前提條件下。該系統(tǒng)運(yùn)用了 C/S 模式開(kāi)發(fā),用 C語(yǔ)言作為開(kāi)發(fā)的前臺(tái)語(yǔ)言,數(shù)據(jù)庫(kù)采用 SQLserver2021。它功能強(qiáng)大操作簡(jiǎn)便 ,日益為廣大數(shù)據(jù)庫(kù)用戶所喜愛(ài)。 SQL Server 2021 是 Microsoft 公司推出的 SQL Server 數(shù)據(jù)庫(kù)管理系統(tǒng)的最新版本,該版本繼承了 SQL Server 版本的優(yōu)點(diǎn),同時(shí)又比它增加了許多更先進(jìn)的功能、具有使用方便、可伸縮性好與相關(guān)軟件集成程度高等優(yōu)點(diǎn)。事實(shí)上, SQL Server數(shù)據(jù)庫(kù)處理的基本結(jié)構(gòu),采取關(guān)系型數(shù)據(jù)庫(kù)模式,盡管如此,相信大家都可以輕易的發(fā)現(xiàn),在 SQL Server 的數(shù)據(jù)庫(kù)處理方式,則是使用面向?qū)ο蟮牟僮鞣绞脚c精神,也就是說(shuō), SQL Server 的所有功能,都可以基于系統(tǒng)已經(jīng)建立好的一些對(duì)象來(lái)達(dá)成,是相當(dāng) OO(面向?qū)ο螅┑囊粋€(gè)系統(tǒng)結(jié)構(gòu)。它使程序員快速便捷地創(chuàng)建基于Microsoft .NET 平臺(tái)的解決方案。 C增強(qiáng)了開(kāi)發(fā)者的效率,同時(shí)也致力于消除編程中可能導(dǎo)致嚴(yán)重結(jié)果的錯(cuò)誤。 使得我們?cè)谡Z(yǔ)言和模塊實(shí)現(xiàn)方面更加快捷和方便。其主要的功能設(shè)計(jì)有:對(duì) 汽車(chē)類(lèi)型 的購(gòu)進(jìn), 客戶信息 及銷(xiāo)售情況進(jìn)行日常的管理,如:添加、刪除、修改數(shù)據(jù)庫(kù)信息;查詢信息;系統(tǒng)維護(hù)等。 系統(tǒng) 管理模塊 分析 通過(guò)對(duì)汽車(chē)銷(xiāo)售管理業(yè)務(wù)的調(diào)查分析與資料查詢,弄清了汽車(chē)銷(xiāo)售管理的工作業(yè)務(wù)流程和管理功能。 客戶請(qǐng)求信息管理:對(duì)銷(xiāo)售業(yè)務(wù)涉及的問(wèn)題進(jìn)行交 流回饋。 汽車(chē)信息管理:對(duì)新進(jìn)汽車(chē)的信息進(jìn)行歸檔管理。對(duì)銷(xiāo)售、庫(kù)存等的統(tǒng)計(jì) 。收集基本數(shù)據(jù)、數(shù)據(jù)結(jié)構(gòu)以及數(shù)據(jù)處理的流程,組成一份詳盡的數(shù)據(jù)字典,為后面的具體設(shè)計(jì)打下基礎(chǔ) 。 仔細(xì)分析調(diào)查有汽車(chē)銷(xiāo)售公司管理信息需求的基礎(chǔ)上,將得到如圖所示的本系統(tǒng)所處理的數(shù)據(jù)流程。這些實(shí)體包含各種具體信息,通過(guò)相互之間的作用形成數(shù)據(jù)的流動(dòng)。 汽車(chē)銷(xiāo)售管理系統(tǒng)數(shù)據(jù)庫(kù)中各個(gè)表格的設(shè)計(jì)結(jié)果如下面表格所示。 表 41客戶信息表 aCase 列名 數(shù)據(jù)類(lèi)型 長(zhǎng)度 是否為空 ID int 4 0 autoID int 4 0 Custom char 10 0 CComments char 100 0 EComments char 100 0 orderDate datetime 8 0 Payment char 50 0 City char 20 0 表 42 汽車(chē)信息 表 AutoMobile 列名 數(shù)據(jù)類(lèi)型 長(zhǎng)度 是否為空 ID int 4 0 aName char 40 0 Company char 50 0 Cost int 4 0 Price int 4 0 Amount int 4 0 Description char 400 0 購(gòu)買(mǎi) 汽車(chē) 客戶 m 1 Profit ID autoID resolvedCase 表 43 銷(xiāo)售人員信息表 Emploee 列名 數(shù)據(jù)類(lèi)型 長(zhǎng)度 是否為空 ID int 4 0 eName char 10 0 [Position] char 20 0 Pwd char 20 0 uvalue nvarchar 255 1 lvalue image 16 1 version int 4 0 表 44 客戶服務(wù)信息表 FQ 列名 數(shù)據(jù)類(lèi)型 長(zhǎng)度 是否為 空 ID int 4 0 autoID int 4 0 Question char 200 0 Answer char 400 0 State int 4 0 表 45 圖片信息表 Picture 列名 數(shù)據(jù)類(lèi)型 長(zhǎng)度 是否為空 aName char 40 0 Pic image 16 0 表 46 回饋信息表 resolvedCase 列名 數(shù)據(jù)類(lèi)型 長(zhǎng)度 是否為空 ID int 4 0 autoID int 4 0 Profit int 4 0 各數(shù)據(jù)表關(guān)系圖 P i c t u r e a N a m e P i cF K 1 I Dr e s o l v e d C a s eP K , F K 1 I D a u t o I D P r o f i ta C a s eP K I D a u t o I D C u s t o m C C o m m e n t s E C o m m e n t s o r d e r D a t e P a y m e n t C i t yA u t o M o b i l e a N a m e C o m p a n y C o s t P r i c e A m o u n t D e s c r i p t i o nF K 1 I DE m p l o e e e N a m e P o s i t i o n P w dF K 1 I DF QP K , F K 1 I D a u t o I D Q u e s t i o n A n s w e r S t a t e 圖 48 數(shù)據(jù)表關(guān)系圖 數(shù)據(jù)庫(kù)結(jié)構(gòu)實(shí)現(xiàn) 通過(guò)前面對(duì)于數(shù)據(jù)庫(kù)部分的分析 ,現(xiàn)在可以在 SQL Server 2021 數(shù)據(jù)庫(kù)系統(tǒng)中實(shí)現(xiàn)該邏輯結(jié)構(gòu)。下面給出部分實(shí)現(xiàn)上面各種關(guān)系的 SQL 語(yǔ)句。Integrated Security=SSPI。 private DbObject db。} 數(shù)據(jù)庫(kù)連接后實(shí)現(xiàn)數(shù)據(jù)的調(diào)用 通過(guò)以下被設(shè)定的參數(shù)訪問(wèn) SQLServer,并且通過(guò) sqlmand 和sqlconnection 來(lái)實(shí)現(xiàn)數(shù)據(jù)庫(kù)更新 ,通過(guò)想數(shù)據(jù)庫(kù)發(fā)送更新數(shù)據(jù)庫(kù)的 SQL 語(yǔ)句實(shí)現(xiàn) . class DbObject {private SqlConnection connection。 public DbObject(string constring) { = constring。} private SqlCommand buildCommand(string storedProc,SqlParameter[] parameters) { SqlCommand mand = new SqlCommand()。 = ()。 if(parameters != null) {foreach(SqlParameter p in parameters) {(p)。}//buildCommand 數(shù)據(jù) 存儲(chǔ)過(guò)程的實(shí)現(xiàn) SqlDataReader實(shí)現(xiàn)單項(xiàng)數(shù)據(jù)操作 ,不提供數(shù)據(jù)的緩存 ,并且在整個(gè)過(guò)程中它由 Buildmond 產(chǎn)生 ,實(shí)現(xiàn)數(shù)據(jù)參數(shù)的傳遞 ,在實(shí)現(xiàn)過(guò)程中 ,構(gòu)造了 sql Command對(duì)象 cmd,然后調(diào)用 cmd 的 ExecuteReader 方法 ,并且返回一個(gè) Reader 對(duì)象 ,實(shí)現(xiàn)存儲(chǔ) . public SqlDataReader runProcedure(string storedProc,SqlParameter[] parameters) {SqlDataReader reader。 if( == ) {()。 //()。} public void extProcedure(string storedProc,SqlParameter[] parameters) {SqlCommand cmd = (storedProc,parameters)。 }()。} 實(shí)現(xiàn)數(shù)據(jù)庫(kù)調(diào)用的 部分 關(guān)鍵語(yǔ)句 (1)更新汽車(chē)信息模塊的實(shí)現(xiàn) ,定義 SQL數(shù)據(jù)參數(shù) ,運(yùn)用 UPDATE實(shí)現(xiàn)對(duì)于數(shù)據(jù)的更新 : public void updateMobile(string name,int price,int amount,string Description) {SqlParameter[] parameters = {new SqlParameter(aName,40), new SqlParameter(Price,4), new SqlParameter(Amount,4), new SqlParameter(Description,400) }。 parameters[1].Value = price。 parameters[3].Value = Description。}}//opAutoMobile (2)實(shí)現(xiàn)將后臺(tái)的數(shù)據(jù)填充到 DS中去 ,并且實(shí)現(xiàn)對(duì)于汽車(chē)信息的查詢 ,運(yùn)用SELECT語(yǔ)句進(jìn)行數(shù)據(jù)的查詢 : public DataSet MoblieTable() {SqlConnection con = new SqlConnection(conStr)。} string s = select * from AutoMobile。 SqlDataAdapter da = new SqlDataAdapter(cmd)。 DataSet ds = new DataSet()。 ()。} (3)通過(guò)數(shù)據(jù)庫(kù)和前臺(tái)的連接 ,并且對(duì)于 SqlDataReader中 reader對(duì)象的更新 ,并且根據(jù)其后的參數(shù)進(jìn)行操作 ,實(shí)現(xiàn)對(duì)于客戶 信息的回答 : public string GetAnswer(int ID) {string s = 。 SqlParameter[] parameters = {new SqlParameter(ID,4)}。 SqlDataReader reader = (GetAnswer,parameters)。} ()。} }//opFQ (4)對(duì)于信息的添加 ,添加相關(guān)的參數(shù) ,對(duì)于新的參數(shù)的定義 ,通過(guò)存儲(chǔ)和構(gòu)造函數(shù)的調(diào)出來(lái)實(shí)現(xiàn) : public void AddCase(int autoID,string custom,string cments,string ements) {SqlParameter[] parameters = {new SqlParameter(autoID,4), new SqlParameter(Custom,10), new SqlParameter(CComments,100), new SqlParameter(EComments,100)}。 parameters[1].Value = custom。 parameters[3].Value = ements。 }//addCase }//opCase endregion (5)銷(xiāo)售人員登陸的實(shí)現(xiàn)過(guò)程 ,主要表現(xiàn)在先對(duì)銷(xiāo)售人員的一個(gè)參數(shù)定義 ,定義 ename和 pwd兩個(gè)變量 ,并且通過(guò)對(duì)于 Sqlparameter中 reader中的對(duì)象進(jìn)行傳遞 ,在 ,并實(shí)現(xiàn)整個(gè)過(guò)程 : public Emploee Login(string pwd,string name) {Emploee em = null。 parameters[0].Value = pwd。 SqlDataReader reader = (Login,parameters)。 = (reader[ID])。 = (reader[Position])。} else em = new Emploee()。 return em??梢栽谶@個(gè)生成頁(yè)面里面,根據(jù)系統(tǒng)的語(yǔ)言通過(guò)第三方控件,在銷(xiāo)售人員 \我和客戶直接搭建一個(gè)展示窗口,通過(guò)這個(gè)第三方控件實(shí)現(xiàn)汽車(chē)銷(xiāo)售系統(tǒng)的最初的展示,并且給與用戶更多的選擇信息。 SUV 汽車(chē)類(lèi)型-選擇購(gòu)車(chē)類(lèi)型-點(diǎn)擊進(jìn)入汽車(chē)信息界 面-選擇需要汽車(chē) 。 SUV 汽車(chē)類(lèi)型選擇-定購(gòu)此車(chē)-輸入相應(yīng)的客戶選擇信息-初步交易 。 public int autoID = 1。 public string CComments = 。 } class opCase { DbObject dbo =