Java 开发快递物流项目 (7)
客户下单业务模块:
一. 自动分单逻辑分析
1. 获取到寄件人和收件人的省市区信息
2. 第一种情况假如寄件人的地址和 CRM 地址库里面的地址完全匹配, 则分配快递员, 生成工单
3. 第二种情况只有定区的信息, 则根据定区来匹配快递员, 匹配快递员成功的话就进行分单, 生成工单
4. 第三种情况有分区关键字 (keyWords) 的信息, 则通过分区关键字, 找到分区, 关联上定区, 找到快递员, 进行分单, 生成工单
5. 第四种情况, 能匹配到分区辅助关键字 (AssistKeyWords) 信息, 则通过辅助关键字, 找到分区, 关联上定区找到快递员进行分单, 生成工单
6. 上述情况全部失败的话进入人工分单
二. 实现后台系统自动分单
1. 前段表格提交, 基于 webService 将数据传递到后台系统
3. 在 bos_manangement 添加 OrderService 发布 WebService, 并 applicaiontContext-webservice.xml
4. 完善 bos_fore 的 OrderAction 代码, 调用 WebService
5. 将寄件人下单地址 ,以 webService 方式,发送 CRM 地址库获取 对应客户关联 定区
6. 进行业务逻辑判断, 完成代码packagecn.bos.service.take_delivery.impl;
importjava.util.Date;
importjava.util.Iterator;
importjava.util.UUID;
importjavax.jms.JMSException;
importjavax.jms.MapMessage;
importjavax.jms.Message;
importjavax.jms.Session;
importjavax.ws.rs.core.MediaType;
importorg.apache.commons.lang3.RandomStringUtils;
importorg.apache.cxf.jaxrs.client.WebClient;
importorg.springframework.beans.factory.annotation.Autowired;
importorg.springframework.beans.factory.annotation.Qualifier;
importorg.springframework.jms.core.JmsTemplate;
importorg.springframework.jms.core.MessageCreator;
importorg.springframework.stereotype.Service;
importorg.springframework.transact