ソースを参照

上朵积分政策调整

wangxiaoming 6 年 前
コミット
9ca68ef4b8
26 ファイル変更661 行追加299 行削除
  1. 2 2
      tooth-common-core/src/main/java/com/iamberry/wechat/core/entity/integral/UseIntegral.java
  2. 9 0
      tooth-common-core/src/main/java/com/iamberry/wechat/core/entity/member/Member.java
  3. 33 116
      tooth-common-core/src/main/java/com/iamberry/wechat/tools/SendMessageUtil.java
  4. 20 0
      tooth-common-tool/src/main/java/com/iamberry/wechat/tools/ResultInfo.java
  5. 3 0
      tooth-common-tool/src/main/java/com/iamberry/wechat/tools/loadResultUtil.java
  6. 8 0
      tooth-wechat-interface/src/main/java/com/iamberry/wechat/face/integral/UseIntegralService.java
  7. 9 0
      tooth-wechat-interface/src/main/java/com/iamberry/wechat/face/member/MemberService.java
  8. 8 8
      tooth-wechat-service/src/main/java/com/iamberry/wechat/service/activity/ActivityServiceImpl.java
  9. 133 1
      tooth-wechat-service/src/main/java/com/iamberry/wechat/service/integral/UseIntegralServiceImpl.java
  10. 2 0
      tooth-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/MemberMapper.java
  11. 13 7
      tooth-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/memberMapper.xml
  12. 11 0
      tooth-wechat-service/src/main/java/com/iamberry/wechat/service/member/MemberServiceImpl.java
  13. 3 0
      tooth-wechat-service/src/main/java/com/iamberry/wechat/service/member/dao/MemberDao.java
  14. 5 0
      tooth-wechat-service/src/main/java/com/iamberry/wechat/service/member/dao/imp/MemberDaoImpl.java
  15. 3 0
      tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/admin/AdminOrderHandlers.java
  16. 13 13
      tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/admin/AdminProbationOrderHandler.java
  17. 2 2
      tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/cart/ProbationOrderHandler.java
  18. 59 19
      tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/coupon/CouponTypeHandler.java
  19. 12 12
      tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/giftCard/CardHandler.java
  20. 167 0
      tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/integral/OtherIntegralHandler.java
  21. 108 80
      tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/mq/MQTask.java
  22. 11 11
      tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/pay/RequestWechatPayHandler.java
  23. 11 11
      tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/pay/ResponseWechatPayHandler.java
  24. 9 10
      tooth-wechat-web/src/main/resources/ResultInfo.properties
  25. 1 1
      tooth-wechat-web/src/main/resources/iamberry-wechat-web-ioc.xml
  26. 6 6
      tooth-wechat-web/src/main/resources/platform.properties

+ 2 - 2
tooth-common-core/src/main/java/com/iamberry/wechat/core/entity/integral/UseIntegral.java

