|
@@ -3,13 +3,21 @@
|
|
|
*/
|
|
|
package com.up.sell.service.impl;
|
|
|
|
|
|
+import java.text.SimpleDateFormat;
|
|
|
+import java.util.Date;
|
|
|
+import java.util.List;
|
|
|
+
|
|
|
+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.Propagation;
|
|
|
import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import com.up.sell.mapper.MemberMapper;
|
|
|
+import com.up.sell.mapper.MemberOrderMapper;
|
|
|
import com.up.sell.service.MemberSerice;
|
|
|
+import com.up.sell.vo.MemberOrder;
|
|
|
|
|
|
/**
|
|
|
* @author zmg
|
|
@@ -18,9 +26,15 @@ import com.up.sell.service.MemberSerice;
|
|
|
@Service
|
|
|
@Transactional(propagation=Propagation.SUPPORTS)
|
|
|
public class MemberSericeImpl implements MemberSerice{
|
|
|
+
|
|
|
+ private static final Logger logger = LoggerFactory.getLogger(MemberSericeImpl.class);
|
|
|
@Autowired
|
|
|
private MemberMapper memberMapper;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private MemberOrderMapper memberOrderMapper;
|
|
|
+
|
|
|
+
|
|
|
/**
|
|
|
* 恢复每个会员的默认可查看电话次数
|
|
|
*/
|
|
@@ -28,4 +42,34 @@ public class MemberSericeImpl implements MemberSerice{
|
|
|
public int updateViewCount(Integer defaultViewCount) {
|
|
|
return this.memberMapper.updateViewCount(defaultViewCount);
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public int memberExpired() {
|
|
|
+ List<MemberOrder> list = memberOrderMapper.selectAll();
|
|
|
+ logger.info("会员总数:" + list.size());
|
|
|
+ int count = 0;
|
|
|
+ for (MemberOrder mo : list) {
|
|
|
+ Date endTime = mo.getEndTime();
|
|
|
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
|
|
+ logger.info("会员到期时间:" + sdf.format(endTime));
|
|
|
+ int datePoor = getDatePoor(endTime, new Date());
|
|
|
+ if (datePoor <= 0) {
|
|
|
+ mo.setServiceFlag(0);
|
|
|
+ memberOrderMapper.updateByPrimaryKey(mo);
|
|
|
+ count++;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ logger.info("会员过期总数:" + count);
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
+
|
|
|
+ public static int getDatePoor(Date endDate, Date nowDate) {
|
|
|
+
|
|
|
+ long nd = 1000 * 24 * 60 * 60;
|
|
|
+ // 获得两个时间的毫秒时间差异
|
|
|
+ long diff = endDate.getTime() - nowDate.getTime();
|
|
|
+// // 计算差多少天
|
|
|
+ long day = diff / nd;
|
|
|
+ return (int) day;
|
|
|
+ }
|
|
|
}
|