项目系统笔记第九天_第1页
项目系统笔记第九天_第2页
项目系统笔记第九天_第3页
免费预览已结束,剩余7页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、BOS 物流项目传智播客 java 学院BOS 物流项目BOS 物流项目传智播客 java 学院1 教学计划1、业务受理需求分析nnn业务通知单工单工作单2、创建业务受理环节的数据表nnn业务通知单工单工作单3、实现业务受理自动分单nnnn在 CRM 服务端扩展方法根据号在 CRM 服务端扩展方法根据取件地址调整业务受理页面回显实现自动分单定区 id4、数据表格编辑功能使用方法5、工作单快速录入2 业务受理需求分析整个 BOS 项目分为基础设置、取派、中转、路由、报表等几大部分。受理环节,是物流公司业务的开始,作为服务前端,客户通过、网络等多种行委托,业务受理员通过与客户交流,获取客户的服务需

2、求和具体委托信息,将服务指令输入我司服务系统。客户通过打行物流委托,物流公司的需要将委托信息录入到 BOS系统中,这个录入的信息称为业务通知单。当将业务通知单信息录入到系统后,系统会根据客户的住址自动匹配到一个取派员,并为这个取派员产生一个任务,这个任务就称为工单。取派员收到取货任务后,会到客户住址取货,取派员会让客户填写纸质的(寄件人信息、收件人信息等),取派员将货物取回物流公司网点后,需要将纸质到 BOS 系统中,录入的信息称为工作单。上的信息录入BOS 物流项目传智播客 java 学院3 创建业务受理环节的数据表4 业务受理自动分单页面:WEB-INF/pages/qupai/notic

3、ebill_add.jspBOS 物流项目传智播客 java 学院4.1 在 crm 服务中扩展方法ll根据客户的号根据客户的取件地址定区 id接口:实现类:/根据号public Customer findCustomerByTelephone(String telephone) String sql = "select * from t_customer where telephone = ?"List<Customer> list = jdbcTemplate.query(sql, new RowMapper<Customer>()public

4、Customer mapRow(ResultSet rs, int arg1) throws SQLException int id = rs.getInt("id");/根据字段名称从结果集中获取对应的值String name = rs.getString("name");String station = rs.getString("station");String telephone = rs.getString("telephone"); String address = rs.getString("

5、;address");String decidedzone_id = rs.getString("decidedzone_id");return new Customer(id, name, station, telephone, address, decidedzone_id);,telephone);if(list != null && list.size() > 0)return list.get(0);return null;public String findDecidedzoneIdByAddress(String address

6、) String sql = "select decidedzone_id from t_customer where address = ?"String decidedzoneId = jdbcTemplate.queryForObject(sql, String.class, address);return decidedzoneId;BOS 物流项目传智播客 java 学院4.2 页面调整第一步:为号输入框绑定离焦第二步:创建 NoticebillAction,注入 crm回 json对象,提供方法根据号,返<td>来电号码:</td><

7、;td><inputtype="text"class="easyui-validatebox"name="telephone"required="true" /><script type="text/javascript">$(function()/页面加载完成后,为号输入框绑定离焦$("inputname=telephone").blur(function()/获取页面输入的号var telephone = this.value;/ajax 请

8、求,请求 Action,在 Action 中掉调用 crm服务,获取,用于页面回显$.post('noticebillAction_findCustomerByTelephone.action',"telephone":telephone,function(data)if(data != null)/到了,可以进行页面回显var customerId = data.id;var customerName = ;var address = data.address;$("inputname=customerId").val

9、(customerId);$("inputname=customerName").val(customerName);$("inputname=delegater").val(customerName);$("inputname=pickaddress").val(address);else/没有到,不能进行页面回显$("inputname=customerId").val("");$("inputname=customerName").val("");$

10、("inputname=delegater").val("");$("inputname=pickaddress").val(""););););</script></td>BOS 物流项目传智播客 java 学院注意:配置 struts.xml第三步:为页面中“新单”按钮绑定4.3 在 NoticebillAction 中提供方法实现业务受理自动分单Service 代码:Service Transactionalpublic class NoticebillServiceImpl impl

11、ements INoticebillService Autowiredprivate INoticebillDao noticebillDao; Autowiredprivate IDecidedzoneDao decidedzoneDao;AutowiredBOS 物流项目传智播客 java 学院private IWorkbillDao workbillDao; Autowiredprivate ICustomerService customerService;/* 保存业务通知单,还有尝试自动分单*/public void save(Noticebill m) User user = BO

12、SUtils.getLoginUser();m.setUser(user);/设置当前登录用户noticebillDao.save(m);/获取客户的取件地址String pickaddress = m.getPickaddress();/调用crm 服务,根据取件地址定区 idString decidedzoneId = customerService.findDecidedzoneIdByAddress(pickaddress);if(decidedzoneId != null)/到了定区 id,可以完成自动分单Decidedzone decidedzone = decidedzoneDa

13、o.findById(decidedzoneId); Staff staff = decidedzone.getStaff();m.setStaff(staff);/业务通知单关联取派员对象/设置分单类型为:自动分单m.setOrdertype(Noticebill.ORDERTYPE_AUTO);/为取派员产生一个工单 Workbill workbill = new Workbill();workbill.setAttachbilltimes(0);/追单次数workbill.setBuildtime(new Timestamp(System.currentTimeMillis();/创建时

14、间,当前系统时间workbill.setNoticebill(m);/工单关联页面通知单workbill.setPickstate(Workbill.PICKSTATE_NO);/取件状态workbill.setRemark(m.getRemark();/备注信息workbill.setStaff(staff);/工单关联取派员workbill.setType(Workbill.TYPE_1);/工单类型workbillDao.save(workbill);/调用平台,else/没有到定区 id,不能完成自动分单m.setOrdertype(Noticebill.ORDERTYPE_MAN);

15、BOS 物流项目传智播客 java 学院5 datagrid 编辑功能使用方式数据表格编辑功能是以列为。l通过数据表格中的列属性定区具体具有编辑功能:l开始编辑:结束编辑:l一行数据:l删除一行:l获得指定行对象的索引l数据表格提供的用于结束编辑BOS 物流项目传智播客 java 学院<table id="mytable"></table><!-:使用easyUI 提供的API 创建 datagrid -><script type="text/javascript">$(function()var myIn

16、dex = -1;/全局变量,值为正在编辑行的索引/页面加载完成后,创建数据表格 datagrid$("#mytable").datagrid(/定义标题行所有的列columns:title:'编号',field:'id',checkbox:true,width:150,title:'姓名',field:'name',editor:type:'validatebox', options:,width:150,title:'',field:'age',editor:

17、 type:'numberbox',options:,width:150,title:'日期',field:'address',editor: type:'datebox',options:,/指定数据表格ajax 请求的地址url:'$pageContext.reqontextPath /json/datagrid_data.json', rownumbers:true,singleSelect:true,/定义工具栏toolbar:text:'添加',iconCls:'icon-add&

18、#39;,/为按钮绑定单击handler:function()$("#mytable").datagrid("insertRow", index:0,/在第一行数据row:/空行);$("#mytable").datagrid("beginEdit",0); myIndex = 0;,text:'删除',iconCls:'icon-remove',handler:function()/获得选中的行对象var rows = $("#mytable").datagrid("getSelections");if(rows.length = 1)BOS 物流项目传智播客 java 学院6 基于数据表格编辑功能实现工作单快速录入var row = rows0;/获得指定行对象的索引myIndex = $("#mytable").datagrid("getRowIndex",row);$("#mytable").datagrid("deleteR

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论