国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于WCF 的醫(yī)院固定資產(chǎn)管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)

2016-06-29 19:10黃建琪余曼陳盛帆
電腦知識(shí)與技術(shù) 2016年13期
關(guān)鍵詞:物資管理固定資產(chǎn)

黃建琪 余曼 陳盛帆

摘要:固定資產(chǎn)管理要求不斷提高,管理難度日益增加,固定資產(chǎn)管理信息化成為醫(yī)院信息化建設(shè)非常重要的一部分。結(jié)合醫(yī)院固定資產(chǎn)管理現(xiàn)狀進(jìn)行業(yè)務(wù)分析,獲取用戶需求,確定固定資產(chǎn)管理系統(tǒng)的設(shè)計(jì)方案,對(duì)系統(tǒng)結(jié)構(gòu)和系統(tǒng)架構(gòu)進(jìn)行總體設(shè)計(jì)。然后將系統(tǒng)按功能劃分模塊,實(shí)現(xiàn)服務(wù)層、持久層、表現(xiàn)層的功能,最后部署WCF服務(wù)。

關(guān)鍵詞:固定資產(chǎn);資產(chǎn)檔案;分層架構(gòu);WCF;物資管理

中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2016)13-0006-03

Abstract:With the increasing of requirements on fixed assets management and the difficulty in managing it, the management informatization of fixed assets has become a very significant part of the hospital information construction. The customer requirements were obtained based on the business analysis of the current situation of fixed assets management in WCF hospital, depending on which the designing scheme of fixed assets management was determined, including a total design of system structure and architecture. Then there was a module division based on different functions of the system in order to realize the functions of service layer, persistent layer and presentation layer and got the service of WCF hospital deployed finally.

Key words:fixed assets; asset archives; layered architecture; WCF; material management

1 概述

醫(yī)院對(duì)信息化要求很高,而由于醫(yī)院在業(yè)務(wù)量不斷增加,業(yè)務(wù)范圍逐漸擴(kuò)展,新形勢(shì)下的固定資產(chǎn)管理急需變革,設(shè)計(jì)開(kāi)發(fā)新的固定資產(chǎn)管理系統(tǒng)對(duì)醫(yī)院來(lái)說(shuō)意義重大。系統(tǒng)采用Visual Studio 2010開(kāi)發(fā)工具和C#設(shè)計(jì)語(yǔ)言,以SQL Server 2008 作為后臺(tái)數(shù)據(jù)庫(kù),基于分層架構(gòu)模式,結(jié)合WCF技術(shù)構(gòu)建。本系統(tǒng)以資產(chǎn)為核心,具備完整的資產(chǎn)管理臺(tái)賬,不但提供資產(chǎn)增加、調(diào)撥、折舊、增值、報(bào)廢基礎(chǔ)管理功能和基礎(chǔ)信息管理功能,還具有庫(kù)房管理、資產(chǎn)維修管理、資產(chǎn)盤點(diǎn)、貨款支付管理的功能。庫(kù)房管理包括資產(chǎn)入庫(kù)、資產(chǎn)出庫(kù)、科室領(lǐng)用和科室退回,記錄資產(chǎn)來(lái)路和去向。

2 系統(tǒng)需求分析

2.1 業(yè)務(wù)需求分析

固定資產(chǎn)在醫(yī)院資產(chǎn)中所占比例較大,固定資產(chǎn)的管理對(duì)于企業(yè)降低成本提高生產(chǎn)效率乃至提升醫(yī)院的經(jīng)濟(jì)效益具有重要意義。因此,醫(yī)院的管理固定資產(chǎn)管理信息系統(tǒng)應(yīng)滿足以下業(yè)務(wù)需求:

1)基礎(chǔ)信息管理:系統(tǒng)管理員可以對(duì)系統(tǒng)基礎(chǔ)信息進(jìn)行設(shè)置,比如倉(cāng)庫(kù)、資產(chǎn)類別、資產(chǎn)名稱規(guī)格、生產(chǎn)廠家設(shè)置等。

