crm服务调用测试

import java.sql.Timestamp;
import java.util.UUID;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import cn.itcast.bos.dao.IDecidedzoneDao;
import cn.itcast.bos.dao.INoticebillDao;
import cn.itcast.bos.dao.IWorkbillDao;
import cn.itcast.bos.domain.Decidedzone;
import cn.itcast.bos.domain.Noticebill;
import cn.itcast.bos.domain.Staff;
import cn.itcast.bos.domain.Workbill;
import cn.itcast.bos.service.INoticebillService;
import cn.itcast.bos.utils.BOSContext;
import cn.itcast.crm.CustomerService;

@Service
@Transactional
public class NoticebillServiceImpl implements INoticebillService{
    @Autowired
    private INoticebillDao noticebillDao;
    @Autowired
    private IDecidedzoneDao decidedzoneDao;
    @Autowired
    private IWorkbillDao workbillDao;
    //注入hessian代理对象
    @Autowired
    private CustomerService customerService;
    /**
     * 保存业务通知单,并尝试自动分单
     */
    public void save(Noticebill model) {
        model.setUser(BOSContext.getLoginUser());
        noticebillDao.save(model);//持久
        String pickaddress = model.getPickaddress();//客户的取件地址
        //远程调用crm服务,根据取件地址查询客户关联的定区id
        String decidedzoneId = customerService.findDecidedzoneidByAddress(pickaddress);
        if(decidedzoneId != null){
            //查询到定区id,可以完成自动分单
            model.setOrdertype("自动");
            Decidedzone decidedzone = decidedzoneDao.findById(decidedzoneId);
            Staff staff = decidedzone.getStaff();
            model.setStaff(staff);//建立业务通知单和取派员的关系
            //为取派员创建一个工单
            Workbill workbill = new Workbill();
            workbill.setAttachbilltimes(0);//追单次数
            workbill.setBuildtime(new Timestamp(System.currentTimeMillis()));//创建工单时间---系统时间
            workbill.setNoticebill(model);//工单关联业务通知单
            workbill.setPickstate("未取件");//取件状态
            workbill.setRemark(model.getRemark());//备注
            workbill.setStaff(staff);//工单关联取派员
            workbill.setType("新");//工单类型
            //保存工单
            workbillDao.save(workbill);
            //通过webservice调用短信平台给取派员发短信
        }else{
            //没有查询到定区id,需要转入人工分单
            model.setOrdertype("人工");
        }
    }

}

 

转载于:https://my.oschina.net/halouha/blog/645626

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值