| | |
| | | import com.yeshi.fanli.entity.bus.user.HongBaoV2;
|
| | | import com.yeshi.fanli.entity.bus.user.LostOrder;
|
| | | import com.yeshi.fanli.entity.bus.user.Order;
|
| | | import com.yeshi.fanli.service.inter.config.ConfigService;
|
| | | import com.yeshi.fanli.service.inter.order.HongBaoOrderService;
|
| | | import com.yeshi.fanli.service.inter.order.LostOrderService;
|
| | | import com.yeshi.fanli.service.inter.order.OrderService;
|
| | |
| | |
|
| | | @Resource
|
| | | private LostOrderMapper lostOrderMapper;
|
| | | |
| | | @Resource
|
| | | private ConfigService configService;
|
| | |
|
| | | @Transactional
|
| | | @Override
|
| | |
| | | type = 1;
|
| | | }
|
| | |
|
| | | // 查询是否提交
|
| | | // 订单是否已申诉
|
| | | List<LostOrder> orderList = lostOrderMapper.selectByOrderId(orderId);
|
| | | if (orderList != null && orderList.size() > 0) {
|
| | | if (orderList.get(0).getState() == 0 || orderList.get(0).getResultCode() == LostOrder.RESULT_CODE_VERFING) {
|
| | |
| | | }
|
| | | }
|
| | |
|
| | | // 订单已存在
|
| | | Order order = orderService.findOrderByOrderIdAndType(orderId, type);
|
| | | if (order != null) {
|
| | | return -3;
|
| | | }
|
| | |
|
| | | // 查询是否为分享赚订单
|
| | | // 是否为分享赚订单
|
| | | if (hongBaoOrderService.countByOrderNoAndHongBaoType(orderId, HongBaoV2.TYPE_SHARE_GOODS) > 0)
|
| | | return -5;
|
| | |
|
| | | |
| | | // 次数限制
|
| | | long count = lostOrderMapper.countTodayAppeal(lostOrder.getUserInfo().getId());
|
| | | String countMax = configService.get("order_appeal_count_day");
|
| | | if (countMax != null && countMax.trim().length() > 0 && count >= Long.parseLong(countMax)) {
|
| | | return -7;
|
| | | }
|
| | | |
| | | WriteLock lostOrderwriteLock = lostOrderLock.writeLock();
|
| | | ReadLock lostOrderReadLock = lostOrderLock.readLock();
|
| | | try {
|
| | |
| | | lostOrderReadLock.lock();
|
| | | lostOrderwriteLock.unlock();
|
| | | }
|
| | | lostOrder.setState(0);
|
| | | lostOrder.setHandleTime(0L);
|
| | | lostOrder.setCreateTime(System.currentTimeMillis());
|
| | | |
| | | Order or = orderService.getSystemOrderByUid(Constant.TAOBAO, lostOrder.getUserInfo().getId());
|
| | | if (or != null) {
|
| | | boolean b = Utils.isUserOrder(or.getOrderId(), lostOrder.getOrderId());
|
| | |
| | | lostOrder.setJudge("不匹配");
|
| | | }
|
| | |
|
| | | |
| | | try {
|
| | | Order addorder = new Order();
|
| | | addorder.setBeizhu("补单");
|
| | | addorder.setCreatetime(lostOrder.getCreateTime());
|
| | | addorder.setOrderId(lostOrder.getOrderId());
|
| | | addorder.setOrderType(lostOrder.getType());
|
| | | addorder.setState(1);
|
| | | addorder.setUserInfo(lostOrder.getUserInfo());
|
| | | |
| | | boolean b = orderService.addOrder(addorder);
|
| | | if (b) {
|
| | | lostOrder.setRemake("处理成功");
|
| | | lostOrder.setState(LostOrder.STATE_PASS);
|
| | | lostOrder.setOrder(order);
|
| | | } else {
|
| | | lostOrder.setRemake("订单已存在!");
|
| | | lostOrder.setState(LostOrder.STATE_REJECT);
|
| | | }
|
| | | } catch (Exception e) {
|
| | | e.printStackTrace();
|
| | | String message = e.getMessage();
|
| | | if (message.length() > 255) {
|
| | | message = message.substring(0, 255);
|
| | | }
|
| | | lostOrder.setRemake(e.getMessage());
|
| | | lostOrder.setState(LostOrder.STATE_REJECT);
|
| | | }
|
| | | |
| | | lostOrder.setResultCode(LostOrder.RESULT_CODE_VERFING);
|
| | | lostOrder.setHandleTime(System.currentTimeMillis());
|
| | | lostOrder.setCreateTime(System.currentTimeMillis());
|
| | | lostOrderMapper.insertSelective(lostOrder);
|
| | | |
| | | } finally {
|
| | | lostOrderReadLock.unlock();
|
| | | }
|