物流费用管理系统的设计与实现

2017-10-18 03:44:39王晓哲
现代计算机 2017年26期
关键词:账单进出口管理系统

王晓哲

(四川大学计算机学院,成都 610065)

物流费用管理系统的设计与实现

王晓哲

(四川大学计算机学院,成都 610065)

物流费用的管理是进出口企业物流管理的核心,对进出口企业提升管理效率和管理水平、降低风险具有重要意义。基于UML建模语言,结合B/S系统架构,ASP.NET开发框架,SQL Server数据库管理技术完成进出口企业物流费用管理系统的设计与实现,一方面能够预防货运不合理请款和重复请款,另一方面提高进出口企业信息化管理水平。

进出口企业;物流;费用管理;EasyUI

0 引言

物流的崛起,使得管理理念以及模式发生了很大的改变,例如物流规定在管理时必须根据整个供应链的全方位去思考怎样才能获得最好的效率,通过平衡的形式解决“二律背反”现象等[2]。尤其对成本管理上的影响很大,在引进物流以后,期待可以切实挖掘物流成本并进行精确的计算,来达到减少物流成本的目的。传统会计所采用的核算方法已经无法算出物流费用的成本,所以目前找出一种全新的有关物流成本核算的方法已经成为亟待解决的问题,这样便可对物流体系中的指定商品、顾客、物流途径和物流活动相对应的成本轻易的就可查询到,这就要求对物流成本核算的探讨显色十分紧迫[3]。

1 技术基础

物流费用系统开发中涉及的技术如下。

1.1 EasyUI框架

EasyUI是一组基于JQuery的UI插件集合体,而EasyUI的目标就是帮助Web开发者更轻松的打造出功能丰富并且美观的UI界面。EasyUI框架提供了创建网页所需的一切,帮助您轻松建立站点。EasyUI是一个基于jQuery的框架,集成了各种用户界面插件。EasyUI框架提供建立现代化的具有交互性的JavaScript应用的

1.2 WebService技术

WebService属于可编程的Web的先进程序,具有以下3个的特点:自包含、平台独立与松耦合,其应用程序可通过开放的XML标准进行说明、公布,以及发现、协调与配置,能够完成开发分布式的互操作。Web⁃Service平台必须通过协议才能完成建立分布式的应用程序,每个平台都有其系统类型与有关数据表示方法,若要做到互操作,则WebService平台一定要具有标准、规范的类型系统,以与组件模型、编程语言,及其他平台内的类型系统进行联系,现阶段,这类协议有:XML与XSD协议、SOAP协议、WSDL协议。

物流费用管理系统通过WebService技术完成和外部数据的对接,通过对外开发WebService接口和其他等系统对接,通过财务系统的WebService接口完成物流费用管理系统中费用送签数据的对接。

1.3 ASP.NET架构

必要的功能。对于开发物流费用管理系统的而言其支持一些常见的 UI控件如:accordion,combobox,menu,dialog,tabs,validatebox,datagrid,window,tree 等等,十分易于开发人员使用,其次这个EasyUI使用简洁美观十分适合物流费用管理系统的开发。

ASP.NET是进出口企业物流费用管理系统开发使用的开发框架,使用ASP.NET之后,程序升级与发布工作就变得更加简化了,其提供了一些代码使得编写起来比较方便。现如今是一个技术丰富的年代,在软件行业存在多种Web系统的构建技术,例如PHP、JSP、Phython和.NET。在此笔者经过多方考量最终选定ASP.NET作为本物流费用管理系统主要的开发技术,因为在企业的需求调研的过程中发现其内部一些信息管理系统都是运用.NET平台进行开发的,此外在公司内容主要使用的电脑和服务器也都为Windows平台。这样使用ASP.NET就有天然的优势,方便企业内部各类信息系统之间互相数据传输等操作。

1.4 XML技术

XML一种标记语言,具有一定的可扩展性,它属于定义语义标记的一种规则,文档被各标记分为很多部件,且对所有的部件进行标识。

XML主要含有以下3个功能:即XSL(可扩展样式语言)、XML Schema与XLL(可扩展链接语言),其中,XSL这种语言主要是对文档的样式做出规定,它可通过客户端的操作来直接更换文档的表示法,使浏览器无须再和服务器交互;XML Schema对XML文件里面的所有元素,以及各元素的属性及相互之间的关系进行了定义,并对其中的逻辑结构做了规定,非常有助于对程序检验文件相关标记的合法性进行分析。

XLL属于一种链接语言,比较类似于HTML里面的链接,但发挥的作用要更好,它不仅能够应用于超级文本定义下最简单的链接,而且,还对Web现在的一些简单链接做了更大的扩展。

XML技术主要用于编写物流费用管理系统和财务系统对接的消息,这类消息是使用标准的XML语言进行编写的。同时,物流费用管理系统中大量的配置都以XML形式组织在配置文件中。

2 系统设计

2.1 概要设计

进出口企业物流费用管理系统的网络拓扑图如图1所示。