2)庫(kù)房管理:針對(duì)資產(chǎn)出入庫(kù)進(jìn)行管理,包括采購(gòu)入庫(kù)、采購(gòu)?fù)素洝⒖剖翌I(lǐng)用、科室退回。

3)貨款支付管理:資產(chǎn)采購(gòu)入庫(kù)后,物資管理部門發(fā)送貨款支付申請(qǐng);財(cái)務(wù)部門對(duì)申請(qǐng)單進(jìn)行審核。

4)資產(chǎn)條碼標(biāo)簽管理:每個(gè)資產(chǎn)進(jìn)入信息系統(tǒng)后,生成并打印唯一條碼標(biāo)簽,貼在資產(chǎn)規(guī)定的位置,避免賬務(wù)不符情況的發(fā)生,也利于資產(chǎn)跟蹤管理。

5)固定資產(chǎn)的變更:主要包括固定資產(chǎn)增加、所屬科室改變、折舊方法的變更等等。

6)固定資產(chǎn)折舊:固定資產(chǎn)在長(zhǎng)期使用過(guò)程中會(huì)產(chǎn)生耗損,按照折舊年限每月平均提取耗損金額。不同類型的固定資產(chǎn),折舊年限會(huì)有不同,因而需要按資產(chǎn)類型設(shè)置折舊年限。

7)固定資產(chǎn)增值:由于資產(chǎn)新購(gòu)的配件一般體積較小還可能安裝在原資產(chǎn)的內(nèi)部使用,不方便作為獨(dú)立資產(chǎn)來(lái)管理,可以通過(guò)資產(chǎn)增值的方式,配件不作為新的資產(chǎn)入庫(kù),而是增加原資產(chǎn)的增值金額,配件和原資產(chǎn)作為一個(gè)整體來(lái)進(jìn)行資產(chǎn)管理。

8)資產(chǎn)盤點(diǎn):指利用手持智能設(shè)備掃描條碼,對(duì)所管理的資產(chǎn)進(jìn)行清點(diǎn),調(diào)整信息系統(tǒng)中資產(chǎn)存放位置信息,統(tǒng)計(jì)資產(chǎn)盤盈盤虧情況。

9)資產(chǎn)維修管理:資產(chǎn)設(shè)備發(fā)生故障后,使用科室登記維修申請(qǐng);然后設(shè)備維修負(fù)責(zé)人收到維修申請(qǐng)后執(zhí)行接單操作,并安排維修人員去修理;維修結(jié)束后,記錄維修結(jié)果和維修金額等。

10)固定資產(chǎn)的處置:即固定資產(chǎn)的減少,其方式種類很多,按其去向不同可分為報(bào)廢、報(bào)損、盤虧等。

11)查詢統(tǒng)計(jì):由用戶選擇查詢條件,顯示相應(yīng)的查詢結(jié)果,包括業(yè)務(wù)數(shù)據(jù)的明細(xì)查詢和統(tǒng)計(jì)查詢。查詢報(bào)表主要有出入庫(kù)報(bào)表、折舊報(bào)表、在用資產(chǎn)統(tǒng)計(jì)報(bào)表和各類業(yè)務(wù)報(bào)表。

2.2系統(tǒng)主要用例分析

本文醫(yī)院固定資產(chǎn)管理系統(tǒng)的使用用戶有資產(chǎn)管理部門、財(cái)務(wù)部門、資產(chǎn)使用科室。資產(chǎn)管理部門使用系統(tǒng)執(zhí)行資產(chǎn)管理業(yè)務(wù)操作;財(cái)務(wù)部門使用系統(tǒng)執(zhí)行財(cái)務(wù)核算管理;資產(chǎn)使用科室使用系統(tǒng)針對(duì)本科室資產(chǎn)做查詢和一些業(yè)務(wù)申請(qǐng)操作。

根據(jù)不同用戶的需求,醫(yī)院固定資產(chǎn)管理系統(tǒng)用例圖如圖1所示:

3系統(tǒng)設(shè)計(jì)

3.1 系統(tǒng)功能模塊設(shè)計(jì)

以下給出本系統(tǒng)功能結(jié)構(gòu)圖2所示:

