Browse Source

积分商城

wangxiaoming 7 years ago
parent
commit
afe90bfdb0
30 changed files with 557 additions and 104 deletions
  1. 1 1
      tooth-common-core/src/main/java/com/iamberry/wechat/core/entity/apparatus/Apparatus.java
  2. 24 0
      tooth-common-core/src/main/java/com/iamberry/wechat/core/entity/integral/IntegralItem.java
  3. 81 0
      tooth-common-core/src/main/java/com/iamberry/wechat/core/entity/integral/IntegralProduct.java
  4. 4 2
      tooth-common-core/src/main/java/com/iamberry/wechat/core/entity/integral/UseIntegral.java
  5. 2 2
      tooth-common-core/src/main/java/com/iamberry/wechat/core/entity/member/Member.java
  6. 40 0
      tooth-common-core/src/main/java/com/iamberry/wechat/tools/SendMessageUtil.java
  7. 18 6
      tooth-common-tool/src/main/java/com/iamberry/wechat/tools/ResultInfo.java
  8. 3 0
      tooth-common-tool/src/main/java/com/iamberry/wechat/tools/loadResultUtil.java
  9. 14 0
      tooth-wechat-interface/src/main/java/com/iamberry/wechat/face/integral/UseIntegralService.java
  10. 1 1
      tooth-wechat-interface/src/main/java/com/iamberry/wechat/face/member/MemberService.java
  11. 5 1
      tooth-wechat-service/src/main/java/com/iamberry/wechat/service/apparatus/ApparatusServiceImpl.java
  12. 1 1
      tooth-wechat-service/src/main/java/com/iamberry/wechat/service/integral/IntegralOrderServiceImpl.java
  13. 21 0
      tooth-wechat-service/src/main/java/com/iamberry/wechat/service/integral/UseIntegralServiceImpl.java
  14. 19 2
      tooth-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/IntegralItemMapper.xml
  15. 7 1
      tooth-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/MemberMapper.java
  16. 14 0
      tooth-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/UseIntegralMapper.java
  17. 40 3
      tooth-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/integralProductMapper.xml
  18. 91 1
      tooth-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/memberMapper.xml
  19. 52 0
      tooth-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/useIntegralMapper.xml
  20. 25 16
      tooth-wechat-service/src/main/java/com/iamberry/wechat/service/member/MemberServiceImpl.java
  21. 7 0
      tooth-wechat-service/src/main/java/com/iamberry/wechat/service/member/dao/MemberDao.java
  22. 10 0
      tooth-wechat-service/src/main/java/com/iamberry/wechat/service/member/dao/imp/MemberDaoImpl.java
  23. 35 42
      tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/apparatus/ApparatusHandler.java
  24. 0 3
      tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/integral/IntegralOrderHandler.java
  25. 6 0
      tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/integral/IntegralProductHandler.java
  26. 6 10
      tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/integral/UseIntegralHandler.java
  27. 22 8
      tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/mq/MQTask.java
  28. 5 3
      tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/order/OrderHandler.java
  29. 2 0
      tooth-wechat-web/src/main/resources/ResultInfo.properties
  30. 1 1
      tooth-wechat-web/src/main/resources/iamberry-wechat-web-ioc.xml

+ 1 - 1
tooth-common-core/src/main/java/com/iamberry/wechat/core/entity/apparatus/Apparatus.java

@@ -15,7 +15,7 @@ public class Apparatus implements java.io.Serializable{
     private Integer apparatusId;        //id
     private String apparatusBarcode;    //机器条码
     private String userOpenid;          //用户openid
-    private Integer apparatusStore;     //渠道id
+    private Integer apparatusStore;     //渠道参数    1:天猫 2:淘宝 3:京东 4:微信5:其他 6: 一条 7:小红书
     private Integer apparatusStatus;    //状态
     private Date apparatusBuyDate;      //购买时间
     private Date apparatusWarrantyDate; //保修截止日期

+ 24 - 0
tooth-common-core/src/main/java/com/iamberry/wechat/core/entity/integral/IntegralItem.java

@@ -1,6 +1,8 @@
 package com.iamberry.wechat.core.entity.integral;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.iamberry.wechat.core.entity.coupon.CouponItem;
+import org.springframework.format.annotation.DateTimeFormat;
 
 import  java.util.Date;
 import  java.io.Serializable;
@@ -40,6 +42,12 @@ public class IntegralItem  implements  Serializable{
     //创建时间'
     private Date integralItemCreateDate;
 
+    @DateTimeFormat(pattern="yyyy-MM-dd")
+    @JsonFormat(pattern="yyyy-MM-dd",timezone = "GMT+8")
+    private Date couponUseEndDate;				//券截止使用时间
+
+    private Integer couponType;					//优惠券折扣类型
+
     /*在生成优惠券的时候有优惠券对象*/
     private CouponItem couponItem = new CouponItem();
 
@@ -162,4 +170,20 @@ public class IntegralItem  implements  Serializable{
     public void setCouponItem(CouponItem couponItem) {
         this.couponItem = couponItem;
     }
+
+    public Date getCouponUseEndDate() {
+        return couponUseEndDate;
+    }
+
+    public void setCouponUseEndDate(Date couponUseEndDate) {
+        this.couponUseEndDate = couponUseEndDate;
+    }
+
+    public Integer getCouponType() {
+        return couponType;
+    }
+
+    public void setCouponType(Integer couponType) {
+        this.couponType = couponType;
+    }
 }

+ 81 - 0
tooth-common-core/src/main/java/com/iamberry/wechat/core/entity/integral/IntegralProduct.java

@@ -32,6 +32,23 @@ public class IntegralProduct  implements  Serializable{
     //修改时间'
     private Date integralProductUpdateTime;
 
+    private Integer convertId;
+    //所需朵粉币数量
+    private Integer convertDfbi;
+    //是否邮寄 1:需要邮寄 2:不需要邮寄 def:2
+    private Integer convertIsMailing;
+    //是否需要支付 1:需要支付 2:不需要支付 def:2
+    private Integer convertIsPay;
+    //需要支付的金额
+    private Integer convertPrice;
+    //优惠券类型id 当类型为优惠券时,需要关联某个优惠券类型
+    private Integer couponId;
+
+    //1:直接减免金额   2:按百分比折扣
+    private Integer couponType;
+    //减免率或者减免额
+    private Integer couponReduce;
+
     public Integer getIntegralProductId(){
         return integralProductId;
     }
@@ -119,4 +136,68 @@ public class IntegralProduct  implements  Serializable{
     public void setIntegralProductUpdateTime(Date  integralProductUpdateTime){
         this.integralProductUpdateTime=integralProductUpdateTime;
     }
+
+    public Integer getCouponType() {
+        return couponType;
+    }
+
+    public void setCouponType(Integer couponType) {
+        this.couponType = couponType;
+    }
+
+    public Integer getCouponReduce() {
+        return couponReduce;
+    }
+
+    public void setCouponReduce(Integer couponReduce) {
+        this.couponReduce = couponReduce;
+    }
+
+    public Integer getConvertId() {
+        return convertId;
+    }
+
+    public void setConvertId(Integer convertId) {
+        this.convertId = convertId;
+    }
+
+    public Integer getConvertDfbi() {
+        return convertDfbi;
+    }
+
+    public void setConvertDfbi(Integer convertDfbi) {
+        this.convertDfbi = convertDfbi;
+    }
+
+    public Integer getConvertIsMailing() {
+        return convertIsMailing;
+    }
+
+    public void setConvertIsMailing(Integer convertIsMailing) {
+        this.convertIsMailing = convertIsMailing;
+    }
+
+    public Integer getConvertIsPay() {
+        return convertIsPay;
+    }
+
+    public void setConvertIsPay(Integer convertIsPay) {
+        this.convertIsPay = convertIsPay;
+    }
+
+    public Integer getConvertPrice() {
+        return convertPrice;
+    }
+
+    public void setConvertPrice(Integer convertPrice) {
+        this.convertPrice = convertPrice;
+    }
+
+    public Integer getCouponId() {
+        return couponId;
+    }
+
+    public void setCouponId(Integer couponId) {
+        this.couponId = couponId;
+    }
 }

+ 4 - 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")
@@ -171,4 +171,6 @@ public class UseIntegral implements Serializable {
     public void setIntegralNumberMax(String integralNumberMax) {
         this.integralNumberMax = integralNumberMax;
     }
+
+
 }

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

@@ -52,7 +52,7 @@ public class Member implements Serializable{
 	private Integer userSurplusIntegral;	//剩余积分		朵粉币
 	private Integer userIntegral;			//总积分 成长值
 	private Integer userUseIntegral;		//已用积分
-
+	private Integer userStayIntegral;		//待入账积分
 
 	private Integer userIncome;				//收入金额,单位为分
 	private Integer templateId;				//返利模板id
@@ -67,7 +67,7 @@ public class Member implements Serializable{
 	private  Integer quantityPurchased;		//购买数量
 	private  Integer totalConsume; 			//消费金额
 	private  Integer userAgeStage; 			//年龄阶段 1:80后 2:85后 3:90后 4:95后 5:00后 6:其他
-	private Integer userStayIntegral;		//待入账积分
+
 
 
 	private  String[] ids;						//

+ 40 - 0
tooth-common-core/src/main/java/com/iamberry/wechat/tools/SendMessageUtil.java

@@ -98,6 +98,12 @@ public class SendMessageUtil {
 			case 18:  //18、购买失败
 				WeixinUtil.sendTemplateMessage(NameUtils.getConfig("appId"), NameUtils.getConfig("appSecret"), openId, ResultInfo.refund_application_notice, date, url);
 				break;
+			case 19:  //19、首次注册推送信息
+				WeixinUtil.sendTemplateMessage(NameUtils.getConfig("appId"), NameUtils.getConfig("appSecret"), openId, ResultInfo.registered_template, date, url);
+				break;
+			case 20:  //20、生日赠送积分推送
+				WeixinUtil.sendTemplateMessage(NameUtils.getConfig("appId"), NameUtils.getConfig("appSecret"), openId, ResultInfo.birthday_template, date, url);
+				break;
 			default: 
 				break;
 			}
@@ -399,4 +405,38 @@ public class SendMessageUtil {
 				.replaceFirst("remarkValue",remark);
 		sendTemplateMessageToOpenid(temp, openId, url,18);
 	}
+
+	/**
+	 * 首次注册推送信息
+	 * @param first
+	 * @param remark
+	 * @param openId
+	 * @param url
+	 */
+	public void registeredTemplate(String first,String keyword1,String keyword2,String keyword3,String remark,String openId,String url){
+		String temp = ResultInfo.REGISTEREDTEMPLATE;
+		temp = temp.replaceFirst("firstValueIamberry", first)
+				.replaceFirst("keyword1Value",keyword1)
+				.replaceFirst("keyword2Value",keyword2)
+				.replaceFirst("keyword3Value",keyword3)
+				.replaceFirst("colorValue","#1C86EE")
+				.replaceFirst("remarkValue",remark);
+		sendTemplateMessageToOpenid(temp, openId, url,19);
+	}
+
+	/**
+	 * 生日赠送积分推送
+	 * @param first
+	 * @param remark
+	 * @param openId
+	 * @param url
+	 */
+	public void birthdayTemplate(String first,String keyword1,String keyword2,String keyword3,String remark,String openId,String url){
+		String temp = ResultInfo.BIRTHDAYTEMPLATE;
+		temp = temp.replaceFirst("nameValueIamberry", first)
+				.replaceFirst("colorValue","#1C86EE")
+				.replaceFirst("remarkValue",remark);
+		sendTemplateMessageToOpenid(temp, openId, url,20);
+	}
+
 }

+ 18 - 6
tooth-common-tool/src/main/java/com/iamberry/wechat/tools/ResultInfo.java

@@ -144,6 +144,16 @@ public class ResultInfo {
 	public static String probation_pay_success="";	//订单支付成功	 	模版id	TM00184
 
 	/**
+	 * 首次注册推送信息
+	 */
+	public static String registered_template="";	//购买失败	 	模版id
+
+	/**
+	 * 生日赠送积分推送
+	 */
+	public static String birthday_template="";	//购买失败	 	模版id
+
+	/**
 	 * 购买失败
 	 */
 	public static String failed_purchase="";	//购买失败	 	模版id
@@ -245,9 +255,11 @@ public class ResultInfo {
 	/** 退款申请通知 **/
 	public static String REFUNDAPPLICATIONNOTICE= "{'first':{'color':'#173177','value':'firstValueIamberry'}, 'orderProductPrice':{'color':'#173177','value':'keyword1Value'}, 'orderProductName':{'color':'#173177', 'value':'keyword2Value'}, 'orderName':{'color':'#173177', 'value':'keyword3Value'},'remark':{'color':'colorValue','value':'remarkValue'}}";
 
-	/** 退款申请通知 **/
-	public static String FAILEDPURCHASE= "{'name':{'color':'#173177','value':'nameValueIamberry'}, 'remark':{'color':'#173177','value':'remarkValue'}}";
+	/** 首次注册推送信息 **/
+	public static String REGISTEREDTEMPLATE = "{'first':{'color':'#173177','value':'firstValueIamberry'}, 'keyword1':{'color':'#173177','value':'keyword1Value'}, 'keyword2':{'color':'#173177', 'value':'keyword2Value'}, 'keyword3':{'color':'#173177', 'value':'keyword3Value'},remark':{'color':'colorValue','value':'remarkValue'}}";
 
+	/** 生日赠送积分推送 **/
+	public static String BIRTHDAYTEMPLATE = "{'first':{'color':'#173177','value':'firstValueIamberry'}, 'remark':{'color':'#173177','value':'remarkValue'}}";
 
 	/**
 	 * 微信模板消息提示语
@@ -301,9 +313,9 @@ public class ResultInfo {
 	/**
 	 * 获取RST系统产品信息接口地址
 	 */
-	/*public static String GET_MACHINE_INFO = "https://rst.iamberry.com/mcahine/getMachineInfo?barCode=";*/
-	public static String GET_MACHINE_INFO = "http://my.com:9797/mcahine/getMachineInfo?barCode=";
-	/*public static String GET_TOOTH_INFO = "https://rst.iamberry.com/mcahine/listToothInfo";*/
-	public static String GET_TOOTH_INFO = "http://my.com:9797/mcahine/listToothInfo";
+	public static String GET_MACHINE_INFO = "https://rst.iamberry.com/mcahine/getMachineInfo?barCode=";
+//	public static String GET_MACHINE_INFO = "http://my.com:9797/mcahine/getMachineInfo?barCode=";
+	public static String GET_TOOTH_INFO = "https://rst.iamberry.com/mcahine/listToothInfo";
+//	public static String GET_TOOTH_INFO = "http://my.com:9797/mcahine/listToothInfo";
 
 }

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

@@ -79,6 +79,9 @@ public class loadResultUtil {
 			ResultInfo.order_send_success = prop.getProperty("order_send_success");			//发货后 提醒
 			ResultInfo.refund_to_dismiss = prop.getProperty("refund_to_dismiss");			//退款申请驳回
 			ResultInfo.refund_application_notice = prop.getProperty("refund_application_notice");			//退款申请通知
+
+			ResultInfo.registered_template = prop.getProperty("registered_template");	//首次注册推送信息
+			ResultInfo.birthday_template = prop.getProperty("birthday_template");			//生日赠送积分推送
 		} catch (IOException e) {
 			new RuntimeException(e.getMessage());
 		}

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

@@ -99,4 +99,18 @@ public interface UseIntegralService {
      * @return
      */
     Integer updatestayIntegralStatus(StayIntegral stayIntegral);
+
+    /**
+     * 查询单条数据
+     * @param  id
+     * @return  integralConfig
+     */
+    IntegralConfig  getIntegralConfigById(Integer  id);
+
+    /**
+     * 获取集合
+     * @param  useIntegral
+     * @return List
+     */
+    List<UseIntegral>  getUseIntegralList(UseIntegral  useIntegral);
 }

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

@@ -184,5 +184,5 @@ public interface MemberService{
 	 * @param integral
 	 * @return
 	 */
-	Integer updaterIntegral(Integer userId,Integer type,Integer integral);
+	Integer updaterIntegral(Integer userId,Integer type,Integer configId, Integer integral,String remake);
 }

+ 5 - 1
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/apparatus/ApparatusServiceImpl.java

@@ -56,6 +56,11 @@ public class ApparatusServiceImpl implements ApparatusService {
         if(memberInfo == null){
             return false;
         }
+
+        if(memberInfo.getUserBirthDate() != null){
+            member.setUserBirthDate(null);
+        }
+
         //添加机器信息
         int num = apparatusMapper.addApparatus(apparatus);
         if(num > 0){
@@ -63,7 +68,6 @@ public class ApparatusServiceImpl implements ApparatusService {
             if(memberInfo.getUserIdentity() == 2){
                 //赠送新注册积分
                 addStayIntegral(member.getUserOpenid(),1,0,"",apparatus.getColorId());
-
             }
             //赠送400新增牙刷积分
             addStayIntegral(member.getUserOpenid(),2,0,"",apparatus.getColorId());

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

@@ -304,7 +304,7 @@ public class IntegralOrderServiceImpl  implements IntegralOrderService {
     @Override
     public PagedResult<IntegralOrder> listIntegralProductPage(PageRequest<IntegralOrder> pageRequest) {
         PageHelper.startPage(pageRequest.getPageNO(), pageRequest.getPageSize(), pageRequest.isPageTotal());
-        List<IntegralOrder> detedctList = integralOrderService.getIntegralOrderList(pageRequest.getData());
+        List<IntegralOrder> detedctList = integralOrderService.getIntegralOrderListAndItem(pageRequest.getData());
         return PageUtil.getPage(detedctList);
     }
 

+ 21 - 0
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/integral/UseIntegralServiceImpl.java

@@ -184,4 +184,25 @@ public class UseIntegralServiceImpl implements UseIntegralService {
 		/*增加入账记录*/
         return true;
     }
+
+    /**
+     * 查询单条数据
+     * @param  id
+     * @return  integralConfig
+     */
+    @Override
+    public  IntegralConfig  getIntegralConfigById(Integer  id){
+        return  useIntegralMapper.getIntegralConfigById(id);
+    }
+
+    /**
+     * 获取集合
+     * @param  useIntegral
+     * @return List
+     */
+    @Override
+    public  List<UseIntegral>  getUseIntegralList(UseIntegral  useIntegral){
+        return  useIntegralMapper.getUseIntegralList(useIntegral);
+    }
+
 }

+ 19 - 2
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/IntegralItemMapper.xml

@@ -34,10 +34,27 @@
         t.integral_item_create_date
     </sql>
 
-    <select id="getIntegralItemList" resultMap="BaseResultMap" parameterType="IntegralItem" >
+    <select id="getIntegralItemList" resultType="IntegralItem" parameterType="IntegralItem" >
         select
-        <include refid="Base_List" />
+            t.integral_item_id,
+            t.integral_item_order_id,
+            t.integral_product_id,
+            t.integral_item_num,
+            t.integral_item_total,
+            t.integral_item_dfbi,
+            t.integral_item_product_type,
+            t.integral_item_coupon_id,
+            t.integral_item_coupon_item_id,
+            t.integral_item_product_name,
+            t.integral_item_product_price,
+            t.integral_item_product_dfbi,
+            t.integral_item_product_pic,
+            t.integral_item_create_date,
+            ci.coupon_use_end_date AS  couponUseEndDate,
+            ct.coupon_type AS  couponType
         from tb_iamberry_integral_item t
+        LEFT JOIN tb_iamberry_coupon_item ci ON t. integral_item_coupon_item_id = ci.coupon_item_id
+        LEFT JOIN tb_iamberry_coupon_type ct ON t.integral_item_coupon_id = ct.coupon_id
         <where>
             <if test="integralItemId != null ">
                 AND t.integral_item_id = #{integralItemId}

+ 7 - 1
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/MemberMapper.java

@@ -158,7 +158,6 @@ public interface MemberMapper {
 	 */
 	Integer getRegisteredNumber();
 
-
 	/**
 	 * 获取当天生日的人。送生日福利
 	 * @param member
@@ -166,4 +165,11 @@ public interface MemberMapper {
 	 */
 	List<Member> getBirthday(Member member);
 
+	/**
+	 * 修改数据
+	 * @param  member
+	 * @return Integer
+	 */
+	Integer  update(Member  member);
+
 }

+ 14 - 0
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/UseIntegralMapper.java

@@ -124,4 +124,18 @@ public interface UseIntegralMapper {
      * @return
      */
     Integer updatestayIntegralStatus(StayIntegral stayIntegral);
+
+    /**
+     * 查询单条数据
+     * @param  id
+     * @return  integralConfig
+     */
+    IntegralConfig  getIntegralConfigById(Integer  id);
+
+    /**
+     * 获取集合
+     * @param  useIntegral
+     * @return List
+     */
+    List<UseIntegral>  getUseIntegralList(UseIntegral  useIntegral);
 }

+ 40 - 3
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/integralProductMapper.xml

@@ -27,10 +27,33 @@
         t.integral_product_create_time,
         t.integral_product_update_time
     </sql>
-    <select id="getIntegralProductList" resultMap="BaseResultMap" parameterType="IntegralProduct" >
+    <select id="getIntegralProductList" resultType="IntegralProduct" parameterType="IntegralProduct" >
         select
-        <include refid="Base_List" />
+            t.integral_product_id,
+            t.integral_product_name,
+            t.integral_product_img,
+            t.integral_product_desc,
+            t.integral_product_type,
+            t.integral_product_num,
+            t.integral_product_remaining_num,
+            t.integral_product_status,
+            t.integral_product_create_time,
+            t.integral_product_update_time,
+            pc.convert_id,
+            pc.integral_product_id,
+            pc.convert_dfbi,
+            pc.convert_is_mailing,
+            pc.convert_is_mailing,
+            pc.convert_dfbi,
+            pc.convert_dfbi,
+            pc.convert_is_pay,
+            pc.convert_price,
+            pc.coupon_id,
+            ct.coupon_type AS  couponType,
+            ct.coupon_reduce AS  couponReduce
         from tb_iamberry_integral_product t
+        LEFT JOIN tb_iamberry_integral_product_convert pc ON t.integral_product_id = pc.integral_product_id
+        LEFT JOIN tb_iamberry_coupon_type ct ON pc.coupon_id = ct.coupon_id
         <where>
             <if test="integralProductId != null ">
                 AND t.integral_product_id = #{integralProductId}
@@ -63,8 +86,22 @@
     </select>
     <select id="getIntegralProductById" resultMap="BaseResultMap" parameterType="Integer" >
         select
-        <include refid="Base_List" />
+            <include refid="Base_List" />,
+            pc.convert_id,
+            pc.integral_product_id,
+            pc.convert_dfbi,
+            pc.convert_is_mailing,
+            pc.convert_is_mailing,
+            pc.convert_dfbi,
+            pc.convert_dfbi,
+            pc.convert_is_pay,
+            pc.convert_price,
+            pc.coupon_id,
+            ct.coupon_type AS  couponType,
+            ct.coupon_reduce AS  couponReduce
         from tb_iamberry_integral_product t
+        LEFT JOIN tb_iamberry_integral_product_convert pc ON t.integral_product_id = pc.integral_product_id
+        LEFT JOIN tb_iamberry_coupon_type ct ON pc.coupon_id = ct.coupon_id
         where t.integral_product_id= #{integralProductId}
     </select>
     <insert id="save" parameterType="IntegralProduct" >

+ 91 - 1
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/memberMapper.xml

@@ -389,9 +389,99 @@
 		<include refid="allField"/>
 		from TB_IAMBERRY_USER_USERINFO
 		where
-			date_format(user_create_date,'%Y-%m-%d') = date_format(#{userCreateDate},'%Y-%m-%d')
+			date_format(user_birth_date,'%Y-%m-%d') = date_format(#{userBirthDate},'%Y-%m-%d')
 		AND
 			user_identity = 1
 	</select>
 
+	<update id="update" parameterType="Member" >
+		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 >
+			<if test="userNickname != null and userNickname != ''">
+				user_nickname = #{userNickname},
+			</if >
+			<if test="userAddr != null and userAddr != ''">
+				user_addr = #{userAddr},
+			</if >
+			<if test="userSex != null ">
+				user_sex = #{userSex},
+			</if >
+			<if test="userIntegral != null ">
+				user_integral = #{userIntegral},
+			</if >
+			<if test="userAccountNum != null and userAccountNum != ''">
+				user_account_num = #{userAccountNum},
+			</if >
+			<if test="userPwd != null and userPwd != ''">
+				user_pwd = #{userPwd},
+			</if >
+			<if test="userTel != null and userTel != ''">
+				user_tel = #{userTel},
+			</if >
+			<if test="userName != null and userName != ''">
+				user_name = #{userName},
+			</if >
+			<if test="userBirthDate != null and userBirthDate != ''">
+				user_birth_date = #{userBirthDate},
+			</if >
+			<if test="userSurplusIntegral != null ">
+				user_surplus_integral = #{userSurplusIntegral},
+			</if >
+			<if test="userUseIntegral != null ">
+				user_use_integral = #{userUseIntegral},
+			</if >
+			<if test="userResType != null ">
+				user_res_type = #{userResType},
+			</if >
+			<if test="userStatus != null ">
+				user_status = #{userStatus},
+			</if >
+			<if test="userSubDate != null and userSubDate != ''">
+				user_sub_date = #{userSubDate},
+			</if >
+			<if test="userIdentity != null ">
+				user_identity = #{userIdentity},
+			</if >
+			<if test="userQrcode != null and userQrcode != ''">
+				user_qrcode = #{userQrcode},
+			</if >
+			<if test="userIsFlag != null ">
+				user_is_flag = #{userIsFlag},
+			</if >
+			<if test="userIncome != null ">
+				user_income = #{userIncome},
+			</if >
+			<if test="userDealers != null ">
+				user_dealers = #{userDealers},
+			</if >
+			<if test="userIsBought != null ">
+				user_is_bought = #{userIsBought},
+			</if >
+			<if test="userEmail != null and userEmail != ''">
+				user_email = #{userEmail},
+			</if >
+			<if test="userQrcodeType != null ">
+				user_qrcode_type = #{userQrcodeType},
+			</if >
+			<if test="userAgeStage != null ">
+				user_age_stage = #{userAgeStage},
+			</if >
+			<if test="userStayIntegral != null ">
+				user_stay_integral = #{userStayIntegral}
+			</if >
+		</set >
+		where user_id= #{userId}
+	</update>
+
+
 </mapper>

+ 52 - 0
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/mapper/useIntegralMapper.xml

@@ -275,4 +275,56 @@
     <update id="updatestayIntegralStatus" parameterType="StayIntegral" >
         UPDATE tb_iamberry_stay_integral SET stay_status = #{stayStatus} WHERE stay_id = #{stayId}
     </update>
+
+    <select id="getIntegralConfigById" resultType="IntegralConfig" parameterType="Integer" >
+        select
+            t.integral_config_id,
+            t.integral_config_name,
+            t.integral_config_number,
+            t.integral_config_status,
+            t.integral_config_create_time,
+            t.integral_config_color_id
+        from tb_iamberry_integral_config t
+        where t.integral_config_id= #{integralConfigId}
+    </select>
+
+    <select id="getUseIntegralList" resultType="UseIntegral" parameterType="UseIntegral" >
+        select
+            t.integral_id,
+            t.user_openid,
+            t.integral_type,
+            t.stay_id,
+            t.config_id,
+            t.integral_number,
+            t.integral_before_number,
+            t.integral_end_number,
+            t.integral_remarks,
+            t.integral_create_time,
+            t.integral_update_time
+        from tb_iamberry_use_integral t
+        <where>
+            <if test="integralId != null ">
+                AND t.integral_id = #{integralId}
+            </if >
+            <if test="userOpenId != null and userOpenId != ''">
+                AND t.user_openid  =  #{userOpenId}
+            </if >
+            <if test="integralType != null ">
+                AND t.integral_type = #{integralType}
+            </if >
+            <if test="stayId != null ">
+                AND t.stay_id = #{stayId}
+            </if >
+            <if test="configId != null ">
+                AND t.config_id = #{configId}
+            </if >
+            <if test="integralNumber != null ">
+                AND t.integral_number = #{integralNumber}
+            </if >
+            <if test="integralCreateTime != null ">
+                AND date_format(t.integral_create_time,'%Y') = date_format(#{integralCreateTime},'%Y')
+            </if >
+        </where>
+    </select>
+
 </mapper>

+ 25 - 16
tooth-wechat-service/src/main/java/com/iamberry/wechat/service/member/MemberServiceImpl.java

@@ -370,7 +370,6 @@ public class MemberServiceImpl implements MemberService {
 		}else{
 			return rr.getRankRuleId();
 		}
-
 	}
 
 	@Override
@@ -380,7 +379,7 @@ public class MemberServiceImpl implements MemberService {
 
 	@Override
 	@Transactional
-	public Integer updaterIntegral(Integer userId,Integer type, Integer integral,String remake) {
+	public Integer updaterIntegral(Integer userId,Integer type,Integer configId, Integer integral,String remake) {
 		//type  1:增加积分  2:减少积
 		Integer flag = 0;
 		Member member = this.getMemberByUserId(userId);
@@ -393,14 +392,14 @@ public class MemberServiceImpl implements MemberService {
 				m.setUserId(userId);
 				m.setUserSurplusIntegral(member.getUserSurplusIntegral() + integral);
 				m.setUserIntegral(member.getUserIntegral() + integral);
-				flag = memberService.updateMyMember(m);
+				flag = memberDao.update(m);
 				if(flag < 1){
 					throw new RuntimeException("增加积分失败");
 				}
-
 				UseIntegral useIntegral = new UseIntegral();
 				useIntegral.setUserOpenId(member.getUserOpenid());
 				useIntegral.setIntegralType(1);
+				useIntegral.setConfigId(configId);
 				useIntegral.setIntegralNumber(integral);
 				useIntegral.setIntegralBeforeNumber(member.getUserSurplusIntegral());
 				useIntegral.setIntegralEndNumber(member.getUserSurplusIntegral() + integral);
@@ -411,18 +410,28 @@ public class MemberServiceImpl implements MemberService {
 				}
 			}
 		}else if(type == 2){
-//			if(member.getUserSurplusIntegral() - integral > 0){
-//				Member m = new Member();
-//				m.setUserId(userId);
-//				m.setUserSurplusIntegral(member.getUserSurplusIntegral() - integral);
-//				m.set
-//			}
-//
-//
-//			private Integer userSurplusIntegral;	//剩余积分		朵粉币
-//			private Integer userIntegral;			//总积分 成长值
-//			private Integer userUseIntegral;		//已用积分
-
+			if(member.getUserSurplusIntegral() - integral > 0){
+				Member m = new Member();
+				m.setUserId(userId);
+				m.setUserSurplusIntegral(member.getUserSurplusIntegral() - integral);
+				m.setUserUseIntegral(member.getUserUseIntegral() + integral);
+				flag = memberDao.update(m);
+				if(flag < 1){
+					throw new RuntimeException("删除积分失败");
+				}
+				UseIntegral useIntegral = new UseIntegral();
+				useIntegral.setUserOpenId(member.getUserOpenid());
+				useIntegral.setIntegralType(2);
+				useIntegral.setConfigId(configId);
+				useIntegral.setIntegralNumber(integral);
+				useIntegral.setIntegralBeforeNumber(member.getUserSurplusIntegral());
+				useIntegral.setIntegralEndNumber(member.getUserSurplusIntegral() - integral);
+				useIntegral.setIntegralRemarks(remake);
+				flag = useIntegralMapper.addUseIntegral(useIntegral);
+				if(flag < 1){
+					throw new RuntimeException("添加积分使用记录失败");
+				}
+			}
 		}
 		return flag;
 	}

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

@@ -149,5 +149,12 @@ public interface MemberDao {
 	 */
 	List<Member> getBirthday(Member member);
 
+	/**
+	 * 修改数据
+	 * @param  member
+	 * @return Integer
+	 */
+	Integer  update(Member  member);
+
 
 }

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

@@ -161,4 +161,14 @@ public class MemberDaoImpl  implements MemberDao {
 	public List<Member> getBirthday(Member member) {
 		return memberMapper.getBirthday(member);
 	}
+
+	/**
+	 * 修改数据
+	 * @param  member
+	 * @return Integer
+	 */
+	@Override
+	public  Integer  update(Member  member){
+		return  memberMapper.update(member);
+	}
 }

+ 35 - 42
tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/apparatus/ApparatusHandler.java

@@ -108,14 +108,16 @@ public class ApparatusHandler {
 
         //使用request对象的getSession()获取session,如果session不存在则创建一个
         HttpSession session = request.getSession();
-        //将数据存储到session中
-        session.setAttribute("verification_code",num );
-        session.setAttribute("verification_date",new Date());
+
 
         String text = MessageFormat.format(ImberryConfig.SEND_VERIFICATION_PHONE, num);
         String result = codeService.informShipping(phone, text);
 
         if ("SUCCESS".equals(result)) {
+            //将数据存储到session中
+            session.setAttribute("verification_code",num );
+            session.setAttribute("verification_tel",phone );
+            session.setAttribute("verification_date",new Date());
             logger.info("短信发送成功,验证码为:" + num);
             msg.setResultCode(ResultInfo.SUCCESSCODE);
             msg.setStatus(true);
@@ -123,7 +125,7 @@ public class ApparatusHandler {
             logger.info("短信发送失败:" + result);
             msg.setResultCode(ResultInfo.ERRORCODE);
             msg.setStatus(false);
-            msg.setMessage("获取验证码失败");
+            msg.setMessage("短信发送失败");
             return msg;
         }
         return msg;
@@ -140,27 +142,33 @@ public class ApparatusHandler {
     @RequestMapping("/add_apparatus")
     public ResultMsg addApparatus(HttpServletRequest request,Member member,String code) throws Exception {
         ResultMsg msg = new ResultMsg();
-
-        //判断验证码
-        //使用request对象的getSession()获取session,如果session不存在则创建一个
-        HttpSession session = request.getSession();
-        String verificationCode = (String) session.getAttribute("verification_code");
-        code = code.trim();
-
-        Date verificationDate = (Date) session.getAttribute("verification_date");
-        Calendar nowTime = Calendar.getInstance();
-        nowTime.setTime(verificationDate);
-        nowTime.add(Calendar.MINUTE, 5);
-        Date verData = nowTime.getTime();
-        if(!verificationCode.equals(code) || (verData.getTime() < new Date().getTime())  ){
-            msg.setResultCode(ResultInfo.ERRORCODE);
-            msg.setStatus(false);
-            msg.setMessage("验证码不正确或已失效,请重新获取!");
-            return msg;
+        Member memberInfo = WechatUtils.getUserBySession(request);
+        memberInfo = memberService.getMemberByUserOpenId(memberInfo.getUserOpenid());
+        if(memberInfo.getUserTel() == null || !memberInfo.getUserTel().equals(member.getUserTel())){
+            //判断验证码
+            //使用request对象的getSession()获取session,如果session不存在则创建一个
+            HttpSession session = request.getSession();
+            String verificationTel = (String) session.getAttribute("verification_tel");
+            if(member.getUserTel() == null || !member.getUserTel().equals(verificationTel)){
+                return new ResultMsg(false, ResultInfo.ERRORCODE, "手机验证失败!",null);
+            }
+
+            String verificationCode = (String) session.getAttribute("verification_code");
+            if(code == null){
+                return new ResultMsg(false, ResultInfo.ERRORCODE, "未填写验证码!",null);
+            }
+            code = code.trim();
+            Date verificationDate = (Date) session.getAttribute("verification_date");
+            Calendar nowTime = Calendar.getInstance();
+            nowTime.setTime(verificationDate);
+            nowTime.add(Calendar.MINUTE, 5);
+            Date verData = nowTime.getTime();
+            if(!verificationCode.equals(code) || (verData.getTime() < new Date().getTime())  ){
+                //return new ResultMsg(false, ResultInfo.ERRORCODE, "验证码不正确或已失效,请重新获取!",null);
+            }
         }
 
         SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
-        Member memberInfo = WechatUtils.getUserBySession(request);
         //获取换新时间期限
         ShopSystemRule renewRule =  systemService.selectOneShopRuleById(246);
         member.setUserOpenid(memberInfo.getUserOpenid());
@@ -171,10 +179,7 @@ public class ApparatusHandler {
         if (!StringUtil.isNotEmpty(barCode)
                 ||!StringUtil.isNotEmpty(apparatusStore)
                 ||!StringUtil.isNotEmpty(buyDate)) {
-            msg.setResultCode(ResultInfo.ERRORCODE);
-            msg.setStatus(false);
-            msg.setMessage("注册数据为空,请重新提交!");
-            return msg;
+            return new ResultMsg(false, ResultInfo.ERRORCODE, "注册数据为空,请重新提交!",null);
         }
         //拼接日期信息
         buyDate = buyDate+" 00:00:00";
@@ -184,19 +189,13 @@ public class ApparatusHandler {
         //获取机器信息
         List<Apparatus> apparatusList = apparatusService.listApparatusPage(apparatus);
         if (apparatusList != null && apparatusList.size() > 0) {
-            msg.setResultCode(ResultInfo.ERRORCODE);
-            msg.setStatus(false);
-            msg.setMessage("该机器已被绑定!");
-            return msg;
+            return new ResultMsg(false, ResultInfo.ERRORCODE, "该机器已被绑定!",null);
         }
         //获取rst系统产品信息,根据获取到的产品id查出对呀的产品颜色id
         Integer productColorId = 0;
         String json =  HttpUtility.httpsGet(ResultInfo.GET_MACHINE_INFO+barCode);
         if(json == null){
-            msg.setResultCode(ResultInfo.ERRORCODE);
-            msg.setStatus(false);
-            msg.setMessage("会员注册失败,获取机器信息失败!");
-            return msg;
+            return new ResultMsg(false, ResultInfo.ERRORCODE, "会员注册失败,获取机器信息失败!",null);
         }
         JSONObject machineJson = JSONObject.fromObject(json);
         JSONObject message = machineJson.getJSONObject("message");
@@ -205,10 +204,7 @@ public class ApparatusHandler {
             String productId = message.getString("productId");//产品id
             productColorId = apparatusService.getColorIdByProductId(productId);
         }else{
-            msg.setResultCode(ResultInfo.ERRORCODE);
-            msg.setStatus(false);
-            msg.setMessage("会员注册失败,未找到该机器!");
-            return msg;
+            return new ResultMsg(false, ResultInfo.ERRORCODE, "会员注册失败,未找到该机器!",null);
         }
         apparatus.setColorId(productColorId);
         apparatus.setUserOpenid(memberInfo.getUserOpenid());
@@ -221,10 +217,7 @@ public class ApparatusHandler {
             msg.setResultCode(ResultInfo.SUCCESSCODE);
             msg.setStatus(true);
         } else {
-            msg.setResultCode(ResultInfo.ERRORCODE);
-            msg.setStatus(false);
-            msg.setMessage("会员注册失败,请重新注册!");
-            return msg;
+            return new ResultMsg(false, ResultInfo.ERRORCODE, "会员注册失败,请重新注册!",null);
         }
         return msg;
     }

+ 0 - 3
tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/integral/IntegralOrderHandler.java

@@ -102,7 +102,6 @@ public class IntegralOrderHandler {
             rm.setMessage(ResultInfo.loginOutError);
             return rm;
         }
-
         Integer totalNum = 0;
         // 封装请求数据
         PageRequest<IntegralOrder> pageRequest = new PageRequest<>(integralOrder, pageNO, pageSize, totalNum == 0);
@@ -144,8 +143,6 @@ public class IntegralOrderHandler {
         List<IntegralItem> integralItemList = integralItemService.getIntegralItemList(integralItem);
         integralOrder.setIntegralItemList(integralItemList);
 
-
-
         Map<String,Object> map = new HashMap<>();
         rm.setStatus(true);
         rm.setResultCode(ResultInfo.SUCCESSCODE);

+ 6 - 0
tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/integral/IntegralProductHandler.java

@@ -9,6 +9,7 @@ import com.iamberry.wechat.core.entity.page.PageRequest;
 import com.iamberry.wechat.core.entity.page.PagedResult;
 import com.iamberry.wechat.face.integral.IntegralProductPictureService;
 import com.iamberry.wechat.face.integral.IntegralProductService;
+import com.iamberry.wechat.face.member.MemberService;
 import com.iamberry.wechat.tools.NameUtils;
 import com.iamberry.wechat.tools.ResultInfo;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -30,6 +31,8 @@ public class IntegralProductHandler {
     private IntegralProductService integralProductService;
     @Autowired
     private IntegralProductPictureService integralProductPictureService;
+    @Autowired
+    private MemberService memberService;
 
     /**
      *积分产品集合
@@ -45,6 +48,8 @@ public class IntegralProductHandler {
                                  @RequestParam(value = "pageNO", defaultValue = "1",required=false) Integer pageNO){
         ResultMsg rm=new ResultMsg();
         Member m= WechatUtils.getUserBySession(req);
+        m = memberService.getMemberByUserOpenId(m.getUserOpenid());
+
         String openid=m.getUserOpenid();
         if (m == null || openid == null) {
             rm.setMessage(ResultInfo.loginOutError);
@@ -60,6 +65,7 @@ public class IntegralProductHandler {
 
         Map<String,Object> map=new HashMap<String, Object>();
         map.put("integralProductList",result.getDataList());
+        map.put("integral",m.getUserSurplusIntegral());
 
         rm.setStatus(true);
         rm.setResultCode(ResultInfo.SUCCESSCODE);

+ 6 - 10
tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/integral/UseIntegralHandler.java

@@ -313,21 +313,17 @@ public class UseIntegralHandler {
         }
 
         Integer distanceNextLevelIntegral = rankRule.getRankRuleIntegral() - userIntegralCount;
-        String nextLevelIntegral = rankRule.getRankRuleName();
 
         /**************未发货数量*****************/
-        Integer notSendCount=adminOrderService.getNotSendCount(openid);
+        Integer notSendCount= adminOrderService.getNotSendCount(openid);
 
         /*获取个人能用的优惠券数量*/
-        CouponItem couponItem = new CouponItem();
-        couponItem.setCouponItemCurrentUserOpenid(member.getUserOpenid());
-        couponItem.setCouponUseStatus(1);   //coupon_use_status
-        Integer availableCoupons = couponItemService.userCouponNum(couponItem);
+//        CouponItem couponItem = new CouponItem();
+//        couponItem.setCouponItemCurrentUserOpenid(member.getUserOpenid());
+//        couponItem.setCouponUseStatus(1);   //coupon_use_status
+//        Integer availableCoupons = couponItemService.userCouponNum(couponItem);
 
-//        map.put("listRankRule",lists);
-        map.put("availableCoupons",availableCoupons);
-        map.put("distanceNextLevelIntegral",distanceNextLevelIntegral);
-        map.put("nextLevelIntegral",nextLevelIntegral);
+        map.put("distanceNextLevelIntegral",distanceNextLevelIntegral); //距离升级所需要的积分
         map.put("notSendCount",notSendCount);
         map.put("memberInfo",memberInfo);
         rm.setStatus(true);

+ 22 - 8
tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/mq/MQTask.java

@@ -9,6 +9,8 @@ import java.util.concurrent.locks.ReentrantLock;
 
 import com.iamberry.wechat.core.entity.admin.ShopSystemRule;
 import com.iamberry.wechat.core.entity.coupon.CouponItem;
+import com.iamberry.wechat.core.entity.integral.IntegralConfig;
+import com.iamberry.wechat.core.entity.integral.UseIntegral;
 import com.iamberry.wechat.core.entity.member.Member;
 import com.iamberry.wechat.core.entity.order.NumberBacklogDto;
 import com.iamberry.wechat.core.entity.report.Report;
@@ -83,7 +85,7 @@ public class MQTask implements InitializingBean {
 	private MemberService memberService;
 	@Autowired
 	private ReportService reportService;
-	
+
 	private Lock lock = new ReentrantLock();
 
 	@SuppressWarnings(value = {"unchecked", "rawtypes"})
@@ -496,23 +498,35 @@ public class MQTask implements InitializingBean {
 		Integer flag = reportService.save(report);
 	}
 
-
 	/**
 	 * 生日福利
 	 * 每天0点为当天生日的人送积分
 	 */
 	@SuppressWarnings(value = {"unchecked", "rawtypes"})
-	//	@Scheduled(cron = "0 0/3 * * * ?")//每三分钟执行一次
-//			//每天1点触发
+	//	@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();
 		Member memeber  = new Member();
 		memeber.setUserBirthDate(new Date());
-		/*查询当前生日的人*/
+		memeber.setUserIdentity(1);		//userIdentity
+		/*查询当天生日的人*/
 		List<Member> memberList =  memberService.getBirthday(memeber);
 		for (Member m :memberList) {
-
+			UseIntegral ui = new UseIntegral();
+			ui.setUserOpenId(m.getUserOpenid());
+			ui.setConfigId(16);
+			ui.setIntegralCreateTime(new Date());
+			List<UseIntegral>  useIntegralList = useIntegralService.getUseIntegralList(ui);
+			if(useIntegralList == null || useIntegralList.size() < 1){
+				memberService.updaterIntegral(m.getUserId(),1,configId,integral,"生日福利赠送积分");
+			}
 		}
-
 	}
+
+
+
 }

+ 5 - 3
tooth-wechat-web/src/main/java/com/iamberry/wechat/handles/order/OrderHandler.java

@@ -194,7 +194,6 @@ public class OrderHandler {
 					brushFlag = true;
 				}
 			}
-
 		}
 		if (sum <= 0) {
 			msg.setMessage(ResultInfo.cartEmptyError);
@@ -215,7 +214,6 @@ public class OrderHandler {
 
 			/*达到优惠券所设置的金额 couponConsumeEnough*/
 			if(total >= couponItemDto.getCouponConsumeEnough()){
-
 				/*新人卷没有其他限制*/
 				if(couponItemDto.getCouponIsNewPeople() == 1){  //当券为新人券
 					if(member.getUserIdentity() != 1 || !brushFlag){  //不为会员,或者没有牙刷刷头都无法使用
@@ -226,7 +224,11 @@ public class OrderHandler {
 						flag = false;
 					}
 				}
-
+				Date couponUseEndDate = couponItemDto.getCouponUseEndDate();
+				/*控制是否过期*/
+//				if((couponUseEndDate.getTime() < new Date().getTime())  ){
+//
+//				}
 			}else{
 				flag = false;
 			}

+ 2 - 0
tooth-wechat-web/src/main/resources/ResultInfo.properties

@@ -76,3 +76,5 @@ refund_to_dismiss=uevo2BouTPCuBWDSPQMHuhBUbrz-NjlqzfIeyIqZhJ8
 refund_application_notice=d_dWYOK2p16B0Qow_D8cbJW0PFtqMB6Jng9-7Vsk0ro
 failed_purchase=gnk9JaOkAaumN1qNUjxH5IHTjundAj_-O9_G531FpH4
 
+registered_template=JunNceH3S4siog445TlsVVin1D2yYqopj6U_xatNWCI
+birthday_template=xx

+ 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>-->