物流管理系统.docx
《物流管理系统.docx》由会员分享,可在线阅读,更多相关《物流管理系统.docx(53页珍藏版)》请在咨信网上搜索。
1、 第一天 国际物流 杰信商贸 + 搭建环境1. 项目背景杰信商贸是国际物流行业一家专门从事进出口玻璃器皿贸易的公司。公司总部位于十一个朝代的帝王之都西安,业务遍及欧美。随着公司不断发展壮大,旧的信息系统已无法满足公司的快速发展需求,妨碍公司成长,在此背景下,公司领导决定研发杰信商贸综合管理平台。杰信商贸综合管理平台分三期完毕。一期完毕仓储管理(涉及:采购单、仓库、货品、条形码、入库、出库、退货、盘点、库存、库存上限报警、记录查询)和展会管理(涉及:展会管理、出单管理),形成货品统一数字化管理。二期完毕货运全流程管理,涉及购销协议、出货表记录、出口报运单、HOME装箱单、装箱单、委托书、发票、财
2、务记录等。三期完毕决策分析(涉及:成本分析图、销售情况记录、重点客户、经营情况同期比对记录、工作绩效),为公司经营决策提供数据支持。a) 用例图2. 了解系统是所有功能模块运用visio画系统功能结构图,目的让开发人员了解都有哪些业务模块,方便分工合作,根据每个页面模块的难度,复杂,投入的人力情况来衡量每个模块多少钱。验收标准。数据库建模,业界都使用PowerDesinger 建模3. 系统架构4. 业务:生产厂家a) 功能在货品模块和附近模块,它们都有个生产厂家,讲生产厂家信息提出,成为一个单独的表。b) 需求调研需求说明书生产厂家表 FACTORY_C(_C业务后缀)序号名称代码是否主键类
3、型(长度)说明1.编号FACTORY_ID是VARCHAR2(40)UUID2.全称FULL_NAME否VARCHAR2(200)相应客户比较模糊,翻倍2到4倍3.简称FACTORY_NAME否VARCHAR2(50)4.联系人CONTACTS否VARCHAR2(30)人名20/305.电话PHONE否VARCHAR2(20)6.手机MOBILE否VARCHAR2(20)7.传真FAX否VARCHAR220)8.验货员INSPECTOR否VARCHAR2(30)9.排序号ORDER_NO否INT10.备注CNOTE否VARCHAR2(500)假如感觉它也许和关键字冲突,给它加个C前缀11.创建
4、人CREATE_BY否VARCHAR2(40)权限字段,登陆人ID12.创建部门CREATE_DEPT否VARCHAR2(40)登陆人所在部门的ID13.创建时间CREATE_TIME否TIMESTAMP 第二天 生产厂家CRUD + 购销协议1. 业务:启用,停用功能:和杰信合作生产厂家忽然有一天它以次品冒充优质品,杰信不跟这个厂家进行合作。在货品中生产厂家选择框,不能选择这个不再合作的厂家。在系统中不能直接删除这个厂家,由于我们的历史数据中具有对这个生产厂家的引用。软件是采用“伪删除”方式来解决。实际是在数据库表中加入列,作为标记,标记厂家是否可以被引用。0停用1启用。新增厂家默认1,可以
5、修改某个厂家为停用。在货品中选择厂家的下拉列表,只显示为启用。2. 加“启用”“停用”功能,修改状态。3. 货运管理核心流程:购销协议a) 需求调研过程软件公司就会到杰信去需求调研,项目经理,他面对客户的高层中层领导,目的跟客户安排好调研日程。设计人员,带领初级程序员到具体的业务部门调研。聊天,围绕项目的目的,设计人员会自己记录谈话内容,(主干),初级程序员(所有内容)。回来整理笔记,整理需求调研报告报告中怎么体现纸质报表?初级程序员将纸质报表转化成电子的。b) 购销协议业务分析4. 需求过程杰信和生产厂家签到的协议,称为购销协议。一个购销协议中包含多个货品信息,一个货品信息涉及多个附件信息。
6、报表打印时,同一个生产厂家的货品信息才干放在同一个页上,不同生产厂家的货品信息不能放在同一个页上。分析阶段,抠每个字段5. 出货表设计方案一(传统设计)协议表,货品表,附件表多次左连接,SQL极其复杂,由于附件值特殊,SQL不能直接完毕,还需要代码去实现。设计方案二(冗余设计)通过冗余,都在货品表中,只需要协议表和货品表左连接即可。6. 分析过程将用户的需求(大白话)转化为开发人员看得懂的数据库表,表之间的关系,业务逻辑。给我们的开发人员看,开发人员依据设计来写代码。复杂,大型项目画类图,序列图辅助开发人员开发。在实际开发中,架构师搭建项目框架,框架的基类都有,基础工具类,统同样式表,统一的公
7、用的js,图片。公司提供一个CVS/SVN账号,配置环境,从中检出你负责的项目的代码。代码一般以项目结构。导入工程,在其上面开发新的业务模块。7. 业务需求销售人员录入协议时,它为草稿状态,这时只能销售人员自己看到。只有当销售人员检查协议无误,提交,状态变成“已上报”。这时候,其别人员才可以看到。销售的领导和船务专责才干看到。运用这个状态字段来控制对当前用户是否可见。(细粒度的权限控制-数据权限)8. 重点知识回顾货运管理核心业务流程:购销协议1.定义购销协议是杰信和生产厂家签订的协议。2.业务复杂度购销协议业务比较复杂,它是货运管理的一个流程,它涉及三部分内容,协议的主信息和多个货品信息和多
8、个附件信息。协议主信息和货品是一对多,货品和附件信息是一对多。3.从业务中迁出技术亮点前期我参与了业务调研,重点负责购销协议。给客户交流后,我编写了需求说明书,然后参数购销协议的表设计。从需求说明书结合客户给的电子表格,我抽取出数据库表,运用PD进行建模。设计:1. 跟客户聊天,要引导性和他们聊天。业务基础术语,了解业务流程2. 进一步内容,拿到客户手中现有某个模块表单,电子表格,填写的内容,每个内容要注意的事项。来源:手填,从其他模块来获取。抠每个字段,电子表格中每个内容。3. 具体说明书功能的细化,业务逻辑说清楚,画图辅助开发,UML(类图、序列图、状态图)数据库建模细化。目的:开发人员可
9、以依照具体设计开始开发。具体设计本意能达成开发人员无需和客户沟通,就可以在设计人员的指导下就可以直接开发出客户满意的代码。但实际中做不到。设计不到位。实际中开发往复比较多。 第三天 购销协议+货品信息+附件信息1. 业务需求:上报、取消a) 功能:上报实现销售人员拟定购销协议录入完毕,检查无误后,上报给领导,领导审核无误后,提交给船运部。取消实现当船务专责未解决此相关的协议时,可以取消这个协议,重新修改协议内容,然后再次上报。假如船运专责已经开始解决报运的业务,不能取消,必须走货品增补流程。b) 设计实现:在表中增长状态字段,新增时默认状态为0草稿,当销售专责确认无误后,点击“上报”状态变为1
10、已上报。当船运专责未解决报运时,销售专责点击“取消”状态变为0,草稿。状态为0时,只能销售专责自己看到,当状态为1时,他的领导和报运专责都可以看到。 第四天 购销协议查看,SQL语句的Power1. 附件业务实现随时携带主表的ID2. 购销协议查看协议下货品,货品下面附件,在购销协议中所有浏览,体现货品和附件的关系。构建对象关系3. *细粒度权限控制主菜单,左侧菜单,按钮,URL,方法,业界都称为粗粒度的权限控制。平常的小系统,基于用户,角色,权限架构足够用。在实际大型项目中,光有上面的用户角色,URL这样的控制粒度不够细致,尚有数据访问权限。1) 对数据的访问列是可以自己定制的。例如:访问一
11、个人员工资信息表,这个表中具有人员的工资。2) 对数据的访问行可以受权限控制。例如:工资表中有销售部人员的工资信息,尚有船运部人员的工资信息。当销售部领导登录时,他只能看到销售人员的工资信息,他不能看到船运部人员的工资信息。3) 直接浏览数据库表,工资列不能直接看到其值。对这个数据库列进行加密。上面统称为数据访问权限,这个权限加上角色用户这样这个系统才比较安全。也称为细粒度的权限控制。a) 列访问控制:单独建立表,权限分派某个角色能访问哪些列;b) 行访问控制:1) 只能看自己创建的记录,不能看到别人创建的记录Where create_by = 当前登陆人ID2) 部门领导看到,他能看到本部门
12、人员创建的记录,不能看到其他部门人员创建的记录Where create_dept = 当前登陆人部门ID and user_level 4 3) 跨部门访问权限,分管领导跨部门,跨人员再加一个配置表,分管领导可以管理的人和部门; 第七天 异构数据库支持+出口报运核心业务1. 核心业务:货运管理第二个流程,出口报运a) 定义:做国际物流,货品要运往国外之前,向海关申报。向海关申报符合国家标准的货品,和货品的体积和重量信息。除了在协议中货品的基本信息外,在报运时新增7个字段,长,宽,高,毛重,净重,出口单价,含税。分次报运一个可以可以分多次来报运,体现在运送的货品数上。例如:10000货品,第一次
13、报运运送6000,第二次报运运送4000.可以多次报运,这种情况很少。平常大多是一次报运。b) 分析设计一个出口报运单来自多个购销协议(一对多);给货品信息新增的7个字段的内容。创建一个出口报运单表c) 冗余设计将货品信息冗余到报运单下的货品信息中。一个实现读取数据快速,减小业务的复杂度,业务逻辑简朴。d) 打断设计实现跳跃查询避免关联层级过多,数据量大了后,访问奇慢。打断设计。(表设计不成为文规定,表之间的关联关系不超过4层)在设计时使用一个虚线箭头来表达表之间是存在关联关系,在设计时,不是往常的外键关系。运用一个字段来存储主表和子表之间的关系。X,YWhere contract_id in
14、 (x,y)。通过打断设计,表之间的关系不存在,跳跃查询。无需查询协议表,直接查询协议下的货品表。(新增)通过上面的设计,后续业务变的更加简朴。2. 业务,劳保报表领用周期不同鞋帽子手套毛巾军大衣洗衣粉饭盒班组110105班组2202036000个单元格哪个单元格的内容进行修改,代码只修改修改的框。给每个文本框增长一个隐藏域。12023个信息要提交。本来目的是优化,结果速度更慢。最终每行添加一个隐藏域,当这行的数据进行了修改,在文本框的失去焦点事件onBlur,动态设立这个隐藏域为1。在修改代码时根据这个值判断,只有1的时候,数据才进行修改。不是1跳过。批量新增,增长一个新增按钮,点一次调研一
15、次addRecord方法,它的属性值,都为空串。批量删除,表格dhtml提供删除行操作,remove,它把行从table中删除。数据库并没有删除,删除多个框时,记录下它们的id值,拼成一个串,用逗号隔开。后台代码判断这个隐藏域提交值不为空,删除这几个数据。3. 知识回顾a) 打断设计:1.数据库设计先按照三范式,之后对一些需要优化的地方,使用反三范式设计(冗余)(以空间换设计)2.实际业务非常复杂,关联层级过多,随着系统上线运营,用户的数据随着使用的时间,线性增长。不成文规定:关联层级在设计不超过4层。打断设计,在主表中加一个字段,字段来存储两个表之间的关系。多个的时候,之间用逗号隔开。一般情
16、况下都是一次报运,就是一个协议一次报运,个别情况下多个协议一次报运,极端情况下3个协议一次报运。由于打断设计,实现“跳跃查询”。报运需要协议下的货品信息时,无需通过多个协议对象,就可以直接查询货品的信息,通过这个打断设计的字段,运用SQL的in子查询。b) 核心业务:货运管理,出口报运业务,杰信获得订单后,安排多个生产厂家生产货品,与此同时杰信准备报关的材料,除了海关规定的一些制式文档和杰信系统打印的出口商品报运单,交给海关进行审核。4. 页面控制a) 报运单新增,暗度陈仓。用户选择报运关联的多个协议,代码直接进行数据的保存。保存相关协议的id集合,协议号集合,保存冗余的货品信息,保存冗余的附
17、件信息。b) 批量修改Mrecord自定义控件,来信息补录。批量,在页面上运用DHTML动态表格技术,实现表格元素的动态增长,动态创建行,动态创建单元格,运用innerHTML动态向单元格插入文本框,带数据的。在后台准备数据,拼接成js串,将它写入一个变量中,在页面的jQuery的ready事件中,调用这个变量,形成多个js串,依次执行。动态添加到表格中。由于js运营不久,用户感觉不到添加的过程,认为直接展示。这样为用户提供一个非常方便的操作。可以批量来修改货品信息。每行运用一个隐藏域,来存放是否修改标记,这样在记录行数过多时,修改的效应也非常高。Mrecord控件它可以实现动态新增,还可以实
18、现批量删除,自动排序。 第八天 装箱、委托、发票、财务业务+协议归档货运管理涉及:购销协议、出口报运、装箱、委托、发票、财务记录。1. 装箱海关批准杰信的申请,像船东申请集装箱,杰信找货代公司请他帮着订箱。杰信找拖车公司,订拖车,拖车公司到码头拉空箱。拉着空箱到生产厂家的仓库。生产厂家在杰信的验货员的监督下,先将货品装到纸箱子中,然后在将纸箱子装入集装箱。拖车拉着满箱到海关指定的码头指定的地方卸货。这几个箱子风吹雨淋。海关进行抽检。直到船来了。将集装箱放到船上。开船从装运港出发,到目的港。装箱时,产生发票号。同时产生发票日期。一个装箱单来自多个报运单(一对多)2. 发票,委托在货品装船的同时,
19、杰信就开具发票,这个发票只是一个告知单,它的内容就是告诉客户货品已经发出,请支付剩余款项。同时快递客户一个提单。客户收到发票告知后,支付剩余款项,同时当货品到达目的港后,客户拿着提单去提货。客户联系货代公司,联系拖车公司,拖车拉着满箱到客户指定的仓库,卸货。客户验货,整个货运流程完毕,杰信和客户的协议完毕。3. 财务财务模块不属于货运的业务流程。它是杰信自己内部进行财务核算的模块。记录这单协议有无赚取利润。形成记录报表给领导展示。4. 一对一特殊设计一个委托来自一个发票,一个发票来自一个委托,一个财务来自一个委托。(一对一)一对一的所有表内容可以合成一张表,结构不清楚,业务不清楚。发票,委托,
20、财务表的主键就是装箱单的ID。上面三张表,它们的主键既外键。主外键一个值。举例,假定拿到ID,不管是装箱、委托、发票、财务,都可以查询它们其中任何一个数据。实现跳跃查询。财务需要货品信息和附件信息,通过打断设计,可以直接跳过发票、委托,直接找到装箱,通过装箱的打断设计字段,直接去搜索报运下的货品和附件信息。由于之前进行了冗余设计,财务所需的货品信息和附件信息,在报运中都有。查询效率提高数倍。5. 出口报运的状态0-草稿 1-已上报 2-装箱 3-委托 4-发票 5-财务体现流程,客户随时想了解订单进展情况,流程的跟踪。在报运的列表页面随时了解某个协议进行到哪里。6. 数据库优化a) 数据库表设
21、计l 由本来重视节省空间,变为重视性能。运用冗余,实现性能数倍提高。l 表的优化,监测数据执行时间。分表1)分字段(纵向分表)精简完核心查询它只需要近30个字段。本来需要1分多的查询,现在只1秒多展现页面。2)数据(横向分表)一个表数据量过大。业务中有些数据不常用,将这些不常用的数据放到此外一张表中,称这个表为历史表。专门做一个历史查询的模块,提供用户还可以查询。l 表之间的关联关系不要太复杂。打断设计b) SQL优化,在做复杂关联关系,SQL优化极其重要。Select * from contract_c,contract_product_c,ext_cproduct_c,factory_cW
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 物流 管理 系统
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【精***】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【精***】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。