wangxiaoming 6 anni fa
parent
commit
b2016579ac

+ 6 - 6
watero-common-core/src/main/java/com/iamberry/wechat/core/entity/WechatUtils.java

@@ -71,12 +71,12 @@ public class WechatUtils {
 	 */
 	public static Member getUserBySession(HttpServletRequest request) {
 
-		Member m = new Member();
-		m.setUserId(1);
-		m.setUserOpenid("o3G6nww8FoM08HSbwpJqrhGu8V6Q");
-		if(true){
-			return m;
-		}
+//		Member m = new Member();
+//		m.setUserId(1);
+//		m.setUserOpenid("o3G6nww8FoM08HSbwpJqrhGu8V6Q");
+//		if(true){
+//			return m;
+//		}
 
 		//获取一个cookie数组
 		Cookie[] cookies = request.getCookies();

+ 2 - 2
watero-rent-service/pom.xml

@@ -45,8 +45,8 @@
                 <groupId>org.apache.maven.plugins</groupId>
                 <artifactId>maven-compiler-plugin</artifactId>
                 <configuration>
-                    <source>1.6</source>
-                    <target>1.6</target>
+                    <source>1.7</source>
+                    <target>1.7</target>
                 </configuration>
             </plugin>
         </plugins>

+ 4 - 1
watero-wechat-service/src/main/java/com/iamberry/wechat/service/ImberryConfig.java

@@ -24,6 +24,8 @@ public class ImberryConfig {
 	public static String INTER_SMS_RENT_TYPE2_TEXT="";
 	/**   租赁类型1短信模板      */
 	public static String INTER_SMS_RENT_TYPE3_TEXT="";
+	/**   发送验证码      */
+	public static String PROBATION_VERIFICATION_CODE="";
 	/**		云片key	*/
 	public static String INTER_SMS_KEY=""; 
 	/**		发送给收货人的试用进度提醒	7天		*/
@@ -59,7 +61,8 @@ public class ImberryConfig {
 			PROBATION_SUCCESS_SECOND_TEXT = pro.getProperty("PROBATION_SUCCESS_SECOND_TEXT");
 			PROBATION_SUCCESS_THIRD_TEXT = pro.getProperty("PROBATION_SUCCESS_THIRD_TEXT");
 			LEASE_ORDER_SUCCESS_TEXT = pro.getProperty("LEASE_ORDER_SUCCESS_TEXT");
-			
+			PROBATION_VERIFICATION_CODE = pro.getProperty("PROBATION_VERIFICATION_CODE");
+
 		} catch (Exception e) {
 			e.printStackTrace();
 		}

+ 6 - 0
watero-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/couponItemMapper.xml

@@ -33,6 +33,12 @@
 			<if test="useropenid != null and useropenid != ''">
 				AND CI.COUPON_ITEM_USER_OPENID=#{useropenid}
 			</if>
+			<if test="couponType != null and couponType != '' and couponType=='10' ">
+				AND  (CT.coupon_type=1 OR CT.coupon_type=2)
+			</if>
+			<if test="couponType != null and couponType != '' and couponType=='11' ">
+				AND  CT.coupon_type=3
+			</if>
 			<!-- couponReduce 是将状态是7的优惠券  属于已使用的优惠券-->
 			<if test="couponUseStatus != null and couponUseStatus != ''">
 				AND CI.COUPON_USE_STATUS IN (#{couponUseStatus},#{couponReduce})

+ 12 - 3
watero-wechat-service/src/main/java/com/iamberry/wechat/service/thanksgiving/ThanksGivingServiceImpl.java

@@ -1,6 +1,7 @@
 package com.iamberry.wechat.service.thanksgiving;
 
 import com.iamberry.wechat.core.entity.coupon.CouponItem;
+import com.iamberry.wechat.core.entity.coupon.CouponItemDto;
 import com.iamberry.wechat.core.entity.coupon.CouponType;
 import com.iamberry.wechat.core.entity.thanksgiving.ThanksGiving;
 import com.iamberry.wechat.face.thanksgiving.ThanksGivingService;
@@ -15,7 +16,6 @@ import org.springframework.transaction.annotation.Transactional;
 import java.util.Calendar;
 import java.util.Date;
 import java.util.List;
-import java.util.UUID;
 
 /**
  *  活动-领取优惠券接口
@@ -65,15 +65,24 @@ public class ThanksGivingServiceImpl  implements ThanksGivingService {
     @Override
     @Transactional
     public  Integer  update(ThanksGiving  thanksGiving){
-
-        CouponType couponType = couponTypeMapper.getCouponTypeById(1000);
+        Integer couponId = 10000;
+        CouponType couponType = couponTypeMapper.getCouponTypeById(couponId);
         Calendar calendar = Calendar.getInstance();
         calendar.add(Calendar.DATE, 90);  //有效期三个月
 
+        CouponItemDto couponItemDto = new CouponItemDto();
+        couponItemDto.setUseropenid(thanksGiving.getThanksGivingOpenId());
+        couponItemDto.setCouponId(couponId);
+        List<CouponItemDto> couponItemDtoList = couponItemMapper.getCouponItemDtoList(couponItemDto);
+        if(couponItemDtoList != null && couponItemDtoList.size() >= couponType.getCouponGetLimit()){
+            throw new RuntimeException("该用户已经领取过优惠券了");
+        }
+
         //创建优惠券
         CouponItem couponItem = new CouponItem();
         String uuidStr = StrUtils.getUUID();
         couponItem.setCouponItemId(uuidStr);
+        couponItem.setCouponItemUseropenid(thanksGiving.getThanksGivingOpenId());
         couponItem.setCouponId(couponType.getCouponId());
         couponItem.setCouponReceiveDate(new Date());
         couponItem.setCouponUseEndDate(calendar.getTime());

+ 32 - 14
watero-wechat-web/src/main/java/com/iamberry/wechat/handles/coupon/CouponTypeHandler.java

@@ -9,6 +9,9 @@ import java.util.Map;
 
 import javax.servlet.http.HttpServletRequest;
 
+import com.alibaba.dubbo.remoting.exchange.ExchangeServer;
+import com.iamberry.wechat.core.entity.coupon.Exchange;
+import com.iamberry.wechat.face.coupon.ExchangeService;
 import org.apache.commons.lang.StringUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -48,8 +51,8 @@ public class CouponTypeHandler {
 	private MemberService memberService;
 	@Autowired
 	private SystemService systemService;
-	private static Logger logger = LoggerFactory
-			.getLogger(CouponTypeHandler.class);
+
+	private static Logger logger = LoggerFactory.getLogger(CouponTypeHandler.class);
 	/**
 	 * 领取优惠券的锁
 	 */
@@ -278,30 +281,45 @@ public class CouponTypeHandler {
 			HttpServletRequest req,
 			@RequestParam(value = "pageSize", defaultValue = "6", required = false) Integer pageSize,
 			@RequestParam(value = "pageNO", defaultValue = "1", required = false) Integer pageNO) {
-		ResultMsg rm = new ResultMsg();
+		ResultMsg rm = new ResultMsg(false,  ResultMsg.ERROR, "查询失败!",null);
+		List<CouponItemDto> list = new ArrayList<CouponItemDto>();
+		Map<String, Object> map = new HashMap<String, Object>();
 		String useStatus = req.getParameter("useStatus");
 		if (StringUtils.isEmpty(useStatus)) {
-			useStatus = "-1";
+			map.put("itemList", list);
+			rm.setData(map);
+			return rm;
 		}
 		String openid = "";
 		Member member = WechatUtils.getUserBySession(req);
 		openid = member.getUserOpenid();
 		CouponItemDto cDto = new CouponItemDto();
 		cDto.setUseropenid(openid);
-		if ("1".equals(useStatus)) { // 未使用的优惠券
-			cDto.setCouponUseStatus(Integer.parseInt(useStatus));
+//		if ("1".equals(useStatus)) { // 未使用的优惠券
+//			cDto.setCouponUseStatus(Integer.parseInt(useStatus));
+//			cDto.setBeginDate(new Date());
+//		} else if ("2".equals(useStatus)) { // 已使用的优惠券
+//			cDto.setCouponUseStatus(Integer.parseInt(useStatus));
+//			cDto.setCouponReduce(7); // 加上了订单是待支付 即couponUseStatus是7的优惠券
+//		} else if ("3".equals(useStatus)) { // 已过期的优惠券
+//			cDto.setEndDate(new Date());
+//			cDto.setCouponItemRemark("4"); // 需去掉已经使用的优惠券
+//		}
+		if ("10".equals(useStatus)) {
+			//优惠券
+			cDto.setCouponUseStatus(0);
+			cDto.setCouponType(10);
+			cDto.setBeginDate(new Date());
+		}else if("11".equals(useStatus)){
+			//兑换券
+			cDto.setCouponUseStatus(0);
+			cDto.setCouponType(11);
 			cDto.setBeginDate(new Date());
-		} else if ("2".equals(useStatus)) { // 已使用的优惠券
-			cDto.setCouponUseStatus(Integer.parseInt(useStatus));
-			cDto.setCouponReduce(7); // 加上了订单是待支付 即couponUseStatus是7的优惠券
-		} else if ("3".equals(useStatus)) { // 已过期的优惠券
-			cDto.setEndDate(new Date());
-			cDto.setCouponItemRemark("4"); // 需去掉已经使用的优惠券
 		}
 		cDto.setPage(new PageBean());
 		cDto.getPage().setPageSize(pageSize);
 		cDto.getPage().setPageNumber(pageNO);
-		List<CouponItemDto> list = couponItemService.getCouponItemDtoList(cDto);
+		list = couponItemService.getCouponItemDtoList(cDto);
 
 		Date now = new Date();
 		for (CouponItemDto itemDto : list) { // 为了在全部优惠券页面区分已过期的优惠券,使之不能使用
@@ -311,7 +329,7 @@ public class CouponTypeHandler {
 				itemDto.setCouponItemRemark(ResultInfo.COUPONITEMSTATUS_PASSED);
 			}
 		}
-		Map<String, Object> map = new HashMap<String, Object>();
+		rm = new ResultMsg(true, ResultMsg.SUCCESS, "查询成功!",null);
 		map.put("itemList", list);
 		rm.setData(map);
 		rm.setStatus(true);

+ 24 - 0
watero-wechat-web/src/main/java/com/iamberry/wechat/handles/member/MemberHandler.java

@@ -327,4 +327,28 @@ public class MemberHandler {
 		request.getRequestDispatcher(NameUtils.getConfig("WECHAT_SHOP_MEMGER_INDEX")).forward(request, response);
 	}
 
+
+	/**
+	 * vip
+	 * @param request
+	 * @param response
+	 * @throws ServletException
+	 * @throws IOException
+	 */
+	@RequestMapping(value = "/vip_equity", method = RequestMethod.GET)
+	public void vipEquity(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+		request.getRequestDispatcher(NameUtils.getConfig("WECHAT_GO_VIP_EQUITY")).forward(request, response);return;
+	}
+	/**
+	 * 售后服务
+	 * @param request
+	 * @param response
+	 * @throws ServletException
+	 * @throws IOException
+	 */
+	@RequestMapping(value = "/after_sale_service", method = RequestMethod.GET)
+	public void afterSaleService(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+		request.getRequestDispatcher(NameUtils.getConfig("WECHAT_GO_AFTER_SALE_SERVICE")).forward(request, response);return;
+	}
+
 }

+ 17 - 17
watero-wechat-web/src/main/java/com/iamberry/wechat/handles/order/OrderHandler.java

@@ -149,23 +149,23 @@ public class OrderHandler {
 		//查询金牌会员模板id
 		int templateId = systemService.selectOneShopRuleById(114).getRuleNum().intValue();
 		//如果模板id等于金牌会模板id,则该用户为金牌会员下线
-		if (member.getUserDealers() != null && member.getTemplateId() != null 
-				&& templateId == member.getTemplateId().intValue() && member.getUserResType().intValue() == 3) {
-			//若果是金牌会员下线,产品的价格就以优惠价显示
-			if (cartDtos != null && cartDtos.size() >= 1) {
-				for (CartDto cartDto : cartDtos) {
-					UserGiftDto userGiftDto = new UserGiftDto();
-					userGiftDto.setUserLevel(2);
-					userGiftDto.setUserProductId(cartDto.getCartProductId());
-					userGiftDto.setUserColorId(cartDto.getCartColorId());
-					//根据商品id和会员等级查询礼品信息
-					userGiftDto = productInfoService.selectUserGift(userGiftDto);
-					if (userGiftDto != null) {
-						cartDto.setProductPrice(userGiftDto.getUserDiscount());
-					}
-				}
-			}
-		}
+//		if (member.getUserDealers() != null && member.getTemplateId() != null
+//				&& templateId == member.getTemplateId().intValue() && member.getUserResType().intValue() == 3) {
+//			//若果是金牌会员下线,产品的价格就以优惠价显示
+//			if (cartDtos != null && cartDtos.size() >= 1) {
+//				for (CartDto cartDto : cartDtos) {
+//					UserGiftDto userGiftDto = new UserGiftDto();
+//					userGiftDto.setUserLevel(2);
+//					userGiftDto.setUserProductId(cartDto.getCartProductId());
+//					userGiftDto.setUserColorId(cartDto.getCartColorId());
+//					//根据商品id和会员等级查询礼品信息
+//					userGiftDto = productInfoService.selectUserGift(userGiftDto);
+//					if (userGiftDto != null) {
+//						cartDto.setProductPrice(userGiftDto.getUserDiscount());
+//					}
+//				}
+//			}
+//		}
 		
 		//根据openid查询该用户是否购买过订单
 		ShopSalesOrderDto shopSalesOrderDto = new ShopSalesOrderDto();

+ 51 - 14
watero-wechat-web/src/main/java/com/iamberry/wechat/handles/thanksgiving/ThanksGivingHandler.java

@@ -2,19 +2,29 @@ package com.iamberry.wechat.handles.thanksgiving;
 
 import com.iamberry.wechat.core.entity.ResultMsg;
 import com.iamberry.wechat.core.entity.WechatUtils;
+import com.iamberry.wechat.core.entity.coupon.CouponItemDto;
+import com.iamberry.wechat.core.entity.coupon.CouponType;
 import com.iamberry.wechat.core.entity.member.Member;
 import com.iamberry.wechat.core.entity.thanksgiving.ThanksGiving;
+import com.iamberry.wechat.face.coupon.CouponItemService;
+import com.iamberry.wechat.face.coupon.CouponTypeService;
 import com.iamberry.wechat.face.member.MemberService;
 import com.iamberry.wechat.face.order.CodeService;
 import com.iamberry.wechat.face.thanksgiving.ThanksGivingService;
+import com.iamberry.wechat.service.ImberryConfig;
+import com.iamberry.wechat.tools.NameUtils;
 import com.iamberry.wechat.tools.payUtil.RandomUtil;
 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.ResponseBody;
 
+import javax.servlet.ServletException;
 import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
 import javax.servlet.http.HttpSession;
+import java.io.IOException;
 import java.text.MessageFormat;
 import java.util.Calendar;
 import java.util.Date;
@@ -35,7 +45,29 @@ public class ThanksGivingHandler {
     private MemberService memberService;
 
 
-    private final static String SEND_VERIFICATION_PHONE ="";
+    /**
+     * 免费送滤芯
+     * @param request
+     * @param response
+     * @throws ServletException
+     * @throws IOException
+     */
+    @RequestMapping(value = "/free_collection", method = RequestMethod.GET)
+    public void freeCollection(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+        request.getRequestDispatcher(NameUtils.getConfig("WECHAT_GO_FREE_COLLECTION")).forward(request, response);return;
+    }
+    /**
+     * 免费领取滤芯
+     * @param request
+     * @param response
+     * @throws ServletException
+     * @throws IOException
+     */
+    @RequestMapping(value = "/receiving_filter", method = RequestMethod.GET)
+    public void receivingFilter(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
+        request.getRequestDispatcher(NameUtils.getConfig("WECHAT_GO_RECEIVING_FILTER_CARTRIDGE")).forward(request, response);return;
+    }
+
 
     /**
      * 发送验证码
@@ -86,14 +118,14 @@ public class ThanksGivingHandler {
         thanksGiving.setThanksGivingPhone(phone);
         List<ThanksGiving> thanksGivingList = thanksGivingService.getThanksGivingList(thanksGiving);
         if(thanksGivingList == null || thanksGivingList.size() < 1){
-            return new ResultMsg(false, ResultMsg.ERROR, "电话号码不能领取!",null);
+            return new ResultMsg(false, ResultMsg.ERROR, "电话号码不能领取!",null);
         }
 
         //获取验证码
         String num = RandomUtil.getRandom();
         //使用request对象的getSession()获取session,如果session不存在则创建一个
         HttpSession session = request.getSession();
-        String text = MessageFormat.format(SEND_VERIFICATION_PHONE, num);
+        String text = MessageFormat.format(ImberryConfig.PROBATION_VERIFICATION_CODE, num);
         String result = codeService.sendOtherCMS(phone, text);
 
         //将数据存储到session中
@@ -121,19 +153,20 @@ public class ThanksGivingHandler {
         if(member.getUserStatus() != 2){
             return new ResultMsg(false, ResultMsg.ERROR, "未关注不能领取!",null);
         }
-
-        if(phone.length() != 11){
-            rm.setMessage(ResultMsg.ERROR);
-            rm.setMessage("电话号码错误!");
-            return rm;
-        }
-
         //判断验证码
         //使用request对象的getSession()获取session,如果session不存在则创建一个
         HttpSession session = request.getSession();
         String verificationTel = (String) session.getAttribute("verification_tel");
         String verificationCode = (String) session.getAttribute("verification_code");
         Date verificationDate = (Date) session.getAttribute("verification_date");
+        if(verificationTel == null || verificationCode == null || verificationDate == null){
+            return new ResultMsg(false, ResultMsg.ERROR, "领取出错,请重新获取验证码!",null);
+        }
+        if(phone.length() != 11 && phone.equals(verificationTel)){
+            rm.setMessage(ResultMsg.ERROR);
+            rm.setMessage("电话号码错误!");
+            return rm;
+        }
         if(code == null || "".equals(code)){
             return new ResultMsg(false, ResultMsg.ERROR, "验证码为空!",null);
         }
@@ -161,7 +194,7 @@ public class ThanksGivingHandler {
         tg.setThanksGivingOpenId(member.getUserOpenid());
         Integer flag = 0;
         try{
-             thanksGivingService.update(tg);
+            flag = thanksGivingService.update(tg);
         }catch (Exception e){
             e.printStackTrace();
             return new ResultMsg(false, ResultMsg.ERROR, e.getMessage(),null);
@@ -169,9 +202,13 @@ public class ThanksGivingHandler {
         if(flag < 1){
             return new ResultMsg(false, ResultMsg.ERROR, "领取失败,请重新领取!",null);
         }
-        rm.setMessage(ResultMsg.SUCCESS);
-        rm.setStatus(true);
-        return rm;
+
+        //领取成功 验证码失效,
+        session.setAttribute("verification_code",null );
+        session.setAttribute("verification_tel",null );
+        session.setAttribute("verification_date",null );
+
+        return new ResultMsg(true, ResultMsg.SUCCESS, "领取成功!",null);
     }
 
 }

+ 2 - 0
watero-wechat-web/src/main/resources/iamberry-app-service-config.properties

@@ -22,3 +22,5 @@ LEASE_ORDER_SUCCESS_TEXT=\u3010\u7F8E\u56FDwatero\u3011\u60A8\u5728{0}\u79DF\u75
 PROBATION_SUCCESS_FIRST_TEXT=\u3010\u7F8E\u56FDwatero\u3011\u5C0A\u656C\u7684\u4F1A\u5458\u60A8\u597D\uFF01\u60A8\u7684\u8BD5\u7528\u8BA2\u535516\u5929\u540E\u5C06\u5230\u671F\uFF0C\u8BF7\u8FDB\u5165\u5FAE\u4FE1\u516C\u4F17\u53F7\u67E5\u770B\u8BA2\u5355\u4E0E\u4F18\u60E0\u4FE1\u606F\u3002
 PROBATION_SUCCESS_SECOND_TEXT=\u3010\u7F8E\u56FDWatero\u3011\u5C0A\u656C\u7684\u4F1A\u5458\u60A8\u597D\uFF01\u60A8\u7684\u8BD5\u7528\u8BA2\u53557\u5929\u540E\u5C06\u5230\u671F\uFF0C\u540C\u65F6\uFF0C\u8FD8\u67092\u76D2\u517B\u751F\u8336\u996E\u5F85\u9886\u53D6\uFF0C\u8BF7\u8FDB\u5165\u5FAE\u4FE1\u516C\u4F17\u53F7\u67E5\u770B\u8BA2\u5355\u3002
 PROBATION_SUCCESS_THIRD_TEXT=\u3010\u7F8E\u56FDWatero\u3011\u5C0A\u656C\u7684\u4F1A\u5458\u60A8\u597D\uFF01\u60A8\u7684\u8BD5\u7528\u8BA2\u53552\u5929\u540E\u5C06\u5230\u671F\uFF0C\u540C\u65F6\uFF0C\u8FD8\u67091L\u7CBE\u7F8E\u91CF\u676F\u5F85\u9886\u53D6\uFF0C\u8BF7\u8FDB\u5165\u5FAE\u4FE1\u516C\u4F17\u53F7\u67E5\u770B\u8BA2\u5355\u3002
+
+PROBATION_VERIFICATION_CODE=\u3010\u7f8e\u56fd\u0057\u0061\u0074\u0065\u0072\u004f\u3011\u60a8\u7684\u9a8c\u8bc1\u7801\u662f\u007b\u0030\u007d\u3002\u5982\u975e\u672c\u4eba\u64cd\u4f5c\uff0c\u8bf7\u5ffd\u7565\u672c\u77ed\u4fe1

+ 6 - 0
watero-wechat-web/src/main/resources/platform.properties

@@ -100,6 +100,12 @@ WECHAT_GO_I_WANT_LEASE=/view/rent/i_want_lease.html
 WECHAT_GO_SALES_MANAGER = /wechat/statistics/sales_management.html
 #	salesman admin manager page
 WECHAT_GO_TOTAL_MANAGER = /wechat/statistics/total_management.html
+
+WECHAT_GO_AFTER_SALE_SERVICE = /WEB-INF/views/wechat/after_sale_service.html
+WECHAT_GO_FREE_COLLECTION = /WEB-INF/views/wechat/free_collection.html
+WECHAT_GO_RECEIVING_FILTER_CARTRIDGE = /WEB-INF/views/wechat/receiving_filter_cartridge.html
+WECHAT_GO_VIP_EQUITY = /WEB-INF/views/wechat/vip_equity.html
+
 # xss_handler_localhost_url !!!
 XSS_HANDLER_LOCALHOST_URL=https://localhost:
 # xss_handler_out_url !!!