Commit 84bb9e77 by 张跃

配送距离

parent 944b86f7
......@@ -9,10 +9,15 @@ import cn.freemud.demo.entities.bo.store.StoreInfoBO;
import cn.freemud.demo.manager.customer.CustomerManager;
import cn.freemud.demo.manager.store.StoreManager;
import cn.freemud.entities.dto.StoreDeliveryInfoDto;
import cn.freemud.entities.vo.QueryDeliveryDistanceRequest;
import cn.freemud.entities.vo.QueryDeliveryDistanceResponseVo;
import cn.freemud.entities.vo.ShoppingCartGoodsResponseVo;
import cn.freemud.enums.CreateOrderType;
import cn.freemud.enums.ResponseResult;
import cn.freemud.enums.ScopeConfigType;
import cn.freemud.interceptor.ServiceException;
import cn.freemud.service.delivery.DeliveryFactory;
import cn.freemud.service.thirdparty.DeliveryFeiginClient;
import cn.freemud.utils.WebUtil;
import com.freemud.application.sdk.api.log.LogThreadLocal;
import com.freemud.application.sdk.api.storecenter.request.StoreInfoRequest;
......@@ -42,6 +47,8 @@ public class DeliveryServiceImpl {
@Autowired
private DeliveryFactory deliveryFactory;
@Autowired
private DeliveryFeiginClient deliveryFeiginClient;
// 配送费逻辑是否使用旧的
@Value("${store.delivery.use.old:true}")
private boolean storeDeliveryUseOld;
......@@ -238,10 +245,15 @@ public class DeliveryServiceImpl {
* @return
*/
public double getDistance(String shopLng, String shopLat, String addressLng, String addressLat) {
if (StringUtils.isBlank(shopLng) || StringUtils.isBlank(shopLat) || StringUtils.isBlank(addressLng) || StringUtils.isBlank(addressLat)) {
return 100000;
// if (StringUtils.isBlank(shopLng) || StringUtils.isBlank(shopLat) || StringUtils.isBlank(addressLng) || StringUtils.isBlank(addressLat)) {
// return 100000;
// }
// return WebUtil.calDistance(Double.valueOf(shopLng), Double.valueOf(shopLat), Double.valueOf(addressLng), Double.valueOf(addressLat));
QueryDeliveryDistanceResponseVo responseVo = deliveryFeiginClient.queryDeliveryDistance(new QueryDeliveryDistanceRequest(Double.parseDouble(shopLat), Double.parseDouble(shopLng), Double.parseDouble(addressLat), Double.parseDouble(addressLng)));
if (responseVo == null || responseVo.getCode() != 100 || responseVo.getData().getDistance() == null) {
throw new ServiceException(ResponseResult.STORE_DELIVERY_AMOUNT_ERROR);
}
return WebUtil.calDistance(Double.valueOf(shopLng), Double.valueOf(shopLat), Double.valueOf(addressLng), Double.valueOf(addressLat));
return responseVo.getData().getDistance();
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment