【客户下单】后台系统基于分区关键字匹配实现自动分单

通过前端传递过来的”省市区”,找到区域,在通过区域找到分区,将客户发货地址与分区的关键字进行匹配,如果包含分区的关键字或辅助关键字,就通过分区找到定区,基于定区找到快递员,实现自动分单。

@Service
@Transactional
public class OrderServiceImpl implements OrderService{@Autowiredprivate FixedAreaRepository fixedAreaRepository;@Autowiredprivate OrderRepository orderRepository;@Autowiredprivate AreaRepository areaRepository;@Overridepublic void saveOrder(Order order){//基于分区关键字匹配实现自动分单逻辑:通过省市区查询分区关键字,匹配地址,基于分区实现自动分单//寄件人省市区Area area = order.getSendArea();Area persistArea = areaRepository.findByProvinceAndCityAndDistrict(area.getProvince(),area.getCity(),area.getDistrict());for(SubArea subArea : persistArea.getSubareas()){//当前客户的下单地址是否包含分区关键字if(order.getSendAddress().contains(subArea.getKeyWords())){//找到分区,找到定区,找到快递员Iterator<Courier> iterator = subArea.getFixedArea().getCouriers().iterator();if(iterator.hasNext()){Courier courier = iterator.next();if(courier!=null){//自动分单成功System.out.println("自动分单成功...");saveOrder(order,courier);return;}}}}for(SubArea subArea : persistArea.getSubareas()){//当前客户的下单地址是否包含分区辅助关键字if(order.getSendAddress().contains(subArea.getAssistKeyWords())){//找到分区,找到定区,找到快递员Iterator<Courier> iterator = subArea.getFixedArea().getCouriers().iterator();if(iterator.hasNext()){Courier courier = iterator.next();if(courier!=null){//自动分单成功System.out.println("自动分单成功...");//将快递员关联到订单上order.setCourier(courier);//保存订单order.setOrderNum(UUID.randomUUID().toString());//生成订单号orderRepository.save(order);return;}}}}
}

【客户下单】后台系统匹配分区关键字实现自动分单相关推荐

  1. 【客户下单】基于CRM完全匹配地址库实现自动分单

    [客户下单]基于CRM完全匹配地址库实现自动分单 将寄件人的下单地址,以webservice的方式,发送给CRM地址库,获取到对应的客户关联的定区,匹配与定区关联的快递员,实现自动分单. 在crm_m ...

  2. 【客户下单】后台系统自动分单成功生成工单发送短信

    [客户下单]后台系统自动分单成功生成工单发送短信 自动分单成功,后台生成工单发送短信,否则进入人工分单流程. 生成工单,发送短信的方法抽取: //抽取的方法:生成工单 发送短信 private voi ...

  3. 【客户下单】自动分单逻辑

    自动分单逻辑 当订单产生后,在基础数据模块,我们已经实现了定区关联客户的功能,客户下单,就会直接与定区进行关联,客户提交订单时会将客户的地址传递给服务器,而定区也已经跟快递员进行过关联,当客户的下单地 ...

  4. 客户下单,自动分单,生成工单 发送短信 演...

    1. 启动相关系统  客户下单 bos_fore 前端系统 将订单数据发送到服务器 bos_management 自动分单,CRM 地址库完全匹配 crm_management 生成工单,发送短信 a ...

  5. 客户下单服务器代码实现 之自动分单逻辑.....

    自动分单逻辑: 1. 在基础数据模块,实现 定区关联客户 ,客户[地址]已经与定区[快递员]进行过关联 , 当下单地址与客户地址完全一致时,找到下单客户信息,找到匹配定区,找到快递员 ,自动分单成功 ...

  6. 客户下单服务器代码实现之实现后台系统自动分单

    前端表单提交,基于 WebService 将数据传递后台系统  自动解析封装 1. 在 bos_fore 系统,添加 OrderAction 封装订单数据 2. 修改 bos_domain 工程 @R ...

  7. 【客户下单】前端系统Action数据封装

    [客户下单]前端系统Action数据封装 客户下单是在前端系统bos_fore中完成的,客户下单提交的数据将以webservice的形式发送给后台bos_management系统,由bos_manag ...

  8. 业务逻辑:完成客户下单后前台系统的数据处理并调用后台系统服务处理业务 webservice接口调用 有用...

    思路: 页面提交表单后,在Action类中将页面提交的参数进行组装,随后通过使用Webservice技术来远程调用后台系统的业务接口服务来进行订单的保存操作 操作步骤: 在前台系统的Action类中通 ...

  9. 【客户下单】后台提供webservice服务接收数据

    [客户下单]后台提供webservice服务接收数据 在bos_fore系统中,添加OrderAction封装订单数据. 接下来调用webservice,将数据传递给bos_management系统. ...

最新文章

  1. Win2000域控制器+Exchange2000迁移至Win2003域控制器+Exchange2003
  2. 032_jdbc-mysql批量操作
  3. java 调用远程服务_java调用(请求)远程服务地址
  4. 绝地求生自定义服务器租一天多少钱,绝地求生自定义服务器怎么样?绝地求生自定义服务器使用攻略...
  5. PostProcessor
  6. SAP BTP 平台 CloudFoundry 环境入门级别的介绍
  7. Installation error code: -103签名不一致错误
  8. linux mysql自动备份 和 数据恢复
  9. 实验2-1-3 计算物体自由下落的距离 (5 分)
  10. Q125:PBRT-V3,对比VolPathIntegrator::Li()和EstimateDirect()判断Medium的方式
  11. Delphi通过MSHTML实现一个HTML解析类
  12. html自动随机跳转网址,网页随机跳转代码
  13. C语言写计算ln()计算式,NTC热敏电阻温度计算方法,Steinhart-Hart方程和B值法(转)...
  14. 计算机电源 通电,笔记本电脑开不了机,通电后电源指示灯不亮
  15. 大数据笔记--scala(第一篇)
  16. iptables路由转换
  17. 4 win10环境下+vs2017+pcl1.9环境配置
  18. 华为台式机擎云W515 PGUV-WBY0安装银河麒麟V10
  19. 分布式分布式框架相关解析
  20. 2012年Web设计和开发的15个趋势

热门文章

  1. 优化 | 利用SciPy求解非线性规划问题
  2. 深度学习笔记第一门课第一周:深度学习引言
  3. 互联网1分钟 |1128
  4. 使用高防后,服务器还是会受到***这是为什么?
  5. [Office 2010 易宝典]怎样直接将Office文档保存为PDF格式?
  6. 《 自动化测试最佳实践:来自全球的经典自动化测试案例解析》一一1.6 正确度量...
  7. 【推荐】一下令人惊艳的的网站,绝对会让你爱上历史
  8. 调试中的一些Python错误
  9. 转换string_类型转换详解
  10. Vue项目如何提高效率?大厂2大实践总结告诉你