订单生成时同步生成senderArea和receiverArea
parent
37a91ca445
commit
5643b4605b
|
|
@ -2,6 +2,8 @@ package com.cpxt.web.controller.biz;
|
|||
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
import com.alibaba.fastjson2.JSONObject;
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import com.cpxt.biz.domain.BizOrder;
|
||||
import com.cpxt.biz.domain.BizOrderSub;
|
||||
|
|
@ -18,10 +20,7 @@ import com.cpxt.common.utils.bean.BeanUtils;
|
|||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
|
|
@ -40,7 +39,6 @@ public class OpenContrller {
|
|||
@Autowired
|
||||
private BizOrderSubStatusChangeLogMapper logMapper;
|
||||
|
||||
|
||||
/**
|
||||
* 订单状态变更推送
|
||||
* @param orderStatusChangePushEntity 接口参数
|
||||
|
|
@ -106,4 +104,44 @@ public class OpenContrller {
|
|||
resultMap.put("timestamp",System.currentTimeMillis());
|
||||
return resultMap;
|
||||
}
|
||||
|
||||
@Anonymous
|
||||
@GetMapping("/test9")
|
||||
public void callThirdPartyInterface(BizOrder bizOrder, BizOrderSub bizOrderSub) {
|
||||
// String response = cityDelivery.addOrder(bizOrder, bizOrderSub);
|
||||
String response = "{\"success\":true,\"message\":\"\",\"code\":200,\"result\":{\"insuredFee\":0,\"otherFee2\":0,\"orderNo\":\"202502130613120634637\",\"costFee\":0,\"expressNbr\":\"1158201680867\",\"totalFee\":800,\"expectTime\":\"2025-02-14 12:13:11\",\"tipFee\":0,\"otherFee1\":0,\"postageFee\":800},\"timestamp\":1739427192384}";
|
||||
JSONObject jsonObject = JSON.parseObject(response);
|
||||
if ((Integer) jsonObject.get("code") == 200) {
|
||||
// 同步更新运单信息
|
||||
// BizOrderSub orderSub = bizOrderSubMapper.selectBySubOrderSn(bizOrderSub.getSubOrderSn());
|
||||
BizOrderSub orderSub = bizOrderSubMapper.selectBySubOrderSn("Y202412261006-1");
|
||||
Map<String, Object> result = (Map<String, Object>) jsonObject.get("result");
|
||||
|
||||
String orderNo = Helper.NStr(result.get("orderNo"));
|
||||
String expressNbr = Helper.NStr(result.get("expressNbr"));
|
||||
// 预计送达时间(时间戳)
|
||||
Long expectTime = Helper.FLong(result.get("expectTime"));
|
||||
// 配送距离
|
||||
Long distance = Helper.FLong(result.get("distance"));
|
||||
int costFee = Helper.FInt(result.get("costFee"));
|
||||
int tipFee = Helper.FInt(result.get("tipFee"));
|
||||
int insuredFee = Helper.FInt(result.get("insuredFee"));
|
||||
int otherFee1 = Helper.FInt(result.get("otherFee1"));
|
||||
int otherFee2 = Helper.FInt(result.get("otherFee2"));
|
||||
int totalFee = Helper.FInt(result.get("totalFee"));
|
||||
int postageFee = Helper.FInt(result.get("postageFee"));
|
||||
if (expectTime != null && expectTime != 0) orderSub.setExpectTime(new Date(expectTime));
|
||||
orderSub.setPlatformOrderNo(orderNo);
|
||||
orderSub.setExpressNbr(expressNbr);
|
||||
orderSub.setDistance(String.valueOf(distance));
|
||||
orderSub.setCostFee(Integer.toString(costFee));
|
||||
orderSub.setTipFee(String.valueOf(tipFee));
|
||||
orderSub.setInsuredFee(String.valueOf(insuredFee));
|
||||
orderSub.setOtherFee1(String.valueOf(otherFee1));
|
||||
orderSub.setOtherFee2(String.valueOf(otherFee2));
|
||||
orderSub.setTotalFee(String.valueOf(totalFee));
|
||||
orderSub.setPostageFee(String.valueOf(postageFee));
|
||||
bizOrderSubMapper.updateById(orderSub);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -79,6 +79,7 @@ public class OrderTask {
|
|||
order.setSenderName(warehouse.getName());
|
||||
order.setSenderLinkman(warehouse.getLinkman());
|
||||
order.setSenderPhone(warehouse.getLinkphone());
|
||||
order.setSenderArea(warehouse.getArea());
|
||||
order.setSenderAddress(warehouse.getAddress());
|
||||
order.setSenderLat(warehouse.getLat());
|
||||
order.setSenderLng(warehouse.getLng());
|
||||
|
|
@ -89,6 +90,7 @@ public class OrderTask {
|
|||
order.setReceiverName(shop.getName());
|
||||
order.setReceiverLinkman(shop.getLinkman());
|
||||
order.setReceiverPhone(shop.getLinkphone());
|
||||
order.setReceiverArea(shop.getArea());
|
||||
order.setReceiverAddress(shop.getAddress());
|
||||
order.setReceiverLat(shop.getLat());
|
||||
order.setReceiverLng(shop.getLng());
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ import java.util.Date;
|
|||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.alibaba.fastjson2.JSON;
|
||||
|
|
@ -17,6 +18,7 @@ import com.cpxt.biz.domain.vo.BizOrderVo;
|
|||
import com.cpxt.biz.domain.vo.BizOrderVoCustomer;
|
||||
import com.cpxt.biz.mapper.*;
|
||||
import com.cpxt.biz.orderutil.CityDelivery;
|
||||
import com.cpxt.common.annotation.Anonymous;
|
||||
import com.cpxt.common.core.domain.entity.SysUser;
|
||||
import com.cpxt.common.exception.ServiceException;
|
||||
import com.cpxt.common.utils.*;
|
||||
|
|
@ -40,7 +42,6 @@ import javax.validation.Validator;
|
|||
* @date 2024-12-16
|
||||
*/
|
||||
@Service
|
||||
@RestController
|
||||
public class BizOrderServiceImpl implements IBizOrderService {
|
||||
|
||||
private static final Logger log = LoggerFactory.getLogger(BizOrderServiceImpl.class);
|
||||
|
|
@ -107,12 +108,12 @@ public class BizOrderServiceImpl implements IBizOrderService {
|
|||
* @return 订单
|
||||
*/
|
||||
@Override
|
||||
public Page<BizOrder> selectBizOrderPageByDriver(String orderStatus ,int pageNum, int pageSize) {
|
||||
public Page<BizOrder> selectBizOrderPageByDriver(String orderStatus, int pageNum, int pageSize) {
|
||||
BizDriver bizDriver = bizDriverMapper.selectByUserId(SecurityUtils.getUserId());
|
||||
LambdaQueryWrapper<BizOrder> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(BizOrder::getStatus,1);
|
||||
queryWrapper.eq(BizOrder::getOrderStatus,orderStatus);
|
||||
queryWrapper.and(wq -> wq.eq(BizOrder::getDriverId,bizDriver.getId()).or().like(BizOrder::getCopilotId,bizDriver.getId()));
|
||||
queryWrapper.eq(BizOrder::getStatus, 1);
|
||||
queryWrapper.eq(BizOrder::getOrderStatus, orderStatus);
|
||||
queryWrapper.and(wq -> wq.eq(BizOrder::getDriverId, bizDriver.getId()).or().like(BizOrder::getCopilotId, bizDriver.getId()));
|
||||
queryWrapper.orderByDesc(BizOrder::getCreateTime);
|
||||
return bizOrderMapper.selectPage(new Page<>(pageNum, pageSize), queryWrapper);
|
||||
}
|
||||
|
|
@ -135,8 +136,8 @@ public class BizOrderServiceImpl implements IBizOrderService {
|
|||
BizCustomer bizCustomer = bizCustomerMapper.selectByLinkPhone(user.getUserName());
|
||||
|
||||
LambdaQueryWrapper<BizOrder> queryWrapper = new LambdaQueryWrapper<>();
|
||||
if (user.getUserType().equals("2") && bizCustomer != null){
|
||||
queryWrapper.eq(BizOrder::getCustomerId,bizCustomer.getId());
|
||||
if (user.getUserType().equals("2") && bizCustomer != null) {
|
||||
queryWrapper.eq(BizOrder::getCustomerId, bizCustomer.getId());
|
||||
}
|
||||
if (ObjectUtil.isNotEmpty(bizOrder.getOrderSn())) {
|
||||
queryWrapper.like(BizOrder::getOrderSn, bizOrder.getOrderSn());
|
||||
|
|
@ -190,10 +191,10 @@ public class BizOrderServiceImpl implements IBizOrderService {
|
|||
queryWrapper.like(BizOrder::getCopilotName, bizOrder.getCopilotName());
|
||||
}
|
||||
if (ObjectUtil.isNotEmpty(bizOrder.getSenderName())) {
|
||||
queryWrapper.and(wq -> wq.like(BizOrder::getSenderName, bizOrder.getSenderName()).or().like(BizOrder::getSenderPhone,bizOrder.getSenderName()).or().like(BizOrder::getSenderAddress,bizOrder.getSenderName()).or().like(BizOrder::getSenderLinkman,bizOrder.getSenderName()));
|
||||
queryWrapper.and(wq -> wq.like(BizOrder::getSenderName, bizOrder.getSenderName()).or().like(BizOrder::getSenderPhone, bizOrder.getSenderName()).or().like(BizOrder::getSenderAddress, bizOrder.getSenderName()).or().like(BizOrder::getSenderLinkman, bizOrder.getSenderName()));
|
||||
}
|
||||
if (ObjectUtil.isNotEmpty(bizOrder.getReceiverName())) {
|
||||
queryWrapper.and(wq -> wq.like(BizOrder::getReceiverName, bizOrder.getReceiverName()).or().like(BizOrder::getReceiverPhone,bizOrder.getReceiverName()).or().like(BizOrder::getReceiverAddress,bizOrder.getReceiverName()).or().like(BizOrder::getReceiverLinkman,bizOrder.getReceiverName()));
|
||||
queryWrapper.and(wq -> wq.like(BizOrder::getReceiverName, bizOrder.getReceiverName()).or().like(BizOrder::getReceiverPhone, bizOrder.getReceiverName()).or().like(BizOrder::getReceiverAddress, bizOrder.getReceiverName()).or().like(BizOrder::getReceiverLinkman, bizOrder.getReceiverName()));
|
||||
}
|
||||
if (ObjectUtil.isNotEmpty(bizOrder.getReceiverLinkman())) {
|
||||
queryWrapper.like(BizOrder::getReceiverLinkman, bizOrder.getReceiverLinkman());
|
||||
|
|
@ -291,13 +292,13 @@ public class BizOrderServiceImpl implements IBizOrderService {
|
|||
if (ObjectUtil.isNotEmpty(bizOrder.getArriveLat())) {
|
||||
queryWrapper.eq(BizOrder::getArriveLat, bizOrder.getArriveLat());
|
||||
}
|
||||
if (ObjectUtil.isNotEmpty(bizOrder.getBeginTime())){
|
||||
if (ObjectUtil.isNotEmpty(bizOrder.getBeginTime())) {
|
||||
String beginTime = bizOrder.getBeginTime() + " 00:00:00";
|
||||
queryWrapper.ge(BizOrder::getCreateTime,beginTime);
|
||||
queryWrapper.ge(BizOrder::getCreateTime, beginTime);
|
||||
}
|
||||
if (ObjectUtil.isNotEmpty(bizOrder.getEndTime())){
|
||||
if (ObjectUtil.isNotEmpty(bizOrder.getEndTime())) {
|
||||
String endTime = bizOrder.getEndTime() + " 23:59:59";
|
||||
queryWrapper.le(BizOrder::getCreateTime,endTime);
|
||||
queryWrapper.le(BizOrder::getCreateTime, endTime);
|
||||
}
|
||||
queryWrapper.orderByDesc(BizOrder::getCreateTime);
|
||||
queryWrapper.eq(BizOrder::getStatus, 1);
|
||||
|
|
@ -327,7 +328,7 @@ public class BizOrderServiceImpl implements IBizOrderService {
|
|||
BigDecimal length = bizOrder.getLength();
|
||||
BigDecimal width = bizOrder.getWidth();
|
||||
BigDecimal height = bizOrder.getHeight();
|
||||
if (ObjectUtil.isNotEmpty(length) && ObjectUtil.isNotEmpty(width) && ObjectUtil.isNotEmpty(height)){
|
||||
if (ObjectUtil.isNotEmpty(length) && ObjectUtil.isNotEmpty(width) && ObjectUtil.isNotEmpty(height)) {
|
||||
bizOrder.setVolume(length.multiply(width).multiply(height));
|
||||
}
|
||||
|
||||
|
|
@ -335,11 +336,11 @@ public class BizOrderServiceImpl implements IBizOrderService {
|
|||
|
||||
bizOrder.setCustomerName(bizCustomerMapper.selectById(customerId).getName());
|
||||
if (ObjectUtil.isNotEmpty(routeId)) bizOrder.setRouteName(bizCustomerRouteMapper.selectById(routeId).getName());
|
||||
if (ObjectUtil.isNotEmpty(warehouseId)){
|
||||
if (ObjectUtil.isNotEmpty(warehouseId)) {
|
||||
bizOrder.setWarehouseName(bizCustomerWarehouseMapper.selectById(warehouseId).getName());
|
||||
bizOrder.setSenderArea(bizCustomerWarehouseMapper.selectById(warehouseId).getArea());
|
||||
}
|
||||
if (ObjectUtil.isNotEmpty(shopId)){
|
||||
if (ObjectUtil.isNotEmpty(shopId)) {
|
||||
bizOrder.setShopName(bizCustomerShopMapper.selectById(shopId).getName());
|
||||
bizOrder.setReceiverArea(bizCustomerShopMapper.selectById(shopId).getArea());
|
||||
}
|
||||
|
|
@ -348,7 +349,7 @@ public class BizOrderServiceImpl implements IBizOrderService {
|
|||
if (ObjectUtil.isNotEmpty(copilotId)) bizOrder.setCopilotName(bizDriverMapper.selectById(copilotId).getName());
|
||||
|
||||
// 计算直线距离
|
||||
if (ObjectUtil.isNotEmpty(bizOrder.getSenderLng()) && ObjectUtil.isNotEmpty(bizOrder.getSenderLat()) && ObjectUtil.isNotEmpty(bizOrder.getReceiverLng()) && ObjectUtil.isNotEmpty(bizOrder.getReceiverLat())){
|
||||
if (ObjectUtil.isNotEmpty(bizOrder.getSenderLng()) && ObjectUtil.isNotEmpty(bizOrder.getSenderLat()) && ObjectUtil.isNotEmpty(bizOrder.getReceiverLng()) && ObjectUtil.isNotEmpty(bizOrder.getReceiverLat())) {
|
||||
double lineDistance = PositionUtil.getDistance1(bizOrder.getSenderLng().doubleValue(), bizOrder.getSenderLat().doubleValue(), bizOrder.getReceiverLng().doubleValue(), bizOrder.getReceiverLat().doubleValue());
|
||||
bizOrder.setLineDistance(lineDistance);
|
||||
}
|
||||
|
|
@ -380,22 +381,27 @@ public class BizOrderServiceImpl implements IBizOrderService {
|
|||
|
||||
// 判断是否是批量生成
|
||||
Boolean showlist = (Boolean) map.get("showlist");
|
||||
if (!showlist){ // 批量生成
|
||||
if (totalQuantity != 0){
|
||||
if (!showlist) { // 批量生成
|
||||
if (totalQuantity != 0) {
|
||||
for (int i = 1; i <= totalQuantity; i++) {
|
||||
BizOrderSub bizOrderSub = new BizOrderSub();
|
||||
bizOrderSub.setOrderSn(orderSn);
|
||||
bizOrderSub.setSubOrderSn(orderSn + "-" + i);
|
||||
if (ObjectUtil.isNotEmpty(subList.get(0).get("weight"))) bizOrderSub.setWeight(BigDecimal.valueOf(Helper.FDouble( subList.get(0).get("weight"))));
|
||||
if (ObjectUtil.isNotEmpty(subList.get(0).get("length"))) bizOrderSub.setLength(BigDecimal.valueOf(Helper.FDouble( subList.get(0).get("length"))));
|
||||
if (ObjectUtil.isNotEmpty(subList.get(0).get("width"))) bizOrderSub.setWidth(BigDecimal.valueOf(Helper.FDouble( subList.get(0).get("width"))));
|
||||
if (ObjectUtil.isNotEmpty(subList.get(0).get("height"))) bizOrderSub.setHeight(BigDecimal.valueOf(Helper.FDouble( subList.get(0).get("height"))));
|
||||
if (ObjectUtil.isNotEmpty(subList.get(0).get("length")) && ObjectUtil.isNotEmpty(subList.get(0).get("width")) && ObjectUtil.isNotEmpty(subList.get(0).get("height"))){
|
||||
bizOrderSub.setVolume(BigDecimal.valueOf(Helper.FDouble( subList.get(0).get("length"))).multiply(BigDecimal.valueOf(Helper.FDouble( subList.get(0).get("width")))).multiply(BigDecimal.valueOf(Helper.FDouble( subList.get(0).get("height")))));
|
||||
if (ObjectUtil.isNotEmpty(subList.get(0).get("weight")))
|
||||
bizOrderSub.setWeight(BigDecimal.valueOf(Helper.FDouble(subList.get(0).get("weight"))));
|
||||
if (ObjectUtil.isNotEmpty(subList.get(0).get("length")))
|
||||
bizOrderSub.setLength(BigDecimal.valueOf(Helper.FDouble(subList.get(0).get("length"))));
|
||||
if (ObjectUtil.isNotEmpty(subList.get(0).get("width")))
|
||||
bizOrderSub.setWidth(BigDecimal.valueOf(Helper.FDouble(subList.get(0).get("width"))));
|
||||
if (ObjectUtil.isNotEmpty(subList.get(0).get("height")))
|
||||
bizOrderSub.setHeight(BigDecimal.valueOf(Helper.FDouble(subList.get(0).get("height"))));
|
||||
if (ObjectUtil.isNotEmpty(subList.get(0).get("length")) && ObjectUtil.isNotEmpty(subList.get(0).get("width")) && ObjectUtil.isNotEmpty(subList.get(0).get("height"))) {
|
||||
bizOrderSub.setVolume(BigDecimal.valueOf(Helper.FDouble(subList.get(0).get("length"))).multiply(BigDecimal.valueOf(Helper.FDouble(subList.get(0).get("width")))).multiply(BigDecimal.valueOf(Helper.FDouble(subList.get(0).get("height")))));
|
||||
}
|
||||
bizOrderSub.setGoodsType((String) subList.get(0).get("goodsType"));
|
||||
bizOrderSub.setGoodsName((String) subList.get(0).get("goodsName"));
|
||||
if (ObjectUtil.isNotEmpty(subList.get(0).get("orderFee"))) bizOrderSub.setOrderFee(BigDecimal.valueOf(Helper.FDouble( subList.get(0).get("orderFee"))));
|
||||
if (ObjectUtil.isNotEmpty(subList.get(0).get("orderFee")))
|
||||
bizOrderSub.setOrderFee(BigDecimal.valueOf(Helper.FDouble(subList.get(0).get("orderFee"))));
|
||||
bizOrderSub.setRemark((String) subList.get(0).get("remark"));
|
||||
bizOrderSubMapper.insert(bizOrderSub);
|
||||
|
||||
|
|
@ -403,36 +409,39 @@ public class BizOrderServiceImpl implements IBizOrderService {
|
|||
callThirdPartyInterface(bizOrder, bizOrderSub);
|
||||
}
|
||||
}
|
||||
}else {
|
||||
} else {
|
||||
for (Map map1 : subList) {
|
||||
if (map1.get("orderSn").equals(orderSn)){
|
||||
if (map1.get("orderSn").equals(orderSn)) {
|
||||
BizOrderSub bizOrderSub = new BizOrderSub();
|
||||
bizOrderSub.setOrderSn(orderSn);
|
||||
bizOrderSub.setSubOrderSn((String) map1.get("subOrderSn"));
|
||||
if (ObjectUtil.isNotEmpty(map1.get("weight"))) bizOrderSub.setWeight(BigDecimal.valueOf(Helper.FDouble( map1.get("weight"))));
|
||||
if (ObjectUtil.isNotEmpty(map1.get("length"))) bizOrderSub.setLength(BigDecimal.valueOf(Helper.FDouble( map1.get("length"))));
|
||||
if (ObjectUtil.isNotEmpty(map1.get("width"))) bizOrderSub.setWidth(BigDecimal.valueOf(Helper.FDouble( map1.get("width"))));
|
||||
if (ObjectUtil.isNotEmpty(map1.get("height"))) bizOrderSub.setHeight(BigDecimal.valueOf(Helper.FDouble( map1.get("height"))));
|
||||
if (ObjectUtil.isNotEmpty(map1.get("length")) && ObjectUtil.isNotEmpty(map1.get("width")) && ObjectUtil.isNotEmpty(map1.get("height"))){
|
||||
bizOrderSub.setVolume(BigDecimal.valueOf(Helper.FDouble( map1.get("length"))).multiply(BigDecimal.valueOf(Helper.FDouble( map1.get("width")))).multiply(BigDecimal.valueOf(Helper.FDouble( map1.get("height")))));
|
||||
if (ObjectUtil.isNotEmpty(map1.get("weight")))
|
||||
bizOrderSub.setWeight(BigDecimal.valueOf(Helper.FDouble(map1.get("weight"))));
|
||||
if (ObjectUtil.isNotEmpty(map1.get("length")))
|
||||
bizOrderSub.setLength(BigDecimal.valueOf(Helper.FDouble(map1.get("length"))));
|
||||
if (ObjectUtil.isNotEmpty(map1.get("width")))
|
||||
bizOrderSub.setWidth(BigDecimal.valueOf(Helper.FDouble(map1.get("width"))));
|
||||
if (ObjectUtil.isNotEmpty(map1.get("height")))
|
||||
bizOrderSub.setHeight(BigDecimal.valueOf(Helper.FDouble(map1.get("height"))));
|
||||
if (ObjectUtil.isNotEmpty(map1.get("length")) && ObjectUtil.isNotEmpty(map1.get("width")) && ObjectUtil.isNotEmpty(map1.get("height"))) {
|
||||
bizOrderSub.setVolume(BigDecimal.valueOf(Helper.FDouble(map1.get("length"))).multiply(BigDecimal.valueOf(Helper.FDouble(map1.get("width")))).multiply(BigDecimal.valueOf(Helper.FDouble(map1.get("height")))));
|
||||
}
|
||||
bizOrderSub.setGoodsType((String) map1.get("goodsType"));
|
||||
bizOrderSub.setGoodsName((String) map1.get("goodsName"));
|
||||
if (ObjectUtil.isNotEmpty(map1.get("orderFee"))) bizOrderSub.setOrderFee(BigDecimal.valueOf(Helper.FDouble( map1.get("orderFee"))));
|
||||
if (ObjectUtil.isNotEmpty(map1.get("orderFee")))
|
||||
bizOrderSub.setOrderFee(BigDecimal.valueOf(Helper.FDouble(map1.get("orderFee"))));
|
||||
bizOrderSub.setRemark((String) map1.get("remark"));
|
||||
bizOrderSubMapper.insert(bizOrderSub);
|
||||
|
||||
// 同步调用同城急送平台入口
|
||||
callThirdPartyInterface(bizOrder,bizOrderSub);
|
||||
callThirdPartyInterface(bizOrder, bizOrderSub);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@GetMapping("/test9")
|
||||
private void callThirdPartyInterface(BizOrder bizOrder,BizOrderSub bizOrderSub) {
|
||||
// String response = cityDelivery.addOrder(bizOrder, bizOrderSub);
|
||||
String response = "{\"success\":true,\"message\":\"\",\"code\":200,\"result\":{\"insuredFee\":0,\"otherFee2\":0,\"orderNo\":\"202502130138279376949\",\"costFee\":0,\"expressNbr\":\"1158127631667\",\"totalFee\":800,\"expectTime\":null,\"tipFee\":0,\"otherFee1\":0,\"postageFee\":800},\"timestamp\":1739419238706}";
|
||||
private void callThirdPartyInterface(BizOrder bizOrder, BizOrderSub bizOrderSub) {
|
||||
String response = cityDelivery.addOrder(bizOrder, bizOrderSub);
|
||||
JSONObject jsonObject = JSON.parseObject(response);
|
||||
if ((Integer) jsonObject.get("code") == 200) {
|
||||
// 同步更新运单信息
|
||||
|
|
@ -476,7 +485,7 @@ public class BizOrderServiceImpl implements IBizOrderService {
|
|||
@Override
|
||||
public int updateBizOrder(BizOrder bizOrder) {
|
||||
BizOrder order = bizOrderMapper.selectById(bizOrder.getId());
|
||||
if (bizOrder.getIsCancel() == 1 && order.getCancelTime() == null){
|
||||
if (bizOrder.getIsCancel() == 1 && order.getCancelTime() == null) {
|
||||
bizOrder.setCancelTime(new Date());
|
||||
}
|
||||
return bizOrderMapper.updateById(bizOrder);
|
||||
|
|
@ -498,6 +507,7 @@ public class BizOrderServiceImpl implements IBizOrderService {
|
|||
|
||||
/**
|
||||
* 批量修改订单状态
|
||||
*
|
||||
* @param ids 订单id
|
||||
* @return 结果
|
||||
*/
|
||||
|
|
@ -542,7 +552,7 @@ public class BizOrderServiceImpl implements IBizOrderService {
|
|||
StringBuilder failureMsg = new StringBuilder();
|
||||
for (BizOrderVo vo : orderList) {
|
||||
BizOrder bizOrder = new BizOrder();
|
||||
BeanUtils.copyProperties(vo,bizOrder);
|
||||
BeanUtils.copyProperties(vo, bizOrder);
|
||||
// 设置订单属性
|
||||
setBizOrder(bizOrder);
|
||||
try {
|
||||
|
|
@ -583,7 +593,7 @@ public class BizOrderServiceImpl implements IBizOrderService {
|
|||
StringBuilder failureMsg = new StringBuilder();
|
||||
for (BizOrderVoCustomer voCustomer : orderList) {
|
||||
BizOrder bizOrder = new BizOrder();
|
||||
BeanUtils.copyProperties(voCustomer,bizOrder);
|
||||
BeanUtils.copyProperties(voCustomer, bizOrder);
|
||||
// 设置订单属性
|
||||
setBizOrderCustomer(bizOrder);
|
||||
try {
|
||||
|
|
@ -630,16 +640,16 @@ public class BizOrderServiceImpl implements IBizOrderService {
|
|||
bizOrder.setCustomerId(customerId);
|
||||
|
||||
LambdaQueryWrapper<BizCustomerRoute> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(BizCustomerRoute::getCustomerId,customerId);
|
||||
queryWrapper.eq(BizCustomerRoute::getName,routeName);
|
||||
queryWrapper.eq(BizCustomerRoute::getStatus,"1");
|
||||
queryWrapper.eq(BizCustomerRoute::getCustomerId, customerId);
|
||||
queryWrapper.eq(BizCustomerRoute::getName, routeName);
|
||||
queryWrapper.eq(BizCustomerRoute::getStatus, "1");
|
||||
BizCustomerRoute bizCustomerRoute = bizCustomerRouteMapper.selectOne(queryWrapper);
|
||||
bizOrder.setRouteId(bizCustomerRoute.getId());
|
||||
|
||||
LambdaQueryWrapper<BizCustomerWarehouse> queryWrapper1 = new LambdaQueryWrapper<>();
|
||||
queryWrapper1.eq(BizCustomerWarehouse::getCustomerId,customerId);
|
||||
queryWrapper1.eq(BizCustomerWarehouse::getName,warehouseName);
|
||||
queryWrapper1.eq(BizCustomerWarehouse::getStatus,1);
|
||||
queryWrapper1.eq(BizCustomerWarehouse::getCustomerId, customerId);
|
||||
queryWrapper1.eq(BizCustomerWarehouse::getName, warehouseName);
|
||||
queryWrapper1.eq(BizCustomerWarehouse::getStatus, 1);
|
||||
BizCustomerWarehouse bizCustomerWarehouse = bizCustomerWarehouseMapper.selectOne(queryWrapper1);
|
||||
bizOrder.setWarehouseId(bizCustomerWarehouse.getId());
|
||||
// 发件人信息就是仓库信息
|
||||
|
|
@ -651,9 +661,9 @@ public class BizOrderServiceImpl implements IBizOrderService {
|
|||
bizOrder.setSenderLat(bizCustomerWarehouse.getLat());
|
||||
|
||||
LambdaQueryWrapper<BizCustomerShop> queryWrapper2 = new LambdaQueryWrapper<>();
|
||||
queryWrapper2.eq(BizCustomerShop::getCustomerId,customerId);
|
||||
queryWrapper2.eq(BizCustomerShop::getName,shopName);
|
||||
queryWrapper2.eq(BizCustomerShop::getStatus,1);
|
||||
queryWrapper2.eq(BizCustomerShop::getCustomerId, customerId);
|
||||
queryWrapper2.eq(BizCustomerShop::getName, shopName);
|
||||
queryWrapper2.eq(BizCustomerShop::getStatus, 1);
|
||||
BizCustomerShop bizCustomerShop = bizCustomerShopMapper.selectOne(queryWrapper2);
|
||||
bizOrder.setShopId(bizCustomerShop.getId());
|
||||
// 收件人信息就是店铺信息
|
||||
|
|
@ -664,24 +674,24 @@ public class BizOrderServiceImpl implements IBizOrderService {
|
|||
bizOrder.setReceiverLng(bizCustomerShop.getLng());
|
||||
bizOrder.setReceiverLat(bizCustomerShop.getLat());
|
||||
|
||||
if (ObjectUtil.isNotEmpty(carNo)){
|
||||
if (ObjectUtil.isNotEmpty(carNo)) {
|
||||
LambdaQueryWrapper<BizCar> queryWrapper3 = new LambdaQueryWrapper<>();
|
||||
queryWrapper3.eq(BizCar::getCarNo,carNo);
|
||||
queryWrapper3.eq(BizCar::getStatus,1);
|
||||
queryWrapper3.eq(BizCar::getCarNo, carNo);
|
||||
queryWrapper3.eq(BizCar::getStatus, 1);
|
||||
BizCar bizCar = bizCarMapper.selectOne(queryWrapper3);
|
||||
bizOrder.setCarId(bizCar.getId());
|
||||
}
|
||||
if (ObjectUtil.isNotEmpty(driverName)){
|
||||
LambdaQueryWrapper<BizDriver> queryWrapper4= new LambdaQueryWrapper<>();
|
||||
queryWrapper4.eq(BizDriver::getName,driverName);
|
||||
queryWrapper4.eq(BizDriver::getStatus,1);
|
||||
if (ObjectUtil.isNotEmpty(driverName)) {
|
||||
LambdaQueryWrapper<BizDriver> queryWrapper4 = new LambdaQueryWrapper<>();
|
||||
queryWrapper4.eq(BizDriver::getName, driverName);
|
||||
queryWrapper4.eq(BizDriver::getStatus, 1);
|
||||
BizDriver bizDriver = bizDriverMapper.selectOne(queryWrapper4);
|
||||
bizOrder.setDriverId(bizDriver.getId());
|
||||
}
|
||||
if (ObjectUtil.isNotEmpty(copilotName)){
|
||||
LambdaQueryWrapper<BizDriver> queryWrapper5= new LambdaQueryWrapper<>();
|
||||
queryWrapper5.eq(BizDriver::getName,copilotName);
|
||||
queryWrapper5.eq(BizDriver::getStatus,1);
|
||||
if (ObjectUtil.isNotEmpty(copilotName)) {
|
||||
LambdaQueryWrapper<BizDriver> queryWrapper5 = new LambdaQueryWrapper<>();
|
||||
queryWrapper5.eq(BizDriver::getName, copilotName);
|
||||
queryWrapper5.eq(BizDriver::getStatus, 1);
|
||||
BizDriver copilot = bizDriverMapper.selectOne(queryWrapper5);
|
||||
bizOrder.setCopilotId(copilot.getId());
|
||||
}
|
||||
|
|
@ -692,7 +702,7 @@ public class BizOrderServiceImpl implements IBizOrderService {
|
|||
bizOrder.setLength(length);
|
||||
bizOrder.setWidth(width);
|
||||
bizOrder.setHeight(height);
|
||||
if (ObjectUtil.isNotEmpty(length) && ObjectUtil.isNotEmpty(width) && ObjectUtil.isNotEmpty(height)){
|
||||
if (ObjectUtil.isNotEmpty(length) && ObjectUtil.isNotEmpty(width) && ObjectUtil.isNotEmpty(height)) {
|
||||
bizOrder.setVolume(length.multiply(width).multiply(height));
|
||||
}
|
||||
bizOrder.setRemark(remark);
|
||||
|
|
@ -719,16 +729,16 @@ public class BizOrderServiceImpl implements IBizOrderService {
|
|||
bizOrder.setCustomerName(bizCustomer.getName());
|
||||
|
||||
LambdaQueryWrapper<BizCustomerRoute> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(BizCustomerRoute::getCustomerId,customerId);
|
||||
queryWrapper.eq(BizCustomerRoute::getName,routeName);
|
||||
queryWrapper.eq(BizCustomerRoute::getStatus,"1");
|
||||
queryWrapper.eq(BizCustomerRoute::getCustomerId, customerId);
|
||||
queryWrapper.eq(BizCustomerRoute::getName, routeName);
|
||||
queryWrapper.eq(BizCustomerRoute::getStatus, "1");
|
||||
BizCustomerRoute bizCustomerRoute = bizCustomerRouteMapper.selectOne(queryWrapper);
|
||||
bizOrder.setRouteId(bizCustomerRoute.getId());
|
||||
|
||||
LambdaQueryWrapper<BizCustomerWarehouse> queryWrapper1 = new LambdaQueryWrapper<>();
|
||||
queryWrapper1.eq(BizCustomerWarehouse::getCustomerId,customerId);
|
||||
queryWrapper1.eq(BizCustomerWarehouse::getName,warehouseName);
|
||||
queryWrapper1.eq(BizCustomerWarehouse::getStatus,1);
|
||||
queryWrapper1.eq(BizCustomerWarehouse::getCustomerId, customerId);
|
||||
queryWrapper1.eq(BizCustomerWarehouse::getName, warehouseName);
|
||||
queryWrapper1.eq(BizCustomerWarehouse::getStatus, 1);
|
||||
BizCustomerWarehouse bizCustomerWarehouse = bizCustomerWarehouseMapper.selectOne(queryWrapper1);
|
||||
bizOrder.setWarehouseId(bizCustomerWarehouse.getId());
|
||||
// 发件人信息就是仓库信息
|
||||
|
|
@ -740,9 +750,9 @@ public class BizOrderServiceImpl implements IBizOrderService {
|
|||
bizOrder.setSenderLat(bizCustomerWarehouse.getLat());
|
||||
|
||||
LambdaQueryWrapper<BizCustomerShop> queryWrapper2 = new LambdaQueryWrapper<>();
|
||||
queryWrapper2.eq(BizCustomerShop::getCustomerId,customerId);
|
||||
queryWrapper2.eq(BizCustomerShop::getName,shopName);
|
||||
queryWrapper2.eq(BizCustomerShop::getStatus,1);
|
||||
queryWrapper2.eq(BizCustomerShop::getCustomerId, customerId);
|
||||
queryWrapper2.eq(BizCustomerShop::getName, shopName);
|
||||
queryWrapper2.eq(BizCustomerShop::getStatus, 1);
|
||||
BizCustomerShop bizCustomerShop = bizCustomerShopMapper.selectOne(queryWrapper2);
|
||||
bizOrder.setShopId(bizCustomerShop.getId());
|
||||
// 收件人信息就是店铺信息
|
||||
|
|
@ -759,7 +769,7 @@ public class BizOrderServiceImpl implements IBizOrderService {
|
|||
bizOrder.setLength(length);
|
||||
bizOrder.setWidth(width);
|
||||
bizOrder.setHeight(height);
|
||||
if (ObjectUtil.isNotEmpty(length) && ObjectUtil.isNotEmpty(width) && ObjectUtil.isNotEmpty(height)){
|
||||
if (ObjectUtil.isNotEmpty(length) && ObjectUtil.isNotEmpty(width) && ObjectUtil.isNotEmpty(height)) {
|
||||
bizOrder.setVolume(length.multiply(width).multiply(height));
|
||||
}
|
||||
bizOrder.setRemark(remark);
|
||||
|
|
@ -770,9 +780,9 @@ public class BizOrderServiceImpl implements IBizOrderService {
|
|||
String format = DateUtil.format(new Date(), "yyyyMMdd"); // 20241220
|
||||
String orderSn;
|
||||
BizOrder order = bizOrderMapper.selectLastestOrder();
|
||||
if (order == null || !order.getOrderSn().substring(1, 9).equals(format)){
|
||||
if (order == null || !order.getOrderSn().substring(1, 9).equals(format)) {
|
||||
orderSn = "Y" + format + "1001";
|
||||
}else {
|
||||
} else {
|
||||
String sn = order.getOrderSn();
|
||||
String substring = sn.substring(9); // 1001
|
||||
long aLong = Long.parseLong(substring);
|
||||
|
|
@ -783,7 +793,7 @@ public class BizOrderServiceImpl implements IBizOrderService {
|
|||
}
|
||||
|
||||
@Override
|
||||
public int goDelivery(Map map){
|
||||
public int goDelivery(Map map) {
|
||||
BizDriver bizDriver = bizDriverMapper.selectByUserId(SecurityUtils.getUserId());
|
||||
Long orderId = Helper.FLong(map.get("id"));
|
||||
Long driverId = Helper.FLong(map.get("driverId"));
|
||||
|
|
@ -791,10 +801,10 @@ public class BizOrderServiceImpl implements IBizOrderService {
|
|||
Long warehouseId = order.getWarehouseId();
|
||||
|
||||
LambdaQueryWrapper<BizOrder> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(BizOrder::getStatus,1);
|
||||
queryWrapper.eq(BizOrder::getStatus, 1);
|
||||
queryWrapper.eq(BizOrder::getOrderStatus, 1);
|
||||
queryWrapper.eq(BizOrder::getWarehouseId, warehouseId);
|
||||
queryWrapper.and(wq -> wq.eq(BizOrder::getDriverId,bizDriver.getId()).or().eq(BizOrder::getCopilotId,bizDriver.getId()));
|
||||
queryWrapper.and(wq -> wq.eq(BizOrder::getDriverId, bizDriver.getId()).or().eq(BizOrder::getCopilotId, bizDriver.getId()));
|
||||
int num = 0;
|
||||
List<BizOrder> list = bizOrderMapper.selectList(queryWrapper);
|
||||
for (BizOrder item : list) {
|
||||
|
|
@ -807,8 +817,9 @@ public class BizOrderServiceImpl implements IBizOrderService {
|
|||
}
|
||||
return num;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int arrived(Map map){
|
||||
public int arrived(Map map) {
|
||||
Long orderId = Helper.FLong(map.get("id"));
|
||||
String img = Helper.NStr(map.get("img"));
|
||||
String remark = Helper.NStr(map.get("remark"));
|
||||
|
|
@ -828,49 +839,49 @@ public class BizOrderServiceImpl implements IBizOrderService {
|
|||
|
||||
@Override
|
||||
public Map<String, Long> getOrderStaticsByDriver() {
|
||||
String today = DateUtil.format(new Date(),"yyyy-MM-dd");
|
||||
String today = DateUtil.format(new Date(), "yyyy-MM-dd");
|
||||
Long userId = SecurityUtils.getUserId();
|
||||
BizDriver bizDriver = bizDriverMapper.selectByUserId(userId);
|
||||
LambdaQueryWrapper<BizOrder> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(BizOrder::getOrderStatus,"1");
|
||||
queryWrapper.eq(BizOrder::getStatus,1);
|
||||
queryWrapper.and(wq -> wq.eq(BizOrder::getDriverId,bizDriver.getId()).or().eq(BizOrder::getCopilotId,bizDriver.getId()));
|
||||
queryWrapper.eq(BizOrder::getOrderStatus, "1");
|
||||
queryWrapper.eq(BizOrder::getStatus, 1);
|
||||
queryWrapper.and(wq -> wq.eq(BizOrder::getDriverId, bizDriver.getId()).or().eq(BizOrder::getCopilotId, bizDriver.getId()));
|
||||
Long dqj = bizOrderMapper.selectCount(queryWrapper);
|
||||
LambdaQueryWrapper<BizOrder> queryWrapper2 = new LambdaQueryWrapper<>();
|
||||
queryWrapper2.eq(BizOrder::getOrderStatus,"2");
|
||||
queryWrapper2.eq(BizOrder::getStatus,1);
|
||||
queryWrapper2.and(wq -> wq.eq(BizOrder::getDriverId,bizDriver.getId()).or().eq(BizOrder::getCopilotId,bizDriver.getId()));
|
||||
queryWrapper2.eq(BizOrder::getOrderStatus, "2");
|
||||
queryWrapper2.eq(BizOrder::getStatus, 1);
|
||||
queryWrapper2.and(wq -> wq.eq(BizOrder::getDriverId, bizDriver.getId()).or().eq(BizOrder::getCopilotId, bizDriver.getId()));
|
||||
Long psz = bizOrderMapper.selectCount(queryWrapper2);
|
||||
LambdaQueryWrapper<BizOrder> queryWrapper3 = new LambdaQueryWrapper<>();
|
||||
queryWrapper3.eq(BizOrder::getOrderStatus,"3");
|
||||
queryWrapper3.eq(BizOrder::getStatus,1);
|
||||
queryWrapper3.and(wq -> wq.eq(BizOrder::getDriverId,bizDriver.getId()).or().eq(BizOrder::getCopilotId,bizDriver.getId()));
|
||||
queryWrapper3.eq(BizOrder::getOrderStatus, "3");
|
||||
queryWrapper3.eq(BizOrder::getStatus, 1);
|
||||
queryWrapper3.and(wq -> wq.eq(BizOrder::getDriverId, bizDriver.getId()).or().eq(BizOrder::getCopilotId, bizDriver.getId()));
|
||||
Long ywc = bizOrderMapper.selectCount(queryWrapper3);
|
||||
LambdaQueryWrapper<BizOrder> queryWrapper4 = new LambdaQueryWrapper<>();
|
||||
queryWrapper4.eq(BizOrder::getOrderStatus,"1");
|
||||
queryWrapper4.eq(BizOrder::getStatus,1);
|
||||
queryWrapper4.like(BizOrder::getCreateTime,today);
|
||||
queryWrapper4.and(wq -> wq.eq(BizOrder::getDriverId,bizDriver.getId()).or().eq(BizOrder::getCopilotId,bizDriver.getId()));
|
||||
queryWrapper4.eq(BizOrder::getOrderStatus, "1");
|
||||
queryWrapper4.eq(BizOrder::getStatus, 1);
|
||||
queryWrapper4.like(BizOrder::getCreateTime, today);
|
||||
queryWrapper4.and(wq -> wq.eq(BizOrder::getDriverId, bizDriver.getId()).or().eq(BizOrder::getCopilotId, bizDriver.getId()));
|
||||
Long dqjToday = bizOrderMapper.selectCount(queryWrapper4);
|
||||
LambdaQueryWrapper<BizOrder> queryWrapper5 = new LambdaQueryWrapper<>();
|
||||
queryWrapper5.eq(BizOrder::getOrderStatus,"2");
|
||||
queryWrapper5.eq(BizOrder::getStatus,1);
|
||||
queryWrapper5.like(BizOrder::getUpdateTime,today);
|
||||
queryWrapper5.and(wq -> wq.eq(BizOrder::getDriverId,bizDriver.getId()).or().eq(BizOrder::getCopilotId,bizDriver.getId()));
|
||||
queryWrapper5.eq(BizOrder::getOrderStatus, "2");
|
||||
queryWrapper5.eq(BizOrder::getStatus, 1);
|
||||
queryWrapper5.like(BizOrder::getUpdateTime, today);
|
||||
queryWrapper5.and(wq -> wq.eq(BizOrder::getDriverId, bizDriver.getId()).or().eq(BizOrder::getCopilotId, bizDriver.getId()));
|
||||
Long pszToday = bizOrderMapper.selectCount(queryWrapper5);
|
||||
LambdaQueryWrapper<BizOrder> queryWrapper6 = new LambdaQueryWrapper<>();
|
||||
queryWrapper6.eq(BizOrder::getOrderStatus,"3");
|
||||
queryWrapper6.eq(BizOrder::getStatus,1);
|
||||
queryWrapper6.like(BizOrder::getUpdateTime,today);
|
||||
queryWrapper6.and(wq -> wq.eq(BizOrder::getDriverId,bizDriver.getId()).or().eq(BizOrder::getCopilotId,bizDriver.getId()));
|
||||
queryWrapper6.eq(BizOrder::getOrderStatus, "3");
|
||||
queryWrapper6.eq(BizOrder::getStatus, 1);
|
||||
queryWrapper6.like(BizOrder::getUpdateTime, today);
|
||||
queryWrapper6.and(wq -> wq.eq(BizOrder::getDriverId, bizDriver.getId()).or().eq(BizOrder::getCopilotId, bizDriver.getId()));
|
||||
Long ywcToday = bizOrderMapper.selectCount(queryWrapper6);
|
||||
Map<String,Long> map = new HashMap<>();
|
||||
map.put("dqj",dqj);
|
||||
map.put("psz",psz);
|
||||
map.put("ywc",ywc);
|
||||
map.put("dqjToday",dqjToday);
|
||||
map.put("pszToday",pszToday);
|
||||
map.put("ywcToday",ywcToday);
|
||||
Map<String, Long> map = new HashMap<>();
|
||||
map.put("dqj", dqj);
|
||||
map.put("psz", psz);
|
||||
map.put("ywc", ywc);
|
||||
map.put("dqjToday", dqjToday);
|
||||
map.put("pszToday", pszToday);
|
||||
map.put("ywcToday", ywcToday);
|
||||
return map;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue