|
@@ -3,19 +3,26 @@ package com.iamberry.wechat.service.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.face.integral.UseIntegralService;
|
|
|
+import com.iamberry.wechat.service.mapper.MemberMapper;
|
|
|
import com.iamberry.wechat.service.mapper.UseIntegralMapper;
|
|
|
import com.iamberry.wechat.tools.NameUtils;
|
|
|
import com.iamberry.wechat.tools.ResultInfo;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
+import java.beans.Transient;
|
|
|
+import java.util.Date;
|
|
|
import java.util.List;
|
|
|
@Service
|
|
|
public class UseIntegralServiceImpl implements UseIntegralService {
|
|
|
@Autowired
|
|
|
private UseIntegralMapper useIntegralMapper;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private MemberMapper memberMapper;
|
|
|
+
|
|
|
/**
|
|
|
* 获取会员信息.会员等级名称
|
|
|
* @param openId
|
|
@@ -80,16 +87,57 @@ public class UseIntegralServiceImpl implements UseIntegralService {
|
|
|
return useIntegralMapper.getRankRule();
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 查询待入账积分的集合
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ @Override
|
|
|
+ public List<StayIntegral> listStayIntegral(StayIntegral stayIntegral){
|
|
|
+ return useIntegralMapper.listStayIntegral(stayIntegral);
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
+ @Transient
|
|
|
public boolean updateIntegralStayToAlready() {
|
|
|
StayIntegral stayIntegral = new StayIntegral();
|
|
|
+ stayIntegral.setStayStatus(1);
|
|
|
+ stayIntegral.setStayRecordedTime(new Date());
|
|
|
/*获取所有的待入账积分*/
|
|
|
List<StayIntegral> stayIntegralList = useIntegralMapper.listStayIntegral(stayIntegral);
|
|
|
- /*判断时间是否大于的那个时间*/
|
|
|
- /*增加入账积分,累计积分*/
|
|
|
- /*大于将删除日志表的待入账,并增加入账记录*/
|
|
|
- return false;
|
|
|
- }
|
|
|
+ for(StayIntegral si : stayIntegralList ){
|
|
|
+ /*增加入账积分,累计积分,减去待入账积分*/
|
|
|
+ Member member = memberMapper.getMemberByUserOpenId(si.getUserOpenId());
|
|
|
+ Member mem = new Member();
|
|
|
+ mem.setUserOpenid(si.getUserOpenId());
|
|
|
+ mem.setUserSurplusIntegral(member.getUserSurplusIntegral() + si.getStayNumber());
|
|
|
+ mem.setUserIntegral(member.getUserIntegral() + si.getStayNumber());
|
|
|
+ mem.setUserStayIntegral(member.getUserStayIntegral() - si.getStayNumber());
|
|
|
+ Integer flag = memberMapper.updateMemberByUserId(mem);
|
|
|
|
|
|
+ /*添加入账日志*/
|
|
|
+ UseIntegral useIntegral = new UseIntegral();
|
|
|
+ useIntegral.setUserOpenId(si.getUserOpenId());
|
|
|
+ useIntegral.setIntegralNumber(si.getStayNumber());
|
|
|
+ useIntegral.setIntegralBeforeNumber(member.getUserSurplusIntegral()); //变动前
|
|
|
+ useIntegral.setIntegralEndNumber(mem.getUserSurplusIntegral()); //变动后
|
|
|
+ useIntegral.setIntegralType(1); //入账
|
|
|
+ useIntegral.setConfigId(si.getConfigId());
|
|
|
+ useIntegral.setIntegralRemark("");
|
|
|
+ flag = useIntegralMapper.addUseIntegral(useIntegral);
|
|
|
+ if (flag < 1) {
|
|
|
+ throw new RuntimeException("添加入账日志失败");
|
|
|
+ }
|
|
|
|
|
|
+ /*再将待入账信息改为已入账状态*/
|
|
|
+ StayIntegral stayInte = new StayIntegral();
|
|
|
+ stayInte.setStayId(si.getStayId());
|
|
|
+ stayInte.setStayStatus(2);
|
|
|
+ flag = useIntegralMapper.updateStayIntegral(stayInte);
|
|
|
+ if (flag < 1) {
|
|
|
+ throw new RuntimeException("修改待入账状态失败");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ /*增加入账记录*/
|
|
|
+ return true;
|
|
|
+ }
|
|
|
}
|