@@ -19,8 +19,8 @@ public class UseIntegral implements Serializable {
     private Integer stayId;                //待入账积分ID
     private Integer integralNumber;      //使用积分数量
     private Integer configId;            //积分来源类型
-    private Integer integralBeforeNumber;//变动前可用积分总额       指剩余积分
-    private Integer integralEndNumber;//变动后可用积分总额    指剩余积分
+    private Integer integralBeforeNumber;//变动前可用积分总额       指剩余积分   待入账没有该值
+    private Integer integralEndNumber;//变动后可用积分总额    指剩余积分      待入账没有该值
     private String integralRemarks;      //备注
     @DateTimeFormat(pattern="yyyy-MM-dd")
     @JsonFormat(pattern="yyyy-MM-dd",timezone = "GMT+8")

+ 9 - 0
tooth-common-core/src/main/java/com/iamberry/wechat/core/entity/member/Member.java

@@ -68,6 +68,7 @@ public class Member implements Serializable{
 	private  Integer totalConsume; 			//消费金额
 	private  Integer userAgeStage; 			//年龄阶段 1:80后 2:85后 3:90后 4:95后 5:00后 6:其他
 
+	private  Integer userIsAc; 			//是否已变更  1.已变更  2:未变更
 
 
 	private  String[] ids;						//
@@ -334,6 +335,14 @@ public class Member implements Serializable{
 		this.userStayIntegral = userStayIntegral;
 	}
 
+	public Integer getUserIsAc() {
+		return userIsAc;
+	}
+
+	public void setUserIsAc(Integer userIsAc) {
+		this.userIsAc = userIsAc;
+	}
+
 	@Override
 	public String toString() {
 		return "Member [userId=" + userId + ", userOpenid=" + userOpenid

+ 33 - 116
tooth-common-core/src/main/java/com/iamberry/wechat/tools/SendMessageUtil.java

@@ -44,37 +44,16 @@ public class SendMessageUtil {
 		public boolean sendTemplateMessageToOpenid(String date,String openId, String url,Integer type) {
 			boolean result = false;
 			switch (type) {
-			case 1:  //1,收益成功通知
-				WeixinUtil.sendTemplateMessage(NameUtils.getConfig("appId"), NameUtils.getConfig("appSecret"), openId,ResultInfo.rewards_template_id, date, url);
-				break;
-			case 2:  // 2,发货提醒通知 
-				WeixinUtil.sendTemplateMessage(NameUtils.getConfig("appId"), NameUtils.getConfig("appSecret"), openId, ResultInfo.Shipment_template_id, date, url);
-				break;
-			case 3:  //3、收入提醒通知
-				WeixinUtil.sendTemplateMessage(NameUtils.getConfig("appId"), NameUtils.getConfig("appSecret"), openId, ResultInfo.Income_template_id, date, url);
-				break;
 			case 4:  //4、订单未支付通知
 				WeixinUtil.sendTemplateMessage(NameUtils.getConfig("appId"), NameUtils.getConfig("appSecret"), openId, ResultInfo.Order_template_id, date, url);
 				break;
-			case 5:  //5、试用进度提醒
-				WeixinUtil.sendTemplateMessage(NameUtils.getConfig("appId"), NameUtils.getConfig("appSecret"), openId, ResultInfo.trial_progress_remind, date, url);
-				break;
-			case 6:  //6、试用申请通知
-				WeixinUtil.sendTemplateMessage(NameUtils.getConfig("appId"), NameUtils.getConfig("appSecret"), openId, ResultInfo.probation_apply_notice, date, url);
-				break;
-			case 7:  //7、试用申请成功通知
-				WeixinUtil.sendTemplateMessage(NameUtils.getConfig("appId"), NameUtils.getConfig("appSecret"), openId, ResultInfo.probation_apply_success, date, url);
-				break;
 			case 8:  //8、订单支付成功
 				WeixinUtil.sendTemplateMessage(NameUtils.getConfig("appId"), NameUtils.getConfig("appSecret"), openId, ResultInfo.probation_pay_success, date, url);
 				break;
 			case 9:  //9、订单关闭成功
 				WeixinUtil.sendTemplateMessage(NameUtils.getConfig("appId"), NameUtils.getConfig("appSecret"), openId, ResultInfo.probation_shut_down, date, url);
 				break;
-			case 10:  //10、奖品领取通知 
-				WeixinUtil.sendTemplateMessage(NameUtils.getConfig("appId"), NameUtils.getConfig("appSecret"), openId, ResultInfo.prize_receive_push, date, url);
-				break;
-			case 11:  //11、更换电动牙刷通知
+			case 11:  //11、服务进度
 				WeixinUtil.sendTemplateMessage(NameUtils.getConfig("appId"), NameUtils.getConfig("appSecret"), openId, ResultInfo.update_tooth_hint, date, url);
 				break;
 			case 12:  //12、用户申请退款提醒
@@ -107,10 +86,13 @@ public class SendMessageUtil {
 			case 21:  //21参与成功
 				WeixinUtil.sendTemplateMessage(NameUtils.getConfig("appId"), NameUtils.getConfig("appSecret"), openId, ResultInfo.participate_in_success, date, url);
 				break;
-			case 22:  //23助力成功
-				WeixinUtil.sendTemplateMessage(NameUtils.getConfig("appId"), NameUtils.getConfig("appSecret"), openId, ResultInfo.helping_success, date, url);
+			case 22:  //积分变更
+				WeixinUtil.sendTemplateMessage(NameUtils.getConfig("appId"), NameUtils.getConfig("appSecret"), openId, ResultInfo.point_change, date, url);
+				break;
+			case 23:  //生日赠送
+				WeixinUtil.sendTemplateMessage(NameUtils.getConfig("appId"), NameUtils.getConfig("appSecret"), openId, ResultInfo.birthday_gift, date, url);
 				break;
-			default: 
+			default:
 				break;
 			}
 			result = true;
@@ -158,69 +140,7 @@ public class SendMessageUtil {
 //		System.out.println("发送成功");
 //	}
 		
-		/**
-		 * 试用进度提醒推送
-		 * @param first  标题
-		 * @param keyword1	商品名称
-		 * @param keyword2	订单编号
-		 * @param keyword3	申请时间
-		 * @param keyword4	截止时间
-		 * @param remark	全部内容
-		 * @param openId	用户openid
-		 * @param url	地址
-		 */
-		public void probationPush(String first,String keyword1,String keyword2,String keyword3,String keyword4,String remark,String openId,String url){
-			String temp = ResultInfo.PROBATIONPUSH;
-			temp = temp.replaceFirst("firstValueIamberry", first)
-					.replaceFirst("keyword1Value",keyword1)
-					.replaceFirst("keyword2Value",keyword2)
-					.replaceFirst("keyword3Value",keyword3)
-					.replaceFirst("keyword4Value",keyword4)
-					.replaceFirst("remarkValue",remark);
-				sendTemplateMessageToOpenid(temp, openId, url,5);
-				temp = ResultInfo.PROBATIONPUSH;
-		}
-		
-		/**
-		 * 试用开始通知
-		 * @param first 标题
-		 * @param keyword1	商品信息
-		 * @param keyword2	申请时间
-		 * @param remark	全部内容
-		 * @param openId	用户openid
-		 * @param url	地址
-		 */
-		public void probationApplyNotice(String first,String keyword1,String keyword2,String remark,String openId,String url){
-			String temp = ResultInfo.PROBATIONAPPLYNOTICE;
-			temp = temp.replaceFirst("firstValueIamberry", first)
-					.replaceFirst("keyword1Value",keyword1)
-					.replaceFirst("keyword2Value",keyword2)
-					.replaceFirst("remarkValue",remark);
-				sendTemplateMessageToOpenid(temp, openId, url,6);
-		}
-		/**
-		 * 派送成功通知
-		 * @param first  标题
-		 * @param keyword1	申请单号
-		 * @param keyword2	申请时间
-		 * @param keyword3	应付金额
-		 * @param keyword4	应付积分
-		 * @param keyword5	支付方式
-		 * @param remark	全部内容
-		 * @param openId	用户openid
-		 * @param url	地址
-		 */
-		public void probationApplySuccess(String first,String keyword1,String keyword2,String keyword3,String keyword4,String keyword5,String remark,String openId,String url){
-			String temp = ResultInfo.PROBATIONAPPLYSUCCESS;
-			temp = temp.replaceFirst("firstValueIamberry", first)
-					.replaceFirst("keyword1Value",keyword1)
-					.replaceFirst("keyword2Value",keyword2)
-					.replaceFirst("keyword3Value",keyword3)
-					.replaceFirst("keyword4Value",keyword4)
-					.replaceFirst("keyword5Value",keyword5)
-					.replaceFirst("remarkValue",remark);
-				sendTemplateMessageToOpenid(temp, openId, url,7);
-		}
+
 		/**
 		 * 试用订单支付成功
 		 * @param first  标题
@@ -257,32 +177,9 @@ public class SendMessageUtil {
 			sendTemplateMessageToOpenid(temp, openId, url,9);
 		}
 		
-		/**
-		 * 推荐人领取通知
-		 * @param first  标题
-		 * @param keyword1	被推荐人
-		 * @param keyword2	消费商家
-		 * @param keyword3	消费金额
-		 * @param keyword4	消费时间
-		 * @param keyword4	推荐奖励
-		 * @param remark	全部内容
-		 * @param openId	用户openid
-		 * @param url	跳转地址
-		 */
-		public void prizeReceivePush(String first,String keyword1,String keyword2,String keyword3,String keyword4,String keyword5,String remark,String openId,String url){
-			String temp = ResultInfo.PRIZERECEIVEPUSH;
-			temp = temp.replaceFirst("firstValueIamberry", first)
-					.replaceFirst("keyword1Value",keyword1)
-					.replaceFirst("keyword2Value",keyword2)
-					.replaceFirst("keyword3Value",keyword3)
-					.replaceFirst("keyword4Value",keyword4)
-					.replaceFirst("keyword5Value",keyword5)
-					.replaceFirst("remarkValue",remark);
-				sendTemplateMessageToOpenid(temp, openId, url,10);
-		}
 
 	/**
-	 * 更换牙刷刷头提示信息
+	 * 服务进度
 	 * @param first
 	 * @param keyword1
 	 * @param keyword2
@@ -290,7 +187,7 @@ public class SendMessageUtil {
 	 * @param openId
 	 * @param url
 	 */
-	public void updateToothHint(String first,String keyword1,String keyword2,String remark,String openId,String url){
+	public void serviceProgress(String first,String keyword1,String keyword2,String remark,String openId,String url){
 		String temp = ResultInfo.UPDATETOOTHHINT;
 		temp = temp.replaceFirst("firstValueIamberry", first)
 				.replaceFirst("keyword1Value",keyword1)
@@ -490,13 +387,14 @@ public class SendMessageUtil {
 	}
 
 	/**
-	 * 618活动  助力成功
+	 * 积分变更
 	 * @param first
+	 * @param remark
 	 * @param openId
 	 * @param url
 	 */
-	public void helpingSuccess(String first,String keyword1,String keyword2,String remark,String openId,String url){
-		String temp = ResultInfo.HELPINGSUCCESS;
+	public void pointChange(String first,String keyword1,String keyword2,String remark,String openId,String url){
+		String temp = ResultInfo.POINTCHANGE;
 		temp = temp.replaceFirst("firstValueIamberry", first)
 				.replaceFirst("keyword1Value",keyword1)
 				.replaceFirst("keyword2Value",keyword2)
@@ -505,4 +403,23 @@ public class SendMessageUtil {
 		sendTemplateMessageToOpenid(temp, openId, url,22);
 	}
 
+	/**
+	 * 积分变更
+	 * @param first
+	 * @param remark
+	 * @param openId
+	 * @param url
+	 */
+	public void birthdayGift(String first,String keyword1,String keyword2,String keyword3,String keyword4,String remark,String openId,String url){
+		String temp = ResultInfo.BIRTHDAYGIFT;
+		temp = temp.replaceFirst("firstValueIamberry", first)
+				.replaceFirst("keyword1Value",keyword1)
+				.replaceFirst("keyword2Value",keyword2)
+				.replaceFirst("keyword3Value",keyword3)
+				.replaceFirst("keyword4Value",keyword4)
+				.replaceFirst("colorValue","#1C86EE")
+				.replaceFirst("remarkValue",remark);
+		sendTemplateMessageToOpenid(temp, openId, url,23);
+	}
+
 }

+ 20 - 0
tooth-common-tool/src/main/java/com/iamberry/wechat/tools/ResultInfo.java

@@ -112,6 +112,10 @@ public class ResultInfo {
 	public static String ORDER_DETAIL = "https://s.iamberry.com/soodo/wechat/order-details.html?orderId=";
 	/*配置首页*/
 	public static String INDEX_DETAIL = "https://s.iamberry.com/soodo/wechat/my-center.html";
+	/*积分列表*/
+	public static String INDEX_INTERGRAL = "https://s.iamberry.com/soodo/wechat/integral-log.html?integralStatus=2";
+	/*优惠券列表*/
+	public static String INDEX_COUPON = "https://s.iamberry.com/soodo/wechat/coupon_list.html";
 	/**
 	 * <礼品卡>推荐人推送消息 跳转页面
 	 */
@@ -175,6 +179,16 @@ public class ResultInfo {
 	public static String helping_success="";	//助力成功  模版id
 
 	/**
+	 *	积分变更
+	 */
+	public static String point_change="";	//积分变更  模版id
+
+	/**
+	 *生日赠送
+	 */
+	public static String birthday_gift="";	//生日赠送  模版id
+
+	/**
 	 * 订单关闭通知	 	模版id	TM00984
 	 */
 	public static String probation_shut_down="";
@@ -283,6 +297,12 @@ public class ResultInfo {
 	/**  618活动  助力成功 **/
 	public static String HELPINGSUCCESS =  "{'first':{'color':'#173177','value':'firstValueIamberry'}, 'keyword1':{'color':'#173177','value':'keyword1Value'}, 'keyword2':{'color':'#173177', 'value':'keyword2Value'},'remark':{'color':'colorValue','value':'remarkValue'}}";
 
+	/**  积分变更 **/
+	public static String POINTCHANGE =  "{'first':{'color':'#173177','value':'firstValueIamberry'}, 'keyword1':{'color':'#173177','value':'keyword1Value'}, 'keyword2':{'color':'#173177', 'value':'keyword2Value'},'remark':{'color':'colorValue','value':'remarkValue'}}";
+
+	/**  生日赠送 **/
+	public static String BIRTHDAYGIFT =  "{'first':{'color':'#173177','value':'firstValueIamberry'}, 'keyword1':{'color':'#173177','value':'keyword1Value'}, 'keyword2':{'color':'#173177', 'value':'keyword2Value'}, 'keyword3':{'color':'#173177','value':'keyword3Value'}, 'keyword4':{'color':'#173177', 'value':'keyword4Value'},'remark':{'color':'colorValue','value':'remarkValue'}}";
+
 	/**
 	 * 微信模板消息提示语
 	 */

+ 3 - 0
tooth-common-tool/src/main/java/com/iamberry/wechat/tools/loadResultUtil.java

@@ -87,6 +87,9 @@ public class loadResultUtil {
 			ResultInfo.helping_success = prop.getProperty("helping_success");			//618活动  助力成功
 			ResultInfo.help_url = prop.getProperty("ACTIVITY_URL");			//618活动  助力成功
 
+			ResultInfo.point_change = prop.getProperty("point_change");			//618活动  助力成功
+			ResultInfo.birthday_gift = prop.getProperty("birthday_gift");			//618活动  助力成功
+
 			ResultInfo.GET_MACHINE_INFO = prop.getProperty("GET_MACHINE_INFO");			//产品-RST
 			ResultInfo.GET_TOOTH_INFO = prop.getProperty("GET_TOOTH_INFO");			//产品-RST
 		} catch (IOException e) {

+ 8 - 0
tooth-wechat-interface/src/main/java/com/iamberry/wechat/face/integral/UseIntegralService.java

@@ -3,11 +3,13 @@ package com.iamberry.wechat.face.integral;
 import com.iamberry.wechat.core.entity.PageBean;
 import com.iamberry.wechat.core.entity.ResultMsg;
 import com.iamberry.wechat.core.entity.integral.*;
+import com.iamberry.wechat.core.entity.member.Member;
 import com.iamberry.wechat.core.entity.page.PageRequest;
 import com.iamberry.wechat.core.entity.page.PagedResult;
 import com.sun.org.apache.xpath.internal.operations.Bool;
 
 import java.util.List;
+import java.util.Map;
 
 public interface UseIntegralService {
     /**
@@ -129,6 +131,12 @@ public interface UseIntegralService {
     List<UseIntegral>  getUseIntegralList(UseIntegral  useIntegral);
 
 
+    /**
+     * 修改个人积分
+     * @param member
+     * @return
+     */
+    Integer activityPointChange(Member member);
 
 
 }

+ 9 - 0
tooth-wechat-interface/src/main/java/com/iamberry/wechat/face/member/MemberService.java

@@ -5,6 +5,8 @@ import java.util.Map;
 
 import com.iamberry.wechat.core.entity.Page;
 import com.iamberry.wechat.core.entity.member.Member;
+import com.iamberry.wechat.core.entity.page.PageRequest;
+import com.iamberry.wechat.core.entity.page.PagedResult;
 
 /**
  * 会员信息 service
@@ -185,4 +187,11 @@ public interface MemberService{
 	 * @return
 	 */
 	Integer updaterIntegral(Integer userId,Integer type,Integer configId, Integer integral,String remake);
+
+	/**
+	 * 分页查询
+	 * @param pageRequest
+	 * @return
+	 */
+	PagedResult<Member> listMemberPage(PageRequest<Member> pageRequest);
 }

+ 8 - 8
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/activity/ActivityServiceImpl.java

@@ -188,14 +188,14 @@ public class ActivityServiceImpl  implements ActivityService {
             }
             String numStr = activityAlreadyHelp + "人";
             try {
-                sendMessageUtil.helpingSuccess(
-                        firstStr,
-                        ResultInfo.HELP_NAME,
-                        numStr,
-                        remStr,
-                        openId,
-                        ResultInfo.help_url
-                );
+//                sendMessageUtil.helpingSuccess(
+//                        firstStr,
+//                        ResultInfo.HELP_NAME,
+//                        numStr,
+//                        remStr,
+//                        openId,
+//                        ResultInfo.help_url
+//                );
             } catch (Exception e) {
                 logger.info("============助力成功信息发送失败============");
                 e.printStackTrace();

+ 133 - 1
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/integral/UseIntegralServiceImpl.java

@@ -1,10 +1,12 @@
 package com.iamberry.wechat.service.integral;
 
 import com.github.pagehelper.PageHelper;
+import com.iamberry.wechat.core.entity.admin.ShopSystemRule;
 import com.iamberry.wechat.core.entity.integral.*;
 import com.iamberry.wechat.core.entity.member.Member;
 import com.iamberry.wechat.core.entity.page.PageRequest;
 import com.iamberry.wechat.core.entity.page.PagedResult;
+import com.iamberry.wechat.face.admin.SystemService;
 import com.iamberry.wechat.face.integral.UseIntegralService;
 import com.iamberry.wechat.service.mapper.MemberMapper;
 import com.iamberry.wechat.service.mapper.UseIntegralMapper;
@@ -12,11 +14,15 @@ import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 import util.PageUtil;
 
 import java.beans.Transient;
 import java.util.Date;
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
+
 @Service
 public class UseIntegralServiceImpl implements UseIntegralService {
 
@@ -30,6 +36,9 @@ public class UseIntegralServiceImpl implements UseIntegralService {
     @Autowired
     private UseIntegralService useIntegralService;
 
+    @Autowired
+    private SystemService systemService;
+
     /**
      * 获取会员信息.会员等级名称
      * @param openId
@@ -163,7 +172,7 @@ public class UseIntegralServiceImpl implements UseIntegralService {
     }
 
     @Override
-    @Transient
+    @Transactional
     public String integralStayToAlready(StayIntegral si) {
         String msg = "";
         /*增加入账积分,累计积分,减去待入账积分*/
@@ -239,4 +248,127 @@ public class UseIntegralServiceImpl implements UseIntegralService {
         return  useIntegralMapper.getUseIntegralList(useIntegral);
     }
 
+    @Override
+    @Transactional
+    public Integer activityPointChange(Member member) {
+        Integer number = 0;
+        if(member == null){
+            logger.info("==用户为空:");
+            throw new RuntimeException("用户为空");
+        }
+        if(member.getUserSurplusIntegral() == null){
+            logger.info("==用户剩余积分为空");
+            throw new RuntimeException("用户剩余积分为空");
+        }
+        if(member.getUserStayIntegral() == null){
+            logger.info("==用户待入账积分为空");
+            throw new RuntimeException("用户待入账积分为空");
+        }
+        if(member.getUserIntegral() == null){
+            logger.info("==用户总积分为空");
+            throw new RuntimeException("用户总积分为空");
+        }
+        logger.info("====用户OPENID:"+member.getUserOpenid()+"=====积分变更开始=========");
+
+        //待入账,查询条件  1
+        //增加待入账,逐条增加,名称
+        //获取待入账集合总金额
+        StayIntegral stayIntegral = new StayIntegral();
+        stayIntegral.setUserOpenId(member.getUserOpenid());
+        stayIntegral.setStayStatus(1);
+        List<StayIntegral> stayIntegralList = useIntegralMapper.listStayIntegral(stayIntegral);
+
+        //获取积分配置的id
+        ShopSystemRule renewRule =  systemService.selectOneShopRuleById(262);
+        IntegralConfig ic = new IntegralConfig();
+        ic.setIntegralConfigId(Integer.valueOf(renewRule.getRuleDesc()));
+        List<IntegralConfig> configList = useIntegralMapper.listIntegralConfig(ic);
+        ic = configList.get(0);
+
+        //所有待入账的总和
+        Integer stayInter = 0;
+        if(stayIntegralList!=null && stayIntegralList.size()>0){
+            for (StayIntegral si:stayIntegralList) {
+                Double num = si.getStayNumber() * 0.1;
+                stayInter += num.intValue();
+                if(num.intValue() > 0){
+                    StayIntegral newSi = new StayIntegral();
+                    newSi.setUserOpenId(member.getUserOpenid());
+                    newSi.setConfigId(ic.getIntegralConfigId());
+                    newSi.setStayNumber(num.intValue());
+                    newSi.setStayStatus(1);
+                    newSi.setStayRecordedTime(si.getStayRecordedTime());
+                    newSi.setStayStatus(1);
+                    Integer fl = memberMapper.insertStayIntegral(newSi);
+                    if (fl < 1) {
+                        logger.info("==增加待入账失败,原待入账ID:" + si.getStayId());
+                        throw new RuntimeException("增加待入账失败");
+                    } else {
+                        //添加待入账积分日志
+                        UseIntegral useIntegral = new UseIntegral();
+                        useIntegral.setConfigId(Integer.valueOf(renewRule.getRuleDesc()));
+                        useIntegral.setUserOpenId(member.getUserOpenid());
+                        useIntegral.setIntegralType(3);
+                        useIntegral.setStayId(newSi.getStayId());
+                        useIntegral.setIntegralNumber(num.intValue());
+                        useIntegral.setIntegralBeforeNumber(0);
+                        useIntegral.setIntegralEndNumber(0);
+                        useIntegral.setIntegralRemarks(ic.getIntegralConfigName());
+                        //添加积分获取日志信息
+                        if (useIntegralMapper.addUseIntegral(useIntegral) < 1) {
+                            logger.info("==添加待入账的积分日志失败,原待入账ID:" + si.getStayId());
+                            throw new RuntimeException("添加待入账的积分日志失败");
+                        }
+                    }
+                }
+            }
+        }
+
+        //增加日志表,增加(剩余积分*0.1)的记录
+        //添加日志
+        Integer surplusIntegral = 0;
+        Double userSurplusIntegral = member.getUserSurplusIntegral()*0.1;
+        if( userSurplusIntegral.intValue() > 0){
+            //需要直接加的积分
+            surplusIntegral = userSurplusIntegral.intValue();
+            UseIntegral useIntegral = new UseIntegral();
+            useIntegral.setConfigId(ic.getIntegralConfigId());
+            useIntegral.setUserOpenId(member.getUserOpenid());
+            useIntegral.setIntegralType(1);
+            useIntegral.setIntegralNumber(surplusIntegral);
+            useIntegral.setIntegralBeforeNumber(member.getUserSurplusIntegral());
+            useIntegral.setIntegralEndNumber(member.getUserSurplusIntegral() + surplusIntegral);
+            useIntegral.setIntegralRemarks(ic.getIntegralConfigName());
+            //添加积分获取日志信息
+            if(useIntegralMapper.addUseIntegral(useIntegral) < 1){
+                logger.info("==添加积分日志失败,用户openId:" + member.getUserOpenid());
+                throw new RuntimeException("添加积分日志失败");
+            }
+        }
+
+        //修改用户表
+        //剩余积分=剩余积分+剩余积分*0.1
+        //总积分=总积分+剩余积分*0.1
+        //待入账=待入账+待入账集合总金额
+        Member mem = new Member();
+        mem.setUserId(member.getUserId());
+        mem.setUserOpenid(member.getUserOpenid());
+        if(surplusIntegral > 0){
+            mem.setUserSurplusIntegral(member.getUserSurplusIntegral()+surplusIntegral);   //剩余积分
+            mem.setUserIntegral(member.getUserIntegral()+surplusIntegral); //总积分 成长值
+        }
+        if(stayInter > 0){
+            mem.setUserStayIntegral(member.getUserStayIntegral() + stayInter); //待入账积分
+        }
+        mem.setUserIsAc(1);
+        Integer flag = memberMapper.update(mem);
+        if(flag < 1){
+            logger.info("==用户添加积分失败,用户openId:" + member.getUserOpenid());
+            throw new RuntimeException("用户添加积分失败");
+        }
+        logger.info("====用户OPENID:"+member.getUserOpenid()+"=====积分变更结束=========");
+        return stayInter+surplusIntegral;
+    }
+
+
 }

+ 2 - 0
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/MemberMapper.java

@@ -172,4 +172,6 @@ public interface MemberMapper {
 	 */
 	Integer  update(Member  member);
 
+
+	List<Member> listMemberPage(Member member);
 }

+ 13 - 7
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/memberMapper.xml

@@ -397,12 +397,6 @@
 		update
 			tb_iamberry_user_userinfo
 		<set >
-			<if test="userId != null ">
-				user_id = #{userId},
-			</if >
-			<if test="userOpenid != null and userOpenid != ''">
-				user_openid = #{userOpenid},
-			</if >
 			<if test="userHead != null and userHead != ''">
 				user_head = #{userHead},
 			</if >
@@ -476,11 +470,23 @@
 				user_age_stage = #{userAgeStage},
 			</if >
 			<if test="userStayIntegral != null ">
-				user_stay_integral = #{userStayIntegral}
+				user_stay_integral = #{userStayIntegral},
+			</if >
+			<if test="userIsAc != null ">
+				user_is_ac = #{userIsAc}
 			</if >
 		</set >
 		where user_id= #{userId}
 	</update>
 
 
+	<!-- 获取个人信息-->
+	<select id="listMemberPage" resultType="Member" parameterType="Member" >
+		select
+			*
+		FROM
+			tb_iamberry_user_userinfo
+		WHERE (user_integral+user_stay_integral) > 0 AND user_is_ac = 2
+		ORDER BY user_create_date
+	</select>
 </mapper>

+ 11 - 0
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/member/MemberServiceImpl.java

@@ -1,11 +1,14 @@
 package com.iamberry.wechat.service.member;
 
+import com.github.pagehelper.PageHelper;
 import com.iamberry.app.tool.log.RatFWLogger;
 import com.iamberry.wechat.core.entity.Page;
 import com.iamberry.wechat.core.entity.drp.PlaceInfo;
 import com.iamberry.wechat.core.entity.integral.RankRule;
 import com.iamberry.wechat.core.entity.integral.UseIntegral;
 import com.iamberry.wechat.core.entity.member.Member;
+import com.iamberry.wechat.core.entity.page.PageRequest;
+import com.iamberry.wechat.core.entity.page.PagedResult;
 import com.iamberry.wechat.face.member.MemberService;
 import com.iamberry.wechat.service.ShopUtil;
 import com.iamberry.wechat.service.home.dao.HomeServiceDao;
@@ -20,6 +23,7 @@ import org.omg.CORBA.PUBLIC_MEMBER;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
+import util.PageUtil;
 
 import java.util.Arrays;
 import java.util.HashMap;
@@ -439,4 +443,11 @@ public class MemberServiceImpl implements MemberService {
 		return flag;
 	}
 
+	@Override
+	public PagedResult<Member> listMemberPage(PageRequest<Member> pageRequest) {
+		PageHelper.startPage(pageRequest.getPageNO(), pageRequest.getPageSize(), pageRequest.isPageTotal());
+		List<Member> detedctList = memberDao.listMemberPage(pageRequest.getData());
+		return PageUtil.getPage(detedctList);
+	}
+
 }

+ 3 - 0
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/member/dao/MemberDao.java

@@ -157,4 +157,7 @@ public interface MemberDao {
 	Integer  update(Member  member);
 
 
+	List<Member> listMemberPage(Member member);
+
+
 }

+ 5 - 0
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/member/dao/imp/MemberDaoImpl.java

@@ -171,4 +171,9 @@ public class MemberDaoImpl  implements MemberDao {
 	public  Integer  update(Member  member){
 		return  memberMapper.update(member);
 	}
+
+	@Override
+	public List<Member> listMemberPage(Member member) {
+		return memberMapper.listMemberPage(member);
+	}
 }

+ 3 - 0
tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/admin/AdminOrderHandlers.java

@@ -1093,6 +1093,7 @@ public class AdminOrderHandlers {
         titles.add("收货人");
         titles.add("昵称");
         titles.add("手机号码");
+        titles.add("地址");
         titles.add("邮寄方式");
         titles.add("渠道层级");
         titles.add("渠道名称");
@@ -1171,6 +1172,8 @@ public class AdminOrderHandlers {
                 row.add(info.getUserNickname() == null ? "":info.getUserNickname());
                 row.add(info.getSalesAddressTel() == null ? "":info.getSalesAddressTel());
 
+                row.add(info.getSalesAddressInfo() == null ? "":info.getSalesAddressInfo());
+
                 if(info.getSalesTransportationType() == 2){ // 1:邮寄  2:自提
                     row.add("自提");
                 }else{

+ 13 - 13
tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/admin/AdminProbationOrderHandler.java

@@ -271,19 +271,19 @@ public class AdminProbationOrderHandler {
 						startTime = DateTimeUtil.format(currentProbationOrder.getProbationStartTime());
 					}
 					if (adminProbationOrderService.updateSendDate(probationOrder)) {
-						try {
-							//推送消息
-							sendMessageUtil.probationApplyNotice(
-									message, 
-									currentProbationOrder.getProbationProductName(),
-									startTime, 
-									msg,
-									currentProbationOrder.getProbationOpenid(),
-									ResultInfo.TRY_ORDER_DETAIL + "?orderId=" + currentProbationOrder.getProbationOrderid());
-							
-						} catch (Exception e) {
-							System.out.println("开始试用推送消息发送失败!");
-						}
+//						try {
+//							//推送消息
+//							sendMessageUtil.probationApplyNotice(
+//									message,
+//									currentProbationOrder.getProbationProductName(),
+//									startTime,
+//									msg,
+//									currentProbationOrder.getProbationOpenid(),
+//									ResultInfo.TRY_ORDER_DETAIL + "?orderId=" + currentProbationOrder.getProbationOrderid());
+//
+//						} catch (Exception e) {
+//							System.out.println("开始试用推送消息发送失败!");
+//						}
 						
 						mv.addObject("msgObj", new MessageDto(true, "订单派送成功", "恭喜您!订单:" + probationOrderid + "订单派送成功,请确认订单是否收到!"));
 						return mv;

+ 2 - 2
tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/cart/ProbationOrderHandler.java

@@ -172,7 +172,7 @@ public class ProbationOrderHandler {
 		
 		try {
 			//试用订单生成,给试用人推送消息
-			sendMessageUtil.probationApplyNotice(ResultInfo.PROBATION_START_FIRST, product.getProductName(),probationOrderDto.getProbationOrderid(), ResultInfo.PROBATION_END_FIRST, probationOrderDto.getProbationOpenid(), ResultInfo.TRY_ORDER_DETAIL+"?orderId="+probationOrderDto.getProbationOrderid());
+//			sendMessageUtil.probationApplyNotice(ResultInfo.PROBATION_START_FIRST, product.getProductName(),probationOrderDto.getProbationOrderid(), ResultInfo.PROBATION_END_FIRST, probationOrderDto.getProbationOpenid(), ResultInfo.TRY_ORDER_DETAIL+"?orderId="+probationOrderDto.getProbationOrderid());
 		} catch (Exception e) {
 			System.out.println("试用订单生成,消息提示失败!");
 		}
@@ -181,7 +181,7 @@ public class ProbationOrderHandler {
 			PlaceInfo placeInfo = placeInfoService.selectPlaceByPlacePids(user.getUserDealers());
 			//试用订单生成,给上级商户层推送消息
 			if (placeInfo.getOpenid() != null && !"".equals(placeInfo.getOpenid())) {
-				sendMessageUtil.probationApplyNotice(ResultInfo.ADDPROBATIONORDER, product.getProductName(),format.format(new Date()), "", placeInfo.getOpenid(),null);
+//				sendMessageUtil.probationApplyNotice(ResultInfo.ADDPROBATIONORDER, product.getProductName(),format.format(new Date()), "", placeInfo.getOpenid(),null);
 			}
 		} catch (Exception e) {
 			System.out.println("===========试用订单生成,给上级商户推送消息失败==============");

+ 59 - 19
tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/coupon/CouponTypeHandler.java

@@ -541,6 +541,11 @@ public class CouponTypeHandler {
 		couponItemDto.setCouponIsNewPeople(1);
 		List<CouponItemDto> couponItemDtoList = couponItemService.getCouponItemDtoList(couponItemDto);
 
+		CouponItemDto cidLips = new CouponItemDto();
+		cidLips.setUseropenid(memberInfo.getUserOpenid());
+		cidLips.setCouponId(20004);
+		List<CouponItemDto> cidLipsList = couponItemService.getCouponItemDtoList(cidLips);
+
 		Activity activity = new Activity();
 		activity.setUserOpenId(memberInfo.getUserOpenid());
 		List<Activity> activityList = activityService.getActivityList(activity);
@@ -565,6 +570,9 @@ public class CouponTypeHandler {
 		}else{	//未领取优惠券
 			flag = true;
 		}
+		if(cidLipsList != null && cidLipsList.size() > 0 ){
+			flag = false;
+		}
 		if (!flag) {
 			resultMsg.setResultCode(ResultInfo.ERRORCODE);
 			resultMsg.setStatus(false);
@@ -613,6 +621,11 @@ public class CouponTypeHandler {
 		couponItemDto.setCouponIsNewPeople(1);
 		List<CouponItemDto> couponItemDtoList = couponItemService.getCouponItemDtoList(couponItemDto);
 
+		CouponItemDto cidLips = new CouponItemDto();
+		cidLips.setUseropenid(memberInfo.getUserOpenid());
+		cidLips.setCouponId(20004);
+		List<CouponItemDto> cidLipsList = couponItemService.getCouponItemDtoList(cidLips);
+
 		Activity activity = new Activity();
 		activity.setUserOpenId(memberInfo.getUserOpenid());
 		List<Activity> activityList = activityService.getActivityList(activity);
@@ -649,6 +662,13 @@ public class CouponTypeHandler {
 		}else{	//未领取优惠券
 			flag = true;
 		}
+
+		if(cidLipsList != null && cidLipsList.size() > 0 ){
+			flag = false;
+		}
+
+		Integer fl = 0;
+
 		if (!flag) {
 			resultMsg.setResultCode(ResultInfo.ERRORCODE);
 			resultMsg.setStatus(false);
@@ -662,24 +682,6 @@ public class CouponTypeHandler {
 				return resultMsg;
 			}
 
-			CouponItem couponItem = new CouponItem();
-			couponItem.setCouponId(20000);
-			Calendar calendar = Calendar.getInstance();
-			calendar.add(Calendar.YEAR,1);
-			couponItem.setCouponUseEndDate(calendar.getTime());//领取后一年有效
-			couponItem.setCouponReceiveDate(new Date());
-			couponItem.setCouponItemUseropenid(memberInfo.getUserOpenid());
-			couponItem.setCouponUseStatus(1);
-			couponItem.setCouponIsDonation(2);
-			couponItem.setCouponItemRemark("新人优惠券");
-			Integer fl = couponItemService.insertCouponItem(couponItem);
-			if(fl < 1){
-				resultMsg.setResultCode(ResultInfo.ERRORCODE);
-				resultMsg.setMessage("领取出错");
-				resultMsg.setStatus(false);
-				return resultMsg;
-			}
-
 			if(isNewLIps){
 				CouponItem ci = new CouponItem();
 				ci.setCouponId(20001);
@@ -692,7 +694,44 @@ public class CouponTypeHandler {
 				ci.setCouponIsDonation(2);
 				ci.setCouponItemRemark("399轻奢款牙刷60元优惠券/仅限微商城使用");
 				fl = couponItemService.insertCouponItem(ci);
+
+				CouponItem couponItem = new CouponItem();
+				couponItem.setCouponId(20004);
+				Calendar calendar = Calendar.getInstance();
+				calendar.add(Calendar.YEAR,1);
+				couponItem.setCouponUseEndDate(calendar.getTime());//领取后一年有效
+				couponItem.setCouponReceiveDate(new Date());
+				couponItem.setCouponItemUseropenid(memberInfo.getUserOpenid());
+				couponItem.setCouponUseStatus(1);
+				couponItem.setCouponIsDonation(2);
+				couponItem.setCouponItemRemark("Lips刷头抵扣券(仅限Lips单支刷头)");
+				fl = couponItemService.insertCouponItem(couponItem);
+				if(fl < 1){
+					resultMsg.setResultCode(ResultInfo.ERRORCODE);
+					resultMsg.setMessage("领取出错");
+					resultMsg.setStatus(false);
+					return resultMsg;
+				}
+			}else{
+				CouponItem couponItem = new CouponItem();
+				couponItem.setCouponId(20000);
+				Calendar calendar = Calendar.getInstance();
+				calendar.add(Calendar.YEAR,1);
+				couponItem.setCouponUseEndDate(calendar.getTime());//领取后一年有效
+				couponItem.setCouponReceiveDate(new Date());
+				couponItem.setCouponItemUseropenid(memberInfo.getUserOpenid());
+				couponItem.setCouponUseStatus(1);
+				couponItem.setCouponIsDonation(2);
+				couponItem.setCouponItemRemark("新人优惠券");
+				fl = couponItemService.insertCouponItem(couponItem);
+				if(fl < 1){
+					resultMsg.setResultCode(ResultInfo.ERRORCODE);
+					resultMsg.setMessage("领取出错");
+					resultMsg.setStatus(false);
+					return resultMsg;
+				}
 			}
+
 			if(fl > 0){
 				resultMsg.setResultCode(ResultInfo.SUCCESSCODE);
 				resultMsg.setStatus(true);
@@ -878,6 +917,7 @@ public class CouponTypeHandler {
 			ci.setCouponItemRemark(couponType.getCouponRemark());
 			if(couponItemService.insertCouponItem(ci) > 0){
 				resultMsg.setResultCode(ResultInfo.SUCCESSCODE);
+				resultMsg.setMessage("恭喜您获得一张"+couponType.getCouponName());
 				resultMsg.setStatus(true);
 				try{
 					couponTypeService.updateCouponTypeForItem(couponId);
@@ -886,7 +926,7 @@ public class CouponTypeHandler {
 				}
 			}else{
 				resultMsg.setResultCode(ResultInfo.ERRORCODE);
-				resultMsg.setMessage("恭喜您获得一张"+couponType.getCouponName());
+				resultMsg.setMessage("领取失败");
 				resultMsg.setStatus(false);
 			}
 		}else{

+ 12 - 12
tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/giftCard/CardHandler.java

@@ -251,18 +251,18 @@ public class CardHandler {
             // 判断是否已经达到目标并赠送一台水机,如果赠送了,则推送消息
 				if ("1".equals(map.get("target"))) {
 					Member member = memberService.getMemberByUserOpenId(agent.getAgentOpenId());
-					sendMessageUtil.prizeReceivePush(
-							"您好,您已经达到销售目标,详情为:",
-                        URLDecoder.decode(member.getUserNickname(), "UTF-8"),
-                        "Watero水时代",
-                        "0元",
-                        DateTimeUtil.format(new Date()),
-                        "美国watero净饮水一体机一台",
-                        "请点击完善收货地址并领取奖励。",
-                        member.getUserOpenid(),
-                        ResultInfo.AGENT_REFERRER_MACHINE_PAGE
-                                + "?agentMachineId="
-                                + map.get("agentMachineId"));
+//					sendMessageUtil.prizeReceivePush(
+//							"您好,您已经达到销售目标,详情为:",
+//                        URLDecoder.decode(member.getUserNickname(), "UTF-8"),
+//                        "Watero水时代",
+//                        "0元",
+//                        DateTimeUtil.format(new Date()),
+//                        "美国watero净饮水一体机一台",
+//                        "请点击完善收货地址并领取奖励。",
+//                        member.getUserOpenid(),
+//                        ResultInfo.AGENT_REFERRER_MACHINE_PAGE
+//                                + "?agentMachineId="
+//                                + map.get("agentMachineId"));
             }
 
         } catch (Exception e) {

+ 167 - 0
tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/integral/OtherIntegralHandler.java

@@ -0,0 +1,167 @@
+package com.iamberry.wechat.handles.integral;
+
+
+import com.iamberry.wechat.core.entity.ResultMsg;
+import com.iamberry.wechat.core.entity.member.Member;
+import com.iamberry.wechat.core.entity.page.PageRequest;
+import com.iamberry.wechat.core.entity.page.PagedResult;
+import com.iamberry.wechat.face.home.HomeService;
+import com.iamberry.wechat.face.integral.UseIntegralService;
+import com.iamberry.wechat.face.member.MemberService;
+import com.iamberry.wechat.face.wechat.WeChatService;
+import com.iamberry.wechat.tools.NameUtils;
+import com.iamberry.wechat.tools.ResultInfo;
+import com.iamberry.wechat.tools.SendMessageUtil;
+import com.iamberry.wechat.tools.WeixinUtil;
+import net.sf.json.JSONObject;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+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.ResponseBody;
+
+import javax.servlet.http.HttpServletRequest;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 会员积分使用 Controller
+ */
+@Controller
+@RequestMapping("/otherIntegral")
+public class OtherIntegralHandler {
+    private Logger logger = LoggerFactory.getLogger(OtherIntegralHandler.class);
+
+    @Autowired
+    private UseIntegralService useIntegralService;
+    @Autowired
+    private MemberService memberService;
+    @Autowired
+    private SendMessageUtil sendMessageUtil;
+
+    @Autowired
+    private HomeService homeService;
+    /**
+     * 获取等级积分
+     * @param req
+     * @return
+     */
+    @RequestMapping("/activity")
+    @ResponseBody
+    public ResultMsg rankRule(HttpServletRequest req){
+        Map map = new HashMap();
+
+        boolean isSuccess = true;
+
+        boolean flag = true;
+        Integer totalNum = 0;
+        Integer pageNO=1;
+        Integer pageSize=10;
+        do {
+            logger.info("====pageNO:"+ pageNO +"=====pageSize:"+ pageSize +"=========");
+            PageRequest<Member> pageRequest = new PageRequest<>(new Member(), pageNO, pageSize, totalNum == 0);
+            PagedResult<Member> pagedResult = memberService.listMemberPage(pageRequest);
+            List<Member> memberList = pagedResult.getDataList();
+
+            if(memberList != null && memberList.size() > 0){
+                for (Member member : memberList) {
+                    logger.info("====第:"+ pageNO*pageSize +"条=====");
+                    Integer integral = 0;   //积分
+                    try{
+                        integral = useIntegralService.activityPointChange(member);
+                    }catch (Exception e){
+                        logger.info("********用户id:" + member.getUserOpenid()+"更改积分失败");
+                        map.put(member.getUserOpenid(),e.getMessage());
+                        e.printStackTrace();
+                        isSuccess = false;
+                    }
+                    if(integral > 0){
+                        if(member.getUserNickname() == null || "".equals(member.getUserNickname())){
+                            refreshUserInfo(member.getUserOpenid());
+                        }
+                        try {
+                            sendMessageUtil.pointChange(
+                                    "积分变更通知",
+                                    member.getUserNickname(),
+                                    "积分增加"+integral,
+                                    "积分用于积分商城,可至个人中心-积分列表查看变动;也可在公众号对话框输入“积分变动”,了解积分政策详情。",
+                                    member.getUserOpenid(),
+                                    ResultInfo.INDEX_INTERGRAL
+                            );
+                        }catch (Exception e){
+                            e.printStackTrace();
+                        }
+                    }
+                }
+            }else{
+                break;
+            }
+
+            if(pageNO > 100){
+                break;
+            }
+
+            pageNO++;
+        }while (flag);
+
+        ResultMsg rm=new ResultMsg();
+        if(isSuccess){
+            rm.setStatus(true);
+            rm.setResultCode(ResultInfo.SUCCESSCODE);
+        }else{
+            rm.setStatus(false);
+            rm.setResultCode(ResultInfo.ERRORCODE);
+        }
+        rm.setMessage(NameUtils.getConfig("SUCCESSINFO"));
+        rm.setData(map);
+        return rm;
+    }
+
+
+    /**
+     * 更新微信用户信息
+     * 2016年11月17日
+     */
+    private Member refreshUserInfo(String openId){
+        System.out.println("====更新用户信息"+openId);
+        JSONObject jsonObject = WeixinUtil.getUserInfo(openId);
+        String sex = jsonObject.getString("sex");
+        String city = jsonObject.getString("city");
+        String country = jsonObject.getString("country");
+        String province = jsonObject.getString("province");
+        String nickname = jsonObject.getString("nickname");
+        String headimgurl = jsonObject.getString("headimgurl");
+
+        Member member = homeService.selectMemberInfoByOpenId(openId);
+        //赋值&更新会员数据
+        if (member != null && member.getUserId() != null) {
+            member.setUserOpenid(openId);
+            member.setUserNickname(nickname);
+            member.setUserSex(Integer.parseInt(sex));
+            member.setUserAddr(country+"-"+province+"-"+city);
+            member.setUserHead(headimgurl);
+            //userIsBought 暂存旧的关注状态
+            member.setUserIsBought(member.getUserStatus() == null ? 1 : member.getUserStatus());
+            member.setUserStatus(2);
+            homeService.updateWechatMemberInfoByByOpenid(member);
+        } else {
+            member = new Member();
+            member.setUserNickname(nickname);
+            member.setUserSex(Integer.parseInt(sex));
+            member.setUserAddr(country+"-"+province+"-"+city);
+            member.setUserHead(headimgurl);
+            member.setUserStatus(2);
+            member.setUserOpenid(openId);
+            member.setUserIsBought(1);
+            member.setUserIsFlag(1);
+            homeService.insertMemberInfo(member);
+        }
+        return member;
+    }
+
+
+
+
+}

+ 108 - 80
tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/mq/MQTask.java

@@ -306,83 +306,83 @@ public class MQTask implements InitializingBean {
 	 * 试用订单短信推送服务(满足XX天奖励XX奖励)
 	 */
 //	@Scheduled(cron = "0 0 */1 * * ?")//每小时执行一次
-	public void probationRewardPush(){
-		logger.info("------------执行推送满足奖励条件用户 start-----------"); 
-		//查询奖励推送规则
-		List<ProbationAwardRelu> reluList = probationShopOrderService.selectProbationAwardRelu(); 
-		 SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-		if(reluList!=null && !reluList.isEmpty()){
-			for(ProbationAwardRelu awardRelu : reluList){
-				//查询所有待支付订单
-				List<ProbationOrderDto> orderDtoList = probationShopOrderService.selectProbationStartOrder();
-				if(orderDtoList!=null && !orderDtoList.isEmpty()){
-					for(ProbationOrderDto orderDto : orderDtoList ){
-						//计算总试用期限(小时)
-						Long totalDate = (orderDto.getProbationEndTime().getTime() - orderDto.getProbationStartTime().getTime()) / 1000 / 60 / 60;
-						//计算试用剩余期限(小时)
-						Long remainingDate = (orderDto.getProbationEndTime().getTime() - new Date().getTime()) / 1000 / 60 / 60;
-						//暂停时间
-						/*Long pauseDate = 0l;
-						if(orderDto.getProbationPauseStartTime() != null && orderDto.getProbationPauseEndTime() != null){
-							pauseDate =	(orderDto.getProbationPauseEndTime().getTime() - orderDto.getProbationPauseStartTime().getTime()) / 1000 / 60 / 60;
-						}*/
-						//实际试用时间 (总试用时间 - 试用剩余期限 - 暂停时间)
- 						Long actualProbationDate = totalDate - remainingDate - orderDto.getProbationPauseTotalLength() / 1000 / 60 / 60;
-						//奖励奖品天数转换为小时
-						Long awardDate = Long.valueOf(awardRelu.getAwardNum()) * 24;
-						//奖励条件时间 - 实际试用时间  (大于23小时或者小于26小时则推送)
-						if( awardDate -actualProbationDate > 23 && awardDate -actualProbationDate < 26 ){
-							ProbationNewLogs probationNewLogs =	probationShopOrderService.selectProbationNewLogsByOrderId(orderDto.getProbationOrderid());
-							//添加日志信息
-							ProbationNewLogs newLogs = new ProbationNewLogs();
-							newLogs.setLogsPorderid(orderDto.getProbationOrderid());
-							newLogs.setLogsTime(awardRelu.getAwardNum());
-							newLogs.setLogsCreateTime(new Date());
-							if(probationNewLogs == null){
-								//推送操作
-								sendMessageUtil.probationPush(awardRelu.getAwardInfo(), 
-										orderDto.getProductName(), 
-										orderDto.getProbationOrderid(), 
-										formatter.format(orderDto.getProbationStartTime()), 
-										formatter.format(
-												new Date(
-														orderDto.getProbationStartTime().getTime() + 
-														(awardRelu.getAwardNum() * 24 + orderDto.getProbationPauseTotalLength()) * 60 * 60 * 1000)), 
-										awardRelu.getAwardInfoTwo(), 
-										orderDto.getProbationOpenid(), 
-										ResultInfo.TRY_ORDER_DETAIL+"?orderId="+orderDto.getProbationOrderid());
-								//添加日志
-								probationShopOrderService.insertProbationLogs(newLogs);
-								//发送短信给收货人
-								if(StringUtils.isNotEmpty(orderDto.getProbationReceiveTel())){
-									codeService.sendTextToUser(orderDto.getProbationReceiveTel(), 6);
-								}
-							}else if(probationNewLogs.getLogsTime() < awardRelu.getAwardNum()){
-								//执行推送
-								sendMessageUtil.probationPush(
-										awardRelu.getAwardInfo(), 
-										orderDto.getProductName(), 
-										orderDto.getProbationOrderid(), 
-										formatter.format(orderDto.getProbationStartTime()), 
-										formatter.format(
-												new Date(orderDto.getProbationStartTime().getTime() 
-														+ (awardRelu.getAwardNum() * 24 + orderDto.getProbationPauseTotalLength()) * 60 * 60 * 1000)),
-										awardRelu.getAwardInfoTwo(), 
-										orderDto.getProbationOpenid(), 
-										ResultInfo.TRY_ORDER_DETAIL+"?orderId="+orderDto.getProbationOrderid());
-								//修改日志
-								probationShopOrderService.updatePauseLogsDate(newLogs);
-								//发送短信给收货人
-								if(StringUtils.isNotEmpty(orderDto.getProbationReceiveTel())){
-									codeService.sendTextToUser(orderDto.getProbationReceiveTel(), awardRelu.getAwardNum().intValue());
-								}
-							}
-						}
-					}
-				}
-			}
-		}
-	}
+//	public void probationRewardPush(){
+//		logger.info("------------执行推送满足奖励条件用户 start-----------");
+//		//查询奖励推送规则
+//		List<ProbationAwardRelu> reluList = probationShopOrderService.selectProbationAwardRelu();
+//		 SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+//		if(reluList!=null && !reluList.isEmpty()){
+//			for(ProbationAwardRelu awardRelu : reluList){
+//				//查询所有待支付订单
+//				List<ProbationOrderDto> orderDtoList = probationShopOrderService.selectProbationStartOrder();
+//				if(orderDtoList!=null && !orderDtoList.isEmpty()){
+//					for(ProbationOrderDto orderDto : orderDtoList ){
+//						//计算总试用期限(小时)
+//						Long totalDate = (orderDto.getProbationEndTime().getTime() - orderDto.getProbationStartTime().getTime()) / 1000 / 60 / 60;
+//						//计算试用剩余期限(小时)
+//						Long remainingDate = (orderDto.getProbationEndTime().getTime() - new Date().getTime()) / 1000 / 60 / 60;
+//						//暂停时间
+//						/*Long pauseDate = 0l;
+//						if(orderDto.getProbationPauseStartTime() != null && orderDto.getProbationPauseEndTime() != null){
+//							pauseDate =	(orderDto.getProbationPauseEndTime().getTime() - orderDto.getProbationPauseStartTime().getTime()) / 1000 / 60 / 60;
+//						}*/
+//						//实际试用时间 (总试用时间 - 试用剩余期限 - 暂停时间)
+// 						Long actualProbationDate = totalDate - remainingDate - orderDto.getProbationPauseTotalLength() / 1000 / 60 / 60;
+//						//奖励奖品天数转换为小时
+//						Long awardDate = Long.valueOf(awardRelu.getAwardNum()) * 24;
+//						//奖励条件时间 - 实际试用时间  (大于23小时或者小于26小时则推送)
+//						if( awardDate -actualProbationDate > 23 && awardDate -actualProbationDate < 26 ){
+//							ProbationNewLogs probationNewLogs =	probationShopOrderService.selectProbationNewLogsByOrderId(orderDto.getProbationOrderid());
+//							//添加日志信息
+//							ProbationNewLogs newLogs = new ProbationNewLogs();
+//							newLogs.setLogsPorderid(orderDto.getProbationOrderid());
+//							newLogs.setLogsTime(awardRelu.getAwardNum());
+//							newLogs.setLogsCreateTime(new Date());
+//							if(probationNewLogs == null){
+//								//推送操作
+//								sendMessageUtil.probationPush(awardRelu.getAwardInfo(),
+//										orderDto.getProductName(),
+//										orderDto.getProbationOrderid(),
+//										formatter.format(orderDto.getProbationStartTime()),
+//										formatter.format(
+//												new Date(
+//														orderDto.getProbationStartTime().getTime() +
+//														(awardRelu.getAwardNum() * 24 + orderDto.getProbationPauseTotalLength()) * 60 * 60 * 1000)),
+//										awardRelu.getAwardInfoTwo(),
+//										orderDto.getProbationOpenid(),
+//										ResultInfo.TRY_ORDER_DETAIL+"?orderId="+orderDto.getProbationOrderid());
+//								//添加日志
+//								probationShopOrderService.insertProbationLogs(newLogs);
+//								//发送短信给收货人
+//								if(StringUtils.isNotEmpty(orderDto.getProbationReceiveTel())){
+//									codeService.sendTextToUser(orderDto.getProbationReceiveTel(), 6);
+//								}
+//							}else if(probationNewLogs.getLogsTime() < awardRelu.getAwardNum()){
+//								//执行推送
+//								sendMessageUtil.probationPush(
+//										awardRelu.getAwardInfo(),
+//										orderDto.getProductName(),
+//										orderDto.getProbationOrderid(),
+//										formatter.format(orderDto.getProbationStartTime()),
+//										formatter.format(
+//												new Date(orderDto.getProbationStartTime().getTime()
+//														+ (awardRelu.getAwardNum() * 24 + orderDto.getProbationPauseTotalLength()) * 60 * 60 * 1000)),
+//										awardRelu.getAwardInfoTwo(),
+//										orderDto.getProbationOpenid(),
+//										ResultInfo.TRY_ORDER_DETAIL+"?orderId="+orderDto.getProbationOrderid());
+//								//修改日志
+//								probationShopOrderService.updatePauseLogsDate(newLogs);
+//								//发送短信给收货人
+//								if(StringUtils.isNotEmpty(orderDto.getProbationReceiveTel())){
+//									codeService.sendTextToUser(orderDto.getProbationReceiveTel(), awardRelu.getAwardNum().intValue());
+//								}
+//							}
+//						}
+//					}
+//				}
+//			}
+//		}
+//	}
 
 	/**
 	 * 保持百胜系统cookie的活性(每分钟执行一次)
@@ -514,7 +514,7 @@ public class MQTask implements InitializingBean {
 //	@Scheduled(cron = "0 0/2 * * * ?")	//每三分钟执行一次
 	@Scheduled(cron = "0 0 9 * * ?")	//每天9点触发
 	public void birthday() {
-		logger.info("生日福利定时任务");
+		logger.info("=======生日福利定时任务==========");
 		IntegralConfig integralConfig = useIntegralService.getIntegralConfigById(16);
 		Integer integral = integralConfig.getIntegralConfigNumber();
 		Integer configId = integralConfig.getIntegralConfigId();
@@ -530,14 +530,20 @@ public class MQTask implements InitializingBean {
 			ui.setIntegralCreateTime(new Date());
 			List<UseIntegral>  useIntegralList = useIntegralService.getUseIntegralList(ui);
 			if(useIntegralList == null || useIntegralList.size() < 1){
+				boolean flag = true;
 				try{
 					memberService.updaterIntegral(m.getUserId(),1,configId,integral,"生日福利赠送积分");
 				}catch (Exception e){
-					logger.info("生日赠送积分失败,用户id:"+m.getUserId());
+					logger.info("===========生日赠送积分失败,用户id:"+m.getUserId());
+					e.printStackTrace();
+					flag = false;
 				}
 
+				String couponName = "";
+				Date couponDate = new Date();
 				try{
 					CouponType couponType = couponTypeService.getCouponTypeById(20002);
+					couponName = couponType.getCouponName();
 					CouponItem ci = new CouponItem();
 					ci.setCouponId(couponType.getCouponId());
 					Calendar calendar = Calendar.getInstance();
@@ -546,6 +552,7 @@ public class MQTask implements InitializingBean {
 					calendar.set(Calendar.HOUR_OF_DAY, 23);//时
 					calendar.set(Calendar.MINUTE, 59);//分
 					calendar.set(Calendar.SECOND, 59);
+					couponDate = calendar.getTime();
 					ci.setCouponUseEndDate(calendar.getTime());
 					ci.setCouponReceiveDate(new Date());
 					ci.setCouponItemUseropenid(m.getUserOpenid());
@@ -556,7 +563,28 @@ public class MQTask implements InitializingBean {
 						couponTypeService.updateCouponTypeForItem(20002);
 					}
 				}catch (Exception e){
-					logger.info("生日赠送抵扣券失败,用户id:"+m.getUserId());
+					logger.info("===========生日赠送抵扣券失败,用户id:"+m.getUserId());
+					e.printStackTrace();
+					flag = false;
+				}
+
+				try{
+					if(flag){
+						SimpleDateFormat formatter = new SimpleDateFormat("yyyy年MM月dd日");
+						sendMessageUtil.birthdayGift(
+								"积分变更通知",
+								"上朵微商城",
+								couponName,
+								formatter.format(new Date())+"-"+formatter.format(couponDate),
+								formatter.format(new Date()),
+								"生日赠送60积分,可在积分列表查看;另外赠送50元Pro系列优惠券,点击查看优惠券。",
+								m.getUserOpenid(),
+								ResultInfo.INDEX_COUPON
+						);
+					}
+				}catch (Exception e){
+					logger.info("===========发送消息模板失败,用户id:"+m.getUserId());
+					e.printStackTrace();
 				}
 			}
 		}

+ 11 - 11
tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/pay/RequestWechatPayHandler.java

@@ -239,17 +239,17 @@ public class RequestWechatPayHandler {
                 if(StringUtils.isNotEmpty(agentMachineId)){
                     try {
                         if (StringUtils.isNotEmpty(payCode.getCodeReferrerOpenid())) {
-                            sendMessageUtil.prizeReceivePush(
-                                    "您好,您成功推荐一位代理商,详情为:", 
-                                    URLDecoder.decode(member.getUserNickname(), "UTF-8"),
-                                    "Watero水时代", 
-                                    "***", 
-                                    DateTimeUtil.format(new Date()), 
-                                    "美国watero净饮水一体机一台",
-                                    "请点击完善收货地址并领取奖励。",
-                                    payCode.getCodeReferrerOpenid(), 
-                                    ResultInfo.AGENT_REFERRER_MACHINE_PAGE+"?agentMachineId=" + agentMachineId
-                                    );
+//                            sendMessageUtil.prizeReceivePush(
+//                                    "您好,您成功推荐一位代理商,详情为:",
+//                                    URLDecoder.decode(member.getUserNickname(), "UTF-8"),
+//                                    "Watero水时代",
+//                                    "***",
+//                                    DateTimeUtil.format(new Date()),
+//                                    "美国watero净饮水一体机一台",
+//                                    "请点击完善收货地址并领取奖励。",
+//                                    payCode.getCodeReferrerOpenid(),
+//                                    ResultInfo.AGENT_REFERRER_MACHINE_PAGE+"?agentMachineId=" + agentMachineId
+//                                    );
                         }
                     } catch (Exception e) {
                         logger.info(this, member.getUserOpenid() + "给推荐人" + payCode.getCodeReferrerOpenid() + "推送消息失败!");

+ 11 - 11
tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/pay/ResponseWechatPayHandler.java

@@ -882,17 +882,17 @@ public class ResponseWechatPayHandler {
 							ShopSystemRule shopSystemRule1 =  systemService.selectOneShopRuleById(224);
 							int money = shopSystemRule1.getRuleNum().intValue();
 							if (agentInfo !=null && StringUtils.isNotEmpty(agentInfo.getAgentReferrerOpenid())) {
-								sendMessageUtil.prizeReceivePush(
-										"您好,您成功推荐一位代理商,详情为:", 
-										URLDecoder.decode(member.getUserNickname(), "UTF-8"),
-										"Watero水时代", 
-										(money / 100) + "元", 
-										DateTimeUtil.format(new Date()), 
-										"美国watero净饮水一体机一台",
-										"请点击完善收货地址并领取奖励。",
-										agentInfo.getAgentReferrerOpenid(), 
-										ResultInfo.AGENT_REFERRER_MACHINE_PAGE+"?agentMachineId=" + agentId2
-										);
+//								sendMessageUtil.prizeReceivePush(
+//										"您好,您成功推荐一位代理商,详情为:",
+//										URLDecoder.decode(member.getUserNickname(), "UTF-8"),
+//										"Watero水时代",
+//										(money / 100) + "元",
+//										DateTimeUtil.format(new Date()),
+//										"美国watero净饮水一体机一台",
+//										"请点击完善收货地址并领取奖励。",
+//										agentInfo.getAgentReferrerOpenid(),
+//										ResultInfo.AGENT_REFERRER_MACHINE_PAGE+"?agentMachineId=" + agentId2
+//										);
 							}
 						} catch (Exception e) {
 						    inLongLogger.info(this, "给推荐人推送消息失败!");

+ 9 - 10
tooth-wechat-web/src/main/resources/ResultInfo.properties

@@ -59,16 +59,16 @@ AGENT_REFERRER_MACHINE_PAGE = http://test.iamberry.com/tooth/view/gift_card_get_
 
 ACTIVITY_URL = https://s.iamberry.com/soodo/wechat/index-2018-618-list.html
 ########################--\u6C34\u65F6\u4EE3	xiaoxi moban	--################
-Income_template_id=vpBRhKfrBUEf5HuXxwGRn61mNpk6A3gRXoVAQPqrxMU
-rewards_template_id=x881e_4cmm6PHBZJC26S8p3UCCS-rvDVOzm9xy4qAKg
-Shipment_template_id=thCvUKTb0JsXKBAeuT2rovvlI8KCPPy8rK_dQVF9zlY
+#Income_template_id=vpBRhKfrBUEf5HuXxwGRn61mNpk6A3gRXoVAQPqrxMU
+#rewards_template_id=x881e_4cmm6PHBZJC26S8p3UCCS-rvDVOzm9xy4qAKg
+#Shipment_template_id=thCvUKTb0JsXKBAeuT2rovvlI8KCPPy8rK_dQVF9zlY
 Order_template_id=DRF1EaiEARYLkZb46MNFVAVhIVP05daH_E-syzkVbBk
-trial_progress_remind=TSkw89NIcRZ8nhYv1Wc2WDR9q5cFTwKhnEu7AYpqvGc
-probation_apply_notice=EHFKJYxp74KhUhhtL0nV8bkWHF5J4hteDEx5UHLlx6Y
-probation_apply_success=izMBTEvvMbzWY6YWyxG5RVP4j2-g5BJUe2MIXLH6mz8
+#trial_progress_remind=TSkw89NIcRZ8nhYv1Wc2WDR9q5cFTwKhnEu7AYpqvGc
+#probation_apply_notice=EHFKJYxp74KhUhhtL0nV8bkWHF5J4hteDEx5UHLlx6Y
+#probation_apply_success=izMBTEvvMbzWY6YWyxG5RVP4j2-g5BJUe2MIXLH6mz8
 probation_pay_success=SrPdazrlMtsScC5w06C0ktqY-VnpLRCIqTeVtvtwxks
 probation_shut_down=QzfF4V8M9xXHR24kLsDABKNWGBGRVDVT0CSLQ_X3mpg
-prize_receive_push=7d_r3XJsY5MAISYCDxrjdnPXgNm3IU8XLRYWXbCJjbs
+#prize_receive_push=7d_r3XJsY5MAISYCDxrjdnPXgNm3IU8XLRYWXbCJjbs
 update_tooth_hint=Ca7Yj8rbRPF6cnL5ZU3-gN9Bu2v98Jj_g2R0yw8NuAs
 order_apply_barter=i4WvtaMw3zJHP4PLmqkvM8l3EXHIFmGL9vysfjn1NKA
 order_apply_return=rypqDnrOLbEjTsFJFBa35jOSsFG_-A1i9hB6OjI8zQY
@@ -77,12 +77,11 @@ order_send_success=eMk2Cu5IUPTIUVlNK5MdHNo6-QFiax3p85VBJXJfbTM
 refund_to_dismiss=uevo2BouTPCuBWDSPQMHuhBUbrz-NjlqzfIeyIqZhJ8
 refund_application_notice=d_dWYOK2p16B0Qow_D8cbJW0PFtqMB6Jng9-7Vsk0ro
 failed_purchase=gnk9JaOkAaumN1qNUjxH5IHTjundAj_-O9_G531FpH4
-
 registered_template=JunNceH3S4siog445TlsVVin1D2yYqopj6U_xatNWCI
 birthday_template=xx
-
 participate_in_success=lSO6fFO3zaJxNFINTrgn5hz04ieeSGBb4SU9o5WwR8I
-helping_success=vQJrb-IFzwWj18UcmiLeD55_7v7jNgxFj6WuVnr8UTM
+point_change=Ee7a2nkf2ylIc13k-IhaywThXTZZCIweZnNJAKqhq1w
+birthday_gift=fHLQl-FfH_PmeVmITXSF1hQJwy3hmgYzwqRxr5-O7Ug
 
 #RST
 #GET_MACHINE_INFO=http://my.com:9797/mcahine/getMachineInfo?barCode=

+ 1 - 1
tooth-wechat-web/src/main/resources/iamberry-wechat-web-ioc.xml

@@ -51,7 +51,7 @@
 	<bean id="loadResultInfo" class="com.iamberry.wechat.tools.loadResultUtil" lazy-init="false"></bean>
 	
 	<!-- 开启注解启动定时器  -->
-    <task:annotation-driven/>
+    <!--<task:annotation-driven/>-->
     
     <!-- 将30天后奖励积分的定时任务的xml引入-->
 	<!--<import resource="classpath:iamberry-wechat-service-orderTesk.xml"></import>-->

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

@@ -169,22 +169,22 @@ signatureSimple=userAgent=%s&userIp=%s&token=%s&timestamp=%s&sessionId=%s
 
 
 # pubNo -- soodo
-#pubNo=gh_cdd0a86d3b19
+pubNo=gh_cdd0a86d3b19
 # pubNo -- soodo-test
-pubNo=gh_d6b974cc3491
+#pubNo=gh_8ddb1d63343c
 
 # appId-soodo
-#appId=wxdb090f0af89e0be3
+appId=wxdb090f0af89e0be3
 # appId-soodo-test
-appId=wx921a7cdaa9fb2461
+#appId=wx9e7da27455d4f974
 
 # token
 token=weixin
 
 # appSecret-soodo
-#appSecret=518114a120274f625530750c1803921b
+appSecret=518114a120274f625530750c1803921b
 # appSecret-soodo-test
-appSecret=9d54dbc626c64939bd3682ef05a5a4a5
+#appSecret=39c8f8742c3f084e1da5b75520436a70
 
 # partnerkey
 partnerkey=8a90e3ab0e2db7772f5f64e7ed2f4b98