| | |
| | | |
| | | import cn.hutool.core.date.DateTime; |
| | | import cn.hutool.core.date.DateUtil; |
| | | import cn.hutool.core.lang.PatternPool; |
| | | import cn.hutool.core.lang.Validator; |
| | | import cn.hutool.core.util.IdcardUtil; |
| | | import cn.hutool.core.util.PhoneUtil; |
| | | import cn.hutool.core.util.ReUtil; |
| | | import com.alibaba.fastjson.JSONObject; |
| | | import com.doumee.biz.system.SystemDictDataBiz; |
| | | import com.doumee.config.Jwt.JwtPayLoad; |
| | |
| | | import com.doumee.core.wx.WXConstant; |
| | | import com.doumee.dao.admin.request.LaborEmpowerDTO; |
| | | import com.doumee.dao.admin.request.LaborMemberDTO; |
| | | import com.doumee.dao.admin.request.MemberQuery; |
| | | import com.doumee.dao.admin.response.MemberInfoDTO; |
| | | import com.doumee.dao.business.MemberMapper; |
| | | import com.doumee.dao.business.TrainTimeMapper; |
| | | import com.doumee.dao.business.join.MemberJoinMapper; |
| | | import com.doumee.dao.business.model.Company; |
| | | import com.doumee.dao.business.model.Empower; |
| | | import com.doumee.dao.business.model.Member; |
| | | import com.doumee.dao.business.model.TrainTime; |
| | | import com.doumee.dao.business.model.*; |
| | | import com.doumee.dao.web.response.WxAuthorizeVO; |
| | | import com.doumee.service.business.MemberService; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | |
| | | |
| | | } |
| | | |
| | | @Override |
| | | public PageData<MemberInfoDTO> findMemberInfoPage(PageWrap<MemberQuery> pageWrap) { |
| | | |
| | | //是否是数字 |
| | | boolean number = Validator.isNumber(pageWrap.getModel().getKeyWords()); |
| | | //是否包含中文 |
| | | boolean b = Validator.hasChinese(pageWrap.getModel().getKeyWords()); |
| | | //是否包含英文 |
| | | boolean hasWord = ReUtil.contains(PatternPool.WORD, pageWrap.getModel().getKeyWords()); |
| | | |
| | | IPage<Member> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); |
| | | MPJLambdaWrapper<Member> queryWrapper = new MPJLambdaWrapper<>(); |
| | | MemberQuery model = pageWrap.getModel(); |
| | | Utils.MP.blankToNull(model); |
| | | |
| | | queryWrapper.leftJoin(Company.class,Company::getId,Member::getCompanyId) |
| | | .leftJoin(DeviceRole.class,DeviceRole::getId,Member::getRoleId) |
| | | .leftJoin(MemberCard.class,MemberCard::getMemberId,Member::getId); |
| | | |
| | | queryWrapper.selectAll(Member.class) |
| | | .selectAs(Company::getName,MemberInfoDTO::getCompanyName) |
| | | .selectAs(DeviceRole::getName,MemberInfoDTO::getRoleName) |
| | | .select("count(t3.id) as memberCardCount "); |
| | | |
| | | queryWrapper.in(Objects.nonNull(model.getCompanyIds()),Member::getCompanyId,model.getCompanyIds()) |
| | | .like(number,Member::getPhone,model.getKeyWords()) |
| | | .like((b||hasWord),Member::getPhone,model.getKeyWords()) |
| | | .isNull(Constants.equalsInteger(model.getHasFace(),Constants.ZERO),Member::getFaceId) |
| | | .isNotNull(Constants.equalsInteger(model.getHasFace(),Constants.ONE),Member::getFaceId) |
| | | .eq(Objects.nonNull(model.getCanVisit()),Member::getCanVisit,model.getCanVisit()) |
| | | .eq(Objects.nonNull(model.getStatus()),Member::getStatus,model.getStatus()); |
| | | IPage<MemberInfoDTO> memberIPage = memberJoinMapper.selectJoinPage(page, MemberInfoDTO.class,queryWrapper); |
| | | if (!CollectionUtils.isEmpty(memberIPage.getRecords())){ |
| | | memberIPage.getRecords().forEach(s->s.setSex(IdcardUtil.getGenderByIdCard(s.getIdcardDecode()))); |
| | | } |
| | | return PageData.from(memberIPage); |
| | | } |
| | | |
| | | /********************************************公众号接口***********************************************************************/ |
| | | |