| @@ -21,7 +21,9 @@ public enum EnumOrderStatus { | |||||
| ORDER_STATUS_COOPERATING_COMPLETE(11, "拼团完成"), | ORDER_STATUS_COOPERATING_COMPLETE(11, "拼团完成"), | ||||
| ORDER_STATUS_COOPERATING_OVERTIME(12, "拼团已过期"), | ORDER_STATUS_COOPERATING_OVERTIME(12, "拼团已过期"), | ||||
| ORDER_STATUS_COOPERATING_CANCEL(13, "拼团失败"), | ORDER_STATUS_COOPERATING_CANCEL(13, "拼团失败"), | ||||
| ORDER_STATUS_COOPERATING_FAILD(14, "参团失败") | |||||
| ORDER_STATUS_COOPERATING_FAILD(14, "参团失败"), | |||||
| ORDER_STATUS_COOPERATING_UNPAID(15, "拼团待付款") | |||||
| ; | ; | ||||
| public static EnumOrderStatus getEnum(Integer code) { | public static EnumOrderStatus getEnum(Integer code) { | ||||
| @@ -272,7 +272,7 @@ public class WxOrderGroupServiceImpl implements WxOrderGroupService { | |||||
| public void updateGroupStatus(WxOrderGroup wxOrderGroup) { | public void updateGroupStatus(WxOrderGroup wxOrderGroup) { | ||||
| Long id = wxOrderGroup.getId(); | Long id = wxOrderGroup.getId(); | ||||
| WxOrderGroup group = wxOrderGroupMapper.selectByPrimaryKey(id); | WxOrderGroup group = wxOrderGroupMapper.selectByPrimaryKey(id); | ||||
| if (group.getStatus().equals(EnumOrderStatus.ORDER_STATUS_COOPERATING.getCode())) { | |||||
| if (group != null && group.getStatus().equals(EnumOrderStatus.ORDER_STATUS_COOPERATING.getCode())) { | |||||
| WxCoupon wxCoupon = wxCouponMapper.selectByPrimaryKey(wxOrderGroup.getCouponId()); | WxCoupon wxCoupon = wxCouponMapper.selectByPrimaryKey(wxOrderGroup.getCouponId()); | ||||
| Integer status = wxCoupon.getStatus(); | Integer status = wxCoupon.getStatus(); | ||||
| if (status.equals(EnumCouponStatus.COUPON_STATUS_TAKE_OFFF.getCode())) { | if (status.equals(EnumCouponStatus.COUPON_STATUS_TAKE_OFFF.getCode())) { | ||||
| @@ -188,6 +188,7 @@ public class WxOrderServiceImpl implements WxOrderService { | |||||
| statusS.add(EnumOrderStatus.ORDER_STATUS_COOPERATING.getCode()); | statusS.add(EnumOrderStatus.ORDER_STATUS_COOPERATING.getCode()); | ||||
| statusS.add(EnumOrderStatus.ORDER_STATUS_COOPERATING_COMPLETE.getCode()); | statusS.add(EnumOrderStatus.ORDER_STATUS_COOPERATING_COMPLETE.getCode()); | ||||
| statusS.add(EnumOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()); | statusS.add(EnumOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()); | ||||
| statusS.add(EnumOrderStatus.ORDER_STATUS_COOPERATING_UNPAID.getCode()); | |||||
| orderQ.setStatusS(statusS); | orderQ.setStatusS(statusS); | ||||
| return wxOrderMapper.countList(orderQ); | return wxOrderMapper.countList(orderQ); | ||||
| } catch (Exception e) { | } catch (Exception e) { | ||||
| @@ -374,14 +375,19 @@ public class WxOrderServiceImpl implements WxOrderService { | |||||
| Date curr = new Date(); | Date curr = new Date(); | ||||
| int payment = coupon.getSalePrice(); | int payment = coupon.getSalePrice(); | ||||
| Integer orderStatus = EnumOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode(); | |||||
| if (isPress || coupon.getType().equals(EnumCouponType.COUPON_PRESS.getCode())) { | if (isPress || coupon.getType().equals(EnumCouponType.COUPON_PRESS.getCode())) { | ||||
| // 砍价券 初始是全价即面额 | // 砍价券 初始是全价即面额 | ||||
| payment = coupon.getPrice(); | payment = coupon.getPrice(); | ||||
| } | } | ||||
| if (orderGroupId == null && coupon.getType().equals(EnumCouponType.COUPON_GROUP.getCode())) { | |||||
| // 拼团券 初始是全价即面额 | |||||
| payment = coupon.getPrice(); | |||||
| if (coupon.getType().equals(EnumCouponType.COUPON_GROUP.getCode())) { | |||||
| if (orderGroupId == null) { | |||||
| // 拼团券 初始是全价即面额 | |||||
| payment = coupon.getPrice(); | |||||
| } else { | |||||
| orderStatus = EnumOrderStatus.ORDER_STATUS_COOPERATING_UNPAID.getCode(); | |||||
| } | |||||
| } | } | ||||
| final IdWorker idWorker = IdWorker.get(); | final IdWorker idWorker = IdWorker.get(); | ||||
| @@ -408,7 +414,7 @@ public class WxOrderServiceImpl implements WxOrderService { | |||||
| record.setcUserId(user.getId()); | record.setcUserId(user.getId()); | ||||
| record.setPaymentType(EnumPayType.PAY_PAYMENT.getCode()); | record.setPaymentType(EnumPayType.PAY_PAYMENT.getCode()); | ||||
| record.setPayment(payment); | record.setPayment(payment); | ||||
| record.setOrderStatus(EnumOrderStatus.ORDER_STATUS_PENDING_PAYMENT.getCode()); | |||||
| record.setOrderStatus(orderStatus); | |||||
| record.setDetail(bodyStr); | record.setDetail(bodyStr); | ||||
| record.setCreateDate(curr); | record.setCreateDate(curr); | ||||
| record.setUpdateDate(curr); | record.setUpdateDate(curr); | ||||
| @@ -134,8 +134,8 @@ public class WxPayOrderServiceImpl implements WxPayOrderService { | |||||
| throw new MallinkException(ErrorCode.COUPON_CHANNEL_IS_TAKE_OFF); | throw new MallinkException(ErrorCode.COUPON_CHANNEL_IS_TAKE_OFF); | ||||
| } | } | ||||
| if (order.getPressEndDate() == null) { | |||||
| // 非砍价券 | |||||
| if (!wxCoupon.getType().equals(EnumCouponType.COUPON_GROUP.getCode()) && order.getPressEndDate() == null) { | |||||
| // 非砍价券且非拼团券 | |||||
| if (order.getOrderStatus() == EnumOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()) { | if (order.getOrderStatus() == EnumOrderStatus.ORDER_STATUS_PAYMENT_SUCCESS.getCode()) { | ||||
| logger.error("订单已支付: " + order.toString() + " , payWay: " + payWay.toString()); | logger.error("订单已支付: " + order.toString() + " , payWay: " + payWay.toString()); | ||||
| throw new MallinkException(ErrorCode.ORDER_HAD_PAY); | throw new MallinkException(ErrorCode.ORDER_HAD_PAY); | ||||
| @@ -70,15 +70,14 @@ | |||||
| select o.id orderId,o.order_status orderStatus,o.order_group_id orderGroupId,c.title,c.sub_title subTitle, | select o.id orderId,o.order_status orderStatus,o.order_group_id orderGroupId,c.title,c.sub_title subTitle, | ||||
| c.sale_price salePrice,c.cover_img coverImg,g.remain_people remainPeople,c.id couponId,g.expired_date | c.sale_price salePrice,c.cover_img coverImg,g.remain_people remainPeople,c.id couponId,g.expired_date | ||||
| expiredDate,g.status,g.user_id firstUser,u.nick_name nickName,u.avatar_url avatarUrl,o.tenant_id tenantId, | expiredDate,g.status,g.user_id firstUser,u.nick_name nickName,u.avatar_url avatarUrl,o.tenant_id tenantId, | ||||
| cc.id couponChannelId,c.press_limit_num pressLimitNum,c.status couponStatus | |||||
| o.coupon_channel_id couponChannelId,c.press_limit_num pressLimitNum,c.status couponStatus | |||||
| from wx_order o | from wx_order o | ||||
| left join wx_coupon c on o.product_id=c.id | left join wx_coupon c on o.product_id=c.id | ||||
| left join wx_order_group g on o.order_group_id=g.id | left join wx_order_group g on o.order_group_id=g.id | ||||
| left join wx_c_user u on o.c_user_id=u.id | left join wx_c_user u on o.c_user_id=u.id | ||||
| left join wx_coupon_channel cc on c.id=cc.coupon_id | |||||
| where o.tenant_id=#{tenantId} | where o.tenant_id=#{tenantId} | ||||
| <if test=" null != cUserId "> | <if test=" null != cUserId "> | ||||
| and o.c_user_id=#{cUserId} and o.order_status not in(0,1,2,3,14) | |||||
| and o.c_user_id=#{cUserId} | |||||
| </if> | </if> | ||||
| <if test=" null != id "> | <if test=" null != id "> | ||||
| and o.id=#{id} | and o.id=#{id} | ||||
| @@ -86,7 +85,7 @@ | |||||
| <if test=" null != orderGroupId "> | <if test=" null != orderGroupId "> | ||||
| and o.order_group_id=#{orderGroupId} | and o.order_group_id=#{orderGroupId} | ||||
| </if> | </if> | ||||
| and o.order_group_id!=0 and g.status in(10,11,12,13) | |||||
| and o.order_status in(10,11,12,13,15) | |||||
| order by o.id desc,o.order_status | order by o.id desc,o.order_status | ||||
| </select> | </select> | ||||
| @@ -258,7 +258,7 @@ | |||||
| from wx_coupon c,wx_order o | from wx_coupon c,wx_order o | ||||
| left join wx_coupon_order co on co.order_id = o.id | left join wx_coupon_order co on co.order_id = o.id | ||||
| left join wx_coupon_action_log cal on cal.coupon_order_id = co.id | left join wx_coupon_action_log cal on cal.coupon_order_id = co.id | ||||
| where o.product_id = c.id and c.type!=9 | |||||
| where o.product_id = c.id | |||||
| <if test="cUserId != null"> | <if test="cUserId != null"> | ||||
| and o.c_user_id = #{cUserId} | and o.c_user_id = #{cUserId} | ||||
| </if> | </if> | ||||