版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
摘要傳統(tǒng)的藥房管理都是采取人工操作,手工記賬,當(dāng)藥品進(jìn)、銷(xiāo)、存量越來(lái)越大時(shí),就會(huì)增加人力成本,而且容易造成管理混亂,導(dǎo)致很多亂賬、壞賬、死賬,使藥房的發(fā)展難以為繼。擁有一套比同行更為先進(jìn)、快捷的管理系統(tǒng),會(huì)給藥房的發(fā)展帶來(lái)極大的便利。本系統(tǒng)主要包括:?jiǎn)T工管理模塊、藥品信息管理模塊、客戶(hù)信息管理模塊、采購(gòu)管理模塊、銷(xiāo)售管理模塊、報(bào)損管理模塊等。系統(tǒng)各模塊功能介紹:員工管理模塊只能由系統(tǒng)管理員操作,添加員工、編輯員工信息。藥品信息管理模塊主要用來(lái)記錄需要入庫(kù)的藥品的基本信息,如藥品編號(hào)、藥品名稱(chēng)、藥品價(jià)格等??蛻?hù)信息管理模塊用來(lái)保存、修改或刪除供應(yīng)客戶(hù)和采購(gòu)客戶(hù)的基本信息。藥品采購(gòu)管理模塊用來(lái)登記、查詢(xún)或刪除入庫(kù)信息。藥品銷(xiāo)售模塊主要記錄藥品的銷(xiāo)售情況。報(bào)損管理模塊主要用于藥品損毀的登記、查詢(xún),如過(guò)期、破損等。本系統(tǒng)屬于B/S結(jié)構(gòu),采用ASP.NET和SQLServer進(jìn)行開(kāi)發(fā),使用VisualStudio作為開(kāi)發(fā)工具,系統(tǒng)功能較完善。本系統(tǒng)能較好地滿(mǎn)足藥房需求,使管理者更加方便、快捷、有效地進(jìn)行管理。關(guān)鍵詞:惠民藥店;藥品管理系統(tǒng);數(shù)據(jù)庫(kù);;sqlserver
緒論研究背景由于土地污染、食品不健康等原因,目前我國(guó)的各種疾病發(fā)病率處于高發(fā)階段,而隨著老齡化人口的不斷攀升,老年人身體機(jī)能的衰退,伴隨而來(lái)的就是對(duì)各種藥品的旺盛需求。如今,國(guó)家又大力支持二胎政策,幼兒的免疫能力非常弱,容易感染各種疾病,家長(zhǎng)也會(huì)不惜代價(jià)的護(hù)理好嬰兒。此外,人們對(duì)于健康問(wèn)題越來(lái)越重視,導(dǎo)致對(duì)預(yù)防性藥物和保健性藥品的使用大量增加。這些因素都導(dǎo)致了我國(guó)藥品行業(yè)的蓬勃發(fā)展,也推動(dòng)了藥品的銷(xiāo)售數(shù)量和額度。藥品行業(yè)的快速發(fā)展引起了各種藥品管理軟件的興起,但很多軟件系統(tǒng)都不符合藥房的實(shí)際應(yīng)用。市場(chǎng)迫切需要一款專(zhuān)為零售藥房使用的管理系統(tǒng),這種系統(tǒng)能具有針對(duì)性,能滿(mǎn)足藥房的實(shí)際需求,對(duì)藥品種類(lèi)、藥品信息、藥品價(jià)格、藥流通等方面都有高效的管理功能?;菝袼幍晁幤饭芾硐到y(tǒng)就是在這種背景下專(zhuān)為藥房管理者所開(kāi)發(fā)的一套軟件。這種系統(tǒng)能夠有效的避免藥品管理混亂、賬目出錯(cuò)等現(xiàn)象。它不僅可以對(duì)藥品的出入庫(kù)進(jìn)行管理操作,還能對(duì)藥品的附加信息、銷(xiāo)售額、進(jìn)行統(tǒng)計(jì),也可以清點(diǎn)藥品的損壞情況,以便及時(shí)報(bào)告,不會(huì)妨礙到藥品的正常銷(xiāo)售。研究?jī)?nèi)容本系統(tǒng)主要包括:?jiǎn)T工、藥品、客戶(hù)、采購(gòu)、銷(xiāo)售、報(bào)損等方面的管理。1.員工管理模塊只能由系統(tǒng)管理員操作,添加員工、編輯員工信息。2.藥品信息管理模塊用來(lái)添加藥品的原有屬性,如藥品說(shuō)明、藥品價(jià)格等。3.客戶(hù)管理模塊用來(lái)保存、修改或刪除客戶(hù)。4.藥品采購(gòu)管理模塊用來(lái)登記、查詢(xún)或刪除入庫(kù)信息。藥品銷(xiāo)售模塊主要記錄藥品的銷(xiāo)售情況。5.報(bào)損管理模塊主要用于藥品損毀的登記、查詢(xún),如過(guò)期、破損等。系統(tǒng)管理員可以更改自己的登錄密碼。全文共分五章,本章為緒論,其余各章的內(nèi)容安排如下:第二章,闡述了開(kāi)發(fā)用到的技術(shù),例如C#、CSS、HTML與數(shù)據(jù)庫(kù)以及VisualStdio開(kāi)發(fā)工具、MicrosoftSQLServer等。第三章,藥房管理系統(tǒng)的概述、系統(tǒng)功能結(jié)構(gòu)、流程圖。整個(gè)系統(tǒng)結(jié)構(gòu)有二個(gè)角色:一般職工和系統(tǒng)管理員。第四章,介紹了惠民藥店藥品管理系統(tǒng)的設(shè)計(jì)。包括各個(gè)模塊的概述、E-R圖、數(shù)據(jù)庫(kù)表還有系統(tǒng)結(jié)構(gòu)的設(shè)計(jì)。第五章,介紹了惠民藥店藥品管理系統(tǒng)的實(shí)現(xiàn),實(shí)現(xiàn)的技術(shù)解釋?zhuān)δ苊枋?。相關(guān)技術(shù)簡(jiǎn)介ASP.NET與C#簡(jiǎn)介ASP.NET是一個(gè)開(kāi)放的開(kāi)發(fā)編程平臺(tái),它提供了VB、C#等幾種比較常見(jiàn)的開(kāi)發(fā)語(yǔ)言。它還提供了.NET的Web窗體,使得編寫(xiě)Web頁(yè)面就像編寫(xiě)VB窗體一樣。Asp.Net工作原理是:瀏覽器向IIS服務(wù)器發(fā)出http請(qǐng)求,IIS服務(wù)器響應(yīng)http請(qǐng)求,IIS調(diào)用下的數(shù)據(jù)操作,asp.mypage.aspx類(lèi)繼承自system.web.ui.page類(lèi),并實(shí)例化asp.mypage.aspx對(duì)象,向aspnet_isapi.dll發(fā)送html。C#是ASP.NET框架中的一種開(kāi)發(fā)語(yǔ)言,它有很強(qiáng)的可塑性。C#具有一般編程語(yǔ)言的各項(xiàng)優(yōu)點(diǎn),具有靈活性,可移植性,很多代碼可以重復(fù)利用。C#能運(yùn)用Framework代碼庫(kù)提供的各種功能。B/S結(jié)構(gòu)簡(jiǎn)介B/S結(jié)構(gòu),即瀏覽器/服務(wù)器模式,瀏覽器是客戶(hù)端最重要的應(yīng)用軟件。這種模式開(kāi)發(fā)簡(jiǎn)單、易于維護(hù)。只要在用戶(hù)端安裝一個(gè)瀏覽器,如FireFor或Chrome,另外再安裝數(shù)據(jù)庫(kù),瀏覽器就可以通過(guò)服務(wù)器與數(shù)據(jù)庫(kù)進(jìn)行信息交互。CSS簡(jiǎn)介CSS——樣式設(shè)計(jì)語(yǔ)言,控制HTML中的文本樣式。具有非凡的編控能力。它具有較強(qiáng)的互動(dòng)性與易讀性。它控制者h(yuǎn)tml中的字體樣式如大小、顏色等,還有html中的布局、內(nèi)容等,它與div結(jié)合是當(dāng)前主流的頁(yè)面表現(xiàn)方式。SQLServer2008的簡(jiǎn)介SQLServer2008數(shù)據(jù)庫(kù)是一種存儲(chǔ)數(shù)據(jù)的應(yīng)用服務(wù)器。它可以對(duì)保存在這上的數(shù)據(jù)進(jìn)行查詢(xún)、修改、刪除等之類(lèi)的操作。無(wú)論何種數(shù)據(jù)存儲(chǔ)在哪種設(shè)備上,從服務(wù)器到普通計(jì)算機(jī)或者移動(dòng)設(shè)備,它都可以對(duì)數(shù)據(jù)進(jìn)行控制。系統(tǒng)分析系統(tǒng)概述惠民藥店藥品管理系統(tǒng)是針對(duì)當(dāng)前社會(huì)中零售藥房而開(kāi)發(fā)的一套軟件系統(tǒng)。本系統(tǒng)采取模塊化設(shè)計(jì),用E-R圖來(lái)分析該系統(tǒng)中的各種功能。職員管理包括:添加員工、編輯員工等。入庫(kù)管理包括:登記、查詢(xún)?nèi)霂?kù)藥品。庫(kù)存管理包括:查詢(xún)和修改庫(kù)存藥品等。藥品采購(gòu)管理包括:登記、查詢(xún)或刪除入庫(kù)信息。報(bào)損管理包括:登記、查詢(xún)損毀藥品。系統(tǒng)功能結(jié)構(gòu)功能結(jié)構(gòu)圖是對(duì)整個(gè)系統(tǒng)的功能進(jìn)行分析后所畫(huà)的圖形、具有直觀的視覺(jué)效果,看了結(jié)構(gòu)圖后,會(huì)對(duì)整個(gè)系統(tǒng)有了具體的印象,所有的功能也都了解清楚。采用這種畫(huà)圖方式可以對(duì)功能層層分解,分解的越詳細(xì),功能就越清晰,一個(gè)功能模塊代表著這個(gè)程序中的一個(gè)處理過(guò)程?;菝袼幍晁幤饭芾硐到y(tǒng)由系統(tǒng)管理員、普通管理員組成。1.藥品信息管理包括:藥品類(lèi)別管理、藥品信息的添加、修改和刪除和查詢(xún)等。2.客戶(hù)信息管理包括:供應(yīng)客戶(hù)和采購(gòu)客戶(hù)信息的添加修改和刪除等。3.藥品采購(gòu)管理包括:登記、查詢(xún)或刪除入庫(kù)信息。4.報(bào)損管理包括:登記、查詢(xún)損毀藥品。5.入庫(kù)管理包括:登記、查詢(xún)?nèi)霂?kù)藥品。6.庫(kù)存管理包括:查詢(xún)和修改庫(kù)存藥品等。7.系統(tǒng)管理員的功能增加了員工管理模塊,即對(duì)普通管理員進(jìn)行增、刪、改、查的綜合管理,并可以對(duì)管理員的密碼進(jìn)行修改。系統(tǒng)流程圖系統(tǒng)流程圖是整個(gè)系統(tǒng)的實(shí)現(xiàn)過(guò)程,它給開(kāi)發(fā)者提供了一種思路,也是軟件設(shè)計(jì)之初就要完成的一個(gè)任務(wù)。它用圖表的方式直接呈現(xiàn)給開(kāi)發(fā)者和使用者,使讀者對(duì)整個(gè)流程和功能一目了然。一個(gè)大的項(xiàng)目必須要有系統(tǒng)流程圖作為指導(dǎo),程序員根據(jù)流程圖來(lái)編寫(xiě)代碼,實(shí)現(xiàn)各功能,最終完成產(chǎn)品?;菝袼幍晁幤饭芾硐到y(tǒng)設(shè)計(jì)系統(tǒng)設(shè)計(jì)的概述系統(tǒng)由普通管理員和系統(tǒng)管理員組成。普通管理員的功能包括:公司信息設(shè)置,藥品信息管理,客戶(hù)信息管理,采購(gòu)管理,銷(xiāo)售管理,報(bào)損管理。系統(tǒng)管理員的功能包括:添加員工,編輯員工。藥品信息管理包括:藥品登記,藥品查詢(xún)。客戶(hù)管理包括:供應(yīng)客戶(hù)信息添加,供應(yīng)客戶(hù)信息管理,采購(gòu)客戶(hù)信息添加,采購(gòu)信息管理。銷(xiāo)售管理包括:銷(xiāo)售登記,銷(xiāo)售查詢(xún)。報(bào)損管理包括:報(bào)損登記,報(bào)損查詢(xún)。系統(tǒng)數(shù)據(jù)庫(kù)表的結(jié)構(gòu)及E-R圖數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì)實(shí)體與實(shí)體之間的聯(lián)系,是整個(gè)系統(tǒng)結(jié)構(gòu)的邏輯思維。如何設(shè)計(jì)它們之間的關(guān)系至關(guān)重要,這些實(shí)體所包含的不同屬性,形成一種數(shù)據(jù)流,實(shí)現(xiàn)交互的作用。根據(jù)以上所述設(shè)計(jì)出下列實(shí)體關(guān)系。管理員實(shí)體E-R圖如圖4-1所示。員工員工姓名密碼密碼姓名密碼密碼圖4-1管理員實(shí)體ER圖員工實(shí)體E-R圖如圖4-2所示。員工員工密碼姓名密碼姓名圖4-2員工實(shí)體ER圖藥品實(shí)體ER圖如圖4-3所示。藥品信息藥品信息生產(chǎn)廠家批次藥品編號(hào)藥品名稱(chēng)生產(chǎn)廠家批次藥品編號(hào)藥品名稱(chēng)圖4-3藥品實(shí)體信息實(shí)體ER圖藥品入庫(kù)實(shí)體ER圖如圖4-4所示。藥品入庫(kù)信息藥品入庫(kù)信息入庫(kù)價(jià)格數(shù)量藥品名稱(chēng)藥品編號(hào)入庫(kù)價(jià)格數(shù)量藥品名稱(chēng)藥品編號(hào)圖4-4藥品入庫(kù)信息ER圖藥品出庫(kù)實(shí)體ER圖如圖4-5所示。藥品出庫(kù)信息藥品出庫(kù)信息價(jià)格數(shù)量藥品名稱(chēng)編號(hào)價(jià)格數(shù)量藥品名稱(chēng)編號(hào)圖4-5藥品出庫(kù)信息實(shí)體ER圖藥品報(bào)損實(shí)體ER圖如圖4-6所示。報(bào)損報(bào)損藥品編號(hào)藥品名稱(chēng)供應(yīng)商數(shù)量藥品編號(hào)藥品名稱(chēng)供應(yīng)商數(shù)量圖4-6藥品報(bào)損信息實(shí)體ER圖系統(tǒng)E-R圖E—R圖,即實(shí)體-關(guān)系圖,是描述數(shù)據(jù)實(shí)體之間的關(guān)系的一種表示方式,根據(jù)E—R圖可以更加直觀的看出數(shù)據(jù)表的結(jié)構(gòu)以及表與表之間的關(guān)系。惠民藥店藥品管理系統(tǒng)總體E-R圖如圖4-7所示。圖4-7惠民藥店藥品管理系統(tǒng)E-R圖系統(tǒng)數(shù)據(jù)表設(shè)計(jì)系統(tǒng)采用SQLServer2008數(shù)據(jù)庫(kù),如下是各表的組織結(jié)構(gòu):1.a(chǎn)lllb(藥品類(lèi)別表)藥品類(lèi)別表主要用來(lái)保存編號(hào)(ID)、藥品類(lèi)別名(lb)、添加時(shí)間(addtime)、管理員(addby)。藥品類(lèi)別表結(jié)構(gòu)如表4-1所示。表4-1藥品類(lèi)別表alllb的結(jié)構(gòu)字段名注釋類(lèi)型長(zhǎng)度是否主鍵是否不為空ID編號(hào)INT4√√lb藥品類(lèi)別名VARCHAR20addtime添加時(shí)間DATETIMEaddby管理員VARCHAR502.a(chǎn)llpro(藥品表)藥品表主要用來(lái)保存編號(hào)(ID)、藥品名稱(chēng)(mc)、藥品類(lèi)別名(lb)、采購(gòu)價(jià)(price1)、銷(xiāo)售價(jià)(price2)、藥品功能(content)、藥品圖片(fn)、藥品添加時(shí)間(addtime)、管理員(addby)、藥品編號(hào)(bh)、生產(chǎn)批號(hào)(ggxh)、供應(yīng)商(gys)、計(jì)量單位(dw)。藥品表結(jié)構(gòu)如表4-2所示。表4-2藥品表allpro的結(jié)構(gòu)字段名注釋類(lèi)型長(zhǎng)度是否主鍵是否不為空ID編號(hào)INT4√√mc藥品名稱(chēng)VARCHAR50√lb藥品類(lèi)別名VARCHAR20√price1采購(gòu)價(jià)FLOAT√price2銷(xiāo)售價(jià)FLOAT8√content藥品功能VARCHAR500√fn藥品圖片VARCHAR20√addtime藥品添加時(shí)間DATETIME50√addby管理員VARCHAR50√bh藥品編號(hào)VARCHAR50√ggxh生產(chǎn)批號(hào)VARCHAR50√gys供應(yīng)商VARCHAR50√dw計(jì)量單位VARCHAR50√3.a(chǎn)llusers(用戶(hù)表)用戶(hù)表主要用來(lái)保存編號(hào)(ID)、用戶(hù)名(username)、用戶(hù)密碼(pwd)、角色(cx)、添加時(shí)間(addtime)。用戶(hù)表結(jié)構(gòu)如表4-3所示。表4-3用戶(hù)表allusers的結(jié)構(gòu)字段名注釋類(lèi)型長(zhǎng)度是否主鍵是否不為空ID編號(hào)INT4√√username用戶(hù)名VARCHAR50√pwd用戶(hù)密碼VARCHAR50√cx角色VARCHAR50√addtime添加時(shí)間DATETIME√4.dx(公司設(shè)置表)公司設(shè)置表主要用來(lái)保存標(biāo)題(title)、內(nèi)容(content)。公司設(shè)置表結(jié)構(gòu)如表4-4所示。表4-4公司設(shè)置表dx的結(jié)構(gòu)字段名注釋類(lèi)型長(zhǎng)度是否主鍵是否不為空title標(biāo)題VARCHAR50√content內(nèi)容TEXT√5.baosun(報(bào)損表)報(bào)損表表主要用來(lái)保存編號(hào)(ID)、藥品名稱(chēng)(promc)、建議采購(gòu)價(jià)(price)、實(shí)際進(jìn)貨價(jià)(rkprice)、供應(yīng)商(gys)、報(bào)損數(shù)量(bssl)、備注(memo)、添加時(shí)間(addtime)。報(bào)損表結(jié)構(gòu)如表4-5所示。表4-5報(bào)損表baosun的結(jié)構(gòu)字段名注釋類(lèi)型長(zhǎng)度是否主鍵是否不為空ID編號(hào)INT4√√promc藥品名稱(chēng)VARCHAR50√price建議采購(gòu)價(jià)FLOAT√rkprice實(shí)際進(jìn)貨價(jià)FLOAT√gys供應(yīng)商VARCHAR50√bssl報(bào)損數(shù)量FLOAT√memo備注VARCHAR255√addtime添加時(shí)間DATETIME√6.kh(客戶(hù)表)客戶(hù)表主要用來(lái)保存編號(hào)(ID)、客戶(hù)編號(hào)(bh)、姓名(xm)、地址(addr)、身份證號(hào)(sfz)、性別(gender)、電話(huà)(tel)、添加時(shí)間(addtime)、郵編(postcode)、開(kāi)戶(hù)銀行(bank)、銀行賬號(hào)(bankno)、補(bǔ)充說(shuō)明(memo)、關(guān)系(lx)。客戶(hù)表結(jié)構(gòu)如表4-6所示。表4-6客戶(hù)表kh的結(jié)構(gòu)字段名注釋類(lèi)型長(zhǎng)度是否主鍵是否不為空ID編號(hào)INT4√√bh客戶(hù)編號(hào)VARCHAR50xm姓名VARCHAR50√addr地址VARCHAR50√sfz身份證號(hào)VARCHAR20√gender性別VARCHAR2√tel電話(huà)VARCHAR50√addtime添加時(shí)間DATETIME√postcode郵編VARCHAR50√bank開(kāi)戶(hù)銀行VARCHAR50√bankno銀行賬號(hào)VARCHAR50√memo補(bǔ)充說(shuō)明VARCHAR255√lx關(guān)系VARCHAR50√7.kucun(庫(kù)存表)評(píng)價(jià)表主要用來(lái)保存編號(hào)(ID)、藥品名稱(chēng)(promc)、價(jià)格(price)、數(shù)量(shuliang)、添加時(shí)間(addtime)、供應(yīng)商(gys)、入庫(kù)價(jià)格(rkprice)、生產(chǎn)批次(ggxh)、計(jì)量單位(dw)、藥品編號(hào)(bh)。庫(kù)存表結(jié)構(gòu)如表4-7所示。表4-7庫(kù)存表kucun的結(jié)構(gòu)字段名注釋類(lèi)型長(zhǎng)度是否主鍵是否不為空ID編號(hào)INT4√√promc藥品名稱(chēng)VARCHAR50√price價(jià)格FLOAT50√shuliang數(shù)量INT4√addtime添加時(shí)間DATETIME50√gys供應(yīng)商VARCHAR50√rkprice入庫(kù)價(jià)格FLOAT√ggxh生產(chǎn)批次VARCHAR50√dw計(jì)量單位VARCHAR50√bh藥品編號(hào)VARCHAR50√8.ruku(入庫(kù)表)入庫(kù)表主要用來(lái)保存編號(hào)(ID)、藥品名稱(chēng)(tittle)、價(jià)格(price)、數(shù)量(shuliang)、添加時(shí)間(addtime)、供應(yīng)商(gys)、入庫(kù)價(jià)格(rkprice)、生產(chǎn)批次(ggxh)、計(jì)量單位(dw)、藥品編號(hào)(bh)。入庫(kù)表結(jié)構(gòu)如表4-8所示。表4-8入庫(kù)表ruku的結(jié)構(gòu)字段名注釋類(lèi)型長(zhǎng)度是否主鍵是否不為空ID編號(hào)INT4√√promc藥品名稱(chēng)VARCHAR50√price價(jià)格FLOAT50√shuliang數(shù)量INT4√addtime添加時(shí)間DATETIME50√gys供應(yīng)商VARCHAR50√rkprice入庫(kù)價(jià)格FLOAT√ggxh生產(chǎn)批次VARCHAR50√dw計(jì)量單位VARCHAR50√bh藥品編號(hào)VARCHAR50√9.tuihuo(退貨表)退貨表主要用來(lái)保存編號(hào)(ID)、藥品名稱(chēng)(promc)、價(jià)格(price)、入庫(kù)價(jià)格(rkprice)、供應(yīng)商(gys)、退貨數(shù)量(thsl)、退貨原因(memo)、添加時(shí)間(addtime)。退貨表記錄了客戶(hù)退貨的時(shí)間原因,是整個(gè)數(shù)據(jù)庫(kù)中較為重要的一張表。管理員根據(jù)退貨記錄查看退貨數(shù)據(jù),來(lái)決定藥品的銷(xiāo)售退貨情況,以便判斷哪種藥品不再適合進(jìn)貨,減少藥房金額損失。退貨表結(jié)構(gòu)如表4-9所示。表4-9退貨表tuihuo的結(jié)構(gòu)字段名注釋類(lèi)型長(zhǎng)度是否主鍵是否不為空ID編號(hào)INT4√√promc藥品名稱(chēng)VARCHAR50√price價(jià)格FLOAT√rkprice入庫(kù)價(jià)格FLOAT√gys供應(yīng)商VARCHAR50√thsl退貨數(shù)量FLOAT√memo退貨原因VARCHAR255√addtime添加時(shí)間DATETIME√10.xiaoshou(銷(xiāo)售表)銷(xiāo)售表主要用來(lái)保存編號(hào)(ID)、藥品名稱(chēng)(promc)、價(jià)格(price)、入庫(kù)價(jià)格(rkprice)、供應(yīng)商(gys)、銷(xiāo)售數(shù)量(xssl)、出庫(kù)價(jià)格(ckprice)、備注(memo)、添加時(shí)間(addtime)。銷(xiāo)售表結(jié)構(gòu)如表4-10所示。表4-10銷(xiāo)售表xiaoshou的結(jié)構(gòu)字段名注釋類(lèi)型長(zhǎng)度是否主鍵是否不為空ID編號(hào)INT4√√promc藥品名稱(chēng)VARCHAR50√price價(jià)格FLOAT√rkprice入庫(kù)價(jià)格FLOAT√gys供應(yīng)商VARCHAR50√xssl銷(xiāo)售數(shù)量FLOAT√ckprice出庫(kù)價(jià)格FLOAT√memo備注MEMO255√addtime添加時(shí)間DATETIME√11.zfcg(支付采購(gòu)表)支付采購(gòu)表主要用來(lái)保存編號(hào)(ID)、藥品編號(hào)(bh)、付款日期(fkdate)、支付金額(je)、管理員(addby)、付款方式(fkfs)、客戶(hù)名稱(chēng)(khmc)、補(bǔ)充說(shuō)明(memo)。支付采購(gòu)表結(jié)構(gòu)如表4-11所示。表4-11支付采購(gòu)表zfcg的結(jié)構(gòu)字段名注釋類(lèi)型長(zhǎng)度是否主鍵是否不為空ID編號(hào)INT4√√bh藥品編號(hào)VARCHAR50√fkdate付款日期DATETIME√je支付金額FLOAT√addby管理員VARCHAR50√fkfs付款方式VARCHAR50√khmc客戶(hù)名稱(chēng)VARCHAR50√memo補(bǔ)充說(shuō)明TEXT√惠民藥店藥品管理系統(tǒng)的實(shí)現(xiàn)數(shù)據(jù)庫(kù)連接配置數(shù)據(jù)庫(kù)在軟件開(kāi)發(fā)中起著非常重要的作用,其作用是保存開(kāi)發(fā)數(shù)據(jù)。本系統(tǒng)采用MicrosoftSQLServer2008數(shù)據(jù)庫(kù),A與數(shù)據(jù)庫(kù)連接主要代碼如下:<configuration><appSettings><addkey="cn"value="DataSource=.;InitialCatalog=nthm;IntegratedSecurity=True"/></appSettings><connectionStrings/><system.web><globalizationrequestEncoding="GB2312"responseEncoding="GB2312"/><compilationdebug="true"/><authenticationmode="Windows"/><pagesvalidateRequest="false"/></system.web></configuration>系統(tǒng)主界面系統(tǒng)主界面是整個(gè)系統(tǒng)的呈現(xiàn)頁(yè)面,左側(cè)采用TreeNode控件實(shí)現(xiàn)樹(shù)形二級(jí)分支結(jié)構(gòu),一級(jí)是大的功能模塊,二級(jí)結(jié)構(gòu)是各大模塊下的子模塊,右側(cè)是各功能內(nèi)容展示。首頁(yè)界面如圖5-1所示。圖5-1系統(tǒng)主界面系統(tǒng)登錄登錄界面用form表單完成,里面包含兩個(gè)table,第一個(gè)用來(lái)顯示項(xiàng)目名稱(chēng),第二個(gè)用來(lái)顯示用戶(hù)名、密碼和登錄等標(biāo)簽,背景放置一張圖片。系統(tǒng)管理員的用戶(hù)名和密碼先添加到數(shù)據(jù)庫(kù)中,然后由系統(tǒng)管理員在程序后臺(tái)對(duì)員工進(jìn)行添加維護(hù)等,管理員在業(yè)面點(diǎn)擊登錄按鈕onclick觸發(fā)后臺(tái)判斷用戶(hù)名和密碼是否正確,若正確則進(jìn)入首頁(yè)。登錄界面如圖5-2所示。圖5-2管理員登錄界面登錄處理過(guò)程如圖5-3所示。用戶(hù)登錄用戶(hù)登錄登錄頁(yè)面錯(cuò)誤登錄系統(tǒng)根據(jù)權(quán)限進(jìn)入管理功能模塊正確沒(méi)有輸入輸入密碼判斷是否正確圖5-3登錄處理過(guò)程員工管理模塊添加員工添加員工界面用table放置用戶(hù)名、密碼、確認(rèn)密碼,系統(tǒng)管理員有權(quán)限添加員工,頁(yè)面點(diǎn)擊按鈕觸發(fā)后臺(tái)Page_Load方法判斷管理員有沒(méi)有權(quán)限進(jìn)行添加,如果是系統(tǒng)管理員,則執(zhí)行Button1_Click方法中的SQL庫(kù)語(yǔ)句,向數(shù)據(jù)庫(kù)中添加員工信息。點(diǎn)擊重置按鈕觸發(fā)reset方法把、密碼、確認(rèn)密碼文本框清空,以便重新輸入。添加員工這個(gè)頁(yè)面可以對(duì)員工進(jìn)行新增。當(dāng)管理員選擇員工這個(gè)大類(lèi)時(shí),程序馬上就會(huì)在后臺(tái)獲取所選員工大類(lèi)的編號(hào)。然后通過(guò)這個(gè)id去數(shù)據(jù)庫(kù)查詢(xún)Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別。然后把Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別數(shù)據(jù)取出再返回到后臺(tái)。再把數(shù)據(jù)綁定到頁(yè)面里的DropDownList控件中。然后就可以選定要添加的員工的二級(jí)類(lèi)別。在編輯具體的員工時(shí),這里用到了Fck控件。這個(gè)控件的使用使編輯員工內(nèi)容更便捷,還可以設(shè)置員工字體的格式和插入圖片。使內(nèi)容看起來(lái)更加的美觀。點(diǎn)擊添加成功的話(huà),彈框提示成功。添加員工界面如圖5-4所示。圖5-4添加員工界面編輯員工編輯員工界面由div和dategrid,div用來(lái)顯示標(biāo)題,datagrid顯示管理員各屬性,dategrid具有排序、分頁(yè)、多列顯示,TemplateColumn自定義字段,點(diǎn)擊此字段時(shí),彈出一個(gè)對(duì)話(huà)框,datagrid從后臺(tái)sql語(yǔ)句取得數(shù)據(jù)并顯示,在后臺(tái)Page_Load事件中刷新數(shù)據(jù)。系統(tǒng)管理員可以對(duì)所有用戶(hù)進(jìn)行編輯。點(diǎn)擊刪除欄時(shí),當(dāng)行所有信息都會(huì)刪除,并實(shí)時(shí)刷新顯示。這個(gè)頁(yè)面用于對(duì)員工的更新和維護(hù)。它也可以修改到員工信息所屬的一級(jí)類(lèi)別。當(dāng)選中員工這個(gè)大類(lèi)別時(shí),程序就會(huì)馬上在后臺(tái)獲取到所選員工的大類(lèi)的編號(hào)。然后通過(guò)這個(gè)編號(hào)去數(shù)據(jù)庫(kù)查詢(xún)Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別。然后把Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別數(shù)據(jù)取出再返回到后臺(tái)。再把數(shù)據(jù)綁定到頁(yè)面里的DropDownList控件中。然后就可以選定要修改的員工的二級(jí)類(lèi)別。當(dāng)所有要修改的數(shù)據(jù)填寫(xiě)好后,點(diǎn)擊更新,成功的話(huà)會(huì)彈出成功提示框。編輯員工界面如圖5-5所示。圖5-5編輯員工界面公司信息設(shè)置公司信息設(shè)置由一系列td和webeditor呈現(xiàn),由于是文本顯示,所以才用webeditor顯示公司信息,webeditor是一個(gè)文本編輯域,適合編輯較多文本時(shí)使用。點(diǎn)擊按鈕觸發(fā)事件,Button1_Click事件修改數(shù)據(jù)表語(yǔ)句,然后后臺(tái)刷新數(shù)據(jù),前臺(tái)顯示新設(shè)置信息。點(diǎn)擊重置按鈕觸發(fā)reset方法把webeditor內(nèi)置空,以便重新輸入。公司信息設(shè)置用來(lái)顯示公司向員工發(fā)布的信息。公司信息設(shè)置界面如圖5-6所示。圖5-6公司信息設(shè)置界面藥品信息管理模塊系統(tǒng)管理員和普通管理員都有權(quán)對(duì)藥品信息進(jìn)行維護(hù)。維護(hù)包括添加、刪除、修改等。維護(hù)功能集中在一個(gè)界面中,方便操作。藥品類(lèi)別管理要添加藥品得先添加藥品類(lèi)別,以方便對(duì)藥品進(jìn)行歸類(lèi),也可以對(duì)藥品類(lèi)別進(jìn)行修改和刪除。藥品添加和修改刪除放在同一頁(yè)面,用兩個(gè)table放置,datagrid顯示藥品類(lèi)別各屬性,dategrid具有排序、分頁(yè)、多列顯示,TemplateColumn自定義字段,點(diǎn)擊此字段時(shí),彈出一個(gè)對(duì)話(huà)框,datagrid從后臺(tái)getdata方法中判斷有無(wú)數(shù)據(jù),sql語(yǔ)句取得數(shù)據(jù)并顯示,在后臺(tái)Page_Load事件中刷新數(shù)據(jù)。添加藥品類(lèi)別用table放置,有添加和重置按鈕,點(diǎn)擊添加按鈕時(shí)觸發(fā)后臺(tái)Btn_Onclick方法打開(kāi)數(shù)據(jù)庫(kù),執(zhí)行sql添加語(yǔ)句insert進(jìn)行插入數(shù)據(jù),添加成功后,會(huì)有提示框彈出,之后,類(lèi)別列表里會(huì)有新添加的那個(gè)類(lèi)別。點(diǎn)擊點(diǎn)擊重置按鈕觸發(fā)reset方法把所填文本框全部置空,以便重新輸入。第二個(gè)table放置對(duì)藥品類(lèi)別的更新和維護(hù)。它也可以修改到藥品類(lèi)別所屬的一級(jí)類(lèi)別。當(dāng)選中藥品類(lèi)別這個(gè)大類(lèi)別時(shí),程序就會(huì)馬上在后臺(tái)獲取到所選藥品類(lèi)別的大類(lèi)的編號(hào)。然后通過(guò)這個(gè)編號(hào)去數(shù)據(jù)庫(kù)查詢(xún)Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別。然后把Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別數(shù)據(jù)取出再返回到后臺(tái)。再把數(shù)據(jù)綁定到頁(yè)面里的DropDownList控件中。然后就可以選定要修改的藥品類(lèi)別的二級(jí)類(lèi)別。當(dāng)所有要修改的數(shù)據(jù)填寫(xiě)好后,點(diǎn)擊更新,成功的話(huà)會(huì)彈出成功提示框。藥品類(lèi)別管理界面如圖5-7所示。圖5-7藥品類(lèi)別管理界面藥品信息添加錄入藥品基本信息,其中藥品類(lèi)別已經(jīng)存在,故用了DropDownList下拉列表,方便用戶(hù)選擇,將DataReader讀取的數(shù)據(jù)動(dòng)態(tài)綁定到DropDownList。上傳藥品圖片用到了FileUpload控件。用戶(hù)找到本地文件路徑選擇圖片,上傳到服務(wù)器。主治功能用了最常用的textbox文本框,通過(guò)后臺(tái)執(zhí)行sql插入語(yǔ)句,添加到數(shù)據(jù)庫(kù)。添加藥品類(lèi)別用table放置,有添加和重置按鈕,點(diǎn)擊添加按鈕時(shí)觸發(fā)后臺(tái)Btn_Onclick方法打開(kāi)數(shù)據(jù)庫(kù),執(zhí)行sql添加語(yǔ)句insert進(jìn)行插入數(shù)據(jù),添加成功后,會(huì)有提示框彈出,之后,類(lèi)別列表里會(huì)有新添加的那個(gè)類(lèi)別。點(diǎn)擊點(diǎn)擊重置按鈕觸發(fā)reset方法把所填文本框全部置空,以便重新輸入。藥品信息添加這個(gè)頁(yè)面可以添加藥品信息。當(dāng)管理員選擇藥品這個(gè)大類(lèi)時(shí),程序馬上就會(huì)在后臺(tái)獲取所選藥品大類(lèi)的編號(hào)。然后通過(guò)這個(gè)id去數(shù)據(jù)庫(kù)查詢(xún)Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別。然后把Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別數(shù)據(jù)取出再返回到后臺(tái)。再把數(shù)據(jù)綁定到頁(yè)面里的DropDownList控件中。然后就可以選定要添加的藥品信息的二級(jí)類(lèi)別。在編輯具體的藥品內(nèi)容時(shí),這里用到了Fck控件。這個(gè)控件的使用使編輯員工內(nèi)容更便捷,還可以設(shè)置藥品內(nèi)容字體的格式和插入圖片。使內(nèi)容看起來(lái)更加的美觀。點(diǎn)擊添加成功的話(huà),彈框提示成功。藥品添加信息界面如圖5-8所示。圖5-8藥品信息添加界面藥品信息管理藥品信息管理有基本的搜索功能,采用模糊查詢(xún)方式,方便用戶(hù)快速查找所要的藥品信息,點(diǎn)擊搜素按鈕,觸發(fā)后臺(tái)searchkey_Click方法會(huì)顯示所要查詢(xún)的所有相似信息,顯示藥品信息同樣用到了datagrid,datagrid從后臺(tái)sql語(yǔ)句取得數(shù)據(jù)并顯示,在后臺(tái)Page_Load事件中刷新數(shù)據(jù)。另外,用到了自定義字段asp:TemplateColumn來(lái)顯示藥品圖片,添加時(shí)間是調(diào)用系統(tǒng)時(shí)間,實(shí)時(shí)添加并顯示。點(diǎn)擊搜索按鈕觸發(fā)后臺(tái)Btn_Onclick方法,連接數(shù)據(jù)庫(kù),執(zhí)行sql語(yǔ)句select進(jìn)行搜索,對(duì)數(shù)據(jù)庫(kù)查詢(xún),如果查詢(xún)成功,會(huì)在datagrid列表中顯示。用table放置對(duì)藥品的更新和維護(hù)。它也可以修改到藥品所屬的一級(jí)類(lèi)別。當(dāng)選中藥品這個(gè)大類(lèi)別時(shí),程序就會(huì)馬上在后臺(tái)獲取到所選藥品的大類(lèi)的編號(hào)。然后通過(guò)這個(gè)編號(hào)去數(shù)據(jù)庫(kù)查詢(xún)Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別。然后把Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別數(shù)據(jù)取出再返回到后臺(tái)。再把數(shù)據(jù)綁定到頁(yè)面里的DropDownList控件中。然后就可以選定要修改的藥品的二級(jí)類(lèi)別。當(dāng)所有要修改的數(shù)據(jù)填寫(xiě)好后,點(diǎn)擊更新,成功的話(huà)會(huì)彈出成功提示框。藥品管理界面如圖5-9所示。圖5-9藥品信息管理界面藥品信息修改藥品編號(hào)對(duì)應(yīng)的下拉列表綁定其他屬性,選定一個(gè)編號(hào),其他信息會(huì)自動(dòng)顯示,點(diǎn)擊添加按鈕觸發(fā)后臺(tái)執(zhí)行sql語(yǔ)句修改數(shù)據(jù)并保存到數(shù)據(jù)庫(kù)。修改后的信息可以在藥品庫(kù)存列表里看到。DropDownList是下拉框,用來(lái)顯示藥品類(lèi)別,管理員可從中選擇一種類(lèi)別來(lái)操作。用table放置對(duì)藥品的更新和維護(hù)。它也可以修改到藥品所屬的一級(jí)類(lèi)別。當(dāng)選中藥品這個(gè)大類(lèi)別時(shí),程序就會(huì)馬上在后臺(tái)獲取到所選藥品的大類(lèi)的編號(hào)。然后通過(guò)這個(gè)編號(hào)去數(shù)據(jù)庫(kù)查詢(xún)Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別。然后把Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別數(shù)據(jù)取出再返回到后臺(tái)。再把數(shù)據(jù)綁定到頁(yè)面里的DropDownList控件中。然后就可以選定要修改的藥品的二級(jí)類(lèi)別。當(dāng)所有要修改的數(shù)據(jù)填寫(xiě)好后,點(diǎn)擊更新,成功的話(huà)會(huì)彈出成功提示框。點(diǎn)擊修改按鈕觸發(fā)后臺(tái)Btn_Onclick方法,連接數(shù)據(jù)庫(kù),執(zhí)行sql語(yǔ)句update進(jìn)行修改,修改數(shù)據(jù)庫(kù)中得內(nèi)容,如果修改成功,有提示框彈出,并會(huì)在藥品信息datagrid列表中顯示。藥品信息修改界面如圖5-10所示。圖5-10藥品信息修改界面庫(kù)存查詢(xún)庫(kù)存列表用來(lái)顯示庫(kù)存藥品信息,根據(jù)藥品編號(hào)或名稱(chēng)搜索某種藥品庫(kù)存數(shù)量等,也可以搜索某段時(shí)間內(nèi)庫(kù)存藥品信息。起始日期和終止日期都用來(lái)DropDownList來(lái)讓用戶(hù)選擇時(shí)間,后臺(tái)Page_Load方法控制日期,庫(kù)存信息同樣用datagrid顯示,datagrid從后臺(tái)sql語(yǔ)句取得數(shù)據(jù)并顯示,在后臺(tái)Page_Load事件中刷新數(shù)據(jù)。其中,打印庫(kù)存數(shù)據(jù)表單用到了javascript:window.print()事件。PagerStyle自動(dòng)分頁(yè)功能,如果數(shù)據(jù)很多,就會(huì)分頁(yè)顯示。點(diǎn)擊某行刪除欄,會(huì)觸發(fā)后臺(tái)getdata方法調(diào)用sql語(yǔ)句改變庫(kù)存數(shù)量,刪除當(dāng)前行的庫(kù)存記錄,并刷新顯示。點(diǎn)擊搜索按鈕觸發(fā)后臺(tái)Btn_Onclick方法,連接數(shù)據(jù)庫(kù),執(zhí)行sql語(yǔ)句select進(jìn)行搜索,對(duì)數(shù)據(jù)庫(kù)查詢(xún),如果查詢(xún)成功,會(huì)在datagrid列表中顯示。用table放置對(duì)藥品庫(kù)存的更新和維護(hù)。它也可以修改到藥品庫(kù)存所屬的一級(jí)類(lèi)別。當(dāng)選中藥品庫(kù)存這個(gè)大類(lèi)別時(shí),程序就會(huì)馬上在后臺(tái)獲取到所選藥品庫(kù)存的大類(lèi)的編號(hào)。然后通過(guò)這個(gè)編號(hào)去數(shù)據(jù)庫(kù)查詢(xún)Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別。然后把Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別數(shù)據(jù)取出再返回到后臺(tái)。再把數(shù)據(jù)綁定到頁(yè)面里的DropDownList控件中。然后就可以選定要修改的藥品庫(kù)存的二級(jí)類(lèi)別。當(dāng)所有要修改的數(shù)據(jù)填寫(xiě)好后,點(diǎn)擊更新,成功的話(huà)會(huì)彈出成功提示框。庫(kù)存查詢(xún)界面如圖5-11所示。圖5-11庫(kù)存查詢(xún)界面采購(gòu)管理模塊入庫(kù)登記藥品編號(hào)對(duì)應(yīng)的下拉列表DropDownList綁定其他屬性,選定一個(gè)編號(hào),其他信息會(huì)自動(dòng)顯示,點(diǎn)擊添加按鈕觸發(fā)后臺(tái)執(zhí)行sql語(yǔ)句插入數(shù)據(jù)到數(shù)據(jù)庫(kù)。點(diǎn)擊重置按鈕觸發(fā)reset方法把所填文本框全部置空,以便重新輸入。入庫(kù)登記用table放置,有添加和重置按鈕,點(diǎn)擊添加按鈕時(shí)觸發(fā)后臺(tái)Btn_Onclick方法打開(kāi)數(shù)據(jù)庫(kù),執(zhí)行sql添加語(yǔ)句insert進(jìn)行插入數(shù)據(jù),添加成功后,會(huì)有提示框彈出,之后,類(lèi)別列表里會(huì)有新添加的那個(gè)類(lèi)別。點(diǎn)擊點(diǎn)擊重置按鈕觸發(fā)reset方法把所填文本框全部置空,以便重新輸入。入庫(kù)登記這個(gè)頁(yè)面可以對(duì)藥品入庫(kù)進(jìn)行登記。當(dāng)管理員選擇入庫(kù)登記這個(gè)大類(lèi)時(shí),程序馬上就會(huì)在后臺(tái)獲取所選入庫(kù)登記大類(lèi)的編號(hào)。然后通過(guò)這個(gè)id去數(shù)據(jù)庫(kù)查詢(xún)Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別。然后把Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別數(shù)據(jù)取出再返回到后臺(tái)。再把數(shù)據(jù)綁定到頁(yè)面里的DropDownList控件中。然后就可以選定要添加的入庫(kù)登記的二級(jí)類(lèi)別。入庫(kù)登記界面如圖5-12所示。圖5-12入庫(kù)登記界面入庫(kù)查詢(xún)?nèi)霂?kù)列表用來(lái)顯示庫(kù)存藥品信息,根據(jù)藥品編號(hào)或名稱(chēng)搜索某種藥品入庫(kù)信息,也可以搜索某段時(shí)間內(nèi)入口藥品信息。起始日期和終止日期都用DropDownList控件實(shí)現(xiàn)來(lái)讓用戶(hù)可以選擇時(shí)間,入庫(kù)信息同樣用datagrid顯示。PagerStyle自動(dòng)分頁(yè)功能,如果數(shù)據(jù)很多,就會(huì)分頁(yè)顯示。點(diǎn)擊某行刪除欄,會(huì)觸發(fā)后臺(tái)getdata方法調(diào)用sql語(yǔ)句改變庫(kù)存數(shù)量,刪除當(dāng)前行的入庫(kù)記錄,并刷新顯示。點(diǎn)擊搜索按鈕觸發(fā)后臺(tái)Btn_Onclick方法,連接數(shù)據(jù)庫(kù),執(zhí)行sql語(yǔ)句select進(jìn)行搜索,對(duì)數(shù)據(jù)庫(kù)查詢(xún),如果查詢(xún)成功,會(huì)在datagrid列表中顯示。用table放置對(duì)藥品入庫(kù)的維護(hù)。它也可以修改到藥品入庫(kù)所屬的一級(jí)類(lèi)別。當(dāng)選中藥品入庫(kù)這個(gè)大類(lèi)別時(shí),程序就會(huì)馬上在后臺(tái)獲取到所選藥品入庫(kù)的大類(lèi)的編號(hào)。然后通過(guò)這個(gè)編號(hào)去數(shù)據(jù)庫(kù)查詢(xún)Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別。然后把Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別數(shù)據(jù)取出再返回到后臺(tái)。再把數(shù)據(jù)綁定到頁(yè)面里的DropDownList控件中。然后就可以選定要修改的藥品入庫(kù)的二級(jí)類(lèi)別。當(dāng)所有要修改的數(shù)據(jù)填寫(xiě)好后,點(diǎn)擊刪除,刪除成功的話(huà)會(huì)彈出成功提示框。日期搜索的下拉列表采用for循環(huán)方式設(shè)置,序號(hào)采用自動(dòng)增長(zhǎng)的方式實(shí)現(xiàn)。Getdata方法查詢(xún)datagrid表里有沒(méi)有數(shù)據(jù),如果存在數(shù)據(jù),就全部顯示。入庫(kù)查詢(xún)界面如圖5-13所示。圖5-13入庫(kù)查詢(xún)界面退貨登記藥品編號(hào)對(duì)應(yīng)的下拉列表DropDownList綁定其他屬性,選定一個(gè)編號(hào),其他信息會(huì)自動(dòng)顯示,這是觸發(fā)promc_SelectedIndexChanged方法調(diào)用sql查詢(xún)語(yǔ)句實(shí)現(xiàn)的。點(diǎn)擊添加按鈕觸發(fā)后臺(tái)執(zhí)行sql語(yǔ)句使數(shù)據(jù)庫(kù)中數(shù)量減少。退貨登記這個(gè)頁(yè)面可以對(duì)藥品入庫(kù)進(jìn)行登記。當(dāng)管理員選擇退貨登記這個(gè)大類(lèi)時(shí),程序馬上就會(huì)在后臺(tái)獲取所選退貨登記大類(lèi)的編號(hào)。然后通過(guò)這個(gè)id去數(shù)據(jù)庫(kù)查詢(xún)Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別。然后把Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別數(shù)據(jù)取出再返回到后臺(tái)。再把數(shù)據(jù)綁定到頁(yè)面里的DropDownList控件中。然后就可以選定要添加的入庫(kù)登記的藥品。退貨登記用table放置,有添加和重置按鈕,點(diǎn)擊添加按鈕時(shí)觸發(fā)后臺(tái)Btn_Onclick方法打開(kāi)數(shù)據(jù)庫(kù),執(zhí)行sql添加語(yǔ)句insert進(jìn)行插入數(shù)據(jù),添加成功后,會(huì)有提示框彈出,之后,類(lèi)別列表里會(huì)有新添加的那個(gè)類(lèi)別。點(diǎn)擊點(diǎn)擊重置按鈕觸發(fā)reset方法把所填文本框全部置空,以便重新輸入。退貨登記界面如圖5-14所示。圖5-14退貨登記界面退貨查詢(xún)退貨列表datagrid顯示藥品類(lèi)別各屬性,dategrid具有排序、分頁(yè)、多列顯示,TemplateColumn自定義字段,點(diǎn)擊此字段時(shí),彈出一個(gè)對(duì)話(huà)框,datagrid從后臺(tái)sql語(yǔ)句取得數(shù)據(jù)并顯示,在后臺(tái)Page_Load事件中刷新數(shù)據(jù)。用table放置對(duì)藥品入庫(kù)的維護(hù)。它也可以修改到藥品入庫(kù)所屬的一級(jí)類(lèi)別。當(dāng)選中藥品入庫(kù)這個(gè)大類(lèi)別時(shí),程序就會(huì)馬上在后臺(tái)獲取到所選藥品入庫(kù)的大類(lèi)的編號(hào)。然后通過(guò)這個(gè)編號(hào)去數(shù)據(jù)庫(kù)查詢(xún)Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別。然后把Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別數(shù)據(jù)取出再返回到后臺(tái)。再把數(shù)據(jù)綁定到頁(yè)面里的DropDownList控件中。然后就可以選定要修改的藥品入庫(kù)的二級(jí)類(lèi)別。當(dāng)所有要修改的數(shù)據(jù)填寫(xiě)好后,點(diǎn)擊刪除,刪除成功的話(huà)會(huì)彈出成功提示框。PagerStyle自動(dòng)分頁(yè)功能,如果數(shù)據(jù)很多,就會(huì)分頁(yè)顯示。點(diǎn)擊某行刪除欄,會(huì)觸發(fā)后臺(tái)getdata方法調(diào)用sql語(yǔ)句改變庫(kù)存數(shù)量,刪除當(dāng)前行的退貨記錄,并刷新顯示。點(diǎn)擊搜索按鈕觸發(fā)后臺(tái)Btn_Onclick方法,連接數(shù)據(jù)庫(kù),執(zhí)行sql語(yǔ)句select進(jìn)行搜索,對(duì)數(shù)據(jù)庫(kù)查詢(xún),如果查詢(xún)成功,會(huì)在datagrid列表中顯示。退貨查詢(xún)界面如圖5-15所示。圖5-15退貨查詢(xún)界面支付采購(gòu)貨款采購(gòu)藥品需要付款,付款日期用DropDownList下拉列表讓用戶(hù)可以選擇,點(diǎn)擊添加按鈕,通過(guò)onclick事件觸發(fā)后臺(tái)Button1_Click執(zhí)行數(shù)據(jù)操作,向數(shù)據(jù)庫(kù)表中添加數(shù)據(jù)。支付貨款用table放置,有添加和重置按鈕,點(diǎn)擊添加按鈕時(shí)觸發(fā)后臺(tái)Btn_Onclick方法打開(kāi)數(shù)據(jù)庫(kù),執(zhí)行sql添加語(yǔ)句insert進(jìn)行插入數(shù)據(jù),添加成功后,會(huì)有提示框彈出。點(diǎn)擊點(diǎn)擊重置按鈕觸發(fā)reset方法把所填文本框全部置空,以便重新輸入。支付采購(gòu)貨款界面如圖5-16所示。圖5-16支付采購(gòu)貨款界面銷(xiāo)售管理模塊銷(xiāo)售登記藥品名稱(chēng)對(duì)應(yīng)的下拉列表DropDownList綁定其他屬性,選定一個(gè)名稱(chēng),其他對(duì)應(yīng)信息會(huì)自動(dòng)顯示,點(diǎn)擊添加按鈕觸發(fā)后臺(tái)執(zhí)行sql語(yǔ)句插入數(shù)據(jù)到數(shù)據(jù)庫(kù)。銷(xiāo)售登記這個(gè)頁(yè)面可以對(duì)藥品入庫(kù)進(jìn)行登記。當(dāng)管理員選擇銷(xiāo)售登記這個(gè)大類(lèi)時(shí),程序馬上就會(huì)在后臺(tái)獲取所選銷(xiāo)售登記大類(lèi)的編號(hào)。然后通過(guò)這個(gè)id去數(shù)據(jù)庫(kù)查詢(xún)Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別。再把數(shù)據(jù)綁定到頁(yè)面里的DropDownList控件中。然后就可以選定要添加的入庫(kù)登記的藥品。銷(xiāo)售登記用table放置,有添加和重置按鈕,點(diǎn)擊添加按鈕時(shí)觸發(fā)后臺(tái)Btn_Onclick方法打開(kāi)數(shù)據(jù)庫(kù),執(zhí)行sql添加語(yǔ)句insert進(jìn)行插入數(shù)據(jù),添加成功后,會(huì)有提示框彈出。點(diǎn)擊點(diǎn)擊重置按鈕觸發(fā)reset方法把所填文本框全部置空,以便重新輸入。銷(xiāo)售登記界面如圖5-17所示。圖5-17銷(xiāo)售登記界面銷(xiāo)售查詢(xún)銷(xiāo)售列表用來(lái)顯示藥品銷(xiāo)售信息,根據(jù)藥品名稱(chēng)搜索某種藥品銷(xiāo)售信息,也可以搜索某段時(shí)間內(nèi)入口藥品信息。起始日期和終止日期都用來(lái)DropDownList讓用戶(hù)可以選擇,銷(xiāo)售信息也采用datagrid顯示。由于數(shù)據(jù)較多,采用分頁(yè)顯示。點(diǎn)擊某行刪除欄,會(huì)觸發(fā)后臺(tái)getdata方法調(diào)用sql語(yǔ)句改變庫(kù)存數(shù)量,刪除當(dāng)前行的退貨記錄,并刷新顯示。Gatedataa方法調(diào)用class1類(lèi)中的斷語(yǔ)句查詢(xún)datagrid表中有無(wú)數(shù)據(jù)并顯示。Page_Load方法是刷新數(shù)據(jù)。日期搜索用for循環(huán)實(shí)現(xiàn)年月日的時(shí)間下拉選擇。用table放置對(duì)藥品銷(xiāo)售的維護(hù)。它也可以修改到藥品銷(xiāo)售所屬的一級(jí)類(lèi)別。當(dāng)選中藥品銷(xiāo)售這個(gè)大類(lèi)別時(shí),程序就會(huì)馬上在后臺(tái)獲取到所選藥品銷(xiāo)售的大類(lèi)的編號(hào)。然后通過(guò)這個(gè)編號(hào)去數(shù)據(jù)庫(kù)查詢(xún)Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別。然后把Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別數(shù)據(jù)取出再返回到后臺(tái)。再把數(shù)據(jù)綁定到頁(yè)面里的DropDownList控件中。然后就可以選定要?jiǎng)h除的藥品入庫(kù)的銷(xiāo)售記錄。當(dāng)所有要修改的數(shù)據(jù)填寫(xiě)好后,點(diǎn)擊刪除,刪除成功的話(huà)會(huì)彈出成功提示框。PagerStyle自動(dòng)分頁(yè)功能,如果數(shù)據(jù)很多,就會(huì)分頁(yè)顯示。點(diǎn)擊某行刪除欄,會(huì)觸發(fā)后臺(tái)getdata方法調(diào)用sql語(yǔ)句改變庫(kù)存數(shù)量,刪除當(dāng)前行的退貨記錄,并刷新顯示。點(diǎn)擊搜索按鈕觸發(fā)后臺(tái)Btn_Onclick方法,連接數(shù)據(jù)庫(kù),執(zhí)行sql語(yǔ)句select進(jìn)行搜索,對(duì)數(shù)據(jù)庫(kù)查詢(xún),如果查詢(xún)成功,會(huì)在datagrid列表中顯示。銷(xiāo)售查詢(xún)界面如圖5-18所示。圖5-18銷(xiāo)售查詢(xún)界面報(bào)損管理模塊報(bào)損登記所有管理員都可以進(jìn)行報(bào)損登記,報(bào)損信息都放置在table表里,藥品名稱(chēng)對(duì)應(yīng)的下拉列表綁定其他屬性,選定一個(gè)名稱(chēng),其他對(duì)應(yīng)信息會(huì)自動(dòng)顯示,點(diǎn)擊添加按鈕觸發(fā)后臺(tái)執(zhí)行sql語(yǔ)句插入數(shù)據(jù)到數(shù)據(jù)庫(kù)。點(diǎn)擊重置按鈕觸發(fā)reset方法把所填文本框全部置空,以便重新輸入。報(bào)損登記這個(gè)頁(yè)面可以對(duì)藥品入庫(kù)進(jìn)行登記。當(dāng)管理員選擇報(bào)損登記這個(gè)大類(lèi)時(shí),程序馬上就會(huì)在后臺(tái)獲取所選報(bào)損登記大類(lèi)的編號(hào)。然后通過(guò)這個(gè)id去數(shù)據(jù)庫(kù)查詢(xún)Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別。再把數(shù)據(jù)綁定到頁(yè)面里的DropDownList控件中。然后就可以選定要添加的報(bào)損登記的藥品。報(bào)損登記用table放置,有添加和重置按鈕,點(diǎn)擊添加按鈕時(shí)觸發(fā)后臺(tái)Btn_Onclick方法打開(kāi)數(shù)據(jù)庫(kù),執(zhí)行sql添加語(yǔ)句insert進(jìn)行插入數(shù)據(jù),添加成功后,會(huì)有提示框彈出。點(diǎn)擊點(diǎn)擊重置按鈕觸發(fā)reset方法把所填文本框全部置空,以便重新輸入。報(bào)損登記界面如圖5-19所示。圖5-19報(bào)損登記界面報(bào)損管理報(bào)損列表datagrid顯示藥品類(lèi)別各屬性,dategrid具有排序、分頁(yè)、多列顯示,TemplateColumn自定義字段,點(diǎn)擊此字段時(shí),彈出一個(gè)對(duì)話(huà)框,datagrid從后臺(tái)sql語(yǔ)句取得數(shù)據(jù)并顯示,在后臺(tái)Page_Load事件中刷新數(shù)據(jù)。由于數(shù)據(jù)較多,采用分頁(yè)顯示。PagerStyle自動(dòng)分頁(yè)功能,如果數(shù)據(jù)很多,就會(huì)分頁(yè)顯示。點(diǎn)擊某行刪除欄,會(huì)觸發(fā)后臺(tái)getdata方法調(diào)用sql語(yǔ)句改變庫(kù)存數(shù)量,刪除當(dāng)前行的退貨記錄,并刷新顯示。Gatedata方法調(diào)用class1類(lèi)中的斷語(yǔ)句查詢(xún)datagrid表中有無(wú)數(shù)據(jù)并顯示。用table放置對(duì)藥品報(bào)損的維護(hù)。它也可以修改到藥品銷(xiāo)售所屬的一級(jí)類(lèi)別。當(dāng)選中報(bào)損這個(gè)大類(lèi)別時(shí),程序就會(huì)馬上在后臺(tái)獲取到所選報(bào)損的大類(lèi)的編號(hào)。然后通過(guò)這個(gè)編號(hào)去數(shù)據(jù)庫(kù)查詢(xún)Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別。然后把Class表中這個(gè)類(lèi)別下的所有二級(jí)類(lèi)別數(shù)據(jù)取出再返回到后臺(tái)。再把數(shù)據(jù)綁定到頁(yè)面里的DropDownList控件中。然后就可以選定要?jiǎng)h除的報(bào)損記錄。當(dāng)所有要修改的數(shù)據(jù)填寫(xiě)好后,點(diǎn)擊刪除,刪除成功的話(huà)會(huì)彈出成功提示框。點(diǎn)擊搜索按鈕觸發(fā)后臺(tái)Btn_Onclick方法,連接數(shù)據(jù)庫(kù),執(zhí)行sql語(yǔ)句select進(jìn)行搜索,對(duì)數(shù)據(jù)庫(kù)查詢(xún),如果查詢(xún)成功,會(huì)在datagrid列表中顯示。報(bào)損管理界面如圖5-20所示。圖5-20報(bào)損查詢(xún)界面修改密碼模塊這個(gè)功能只有系統(tǒng)管理員擁有,系統(tǒng)管理員有權(quán)限對(duì)所有員工的密碼進(jìn)行修改,table里放文本框textbox輸入新舊密碼,并兩次輸入新密碼,以確認(rèn)密碼安全,點(diǎn)擊修改按鈕觸發(fā)后臺(tái)Button1_Click方法驗(yàn)證用戶(hù)名和密碼,再執(zhí)行sql語(yǔ)句對(duì)密碼進(jìn)行修改,修改成功后會(huì)有提示對(duì)話(huà)框。點(diǎn)擊返回按鈕觸發(fā)后臺(tái)Button13_Click方法,用Redirect進(jìn)行頁(yè)面跳轉(zhuǎn),回到修改頁(yè)面。修改密碼界面如圖5-21所示。圖5-21修改密碼
結(jié)束語(yǔ)信息技術(shù)的發(fā)展給我們的生活帶來(lái)了便捷,而軟件系統(tǒng)的使用,使我們?cè)诿鎸?duì)繁瑣的管理工程時(shí),不會(huì)捉襟見(jiàn)肘。經(jīng)過(guò)這段時(shí)間的不懈奮斗,惠民藥店藥品管理系統(tǒng)的設(shè)計(jì)順利完成。經(jīng)測(cè)試證明,該系統(tǒng)是完全可以正常運(yùn)行并投入到現(xiàn)實(shí)當(dāng)中使用的。在整個(gè)系統(tǒng)的開(kāi)發(fā)過(guò)程中,我對(duì)軟件開(kāi)發(fā)這個(gè)行業(yè)有了進(jìn)一步的認(rèn)識(shí)。軟件開(kāi)發(fā)并不是拿到一個(gè)項(xiàng)目就立刻去開(kāi)發(fā)產(chǎn)品,敲出代碼,而是要做好編程前的準(zhǔn)備工作。熟悉各種開(kāi)發(fā)工具、開(kāi)發(fā)技術(shù)以及數(shù)據(jù)庫(kù)知識(shí)。軟件開(kāi)發(fā)出來(lái)后并不能馬上投入使用,還要進(jìn)行測(cè)試。測(cè)試結(jié)束后,這個(gè)軟件才是一個(gè)合格的產(chǎn)品。致謝首先,要感謝我的導(dǎo)師,論文是在老師的親切關(guān)懷和悉心指導(dǎo)下完成的。在老師的幫助與引導(dǎo)下,我掌握了很多專(zhuān)業(yè)的基礎(chǔ)理論知識(shí),鍛煉了自己的能力,開(kāi)闊了我的學(xué)習(xí)視野與眼界。老師非常關(guān)心學(xué)生,為我解決了學(xué)習(xí)上的許多疑惑,在此謹(jǐn)向老師致以誠(chéng)摯的謝意和崇高的敬意。其次,還要感謝我的父母,他們給予我無(wú)微不至的關(guān)懷與支持,給予我充分的物質(zhì)保障和精神鼓勵(lì),支持我完成學(xué)業(yè),增強(qiáng)面對(duì)生活和挫折的勇氣與信心。最后,還要感謝我的同學(xué),衷心感謝他們給予我工作和學(xué)習(xí)中的支持、信任與幫助,我將永遠(yuǎn)銘記于心。參考文獻(xiàn)[1]宋鋒,劉瑞歌.基于C#的小型藥店藥品管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].濱州學(xué)院學(xué)報(bào),2017,33(2):7.[2]楊玲.醫(yī)藥連鎖店藥品管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].電子科技大學(xué),2016.[3]張紅軍.某藥店管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].C/s模式,藥店管理,數(shù)據(jù)庫(kù),2015.[4]龐旭東.藥品銷(xiāo)售管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].吉林大學(xué),2017.[5]宋曉利.藥品進(jìn)銷(xiāo)存管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].山東大學(xué).[6]王世明,李丹丹.藥品銷(xiāo)售管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].產(chǎn)業(yè)與科技論壇,2015(5):2.[7]楊舒.藥房管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].吉林大學(xué).[8]王子琳.基于JSP的藥房管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].中國(guó)海洋大學(xué),2014.[9]姜代紅,蔣秀蓮.數(shù)據(jù)庫(kù)原理及應(yīng)用實(shí)用教程[M].北京:清華大學(xué)出版社,2013.[10]錢(qián)雪忠.數(shù)據(jù)庫(kù)原理及應(yīng)用[M].北京:北京郵電大學(xué)出版社,2013.[11]蔣秀英.SQLServer2000數(shù)據(jù)庫(kù)與應(yīng)用[M].北京:清華大學(xué)出版社,2013.[12]廖新彥.ASPNET交互式Web數(shù)據(jù)庫(kù)設(shè)計(jì)[M].北京:中國(guó)鐵道出版社,2013.[13]朱玉超,鞠艷,王代勇.ASP.NET項(xiàng)目開(kāi)發(fā)教程[M].北京:電子工業(yè)出版社,2013.[14]尚俊杰,秦衛(wèi)中.ASP.NET程序設(shè)計(jì)案例教程[M].北京:清華大學(xué)出版社,2013.[15]陳偉.SQLServer2005數(shù)據(jù)庫(kù)應(yīng)用與開(kāi)發(fā)教程[M].北京:清華大學(xué)出版社,2013.
附錄附錄1藥品類(lèi)別添加主要代碼:protectedvoidButton1_Click(objectsender,EventArgse){DataSetresult=newDataSet();result=newClass1().hsggetdata(sql);if(TextBox1.Text.ToString().Trim()!=""){stringsql;sql="insertintoalllb(lb,addby)values('"+TextBox1.Text.ToString().Trim()+"','"+Session["username"].ToString().Trim()+"')";intresult;result=newClass1().hsgexucute(sql);if(result==1){Response.Write("<script>javascript:alert('添加成功');location.href='lb_add.aspx';</script>");}else{Response.Write("<script>javascript:alert('系統(tǒng)錯(cuò)誤');</script>");}}else{Response.Write("<script>javascript:alert('請(qǐng)?zhí)顚?xiě)完整');</script>");}}藥品入庫(kù)主要代碼:protectedvoidPage_Load(objectsender,EventArgse){if(!IsPostBack){bh.Items.Add("請(qǐng)選擇");stringsql;sql="selectbhfromallproorderbyiddesc";getdata(sql);}}privatevoidgetdata(stringsql){DataSetresult=newDataSet();result=newClass1().hsggetdata(sql);if(result!=null){if(result.Tables[0].Rows.Count>0){intk=0;for(k=0;k<result.Tables[0].Rows.Count;k++){bh.Items.Add(result.Tables[0].Rows[k]["bh"].ToString().Trim());}}}}protectedvoidButton1_Click(objectsender,EventArgse){stringsql;sql="select*fromkucunwherebh='"+bh.SelectedItem.ToString().Trim()+"'";DataSetresult=newDataSet();result=newClass1().hsggetdata(sql);if(result!=null){if(result.Tables[0].Rows.Count>0){sql="updatekucunsetshuliang=shuliang+"+shuliang.Text.ToString().Trim()+"wherebh='"+bh.SelectedItem.ToString().Trim()+"'";}else{sql="insertintokucun(bh,ggxh,dw,promc,price,shuliang,gys,rkprice)values('"+bh.SelectedItem.ToString().Trim()+"','"+ggxh.Text.ToString().Trim()+"','"+dw.Text.ToString().Trim()+"','"+promc.Text.ToString().Trim()+"',"+price.Text.ToString().Trim()+","+shuliang.Text.ToString().Trim()+",'"+gys.Text.ToString().Trim()+"',"+rkprice.Text.ToString().Trim()+")";}}intresult2;result2=newClass1().hsgexucute(sql);sql="insertintoruku(bh,ggxh,dw,promc,price,shuliang,gys,rkprice)values('"+bh.SelectedItem.ToString().Trim()+"','"+ggxh.Text.ToString().Trim()+"','"+dw.Text.ToString().Trim()+"','"+promc.Text.ToString().Trim()+"',"+price.Text.ToString().Trim()+","+shuliang.Text.ToString().Trim()+",'"+gys.Text.ToString().Trim()+"',"+rkprice.Text.ToString().Trim()+")";if(result2==1){Response.Write("<script>javascript:alert('操作成功!');</script>");}else{Response.Write("<script>javascript:alert('系統(tǒng)錯(cuò)誤,您輸入了非法字符’);</script>");}}藥品入庫(kù)列表主要代碼:protectedvoidButton1_Click(objectsender,EventArgse){stringsql;sql="select*fromrukuwhere1=1";if(mc.Text.ToString().Trim()!=""){sql=sql+"andpromclike'%"+mc.Text.ToString().Trim()+"%'";}if(bh.Text.ToString().Trim()!=""){sql=sql+"andbhlike'%"+bh.Text.ToString().Trim()+"%'";}if(CheckBox1.Checked){sql=sql+"andaddtimebetween'"+nian.SelectedItem.ToString().Trim()+"-"+yue.SelectedItem.ToString().Trim()+"-"+ri.SelectedItem.ToString().Trim()+"'and'"+nian2.SelectedItem.ToString().Trim()+"-"+yue2.SelectedItem.ToString().Trim()+"-"+ri2.SelectedItem.ToString().Trim()+"'";}sql=sql+"orderbyiddesc";getdata(sql);}protectedvoidDataGrid1_PageIndexChanged(objectsource,DataGridPageChangedEventArgse){stringsql="select*fromrukuorderbyiddesc";getdata(sql);DataGrid1.CurrentPageIndex=e.NewPageIndex;DataGrid1.DataBind();}退貨登記主要代碼:privatevoidgetdata(stringsql){DataSetresult=newDataSet();result=newClass1().hsggetdata(sql);if(result!=null){if(result.Tables[0].Rows.Count>0){intk=0;for(k=0;k<result.Tables[0].Rows.Count;k++){promc.Items.Add(result.Tables[0].Rows[k]["promc"].ToString().Trim());}}}}protectedvoidButton1_Click(objectsender,EventArgse){stringsql;sql="insertintotuihuo(promc,price,rkprice,gys,thsl,memo)values('"+promc.SelectedItem.ToString().Trim()+"',"+price.Text.ToString().Trim()+","+rkprice.Text.ToString().Trim()+",'"+gys.Text.ToString().Trim()+"',"+thsl.Text.ToString().Trim()+",'"+memo.Text.ToString().Trim()+"')";intresult;result=newClass1().hsgexucute(sql);sql="updatekucunsetshuliang=shuliang+"+thsl.Text.ToString().Trim()+"wherepromc='"+promc.SelectedItem.ToString().Trim()+"'";result=newClass1().hsgexucute(sql);if(result==1){Response.Write("<script>javascript:alert('添加成功|');</script>");}else{Response.Write("<script>javascript:alert('系統(tǒng)錯(cuò)誤,您沒(méi)有設(shè)置好數(shù)據(jù)庫(kù)的連接');</script>");}}publicvoidbtnRest_Click(objectsender,EventArgse){thsl.Text=string.Empty;memo.Text=string.Empty;}protectedvoidpromc_SelectedIndexChanged(objectsender,EventArgse){stringsql;sql="select*fromkucunwherepromc='"+promc.SelectedItem.ToString().Trim()+"'";getdata2(sql);}privatevoidgetdata2(stringsql){DataSetresult=newDataSet();result=newClass1().hsggetdata(sql);if(result!=null){if(result.Tables[0].Rows.Count>0){price.Text=result.Tables[0].Rows[0]["price"].ToString().Trim();shuliang.Text=result.Tables[0].Rows[0]["shuliang"].ToString().Trim();rkprice.Text=result.Tables[0].Rows[0]["rkprice"].ToString().Trim();gys.Text=result.Tables[0].Rows[0]["gys"].ToString().Trim();}}}藥品退貨列表主要代碼:privatevoidgetdata(stringsql){if(result!=null){if(result.Tables[0].Rows.Count>0){k=0;j=0;for(k=0;k<result.Tables[0].Rows.Count;k++){j=j+int.Parse(result.Tables[0].Rows[k]["thsl"].ToString().Trim());}}else{DataGrid1.DataSource=null;DataGrid1.DataBind();}}附錄2藥品信息修改主要代碼:privatevoidgetdata(stringsql){DataSetresult=newDataSet();result=newClass1().hsggetdata(sql);if(result!=null){if(result.Tables[0].Rows.Count>0){mc.Text=result.Tables[0].Rows[0]["mc"].ToString().Trim();lb.Text=result.Tables[0].Rows[0]["lb"].ToString().Trim();je.Text=result.Tables[0].Rows[0]["price1"].ToString().Trim();je2.Text=result.Tables[0].Rows[0]["price2"].ToString().Trim();content.Text=result.Tables[0].Rows[0]["content"].ToString().Trim();bh
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 會(huì)議紀(jì)律與秩序維護(hù)制度
- 2026年網(wǎng)絡(luò)攻擊防范策略實(shí)戰(zhàn)練習(xí)題
- 2026年地理學(xué)知識(shí)考試題庫(kù)及正確答案詳解
- 2026年公共管理基礎(chǔ)知識(shí)與實(shí)務(wù)操作能力考試預(yù)測(cè)模擬題
- 2026年建筑師考試專(zhuān)業(yè)基礎(chǔ)題庫(kù)與答案詳解
- 2026年證券從業(yè)考試投資分析策略與實(shí)踐題庫(kù)
- 2026年新版副產(chǎn)品協(xié)議
- 檢驗(yàn)科檢驗(yàn)報(bào)告丟失的補(bǔ)辦處理流程及制度
- 2025 小學(xué)六年級(jí)科學(xué)上冊(cè)螞蟻群體分工行為觀察記錄課件
- 2025年陜西航空職業(yè)技術(shù)學(xué)院馬克思主義基本原理概論期末考試模擬題含答案解析(奪冠)
- 八年級(jí)地理上冊(cè)《中國(guó)的氣候》探究式教學(xué)設(shè)計(jì)
- 重慶市2026年高一(上)期末聯(lián)合檢測(cè)(康德卷)化學(xué)+答案
- 2026年湖南郴州市百??毓杉瘓F(tuán)有限公司招聘9人備考考試題庫(kù)及答案解析
- 2026貴州黔東南州公安局面向社會(huì)招聘警務(wù)輔助人員37人考試備考題庫(kù)及答案解析
- 2026年數(shù)字化管理專(zhuān)家認(rèn)證題庫(kù)200道及完整答案(全優(yōu))
- 鐵路除草作業(yè)方案范本
- 2026屆江蘇省常州市生物高一第一學(xué)期期末檢測(cè)試題含解析
- 2026年及未來(lái)5年市場(chǎng)數(shù)據(jù)中國(guó)高溫工業(yè)熱泵行業(yè)市場(chǎng)運(yùn)行態(tài)勢(shì)與投資戰(zhàn)略咨詢(xún)報(bào)告
- 教培機(jī)構(gòu)排課制度規(guī)范
- 2026年檢視問(wèn)題清單與整改措施(2篇)
- 國(guó)家開(kāi)放大學(xué)《基礎(chǔ)教育課程改革專(zhuān)題》形考任務(wù)(1-3)試題及答案解析
評(píng)論
0/150
提交評(píng)論