admin
2019-07-31 f253c6f0ce5e708850f8e3c84a6a9008fc37df5f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
package com.yeshi.fanli.service.impl.pdd;
 
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
 
import javax.annotation.Resource;
 
import org.springframework.stereotype.Service;
 
import com.yeshi.fanli.dao.mybatis.pdd.PDDOrderMapper;
import com.yeshi.fanli.entity.pdd.PDDOrder;
import com.yeshi.fanli.exception.pdd.PDDOrderException;
import com.yeshi.fanli.service.inter.pdd.PDDOrderService;
import com.yeshi.fanli.util.StringUtil;
 
@Service
public class PDDOrderServiceImpl implements PDDOrderService {
 
    @Resource
    private PDDOrderMapper pddOrderMapper;
 
    @Override
    public PDDOrder addOrder(PDDOrder order) throws PDDOrderException {
        if (order == null || StringUtil.isNullOrEmpty(order.getOrderSn()))
            throw new PDDOrderException(1, "订单信息不完整");
 
        PDDOrder old = pddOrderMapper.selectByOrderSN(order.getOrderSn());
        if (old != null) {
            // 更新订单信息
            if (order.getOrderStatus().intValue() != old.getOrderStatus()) {// 状态改变了才更改订单信息
                PDDOrder update = new PDDOrder();
                update.setId(old.getId());
                update.setOrderStatus(order.getOrderStatus());
                update.setOrderAmount(order.getOrderAmount());
                update.setOrderStatusDesc(order.getOrderStatusDesc());
                update.setOrderVerifyTime(order.getOrderVerifyTime());
                update.setOrderGroupSuccessTime(order.getOrderGroupSuccessTime());
                update.setOrderModifyAt(order.getOrderModifyAt());
                update.setOrderPayTime(order.getOrderPayTime());
                update.setOrderSettleTime(order.getOrderSettleTime());
                update.setGoodsName(order.getGoodsName());
                update.setGoodsPrice(order.getGoodsPrice());
                update.setUpdateTime(new Date());
                pddOrderMapper.updateByPrimaryKeySelective(update);
                return pddOrderMapper.selectByPrimaryKey(old.getId());
            }
        } else {
            if (order.getUpdateTime() == null)
                order.setUpdateTime(new Date());
            if (order.getCreateTime() == null)
                order.setCreateTime(new Date());
            pddOrderMapper.insertSelective(order);
        }
 
        return order;
    }
 
    @Override
    public List<PDDOrder> selectByOrderSn(String orderSn) {
        List<PDDOrder> pddList = new ArrayList<>();
        PDDOrder pddOrder = pddOrderMapper.selectByOrderSN(orderSn);
        if (pddOrder != null)
            pddList.add(pddOrder);
        return pddList;
    }
 
}