提交修改
This commit is contained in:
parent
8cbd40b17b
commit
6b8dee7ca1
@ -127,7 +127,6 @@ public class VvPackageServiceImpl extends ServiceImpl<VvPackageDao, VvPackageEnt
|
|||||||
String fTime = dataDTO.getFtime();
|
String fTime = dataDTO.getFtime();
|
||||||
Date time = DateUtils.parseDate(fTime);
|
Date time = DateUtils.parseDate(fTime);
|
||||||
Date timeAfter15 = DateUtils.addDays(time, 15);
|
Date timeAfter15 = DateUtils.addDays(time, 15);
|
||||||
|
|
||||||
// 设置签收时间
|
// 设置签收时间
|
||||||
vvPackageEntity.setGmtSignReceipt(time);
|
vvPackageEntity.setGmtSignReceipt(time);
|
||||||
PackageDelivedDelayDTO dto = new PackageDelivedDelayDTO();
|
PackageDelivedDelayDTO dto = new PackageDelivedDelayDTO();
|
||||||
|
|||||||
@ -10,8 +10,11 @@ import com.heyu.api.alibaba.request.mm.order.*;
|
|||||||
import com.heyu.api.alibaba.request.mm.order.resp.VVOrderDetailResp;
|
import com.heyu.api.alibaba.request.mm.order.resp.VVOrderDetailResp;
|
||||||
import com.heyu.api.alibaba.request.mm.order.resp.VVOrderListResp;
|
import com.heyu.api.alibaba.request.mm.order.resp.VVOrderListResp;
|
||||||
import com.heyu.api.data.dao.vv.*;
|
import com.heyu.api.data.dao.vv.*;
|
||||||
|
import com.heyu.api.data.dto.PackageDelivedDelayDTO;
|
||||||
import com.heyu.api.data.entity.vv.*;
|
import com.heyu.api.data.entity.vv.*;
|
||||||
|
import com.heyu.api.data.enums.DelayTypeEnums;
|
||||||
import com.heyu.api.data.utils.BigDecimalUtil;
|
import com.heyu.api.data.utils.BigDecimalUtil;
|
||||||
|
import com.heyu.api.data.utils.DateUtils;
|
||||||
import com.heyu.api.data.utils.R;
|
import com.heyu.api.data.utils.R;
|
||||||
import com.heyu.api.data.utils.SanUtils;
|
import com.heyu.api.data.utils.SanUtils;
|
||||||
import com.heyu.api.service.VvTradeOrderConvertService;
|
import com.heyu.api.service.VvTradeOrderConvertService;
|
||||||
@ -19,7 +22,10 @@ import com.heyu.api.utils.ISelect;
|
|||||||
import com.heyu.api.utils.PPageUtils;
|
import com.heyu.api.utils.PPageUtils;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.commons.collections.CollectionUtils;
|
import org.apache.commons.collections.CollectionUtils;
|
||||||
|
import org.springframework.amqp.core.MessageDeliveryMode;
|
||||||
|
import org.springframework.amqp.rabbit.core.RabbitTemplate;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
@ -67,6 +73,18 @@ public class AdminOrderController {
|
|||||||
private VvBuyerDao vvBuyerDao;
|
private VvBuyerDao vvBuyerDao;
|
||||||
|
|
||||||
|
|
||||||
|
@Value("${eb.config.rabbitQueue.delayQueue}")
|
||||||
|
private String delayQueue;
|
||||||
|
|
||||||
|
|
||||||
|
@Value("${eb.config.rabbitQueue.delayExchangeName}")
|
||||||
|
private String delayExchangeName;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private RabbitTemplate rabbitTemplate;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/***
|
/***
|
||||||
* 列表
|
* 列表
|
||||||
*/
|
*/
|
||||||
@ -234,6 +252,32 @@ public class AdminOrderController {
|
|||||||
tradeOrderLineEntity.setUnpackUser(vvDeliveredDTO.getUserName());
|
tradeOrderLineEntity.setUnpackUser(vvDeliveredDTO.getUserName());
|
||||||
vvTradeOrderLineDao.updateVvTradeOrderLineById(tradeOrderLineEntity);
|
vvTradeOrderLineDao.updateVvTradeOrderLineById(tradeOrderLineEntity);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
VvPackageEntity vvPackageEntity = vvPackageDao.selectVvPackageByTrackNumber(vvDeliveredDTO.getTrackNumber());
|
||||||
|
|
||||||
|
Date time = new Date();
|
||||||
|
Date timeAfter15 = DateUtils.addDays(time, 15);
|
||||||
|
// 设置签收时间
|
||||||
|
vvPackageEntity.setGmtSignReceipt(time);
|
||||||
|
PackageDelivedDelayDTO dto = new PackageDelivedDelayDTO();
|
||||||
|
dto.setPackageId(vvPackageEntity.getId() );
|
||||||
|
dto.setRole(vvDeliveredDTO.getUserName());
|
||||||
|
dto.setSendTime(DateUtils.formatDate(new Date(), com.heyu.api.data.utils.DateUtils.YYYY_MM_DD_HH_MM_SS));
|
||||||
|
dto.setDelayTime(DateUtils.formatDate(timeAfter15, com.heyu.api.data.utils.DateUtils.YYYY_MM_DD_HH_MM_SS));
|
||||||
|
|
||||||
|
dto.setType(DelayTypeEnums.delivered.getType());
|
||||||
|
|
||||||
|
int second = DateUtils.betweenSecond(time, timeAfter15);
|
||||||
|
|
||||||
|
log.info("AdminOrderController delay send :{}",JSON.toJSONString(dto));
|
||||||
|
// 通过广播模式发布延时消息 延时30分钟 持久化消息 消费后销毁 这里无需指定路由,会广播至每个绑定此交换机的队列
|
||||||
|
|
||||||
|
rabbitTemplate.convertAndSend(delayExchangeName, "", JSON.toJSONString(dto), message -> {
|
||||||
|
message.getMessageProperties().setDeliveryMode(MessageDeliveryMode.PERSISTENT);
|
||||||
|
message.getMessageProperties().setDelay((second) * 1000); // 毫秒为单位,指定此消息的延时时长 ,+ 1 尽量保证机器人跑完了,再发送消息
|
||||||
|
return message;
|
||||||
|
});
|
||||||
|
|
||||||
return R.ok();
|
return R.ok();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user