Browse Source

订单定时任务

master
xyiege 4 years ago
parent
commit
11318b19a2
  1. 53
      src/main/java/cn/chjyj/szwh/service/impl/OrderTaskServiceImpl.java

53
src/main/java/cn/chjyj/szwh/service/impl/OrderTaskServiceImpl.java

@ -1,9 +1,7 @@
package cn.chjyj.szwh.service.impl;
import cn.chjyj.szwh.bean.Order;
import cn.chjyj.szwh.bean.OrderGoodsDetail;
import cn.chjyj.szwh.mapper.OrderGoodsDetailMapper;
import cn.chjyj.szwh.mapper.OrderMapper;
import cn.chjyj.szwh.bean.*;
import cn.chjyj.szwh.mapper.*;
import cn.chjyj.szwh.service.OrderTaskService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -23,7 +21,18 @@ public class OrderTaskServiceImpl implements OrderTaskService {
//订单商品详情
@Autowired
private OrderGoodsDetailMapper orderGoodsDetailMapper;
@Autowired
private GoodsMapper goodsMapper;
@Autowired
private GoodsDetailMapper goodsDetailMapper;
@Autowired
private OrderUserMapper orderUserMapper;
@Autowired
private OperationLogMapper operationLogMapper;
/**
* 关闭超时订单
*/
@Override
public void closeOrderTimeout() {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
@ -34,11 +43,13 @@ public class OrderTaskServiceImpl implements OrderTaskService {
String now=sdf.format(bdate);
//组装查询条件
Map qmap =new HashMap<>();
List<Order> orderList= orderMapper.getOrderList(qmap,0,20);
qmap.put("staus",1);
qmap.put("createtime",now);
List<Order> orderList= orderMapper.getOrderListUnderDate(now,"1");
// 判断非空
if(orderList!=null){
for(Order od:orderList) {
String field = "goods_islicode";
String field = "goods_islicode as goodsIslicode";
Map somap = new HashMap();
qmap.put("is_deleted", "0");
qmap.put("batchcode", od.getBatchcode()); //传入订单号
@ -46,9 +57,37 @@ public class OrderTaskServiceImpl implements OrderTaskService {
List<OrderGoodsDetail> dbOdglist = orderGoodsDetailMapper.getOrderGoodsDetailByMap(somap, field);
if(dbOdglist!=null){
for(OrderGoodsDetail odg:dbOdglist){
//商品
Goods tmpgoods =goodsMapper.getGoodsByIsli(odg.getGoodsIslicode());
if(tmpgoods==null){
continue;
}
//商品详情
GoodsDetail goodsDetail = goodsDetailMapper.getGoodsDetailBygid(tmpgoods.getGoodsDetailId());
if(goodsDetail==null){
continue;
}
// 对比和处理商品状态
if(goodsDetail.getGoodsEntrust()==1||goodsDetail.getContractualPeriod()==2){
goodsDetail.setStock(1);
goodsDetailMapper.updateGoodsDetail(goodsDetail);
//更新商品状态
Map gmap=new HashMap();
gmap.put("goods_status",1);
goodsMapper.updateGoods(gmap,tmpgoods.getId());
// 找到购买的用户信息
OrderUser orderUser =orderUserMapper.getUserOrder(od.getBatchcode(),odg.getGoodsIslicode());
//操作日志
OperationLog oplog = new OperationLog();
oplog.setType("goods");
oplog.setId(tmpgoods.getId());
oplog.setMessage(now+orderUser.getName()+"未付款成功,重新发布该标的!");
operationLogMapper.addLog(oplog);
}
}
}
//关闭订单
orderMapper.shutOrder(od.getBatchcode(),now);
}
}
}

Loading…
Cancel
Save