Commit cfa6150e by chongli

修复麦券限制

parent ffc0b466
...@@ -279,6 +279,15 @@ public class OrderDao extends GenericHibernateDao<Order, Integer> { ...@@ -279,6 +279,15 @@ public class OrderDao extends GenericHibernateDao<Order, Integer> {
return pagedResponseBean; return pagedResponseBean;
} }
public int queryVoucherPayedOrder(String uid,int activityId) {
String sql = "SELECT count(*) from ord_communeitem c where OrderID in (SELECT OrderID from ord_order where uid=:uid and ProcessStatus&16=16 and OrderCategory =16) and activityId=:activityId";
Session session = this.getSession();
Query query = session.createSQLQuery(sql);
query.setParameter("uid", uid);
query.setParameter("activityId", activityId);
return ((BigInteger) query.uniqueResult()).intValue();
}
@SuppressWarnings("unchecked") @SuppressWarnings("unchecked")
public PagedEntityBean<Order> queryComOrders(OrderQuery queryBean) { public PagedEntityBean<Order> queryComOrders(OrderQuery queryBean) {
PagedEntityBean<Order> pagedEntityBean = new PagedEntityBean<Order>(); PagedEntityBean<Order> pagedEntityBean = new PagedEntityBean<Order>();
......
...@@ -156,18 +156,9 @@ public class CommuneOrderService extends AbstractOrderService<CommuneOrderBean, ...@@ -156,18 +156,9 @@ public class CommuneOrderService extends AbstractOrderService<CommuneOrderBean,
if(communeOrderBean.getPrePayAmount().compareTo(buyoucherActivity.getCommunePrice()) != 0&&communeOrderBean.getPrePayAmount().compareTo(buyoucherActivity.getGuestPrice()) != 0){ if(communeOrderBean.getPrePayAmount().compareTo(buyoucherActivity.getCommunePrice()) != 0&&communeOrderBean.getPrePayAmount().compareTo(buyoucherActivity.getGuestPrice()) != 0){
throw new OrderException(-41, "您提交的预付款金额有问题,请检查!"); throw new OrderException(-41, "您提交的预付款金额有问题,请检查!");
} }
OrderQuery queryBean = new OrderQuery(); int count = this.getOrderDao().queryVoucherPayedOrder(communeOrderBean.getUid(),communeOrderBean.getActivityId());
queryBean.setOrderCategory(16); if(count>=buyoucherActivity.getBuyLimitTimes()){
queryBean.setUid(communeOrderBean.getUid()); throw new OrderException(-666, "您已经超过该活动限制次数!");
queryBean.setPagerOffset(0);
queryBean.setSortField("orderDate");
PagedEntityBean<Order> pageOrder = this.getOrderDao().queryComOrders(queryBean);
if(pageOrder!=null&&pageOrder.getCount()>0){
for(Order ord:(List<Order>)pageOrder.getResult()){
if((ord.getProcessStatus()&OrderStatusBitEnum.DEDUCTED.getValue())==16){
throw new OrderException(-666, "您已经参与过该活动!");
}
}
} }
} }
......
...@@ -76,7 +76,7 @@ public class UserOrderBehaviourStatisticsDaoTest { ...@@ -76,7 +76,7 @@ public class UserOrderBehaviourStatisticsDaoTest {
} }
@Test @Test
public void testOrderUpdate() throws Exception { public void testOrderUpdate() throws Exception {
BuyVoucherActivityBean list = communeOrderService.getBuyVoucherActivityMessage(orderNo) long list = orderDao.queryVoucherPayedOrder("15021268738",1);
System.out.println(list); System.out.println(list);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment