| | |
| | | import cn.lili.modules.connect.entity.dto.ConnectAuthUser; |
| | | import cn.lili.modules.connect.service.ConnectService; |
| | | import cn.lili.modules.lmk.domain.entity.VideoAccount; |
| | | import cn.lili.modules.lmk.domain.form.MemberBindStoreForm; |
| | | import cn.lili.modules.lmk.domain.form.MemberNickNameForm; |
| | | import cn.lili.modules.lmk.domain.form.MemberTagForm; |
| | | import cn.lili.modules.lmk.domain.vo.PrizeRecordVO; |
| | |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import java.net.URLEncoder; |
| | | import java.text.SimpleDateFormat; |
| | | import java.time.Duration; |
| | | import java.time.LocalDateTime; |
| | | import java.time.ZoneId; |
| | | import java.util.*; |
| | | import java.util.concurrent.TimeUnit; |
| | | import java.util.stream.Collectors; |
| | |
| | | } |
| | | |
| | | @Override |
| | | public Result bindMemberAndStore(MemberBindStoreForm form) { |
| | | String memberId = UserContext.getCurrentUserId(); |
| | | if(StringUtils.isNotBlank(memberId)){ |
| | | Member member = baseMapper.selectById(memberId); |
| | | |
| | | if (member != null){ |
| | | //判断用户的创建时间是否和 分享shareTime在24小时内 |
| | | LocalDateTime memberCreateTime = member.getCreateTime().toInstant() |
| | | .atZone(ZoneId.systemDefault()) |
| | | .toLocalDateTime(); |
| | | |
| | | LocalDateTime shareTime = form.getShareTime().toInstant() |
| | | .atZone(ZoneId.systemDefault()) |
| | | .toLocalDateTime(); |
| | | |
| | | // 计算时间差 第一个参数 较早的时间 后一个较晚的时间 |
| | | Duration duration = Duration.between( |
| | | memberCreateTime.isBefore(shareTime) ? memberCreateTime : shareTime, |
| | | memberCreateTime.isBefore(shareTime) ? shareTime : memberCreateTime |
| | | ); |
| | | |
| | | long hoursDifference = duration.toHours(); |
| | | |
| | | if (hoursDifference <= 24) { |
| | | // 在24小时内 与店铺进行绑定 |
| | | if(StringUtils.isNotBlank(member.getShareStoreId())){ |
| | | return Result.ok("已绑定店铺"); |
| | | } |
| | | member.setShareStoreId(form.getShareStoreId()); |
| | | baseMapper.updateById(member); |
| | | } else { |
| | | return Result.ok("分享已过期,有效期为24小时"); |
| | | } |
| | | } |
| | | |
| | | |
| | | }else{ |
| | | throw new RuntimeException("UserContext.getCurrentUserId():用户id获取异常"); |
| | | } |
| | | return Result.ok("绑定成功"); |
| | | } |
| | | |
| | | @Override |
| | | public Member editOwn(MemberEditDTO memberEditDTO) { |
| | | //查询会员信息 |
| | | Member member = this.findByUsername(Objects.requireNonNull(UserContext.getCurrentUser()).getUsername()); |
| | |
| | | queryWrapper.like(CharSequenceUtil.isNotBlank(memberSearchVO.getNickName()), "nick_name", memberSearchVO.getNickName()); |
| | | //按照电话号码查询 |
| | | queryWrapper.like(CharSequenceUtil.isNotBlank(memberSearchVO.getMobile()), "mobile", memberSearchVO.getMobile()); |
| | | //按照会员id查询 |
| | | queryWrapper.eq(CharSequenceUtil.isNotBlank(memberSearchVO.getMemberId()), "m.id", memberSearchVO.getMemberId()); |
| | | //按照会员状态查询 |
| | | queryWrapper.eq(CharSequenceUtil.isNotBlank(memberSearchVO.getDisabled()), "disabled", |
| | | memberSearchVO.getDisabled().equals(SwitchEnum.OPEN.name()) ? 1 : 0); |
| | |
| | | String tagIdsStr = memberSearchVO.getTagIds().stream() |
| | | .map(String::valueOf) |
| | | .collect(Collectors.joining(",")); |
| | | queryWrapper.inSql("id", |
| | | queryWrapper.inSql("m.id", |
| | | "SELECT DISTINCT member_id FROM lmk_member_tag WHERE tag_id IN (" + |
| | | tagIdsStr + ")"); |
| | | |
| | | return this.baseMapper.pageByMemberVO(PageUtil.initPage(page), queryWrapper); |
| | | } |
| | | return this.baseMapper.pageByMemberVO(PageUtil.initPage(page),queryWrapper); |
| | | return this.baseMapper.pageByMemberVOAndBindStore(PageUtil.initPage(page),queryWrapper); |
| | | } |
| | | |
| | | @Override |
| | |
| | | // 创建表头 |
| | | Row header = sheet.createRow(0); |
| | | String[] headers = { |
| | | "会员id", |
| | | "会员名称", "会员昵称","联系方式", |
| | | "注册时间","最后登录时间" |
| | | }; |
| | |
| | | for (int i=0;i< exportDetailDTOS.size();i++){ |
| | | MemberExportVO dto = exportDetailDTOS.get(i); |
| | | Row row = sheet.createRow(i+1); |
| | | row.createCell(0).setCellValue(dto.getUsername()); |
| | | row.createCell(1).setCellValue(dto.getNickName()); |
| | | row.createCell(2).setCellValue(dto.getMobile()); |
| | | row.createCell(3).setCellValue(dto.getCreateTime()); |
| | | row.createCell(4).setCellValue(dto.getLastLoginDate()); |
| | | row.createCell(0).setCellValue(dto.getId()); |
| | | row.createCell(1).setCellValue(dto.getUsername()); |
| | | row.createCell(2).setCellValue(dto.getNickName()); |
| | | row.createCell(3).setCellValue(dto.getMobile()); |
| | | row.createCell(4).setCellValue(dto.getCreateTime()); |
| | | row.createCell(5).setCellValue(dto.getLastLoginDate()); |
| | | } |
| | | |
| | | return workbook; |