进出口企业物流费用管理系统运行在网络环境中,进出口企业物流费用管理系统用户能够通过浏览器直接访问系统,这样的结构能够帮助减少服务器的运行压力,由浏览器负责和用户进行交互和数据采集,由服务器业务逻辑,这在很大程度上减少用户端负载,因此这样的结构对用户终端的配置要求较低。

图1 系统网络拓扑图

2.2 数据库设计

在进出口企业物流费用管理业务流程进行充分调研的基础上,对业务逻辑进行抽象后得出了系统数据库中的实例及其属性,以及实例间的相互关系,通过数据库E-R图的方式对这些内容进行展示。

进出口企业物流费用管理系统数据库总体E-R图如图2所示。

图2 系统总体E-R图

2.3 功能设计

物流费用管理系统中存在大量费用账单单据,在系统中完成费用账单后,需要将费用账单数据对接至财务系统中,但由于费用账单数据内容复杂等原因,人工输入将会增加人工输入错误几率,因此物流费用管理系统提供了对接财务系统的功能。

首先,财务系统提供数据对接规范中要求使用as、mq、jms等传输协议,消息中间件产品为MQ消息队列,传输的消息使用XML文件进行编写。XML具有数据格式规范,兼容性强等特点,账单数据对接财务系统时需要对物流费用管理系统中数据状况进行控制,以提高数据发送的准确性。目前将物流费用管理系统账单数据状态划分为Initial初始、Made已生成账单、CheckSent已送审、Submitted已审核、Sent已发送、Cleared已处理和Deleted已删除。物流费用管理系统中账单数据状态转换图如图3所示。

图3 账单数据状态转换图

由账单数据状态转换图分析可知,账单的初始状态为:Initial初始,当物流人员完成制单后进入Made已生成账单状态,进行送审操作后进入CheckSent已送审状态,初始状态、已生成账单和已送审状态能够进行删除操作,删除后进入Deleted已删除状态,当审核人员完成审核操作后进入Submitted已审核状态,在系统中点击发送按钮后进入Sent已发送,当账单完成处理后数据进入Cleared已处理状态。

由进出口费用生成功能时序图分析可知,用户在进入进出口界面后,由货运人员输入重量、体积等费用参数信息,由数据库执行费用参数更新脚本并返回执行结果,货运人员登记物流信息工作结束后,由物流人员完善进出口数据并点击保存,在点击保存的过程中,系统触发并执行物流费用计算逻辑,由数据库更新费用计算结果,最后系统显示费用计算结果。

图4 进出口费用生成功能时序图

3 系统实现

3.1 数据对接实现

财务系统对接消息属于XML格式信息,根据财务接口规范,通过XmlDocument对象完成XmlNode信息节点的创建。信息的发送主要依靠TaskFactory实现的定时接口,在用户完成TimeConfig.xml接口配置后,使用工厂模式生成不同的Task任务,通过配置文件中的设定为任务设定不同的执行TimeSpan时间间隔。在Task任务中,通过节点获取任务执行方式,Type为0为运行一次,1为每小时一次,2为数天一次,3为数周一次,4为每周期一次,在物流费用请款信息发送过程中都使用每小时一次的方式。通过节点的配置获取任务是否自动执行,节点为XML信息存放的路径,节点为发送成功后,XML信息备份的路径。在完成发送后,任务通过等标签获取邮件推送的地址等配置,完成邮件发送后,通过标签获取发送成功后执行的存储过程。信息发送相关的功能都能通过TimeConfig.xml接口配置文件进行灵活调整。Time⁃Config.xml接口配置中一个Task任务节点内容如下。if(comVENDOR_CODE.SelectedItem==null)

Ab12345678

消息发送的具体方式是通过微软的MessageQueue消息队列,MessageQueue对象被封装在System.Messag⁃ing.dll程序集中,通过MessageQueueSendByte方法完成向具有固定IP的服务器消息队列的发送,ipAddress参数为消息队列接收服务器IP地址,lbl为消息发送的类型,由财务系统指定。doc为XmlDocument类型的报文文件,通过queue.Send方法完成消息的发送。

3.2 费用账单实现

费用生成与对账为系统的核心功能模块,通过费用生成与对账模块,系统关联基础数据、费用计费标准和进出口费用参数,完成对费用明细的产生,异常费用的审核,进出口费用的预估,进出口费用对账单的生成,领导对对账单的审核,以及费用和财务系统的对接。费用生成与对账模块中进出口费用对账单界面如图5所示。

图5 进出口费用对账单界面

由进出口费用对账单界面分析可知,对账人员在界面维护请款单位和实际进厂时间区间等信息后,能够对该时间区间内产生的物流费用进行查询,勾选费用明细后,能够完成货运行发票的更新,确认账单总金额和发票金额一致后,进行生成账单并送审动作,账单生成成功后,领导人员在费用对账单审核界面进行下一步处理。进出口费用对账单功能代码如下所示。

if(comVENDOR_CODE.SelectedItem==null)

{

AjaxAlert("请选择请款单位!");

return;

}

if(txtCREATE_DATE_FROM.Text== "" ||txtCREATE_DATE_TO.Text=="")

{

AjaxAlert("请选择实际进厂时间!");

return;

}

string flag="N";

if(ddlIEType.SelectedIndex!=-1)

{if(ddlIEType.SelectedIndex==1)

{

flag="Y";

}

if(ddlIEType.SelectedIndex==2)

{

flag="";

}

}

string sql1="EXEC dbo.GET_IMPORT_DETAL'"+Curren⁃

tUser.OrgID+"','"+txtCREATE_DATE_FROM.Date.ToString

("yyyy/MM/dd")+"','"+txtCREATE_DATE_TO.Date.ToString

("yyyy/MM/dd")+"','"+vendorCode+"','"+deliverType+"',

'"+tradeTrem+"','"+sysNo+"','"+flag+"'";

DataTable dt1=new DataTable();

dt1=DataAccess.GetTable(sql1);

dt1.TableName="WHList";

DataView dv=dt1.DefaultView;

GridWorSheet_WEBGIM050.TotalSummary.Clear();

ASPxSummaryItem item1 = new ASPxSummaryItem("TO⁃

TAL_USD",SummaryItemType.Sum);

ASPxSummaryItem item2 = new ASPxSummaryItem("TO⁃

TAL_RMB",SummaryItemType.Sum);

GridWorSheet_WEBGIM050.TotalSummary.Add(item1);

GridWorSheet_WEBGIM050.TotalSummary.Add(item2);

3.3 微信OAuth2.0协议授权登录

微信设计原理如下:微信OAuth2.0授权让微信用户使用微信身份安全登录第三方应用或网站,在微信用户授权登录已接入微信OAuth2.0的第三方应用后,第三方可以获取到用户的接口调用凭证(access_to⁃ken),通过access_token可以进行微信开放平台授权关系接口调用,从而可实现获取微信用户基本开放信息和帮助用户实现基础开放功能等。第三方发起微信授权登录请求,微信用户允许授权第三方应用后,微信会重定向到第三方网站,并且带上授权临时票据code参数。通过code参数加上AppID和AppSecret等,通过API换取access_token。通过access_token进行接口调用,获取用户基本数据资源或帮助用户实现基本操作。在微信授权过程中,OnAuthorizationCallback.aspx.cs授权回调页面中,通过state参数用于标识微信授权的结果,如状态标志正常,则通过GetAccessToken方法换取access_token,其中 code票据、AppID、AppSecret为调用参数,通过向OAuthApi对象的GetUserInfo()方法传递access_token等参数后,获取到微信授权用户信息user⁃Info,userInfo中包含用户 OPENID、用户昵称 wxnick⁃name,将授权信息Insert到物流费用管理系统数据库中,等待执行登录操作。

授权后系统自动登录时,在登录界面每隔500毫秒执行loginself()自动登录方法,方法中通过AJAX技术向Login.ashx一般处理程序发送post请求,一般处理程序中关联用户表中OPENID和微信授权信息,执行用户自动登录操作,完成用户自动登录后,标记微信授权信息,通过window.location.href方法将页面重定向至物流费用管理系统主页,从而完成整个微信用户授权登录的过程。微信用户授权成功界面如下图所示。

图6 微信用户授权成功界面

4 结语

本文对物流管理系统中的技术基础进行了介绍,对系统概要设计、数据库设计和功能设计过程进行分析,对数据对接、费用账单和微信授权登录等内容的实现过程进行了介绍。

[1]朱伟生,张洪革.物流成本管理[M].北京:机械工业版社,2013.

[2]邓凤祥.现代物流成本管理-消除“物流冰山”:获取利润之第三源泉[M].北京:经济管理出版社,2013.

[3]王之泰.现代物流学[M].北京:中国物资出版社,2014.

Abstract:The management of logistics cost is the core of logistics management of import and export enterprises.It is of great significance to improve management efficiency and management level and reduce risk.Based on UML modeling language,combining with B/S system architecture,ASP.NET development framework,SQL Server database management technology to complete the import and export enterprise logistics cost management system design and implementation,on the one hand can prevent unreasonable freight please,please,and repeat on the other hand,improve the level of information management system of import and export enterprises.

Keywords:Import and Export Enterprises;Logistics;Fee Management;EasyUI

Design and Implementation of Logistics Expense Management System

WANG Xiao-zhe

(College of Computer Science,Sichuan University,Chengdu 610065)

1007-1423(2017)26-0079-06

10.3969/j.issn.1007-1423.2017.26.020

王晓哲(1986-),男,河南郑州人,在读硕士研究生,研究方向为计算机科学与技术

2017-09-02

2017-09-10

猜你喜欢
账单进出口管理系统
今年上半年我国化肥进出口双双下降
前两个月我国化肥进出口量均减少
基于James的院内邮件管理系统的实现
进出口经理人
《进出口经理人》征订
账单式小康
中外文摘(2020年2期)2020-11-12 12:02:19
账单式小康
群众(2019年2期)2019-03-11 06:29:40
基于LED联动显示的违停管理系统
又至一年“账单”发布时
中国公路(2017年14期)2017-09-26 11:51:35
海盾压载水管理系统
中国船检(2017年3期)2017-05-18 11:33:08