3.2 系統(tǒng)分層架構(gòu)設(shè)計(jì)

固定資產(chǎn)管理系統(tǒng)采用SOA架構(gòu),使用Microsoft.NET的WCF技術(shù)來(lái)實(shí)現(xiàn)服務(wù)。系統(tǒng)各模塊的子功能作為獨(dú)立的服務(wù)發(fā)布,一個(gè)業(yè)務(wù)流程可通過(guò)單個(gè)服務(wù)或者多個(gè)服務(wù)按序組合來(lái)實(shí)現(xiàn),所有發(fā)布的服務(wù)構(gòu)成了系統(tǒng)的服務(wù)端。而客戶端則通過(guò)已定義的服務(wù)契約和數(shù)據(jù)契約調(diào)用這些服務(wù)。

固定資產(chǎn)管理系統(tǒng)體系分層結(jié)構(gòu)如圖3所示:

固定資產(chǎn)管理系統(tǒng)采用分層體系結(jié)構(gòu),從上到下分為如下幾層:表示層、服務(wù)層、業(yè)務(wù)邏輯層、數(shù)據(jù)訪問(wèn)層和數(shù)據(jù)庫(kù)層。

采用分層結(jié)構(gòu)的優(yōu)勢(shì):系統(tǒng)維護(hù)更方便,各組件互相獨(dú)立,可以很容易的用新的實(shí)現(xiàn)來(lái)替換原有層次的實(shí)現(xiàn)。開(kāi)發(fā)人員可以只關(guān)注整個(gè)結(jié)構(gòu)中的其中某一層,從而實(shí)現(xiàn)專業(yè)化分工?;?qū)⑾到y(tǒng)的各個(gè)分層指派給不同的開(kāi)發(fā)小組,使更多的開(kāi)發(fā)人員參與進(jìn)來(lái),通過(guò)團(tuán)隊(duì)協(xié)作加快開(kāi)發(fā)進(jìn)度。

4 系統(tǒng)分層實(shí)現(xiàn)

4.1 服務(wù)層的實(shí)現(xiàn)

服務(wù)層作為一個(gè)中間層,隔離表示層和業(yè)務(wù)邏輯層,以服務(wù)契約和數(shù)據(jù)契約的形式將WCF服務(wù)發(fā)布,供表示層調(diào)用。服務(wù)層隱藏了業(yè)務(wù)邏輯層的細(xì)節(jié),使得表示層和業(yè)務(wù)邏輯層直接解耦。粗粒度的服務(wù)可以有多個(gè)細(xì)粒度的服務(wù)組成。根據(jù)本系統(tǒng)的功能,服務(wù)層為這些功能進(jìn)行定義并實(shí)現(xiàn)服務(wù)契約,而這些服務(wù)契約與業(yè)務(wù)邏輯層的功能相對(duì)應(yīng)。

資產(chǎn)管理模塊是系統(tǒng)的核心模塊,包含了一般固定資產(chǎn)管理系統(tǒng)的基礎(chǔ)功能。下面以資產(chǎn)管理模塊實(shí)現(xiàn)為例,闡述該模塊在服務(wù)層中的實(shí)現(xiàn)。

在“FixedAsset.Service”WCF項(xiàng)目中添加一個(gè)數(shù)據(jù)契約類FixedAssetContract、一個(gè)操作契約類IFixedAssetService和一個(gè)服務(wù)實(shí)現(xiàn)類FixedAssetService。服務(wù)契約是定義一組可被總結(jié)點(diǎn)調(diào)用的服務(wù)接口;服務(wù)類是對(duì)服務(wù)接口的實(shí)現(xiàn);數(shù)據(jù)契約是定義服務(wù)所需的數(shù)據(jù)類。

4.1.1 服務(wù)契約的實(shí)現(xiàn)

實(shí)現(xiàn)服務(wù)契約時(shí),首先需要向項(xiàng)目添加System.Runtime.Serialization和System.ServiceModel的類庫(kù)引用,然后提出資產(chǎn)管理各個(gè)主要功能為接口的操作方法,使用[ServiceContract]標(biāo)記服務(wù)類和使用[OperationContract]標(biāo)記操作方法,最后定義服務(wù)需要的出參和入?yún)閿?shù)據(jù)契約。資產(chǎn)管理模塊的服務(wù)契約實(shí)現(xiàn)如下:

上述服務(wù)契約的操作方法中通過(guò)Add()和DisCard ()方法實(shí)現(xiàn)資產(chǎn)的增加和報(bào)廢,通過(guò)MoveDept()方法實(shí)現(xiàn)資產(chǎn)科室間的調(diào)撥,通過(guò)AddDeprecitionMoney()和AddIncrementMoney()功能實(shí)現(xiàn)資產(chǎn)折舊和資產(chǎn)增值。ResultDTO表示調(diào)用服務(wù)的返回結(jié)果。

4.1.2 數(shù)據(jù)契約的實(shí)現(xiàn)

在上述服務(wù)契約中,一個(gè)服務(wù)通常需要定義出參和入?yún)?,如果出入?yún)⒉皇呛?jiǎn)單數(shù)據(jù)類型時(shí),就需要自定義數(shù)據(jù)對(duì)象,這些數(shù)據(jù)對(duì)象就是服務(wù)契約所需的數(shù)據(jù)契約。數(shù)據(jù)契約就是服務(wù)端和終結(jié)點(diǎn)之間發(fā)送的自定義數(shù)據(jù)結(jié)構(gòu)。數(shù)據(jù)契約需要使用[DataContract] 標(biāo)記數(shù)據(jù)契約類和使用[DataMember]標(biāo)記屬性,不標(biāo)記的屬性不會(huì)被序列化。數(shù)據(jù)契約類可以有操作方法,但這些方法也不在序列化的范圍內(nèi)。沒(méi)有被序列化的屬性,終結(jié)點(diǎn)客戶端也看不到這些屬性。以下是數(shù)據(jù)契約的代碼實(shí)現(xiàn):

4.1.3 服務(wù)類的實(shí)現(xiàn)

服務(wù)類的實(shí)現(xiàn),主要內(nèi)容是合理的安排需要的邏輯,通過(guò)協(xié)調(diào)領(lǐng)域模型、特殊的應(yīng)用服務(wù)、工作流。以下以資產(chǎn)報(bào)廢DisCard()作為實(shí)現(xiàn)例子:

//資產(chǎn)管理服務(wù)類

public class FixedAssetService : IFixedAssetService{

//報(bào)廢資產(chǎn)

public bool DisCard(DisCardDTO dto){

//聲明資產(chǎn)管理業(yè)務(wù)對(duì)象

FixedAssetBLL fixedAssetBLL = new fixedAssetBLL();

//查詢獲取資產(chǎn)實(shí)體對(duì)象

FixedAsset fixedAssetEntity = fixedAssetBLL.FindBy(dto.GID);

using (SqlConnection con =new SqlConnection("")){

con.Open();

using (SqlTransaction trans= con.BeginTransaction()){

//更新資產(chǎn)狀態(tài)為報(bào)廢

fixedAssetEntity.ChangeToStatus(Status.報(bào)廢 , trans);

//保存報(bào)廢記錄

fixedAssetBLL.SaveDisCard(dto , trans);

trans.Commit();

}

}

return true;

}

}

在上面的代碼中,F(xiàn)ixedAssetService類實(shí)現(xiàn)了IFixedAssetService接口的操作DisCard()方法,返回是否成功。方法中使用了sql事務(wù),資產(chǎn)狀態(tài)修改和報(bào)廢記錄保存能全部成功或失敗,保證業(yè)務(wù)數(shù)據(jù)完整。

4.2 數(shù)據(jù)訪問(wèn)層的實(shí)現(xiàn)

