湯明偉,鄭柳娟
(1.江陰職業(yè)技術(shù)學(xué)院計算機科學(xué)系,江陰214405;2.江陰職業(yè)技術(shù)學(xué)院管理系,江陰214405)
截至今年,江陰已經(jīng)蟬聯(lián)了全國百強縣之首16連冠,江陰經(jīng)濟的主力軍是民營企業(yè)資本,隨著用戶終端智能化程度、互聯(lián)網(wǎng)+戰(zhàn)略以及大數(shù)據(jù)時代的推進,民營企業(yè)的發(fā)展也越來越依靠企業(yè)信息化,信息化的程度甚至在有些行業(yè)起到了決定性作用。我院作為江陰唯一的公辦高校,有責(zé)任為地方經(jīng)濟建設(shè)、解決企業(yè)困難和地方人才培養(yǎng)貢獻應(yīng)盡的義務(wù)。
江陰盛大圖文制作有限公司是一家成立于2008年,注冊資本500萬元以上的民營企業(yè),主要從事數(shù)碼圖文快印、廣告制作設(shè)計、各式文本裝訂等三大模塊幾十項業(yè)務(wù)范圍。
隨著互聯(lián)網(wǎng)+戰(zhàn)略的不斷升華,該公司也確立了企業(yè)信息化的重要性。因此,為了提升服務(wù)品質(zhì),提高企業(yè)工作效率,開發(fā)一套滿足具有特定通用性的圖文業(yè)綜合管理平臺(軟著登記號:2018SR977325)迫在眉睫。
圖文業(yè)綜合管理平臺的開發(fā),主要解決從事圖文行業(yè)的企業(yè)在實際工作中客戶管理、業(yè)務(wù)管理、倉儲管理、財務(wù)管理等工作環(huán)節(jié)方面的信息化管理效率,并幫助圖文企業(yè)梳理出一整套標(biāo)準(zhǔn)化工作業(yè)務(wù)流程,使平臺能夠在圖文業(yè)企業(yè)中具有一定通用性。
系統(tǒng)設(shè)計原則:
(1)實用性原則:根據(jù)系統(tǒng)平臺要具有通用性設(shè)計需求,要力求最大限度地滿足實際工作的需要,充分考慮各業(yè)務(wù)層次、各管理環(huán)節(jié)數(shù)據(jù)處理的實用性。
(2)可擴展性與可維護性原則:系統(tǒng)設(shè)計盡可能模塊化、組件化,讓系統(tǒng)可靈活配置,適應(yīng)不同的情況。能夠盡量滿足圖文業(yè)各企業(yè)可能存在的拓展性二次開發(fā)的需求。
(3)安全可靠性原則:網(wǎng)站系統(tǒng)與數(shù)據(jù)庫系統(tǒng)的設(shè)計要做到安全可靠,防止非法用戶的入侵。數(shù)據(jù)庫的備份策略恰當(dāng),以防災(zāi)難性事故發(fā)生。
(4)用戶界面設(shè)計原則:界面設(shè)計滿足多終端使用的響應(yīng)式設(shè)計,用戶界面的設(shè)計應(yīng)做到美觀大方,實現(xiàn)“傻瓜型”人性化設(shè)計——易學(xué)、易用、易管理。
針對客戶提出的關(guān)于圖文業(yè)綜合管理平臺的需求,開發(fā)之處,就確定了本系統(tǒng)平臺采用B/S結(jié)構(gòu)。采用ASP.NET[1]、MVC[2]-[3]三層框架和SQL Server數(shù)據(jù)庫[4]來實現(xiàn)系統(tǒng)后端功能,采用Bootstrap框架[5]、jQuery框架[6]和AJAX[7]技術(shù)實現(xiàn)系統(tǒng)前端界面操作的簡便性和人性化設(shè)計,如圖1所示。
圖1 基于ASP.NET MVC的圖文業(yè)綜合管理平臺結(jié)構(gòu)圖
其中:
(1)數(shù)據(jù)訪問層:負(fù)責(zé)對后端業(yè)務(wù)數(shù)據(jù)的管理與存儲,主要是對原始數(shù)據(jù)的操作層,具體為業(yè)務(wù)邏輯層提供數(shù)據(jù)訪問服務(wù)。
(2)業(yè)務(wù)邏輯層:負(fù)責(zé)根據(jù)業(yè)務(wù)協(xié)作流程而提供的業(yè)務(wù)功能,主要是針對具體的問題的操作,也可以理解成對數(shù)據(jù)層的操作,對數(shù)據(jù)業(yè)務(wù)邏輯處理。
(3)用戶交互層:提供了前端客戶交互的手段和人性化界面,主要采用Bootstrap框架、jQuery框架和AJAX來實現(xiàn)。
圖文業(yè)綜合管理平臺根據(jù)企業(yè)實際業(yè)務(wù)需求,總共分基礎(chǔ)中心、客戶中心、業(yè)務(wù)中心、財務(wù)中心、倉儲中心和系統(tǒng)中心五大功能模塊?;A(chǔ)中心包括部門管理、一級項目管理、二級項目管理、紙張規(guī)格管理、價目表管理、計量單位管理、材料管理、角色權(quán)限管理和員工管理;客戶中心包括客戶關(guān)系管理、訪問聯(lián)系(拜訪客戶記錄的管理);業(yè)務(wù)中心包括業(yè)務(wù)單管理、業(yè)務(wù)單統(tǒng)計和業(yè)務(wù)項目統(tǒng)計;財務(wù)中心包括應(yīng)收款管理、應(yīng)付款管理、支出費用管理、收款明細統(tǒng)計、收款項目統(tǒng)計、付款統(tǒng)計和工資結(jié)算;倉儲中心包括入庫單管理、出庫單管理和報廢單管理;系統(tǒng)中心包括登錄/退出、個人信息和密碼修改。如圖2所示。
圖2 圖文業(yè)綜合管理平臺總體功能模塊圖
本平臺根據(jù)江陰盛達圖文制作有限公司各組織部門分管流程及分析大眾圖文業(yè)從事企業(yè)的組織架構(gòu)圖,總共分為系統(tǒng)管理員、經(jīng)理、財務(wù)部、倉儲部和員工五個角色,具體權(quán)限分配如表1所示。
數(shù)據(jù)庫是管理系統(tǒng)的基礎(chǔ)與核心,數(shù)據(jù)庫設(shè)計的優(yōu)劣將直接影響管理系統(tǒng)的性能。通過對系統(tǒng)功能模塊的劃分和設(shè)計,已明確了本系統(tǒng)所涉及的所有實體及實體間的關(guān)系??紤]和預(yù)估算本系統(tǒng)實際使用過程中產(chǎn)生的數(shù)據(jù)體量及數(shù)據(jù)規(guī)范性,系統(tǒng)數(shù)據(jù)庫采用了SQL Server進行設(shè)計。依據(jù)各功能模塊所需總共設(shè)計了19張數(shù)據(jù)表,分別有部門表、一級項目表、二級項目表、紙張規(guī)格表、價目表、計量單位表、材料表、角色權(quán)限表、員工表、客戶表、訪問表、業(yè)務(wù)單表、應(yīng)收款表、收款表、應(yīng)付款表、付款表、入庫表、出庫表和報廢表。
(1)部門表(Tb_Department),包括:部門編號(如D01格式)、部門名稱。
表1 圖文業(yè)綜合管理平臺用戶角色及權(quán)限分配表
(2)一級項目表(Tb_Projects),包括:一級項目編號(如P01格式)、一級項目名稱。
(3)二級項目表(Tb_ProjectTwo),包括:二級項目編號(如P0101格式)、二級項目名稱。
(4)紙張規(guī)格表(Tb_Paper),包括:紙張規(guī)格編號(如S01格式)、紙張規(guī)格名稱。
(5)價目表(Tb_Prices),包括:價目表編號(如PS010101格式)、價格、紙張規(guī)格編號、紙張規(guī)格名稱(冗余字段)。
(6)計量單位表(Tb_Units),包括:計量單位編號(自動增量)、計量單位名稱。
(7)材料表(Tb_Materil),包括:材料編號(如 M01格式)、材料名稱、計量單位編號、材料單價。
(8)角色權(quán)限表(Tb_RolePermissions),包括:角色權(quán)限編號(如R01格式)、權(quán)限名稱。
(9)員工表(Tb_Employee),包括:員工編號(如E101格式)、登錄賬號、密碼(md5)、真實姓名、性別(M/F)、身份證號、聯(lián)系方式、家庭地址、部門編號、部門名稱(冗余)、權(quán)限編號、創(chuàng)建時間、登錄次數(shù)、最后一次登錄時間、刪除標(biāo)記、刪除時間。
(10)客戶表(Tb_Clients),包括:客戶編號(如C10000001格式)、客戶名稱、地址、聯(lián)系方式、聯(lián)系人、備注。
(11)訪問表(Tb_Visit),包括:訪問編號(如A100001格式)、客戶編號、員工編號、員工真實姓名(冗余)、訪問時間、訪問方式、訪問內(nèi)容、刪除標(biāo)記(0:未刪除;1:已刪除)、備注。
(12)業(yè)務(wù)單信息表(Tb_Service),包括:業(yè)務(wù)單編號(如B201805201000001格式)、同客戶多業(yè)務(wù)記錄標(biāo)識、客戶編號、訂貨日期、交貨日期、委托事項、業(yè)務(wù)內(nèi)容、單價、數(shù)量、金額、開單員工編號、開單員工真實姓名、設(shè)計員工編號、設(shè)計員工真實姓名、附件URL、審核狀態(tài)、業(yè)務(wù)單狀態(tài)(0:開工;1:設(shè)計中;2:制作中;3:完工)、送貨標(biāo)識(0:自取;1:要送貨;2:未送貨;3:已送貨)、備注。
(13)應(yīng)收款表(Tb_ShouldGathering),包括:應(yīng)收款編號(如G20180520100001格式)、業(yè)務(wù)單編號、客戶編號、客戶名稱、應(yīng)收金額、應(yīng)收款生成日期、開單/設(shè)計員工編號、結(jié)清標(biāo)識、備注。
(14)收款表(Tb_Gathering),包括:收款編號(如F20180520100001格式)、應(yīng)收款編號、收款金額、收款日期、收款人員工編號、收款人員工姓名、客戶編號、備注。
(15)應(yīng)付款表(Tb_ShouldPay),包括:應(yīng)付款編號(如H20180520100001格式)、入庫單編號、材料編號、材料名稱、應(yīng)付金額、應(yīng)付款生成日期、結(jié)清標(biāo)識、備注。
(16)付款表(Tb_Pay),包括:付款編號(如J20180520100001格式)、應(yīng)付款編號、付款金額、付款日期、付款人員工編號、付款人員工姓名、材料編號、入庫單編號、備注。
(17)入庫表(Tb_IntoStorage),包括:入庫單編號(如I10000001格式)、入庫時間、材料編號、材料名稱、入庫數(shù)量、計量單位編號、入庫材料單價、入庫材料金額、經(jīng)辦人員工編號、備注。
(18)出庫表(Tb_OutStorage),包括:出庫單編號(如010000001格式)、出庫日期、材料編號、材料名稱、出庫數(shù)量、計量單位編號、出庫材料單價、出庫材料金額、經(jīng)辦人員工編號、備注。
(19)報廢表(Tb_Scrap),包括:報廢單編號(如W10000001格式)、報廢日期、材料編號、材料名稱、報廢數(shù)量、計量單位編號、報廢材料單價、報廢材料金額、報廢人員工編號、備注。
圖文業(yè)綜合管理平臺在設(shè)計之初就以江陰盛大圖文制作有限公司實際的業(yè)務(wù)流程為參考,再融合了國內(nèi)大部分圖文公司的實際需求進行設(shè)計和開發(fā)的。因此,考慮到平臺的部署、訪問的人性化,本平臺確立為一套基于B/S結(jié)構(gòu)的信息化系統(tǒng)。采用ASP.NET MVC三層設(shè)計模式,實現(xiàn)了系統(tǒng)業(yè)務(wù)功能流程、數(shù)據(jù)庫訪問操作和靜態(tài)頁面全分離。平臺系統(tǒng)功能經(jīng)過多年的運行和維護,系統(tǒng)功能各模塊都運行正常。文章通過應(yīng)收款管理模塊的合并收款功能為例來闡述平臺系統(tǒng)功能的具體實現(xiàn),應(yīng)收款管理功能界面效果如圖3所示。
用戶通過點擊界面上的“收款”按鈕,跳轉(zhuǎn)到某客戶所對應(yīng)的收款界面,實現(xiàn)業(yè)務(wù)單的單記錄收款和批量合并收款功能。合并收款功能的界面效果如圖4所示。
用戶在收款界面上,勾選列表中的多個收款記錄后,點擊“合并收款”按鈕后,可以對選中的多條記錄進行合并收款,打開合并收款的對話框頁面進行合并收款操作,合并收款對話框的界面效果如圖5所示。
圖3 圖文業(yè)綜合管理平臺之應(yīng)收款管理模塊效果圖
圖4 應(yīng)收款管理模塊之收款功能界面效果圖
圖5 應(yīng)收款管理模塊之合并收款功能界面效果圖
核心代碼如下:
//功能說明:應(yīng)收款管理模塊之合并收款
protected void btnGatheringAdd_Click(object sender,EventArgs e){
if(Session["ShouldGatheringId"]!=null){
string ShouldGatheringId=Session["ShouldGatheringId"].To?String().Trim();
string[]ShouldGParam=ShouldGatheringId.Split('-');//應(yīng) 收款編號
foreach(var item in ShouldGParam){
if(item!=null){
float GatheringSum=new ShouldGatheringBiz().Get?ShouldGatheringSum(item)-new GatheringBiz().GetGather?ingSum(item);//該應(yīng)收款編號的尚欠金額
GatheringInfo gathering=new GatheringInfo();
gathering.GatheringId=GatheringBiz.AutoInsertPKNum?berToDataBase();
gathering.ShouldGatheringModel=new ShouldGatheringBiz().GetShouldGatheringModel(item);
gathering.GatheringSum=GatheringSum;
gathering.GatheringDate=DateTime.Now;
gathering.GatheringName=txtGatheringName.Text.ToString();
gathering.ClientsModel=new ClientBiz().GetClientModel(txtClientId.Text);
int Result=new GatheringBiz().Add(gathering);//添加一條收款紀(jì)錄
if(Result> 0){
ServiceInfo serviceModel=gathering.ShouldGathering?Model.ServiceModel;
string ClientId=txtClientId.Text;
int tempCompletenums=new ServiceBiz().UpDateCom?peletService(serviceModel.ServiceId);
//結(jié)清的業(yè)務(wù)單修改完工狀態(tài)
int tempShouldnums=new ShouldGatheringBiz().Update(gathering.ShouldGatheringModel.ShouldGatheringId);
//修改結(jié)清標(biāo)記
if(tempCompletenums!=0&&tempShouldnums!=0){
Common.MsgBoxHelper.ShowMsgBoxAndClose("收款成功!",this.Page);
}
}
else{
Common.MsgBoxHelper.ShowMsgBox("收款失??!",this.Page);
}
}
}
}
}
平臺從設(shè)計、開發(fā)、測試,到交付客戶正式上線使用,再經(jīng)過系統(tǒng)功能的充實和再完善,已經(jīng)經(jīng)歷了近幾年時間。通過近幾年的實際應(yīng)用,本平臺不論是從響應(yīng)效率、功能操作、界面顯示均工作正常,得到了該企業(yè)各部門各類和其他圖文業(yè)從事企業(yè)用戶的一致認(rèn)可,極大地提高了企業(yè)的工作效率,節(jié)約了圖文企業(yè)的運行成本。
本文從圖文業(yè)綜合管理平臺的需求分析、系統(tǒng)方案總體設(shè)計、系統(tǒng)功能設(shè)計、數(shù)據(jù)庫設(shè)計和系統(tǒng)開發(fā)實現(xiàn)幾個方面進行了詳細的介紹。系統(tǒng)正式上線使用近幾年時間,至今系統(tǒng)界面操作方便、功能運行穩(wěn)定、Web服務(wù)響應(yīng)快速、數(shù)據(jù)安全可靠,達到了預(yù)期開發(fā)的效果。
目前,在終端智能化、互聯(lián)網(wǎng)+和大數(shù)據(jù)的時代大背景下,本系統(tǒng)的上線使用極大地標(biāo)準(zhǔn)化了圖文業(yè)企業(yè)的工作業(yè)務(wù)流程,從而大大節(jié)約了圖文企業(yè)的人、財、物運行成本,為企業(yè)創(chuàng)造了巨大的利潤。本系統(tǒng)的開發(fā)具有一定的價值性和推廣性。