Commit b34486a6 by chongli

50元券不允许重复下单

parent 3fa5aa5a
......@@ -8,9 +8,11 @@ import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import com.alibaba.fastjson.JSONObject;
import com.ctrip.fun.common.vo.Request;
import com.ctrip.fun.common.vo.Response;
import com.ctrip.fun.common.vo.ResponseMp;
import com.ctrip.fun.common.vo.order.CommuneOrderBean;
import com.ctrip.fun.common.vo.order.CommuneOrderListItemBean;
import com.ctrip.fun.common.vo.order.CommuneOrderResourceBean;
......@@ -47,15 +49,11 @@ public class CommuneOrderController extends AbstractOrderController<CommuneOrder
@SuppressWarnings("unchecked")
@ResponseBody
@RequestMapping(value = "/voucherPlaceOrderForMiniApp", method = RequestMethod.POST)
public Response<JSONObject> voucherPlaceOrderForMiniApp(@RequestBody Request<CommuneOrderBean> request) {
Response<JSONObject> response = new Response<JSONObject>();
public ResponseMp<JSONObject> voucherPlaceOrderForMiniApp(@RequestBody Request<CommuneOrderBean> request) {
ResponseMp<JSONObject> response = new ResponseMp<JSONObject>();
JSONObject jSONObject;
try {
jSONObject = communeOrderService.voucherPlaceOrderForMiniApp(request.getBody());
response.setBody(jSONObject);
} catch (Exception e) {
e.printStackTrace();
}
jSONObject = communeOrderService.voucherPlaceOrderForMiniApp(request.getBody());
response.setBody(jSONObject);
return response;
}
......
......@@ -13,6 +13,7 @@ import org.slf4j.LoggerFactory;
import com.ctrip.fun.common.vo.AbstractBean;
import com.ctrip.fun.common.vo.Request;
import com.ctrip.fun.common.vo.Response;
import com.ctrip.fun.common.vo.ResponseMp;
import com.ctrip.fun.common.vo.ResponseStatusEnum;
import com.ctrip.fun.golf.domain.operation.Logging;
import com.ctrip.fun.golf.exceptions.OrderException;
......@@ -60,6 +61,14 @@ public class LogAspect {
result.setStatus(e.getCode());
result.setMessage(e.getMsg());
result.setMessage(e.getMessage());
if(e.getCode()<=-666){
ResponseMp resultmp = new ResponseMp();
resultmp.setStatus(e.getCode());
resultmp.setMessage(e.getMsg());
resultmp.setMessage(e.getMessage());
resultmp.setCode(1);
return resultmp;
}
return result;
} catch (UserException e) {
logger.error("invoke api fail", e);
......
......@@ -28,6 +28,7 @@ import com.ctrip.fun.common.vo.order.CommuneOrderListItemBean;
import com.ctrip.fun.common.vo.order.CommuneOrderResourceBean;
import com.ctrip.fun.common.vo.order.OrderCategoryEnum;
import com.ctrip.fun.common.vo.order.OrderQuery;
import com.ctrip.fun.common.vo.order.OrderStatusBitEnum;
import com.ctrip.fun.common.vo.order.OrderStatusEnum;
import com.ctrip.fun.common.vo.order.PlaceOrderResponseBean;
import com.ctrip.fun.common.vo.order.UserCommuneOrderStatusEnum;
......@@ -151,6 +152,18 @@ public class CommuneOrderService extends AbstractOrderService<CommuneOrderBean,
if(communeOrderBean.getPrePayAmount().compareTo(voucher_amount) != 0){
throw new OrderException(-41, "您提交的预付款金额有问题,请检查!");
}
OrderQuery queryBean = new OrderQuery();
queryBean.setOrderCategory(16);
queryBean.setUid(communeOrderBean.getUid());
queryBean.setPagerOffset(0);
queryBean.setSortField("orderDate");
PagedEntityBean<Order> pageOrder = this.getOrderDao().queryComOrders(queryBean);
if(pageOrder!=null&&pageOrder.getCount()>0){
List<Order> list = (List<Order>)pageOrder.getResult();
if((list.get(0).getProcessStatus()&OrderStatusBitEnum.DEDUCTED.getValue())==16){
throw new OrderException(-666, "您已经参与过该活动!");
}
}
}
@Override
......@@ -265,7 +278,7 @@ public class CommuneOrderService extends AbstractOrderService<CommuneOrderBean,
}
public JSONObject voucherPlaceOrderForMiniApp(CommuneOrderBean communeOrderBean) throws Exception{
public JSONObject voucherPlaceOrderForMiniApp(CommuneOrderBean communeOrderBean){
this.voucherCheckParameters(communeOrderBean);
if (this.voucherBeforePlaceOrder(communeOrderBean)) {
Order order = this.saveOrder(communeOrderBean);
......@@ -277,8 +290,13 @@ public class CommuneOrderService extends AbstractOrderService<CommuneOrderBean,
}else{
communeOrderMoney = communeOrderBean.getAmount();
}
JSONObject json = WeiXinAtcion.weixinPlay(userExt.getMiniAppOpenId(), communeOrderMoney.multiply(new BigDecimal("100")).intValue(), order.getOrderNo()+"", voucherNotifyUrlForMiniApp,"buy_voucher");
return json;
try {
JSONObject json = WeiXinAtcion.weixinPlay(userExt.getMiniAppOpenId(), communeOrderMoney.multiply(new BigDecimal("100")).intValue(), order.getOrderNo()+"", voucherNotifyUrlForMiniApp,"buy_voucher");
return json;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
return null;
}
......
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