數(shù)據(jù)訪問(wèn)層主要是負(fù)責(zé)數(shù)據(jù)庫(kù)的訪問(wèn),隔離業(yè)務(wù)邏輯使業(yè)務(wù)與數(shù)據(jù)操作無(wú)關(guān),為業(yè)務(wù)邏輯層訪問(wèn)數(shù)據(jù)庫(kù)提供了統(tǒng)一的訪問(wèn)方式。數(shù)據(jù)對(duì)象一般有三種選擇:ADO.NET對(duì)象、XML和自定義類。本系統(tǒng)采用自定義類。使用網(wǎng)絡(luò)上通用的SqlHelper類來(lái)實(shí)現(xiàn)數(shù)據(jù)訪問(wèn),對(duì)于查詢返回的ADO.NET對(duì)象,使用反射的方法將DataTable對(duì)象轉(zhuǎn)為自定義類,轉(zhuǎn)換的條件是表字段名稱與自定義類屬性名稱相同。

數(shù)據(jù)訪問(wèn)層基于SqlHelper通用類來(lái)實(shí)現(xiàn), SqlHelper類整合了SqlCommand類的方法,提供ExecuteNonQuery()、ExecuteDataset()、ExecuteReader()和ExecuteScalar()的多種重載,使用更方便。

以更新資產(chǎn)狀態(tài)ChangeStatus()為例,數(shù)據(jù)庫(kù)操作代碼如下:

//修改資產(chǎn)狀態(tài)

bool ChangeStatus(string GID, int newStatus, int oldStatus) {

//設(shè)置sql語(yǔ)句

string sql = string.Format(@"update {0} set Status=@NewStatus where ID=@GID and Status=@OldStatus)"

, tableName);

//設(shè)置sql參數(shù)

SqlClient.SqlParameter[] ps= new SqlClient.SqlParameter[]{

SqlHelper.MakeInParam("@GID", SqlDbType.VarChar, GID),

SqlHelper.MakeInParam("@NewStatus", SqlDbType.Int, newStatus),

SqlHelper.MakeInParam("@OldStatus", SqlDbType.Int, oldStatus)

};

//執(zhí)行sql

int count = SqlHelper.ExecuteNonQuery(Setting.Cons, CommandType.Text, sql, ps);

//返回結(jié)果

if (count > 0)

return true;

else

return false;}

4.3 表現(xiàn)層的實(shí)現(xiàn)

表示層是一種可交互的操作界面,可以為用戶呈現(xiàn)后臺(tái)數(shù)據(jù)或接收用戶輸入的數(shù)據(jù)。從數(shù)據(jù)安全方面考慮,本系統(tǒng)采用C/S模式,該模式雖然只允許局域網(wǎng)內(nèi)的客戶端連接服務(wù)器,但可以充分利用客戶端的計(jì)算處理能力,具有更快的反應(yīng)速度。表現(xiàn)層是為用戶提供一個(gè)與系統(tǒng)交互的平臺(tái),應(yīng)首先考慮易操作和友好性的界面設(shè)計(jì)。

4.4 WCF服務(wù)部署

完成服務(wù)契約、數(shù)據(jù)契約和服務(wù)類之后,接下來(lái)就可以發(fā)布服務(wù)了。以下介紹如何配置并部署WCF服務(wù),使得客戶端可以通過(guò)終結(jié)點(diǎn)訪問(wèn)服務(wù)。

本系統(tǒng)采用IIS作為服務(wù)宿主,管理員可以通過(guò)IIS管理器方便的管理服務(wù)啟動(dòng)、停止或重啟,就算服務(wù)器重啟后IIS也能自動(dòng)運(yùn)行并自動(dòng)啟動(dòng)服務(wù)。

WCF的配置文件以XML文件保存,可以方便地修改配置文件以適應(yīng)不同的網(wǎng)絡(luò)環(huán)境。 配置中,終結(jié)點(diǎn)數(shù)據(jù)傳輸協(xié)議為wsHttpBinding,數(shù)字證書名稱是FixedAssetCert,客戶端驗(yàn)證方式是UserName,驗(yàn)證類是MyUserNamePasswordValidator。UserName驗(yàn)證方式要求服務(wù)端安裝數(shù)字證書,而客戶端不需要安裝證書,采用用戶密碼驗(yàn)證。

5 結(jié)論

本系統(tǒng)的開(kāi)發(fā)需求來(lái)源于中小型醫(yī)院,但不局限于醫(yī)院,同時(shí)結(jié)合同類的固定資產(chǎn)管理需求,可應(yīng)用于其他企業(yè)單位的固定資產(chǎn)管理。

本文的特色是將運(yùn)用WCF服務(wù)技術(shù)結(jié)合SOA面向服務(wù)架構(gòu)在固定資產(chǎn)管理系統(tǒng)中應(yīng)用。本文從系統(tǒng)的需求分析、總體設(shè)計(jì)、系統(tǒng)詳細(xì)設(shè)計(jì)、系統(tǒng)實(shí)現(xiàn)和部署這幾個(gè)方面闡述了醫(yī)院固定資產(chǎn)管理信息系統(tǒng)的開(kāi)發(fā)全過(guò)程。系統(tǒng)實(shí)現(xiàn)了基礎(chǔ)信息設(shè)置、庫(kù)房管理、資產(chǎn)管理、維修管理、盤點(diǎn)管理、貨款支付管理和查詢報(bào)表的功能,基本涵蓋了固定資產(chǎn)一般的管理功能。

本文主要就醫(yī)院固定資產(chǎn)管理系統(tǒng)設(shè)計(jì)應(yīng)用的以下方面進(jìn)行了研究:

1)根據(jù)醫(yī)院信息化建設(shè)現(xiàn)狀,以及物資和和財(cái)務(wù)部對(duì)資產(chǎn)管理的需求,設(shè)計(jì)系統(tǒng)實(shí)施方案;

2)WCF技術(shù)和SOA架構(gòu)在固定資產(chǎn)管理系統(tǒng)中的應(yīng)用;

3)WCF安全機(jī)制及X.509證書生成、導(dǎo)入、使用管理過(guò)程。

盡管本文開(kāi)發(fā)的固定資產(chǎn)管理系統(tǒng)已使用于實(shí)際工作,為固定資產(chǎn)的管理提供了有效的幫助,但也存在不足,需要在今后改進(jìn)完善。

參考文獻(xiàn):

[1] 楊貴琦.醫(yī)院信息系統(tǒng)建設(shè)現(xiàn)狀與展望[J].中國(guó)醫(yī)學(xué)教育技術(shù),2006,20(1):89-92.

[2] 張愛(ài)禎.高校固定資產(chǎn)管理系統(tǒng)設(shè)計(jì)[D].上海:同濟(jì)大學(xué)軟件學(xué)院,2009.

[3] 李雪東.基于WCF面向服務(wù)架構(gòu)的研究與應(yīng)用[D]. 長(zhǎng)春: 長(zhǎng)春理工大學(xué)圖書館,2009.

[4] 曾立, 陳小華.醫(yī)療設(shè)備采購(gòu)系統(tǒng)的設(shè)計(jì)[J].中國(guó)醫(yī)療器械雜志,2008(5):78-79.

猜你喜歡
物資管理固定資產(chǎn)
對(duì)實(shí)現(xiàn)電力企業(yè)物資管理信息化建設(shè)的幾點(diǎn)思考
消防部隊(duì)固定資產(chǎn)管理存在的問(wèn)題及對(duì)策
基層行政事業(yè)單位固定資產(chǎn)管理的問(wèn)題及對(duì)策
新時(shí)期供電企業(yè)固定資產(chǎn)管理現(xiàn)狀及改進(jìn)策略
中小企業(yè)固定資產(chǎn)核算與管理問(wèn)題研究
合川市| 大理市| 兰坪| 台中市| 威远县| 全椒县| 景泰县| 巴东县| 北川| 泊头市| 厦门市| 思南县| 河东区| 嘉义市| 苗栗市| 河津市| 定襄县| 南皮县| 楚雄市| 怀集县| 栖霞市| 晋中市| 巴青县| 泌阳县| 扎赉特旗| 军事| 钟祥市| 伽师县| 无棣县| 行唐县| 叙永县| 垣曲县| 峡江县| 彭水| 清丰县| 南郑县| 奉化市| 安福县| 东阳市| 探索| 台中市|