|
@@ -1,58 +1,51 @@
|
|
|
package com.iamberry.wechat.handles.order;
|
|
|
-import java.io.IOException;
|
|
|
-import java.util.ArrayList;
|
|
|
-import java.util.Date;
|
|
|
-import java.util.HashMap;
|
|
|
-import java.util.List;
|
|
|
-
|
|
|
-import javax.servlet.ServletException;
|
|
|
-import javax.servlet.http.HttpServletRequest;
|
|
|
-import javax.servlet.http.HttpServletResponse;
|
|
|
-
|
|
|
-import com.iamberry.wechat.core.entity.activity.ActivityDate;
|
|
|
-import com.iamberry.wechat.core.entity.coupon.*;
|
|
|
-import com.iamberry.wechat.core.entity.product.ProductColor;
|
|
|
-import com.iamberry.wechat.face.coupon.ExchangeService;
|
|
|
-import com.iamberry.wechat.face.porduct.ProductColorService;
|
|
|
-import com.iamberry.wechat.service.ActivityUtil;
|
|
|
-import org.springframework.beans.factory.annotation.Autowired;
|
|
|
-import org.springframework.stereotype.Controller;
|
|
|
-import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
-import org.springframework.web.bind.annotation.RequestMethod;
|
|
|
-import org.springframework.web.bind.annotation.RequestParam;
|
|
|
-import org.springframework.web.bind.annotation.ResponseBody;
|
|
|
|
|
|
import com.iamberry.wechat.core.entity.PageBean;
|
|
|
import com.iamberry.wechat.core.entity.ResultMsg;
|
|
|
import com.iamberry.wechat.core.entity.WechatUtils;
|
|
|
-import com.iamberry.wechat.core.entity.cart.CartDto;
|
|
|
-import com.iamberry.wechat.core.entity.cart.OrderPayDto;
|
|
|
-import com.iamberry.wechat.core.entity.cart.SendPayDto;
|
|
|
-import com.iamberry.wechat.core.entity.cart.ShopSalesOrderDto;
|
|
|
-import com.iamberry.wechat.core.entity.cart.TempOrderDto;
|
|
|
-import com.iamberry.wechat.core.entity.cart.UserGiftDto;
|
|
|
-import com.iamberry.wechat.core.entity.member.CashLog;
|
|
|
+import com.iamberry.wechat.core.entity.activity.ActivityDate;
|
|
|
+import com.iamberry.wechat.core.entity.cart.*;
|
|
|
+import com.iamberry.wechat.core.entity.coupon.*;
|
|
|
import com.iamberry.wechat.core.entity.member.Member;
|
|
|
+import com.iamberry.wechat.core.entity.mq.MQMessage;
|
|
|
import com.iamberry.wechat.core.entity.order.Order;
|
|
|
import com.iamberry.wechat.core.entity.order.OrderItem;
|
|
|
import com.iamberry.wechat.core.entity.pay.PayResult;
|
|
|
-import com.iamberry.wechat.core.entity.product.Product;
|
|
|
+import com.iamberry.wechat.core.entity.product.ProductColor;
|
|
|
import com.iamberry.wechat.face.admin.SystemService;
|
|
|
import com.iamberry.wechat.face.cart.CartService;
|
|
|
import com.iamberry.wechat.face.cart.ProductInfoService;
|
|
|
import com.iamberry.wechat.face.coupon.CouponItemService;
|
|
|
import com.iamberry.wechat.face.coupon.CouponTypeService;
|
|
|
+import com.iamberry.wechat.face.coupon.ExchangeService;
|
|
|
import com.iamberry.wechat.face.home.HomeService;
|
|
|
import com.iamberry.wechat.face.member.CashLogService;
|
|
|
import com.iamberry.wechat.face.member.MemberService;
|
|
|
import com.iamberry.wechat.face.pay.PayService;
|
|
|
+import com.iamberry.wechat.face.porduct.ProductColorService;
|
|
|
import com.iamberry.wechat.face.qrcode.TemporaryQrcodeService;
|
|
|
import com.iamberry.wechat.face.reback.RebackServices;
|
|
|
import com.iamberry.wechat.handles.mq.MQServiceProxy;
|
|
|
+import com.iamberry.wechat.service.ActivityUtil;
|
|
|
import com.iamberry.wechat.tools.NameUtils;
|
|
|
import com.iamberry.wechat.tools.OrderNOUtil;
|
|
|
import com.iamberry.wechat.tools.ResultInfo;
|
|
|
import com.iamberry.wechat.tools.ValidatorUtil;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.stereotype.Controller;
|
|
|
+import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
+import org.springframework.web.bind.annotation.RequestMethod;
|
|
|
+import org.springframework.web.bind.annotation.RequestParam;
|
|
|
+import org.springframework.web.bind.annotation.ResponseBody;
|
|
|
+
|
|
|
+import javax.servlet.ServletException;
|
|
|
+import javax.servlet.http.HttpServletRequest;
|
|
|
+import javax.servlet.http.HttpServletResponse;
|
|
|
+import java.io.IOException;
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.Date;
|
|
|
+import java.util.HashMap;
|
|
|
+import java.util.List;
|
|
|
|
|
|
/**
|
|
|
* @author 何秀刚
|
|
@@ -482,39 +475,38 @@ public class OrderHandler {
|
|
|
return msg;
|
|
|
}
|
|
|
|
|
|
- if(couponType.getCouponId() == 10001){
|
|
|
- if(!isCludeT1ORT2){
|
|
|
- msg.setMessage(ResultInfo.COUPON_T1_T2_NO_MSG); //未购买指定商品
|
|
|
- return msg;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
if(3 == couponType.getCouponType()){
|
|
|
- //判断抵扣券的是否能够使用
|
|
|
- Exchange exchange = new Exchange();
|
|
|
- exchange.setCouponId(couponType.getCouponId());
|
|
|
- List<Exchange> exchangeList = exchangeService.getExchangeList(exchange);
|
|
|
- boolean fl = false;
|
|
|
- for (Exchange ex : exchangeList){
|
|
|
- for (ExchangeItem exchangeItem : ex.getExchangeItemList()){
|
|
|
- for (CartDto cartDto : cartDtos) {
|
|
|
- if(cartDto.getCartColorId().equals(exchangeItem.getColorId())){
|
|
|
- fl = true;
|
|
|
+ if(couponType.getCouponId() == 10001){
|
|
|
+ if(!isCludeT1ORT2){
|
|
|
+ msg.setMessage(ResultInfo.COUPON_T1_T2_NO_MSG); //未购买指定商品
|
|
|
+ return msg;
|
|
|
+ }
|
|
|
+ }else if(couponType.getCouponId() == 10000){
|
|
|
+ //判断抵扣券的是否能够使用
|
|
|
+ Exchange exchange = new Exchange();
|
|
|
+ exchange.setCouponId(couponType.getCouponId());
|
|
|
+ List<Exchange> exchangeList = exchangeService.getExchangeList(exchange);
|
|
|
+ boolean fl = false;
|
|
|
+ for (Exchange ex : exchangeList){
|
|
|
+ for (ExchangeItem exchangeItem : ex.getExchangeItemList()){
|
|
|
+ for (CartDto cartDto : cartDtos) {
|
|
|
+ if(cartDto.getCartColorId().equals(exchangeItem.getColorId())){
|
|
|
+ fl = true;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
+ if(fl){
|
|
|
+ break;
|
|
|
+ }
|
|
|
}
|
|
|
- if(fl){
|
|
|
- break;
|
|
|
+ if(!fl){
|
|
|
+ msg.setMessage(ResultInfo.COUPON_NO_MEET_DEMAND); //消费没有达到需求
|
|
|
+ return msg;
|
|
|
}
|
|
|
}
|
|
|
- if(!fl){
|
|
|
- msg.setMessage(ResultInfo.COUPON_NO_MEET_DEMAND); //消费没有达到需求
|
|
|
- return msg;
|
|
|
- }
|
|
|
}
|
|
|
|
|
|
-
|
|
|
- //优惠券的类型,是直接减免额度 还是折扣价
|
|
|
+ //优惠券的类型,是直接减免额度 还是折扣价
|
|
|
if(couponType.getCouponType()==1){
|
|
|
total=total-couponType.getCouponReduce();
|
|
|
}else if(couponType.getCouponType()==2){
|
|
@@ -631,41 +623,56 @@ public class OrderHandler {
|
|
|
couponItem.setCouponUseStatus(2);
|
|
|
// int i=couponItemService.updateCouponItemById(couponItem);
|
|
|
}
|
|
|
+
|
|
|
+ // 给rst推送订单
|
|
|
+ try {
|
|
|
+ MQMessage message = new MQMessage();
|
|
|
+ message.setServiceToMessage(order.getSalesOrderid());
|
|
|
+ message.setServiceOtherMessage("efast.trade.new.add");
|
|
|
+ message.setServiceIsSend(2); // 没有推送的信息
|
|
|
+ message.setServiceStatus(1); // 推送成功
|
|
|
+ message.setServiceType(1); // 添加订单信息
|
|
|
+ message.setServiceHandlerObjectName("efastOrderServiceImpl");
|
|
|
+ message.setServiceHandlerMethodName("addOrderInfoToEfast");
|
|
|
+ mQservice.insertMQMessage(message);
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
|
|
|
//更新账户余额
|
|
|
- if(balancePayAmount>0){
|
|
|
- member.setUserIncome(-balancePayAmount);
|
|
|
- memberService.updateUserIncomeByOpenId(member);
|
|
|
-
|
|
|
- //修改用户购买记录为已购买
|
|
|
- memberService.updateIsBaughtByOpenid(member.getUserOpenid(), 2);
|
|
|
- //更新用户绑定状态
|
|
|
- if (member.getUserIsFlag()!= null && member.getUserIsFlag() == 1) {
|
|
|
- member.setUserIsFlag(2);//终身绑定
|
|
|
- homeService.updateMemberIsFlagByOpenid(member);
|
|
|
- }
|
|
|
- try {
|
|
|
- temporaryQrcodeService.applyTempQrcode(member.getUserOpenid());//为用户生成二维码
|
|
|
- } catch (Exception e) {
|
|
|
- System.out.println("为用户生成二维码失败!");
|
|
|
- }
|
|
|
-
|
|
|
- //现金使用记录
|
|
|
- CashLog log=new CashLog();
|
|
|
- log.setCashLogsIntroduction("订单支出");
|
|
|
- log.setCashLogsNum(balancePayAmount);
|
|
|
- log.setCashLogsOpenid(member.getUserOpenid());
|
|
|
- log.setCashLogsType(2);
|
|
|
- log.setCashLogsResType(3);
|
|
|
- log.setCashLogsOrderid(order.getSalesOrderid());
|
|
|
- log.setCashLogsCreateDate(nowDate);
|
|
|
- cashLogService.addCashLog(log);
|
|
|
-
|
|
|
- }
|
|
|
- rebackServices.loadSingleOrderReward(order);
|
|
|
+// if(balancePayAmount>0){
|
|
|
+// member.setUserIncome(-balancePayAmount);
|
|
|
+// memberService.updateUserIncomeByOpenId(member);
|
|
|
+//
|
|
|
+// //修改用户购买记录为已购买
|
|
|
+// memberService.updateIsBaughtByOpenid(member.getUserOpenid(), 2);
|
|
|
+// //更新用户绑定状态
|
|
|
+// if (member.getUserIsFlag()!= null && member.getUserIsFlag() == 1) {
|
|
|
+// member.setUserIsFlag(2);//终身绑定
|
|
|
+// homeService.updateMemberIsFlagByOpenid(member);
|
|
|
+// }
|
|
|
+// try {
|
|
|
+// temporaryQrcodeService.applyTempQrcode(member.getUserOpenid());//为用户生成二维码
|
|
|
+// } catch (Exception e) {
|
|
|
+// System.out.println("为用户生成二维码失败!");
|
|
|
+// }
|
|
|
+//
|
|
|
+// //现金使用记录
|
|
|
+// CashLog log=new CashLog();
|
|
|
+// log.setCashLogsIntroduction("订单支出");
|
|
|
+// log.setCashLogsNum(balancePayAmount);
|
|
|
+// log.setCashLogsOpenid(member.getUserOpenid());
|
|
|
+// log.setCashLogsType(2);
|
|
|
+// log.setCashLogsResType(3);
|
|
|
+// log.setCashLogsOrderid(order.getSalesOrderid());
|
|
|
+// log.setCashLogsCreateDate(nowDate);
|
|
|
+// cashLogService.addCashLog(log);
|
|
|
+//
|
|
|
+// }
|
|
|
+// rebackServices.loadSingleOrderReward(order);
|
|
|
productInfoService.updateProductNumList(order.getSalesOrderid());
|
|
|
-
|
|
|
}
|
|
|
+
|
|
|
msg.setResultCode(ResultInfo.SUCCESSCODE);
|
|
|
msg.setMessage(NameUtils.getConfig("SUCCESSINFO"));
|
|
|
dto.setOrderId(order.getSalesOrderid());
|
|
@@ -733,7 +740,6 @@ public class OrderHandler {
|
|
|
/**
|
|
|
* 校验一个购物车字符串
|
|
|
* @param cartIds 购物车ID字符串
|
|
|
- * @param cartId 接受数据数组
|
|
|
* @return
|
|
|
* @throws Exception
|
|
|
*/
|