| | |
| | | package com.xzx.gc.order.service; |
| | | |
| | | import cn.hutool.core.bean.BeanUtil; |
| | | import cn.hutool.core.collection.CollUtil; |
| | | import cn.hutool.core.convert.Convert; |
| | | import cn.hutool.core.util.StrUtil; |
| | | import com.github.pagehelper.PageHelper; |
| | |
| | | |
| | | public void addJhyOrder(AddJhyOrderDto orderDto) { |
| | | JhyInfo jhyInfo = jhyInfoMapper.selectJhyInfoByUserId(orderDto.getUserId()); |
| | | if (jhyInfo == null) { |
| | | throw new RestException(-3, "集物员不存在"); |
| | | } |
| | | |
| | | if (jhyInfo != null && JhyInfo.CHECK_PASS.equals(jhyInfo.getStatus())) { |
| | | throw new RestException(-3, "集货员不能下单"); |
| | | } |
| | | |
| | | AddressInfo addressInfo = addressMapper.selectByPrimaryKey(orderDto.getAddressId()); |
| | | double distance = LocationUtils.getDistance(Convert.toDouble(jhyInfo.getLon()), Convert.toDouble(jhyInfo.getLat()), Convert.toDouble(addressInfo.getLongitude()), Convert.toDouble(addressInfo.getLatitude())); |
| | | if (distance > 500) { |
| | | |
| | | List<JhyInfo> jhyInfos = jhyInfoMapper.selectJhyInfoListInAddressRange(addressInfo.getAddressId()); |
| | | if (CollUtil.isEmpty(jhyInfos)) { |
| | | throw new RestException(-3, "该区域暂无集物员"); |
| | | } |
| | | |