|  |  |  | 
|---|
|  |  |  | package com.doumee.service.business.impl; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | 
|---|
|  |  |  | import com.doumee.biz.system.SystemDictDataBiz; | 
|---|
|  |  |  | import com.doumee.config.wx.SendWxMessage; | 
|---|
|  |  |  | import com.doumee.core.annotation.excel.ExcelColumn; | 
|---|
|  |  |  | import com.doumee.core.constants.Constants; | 
|---|
|  |  |  | import com.doumee.core.constants.ResponseStatus; | 
|---|
|  |  |  | import com.doumee.core.exception.BusinessException; | 
|---|
|  |  |  | import com.doumee.core.model.LoginUserInfo; | 
|---|
|  |  |  | import com.doumee.core.model.PageData; | 
|---|
|  |  |  | import com.doumee.core.model.PageWrap; | 
|---|
|  |  |  | import com.doumee.core.utils.Utils; | 
|---|
|  |  |  | import com.doumee.dao.business.IdentityInfoMapper; | 
|---|
|  |  |  | import com.doumee.dao.business.MemberMapper; | 
|---|
|  |  |  | import com.doumee.dao.business.model.IdentityInfo; | 
|---|
|  |  |  | import com.doumee.dao.business.model.Member; | 
|---|
|  |  |  | import com.doumee.dao.dto.AuditDTO; | 
|---|
|  |  |  | import com.doumee.dao.system.model.SystemUser; | 
|---|
|  |  |  | import com.doumee.service.business.IdentityInfoService; | 
|---|
|  |  |  | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; | 
|---|
|  |  |  | import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; | 
|---|
|  |  |  | import com.baomidou.mybatisplus.core.metadata.IPage; | 
|---|
|  |  |  | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | 
|---|
|  |  |  | import com.github.yulichang.wrapper.MPJLambdaWrapper; | 
|---|
|  |  |  | import io.swagger.annotations.ApiModelProperty; | 
|---|
|  |  |  | import me.chanjar.weixin.common.error.WxErrorException; | 
|---|
|  |  |  | import nonapi.io.github.classgraph.json.Id; | 
|---|
|  |  |  | import org.apache.commons.lang3.StringUtils; | 
|---|
|  |  |  | import org.apache.shiro.SecurityUtils; | 
|---|
|  |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
|---|
|  |  |  | import org.springframework.stereotype.Service; | 
|---|
|  |  |  | import org.springframework.transaction.annotation.Transactional; | 
|---|
|  |  |  | import org.springframework.util.CollectionUtils; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.ArrayList; | 
|---|
|  |  |  | import java.util.Date; | 
|---|
|  |  |  | import java.util.List; | 
|---|
|  |  |  | import java.util.Objects; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 会员身份认证信息表Service实现 | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private IdentityInfoMapper identityInfoMapper; | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private MemberMapper memberMapper; | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private SystemDictDataBiz systemDictDataBiz; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | @Transactional(rollbackFor = {BusinessException.class,Exception.class}) | 
|---|
|  |  |  | public Integer create(IdentityInfo identityInfo) { | 
|---|
|  |  |  | identityInfoMapper.insert(identityInfo); | 
|---|
|  |  |  | if(Objects.isNull(identityInfo) | 
|---|
|  |  |  | || Objects.isNull(identityInfo.getType()) | 
|---|
|  |  |  | || Objects.isNull(identityInfo.getMemberId()) | 
|---|
|  |  |  | || Objects.isNull(identityInfo.getAuthType()) | 
|---|
|  |  |  | || StringUtils.isEmpty(identityInfo.getLinkName()) | 
|---|
|  |  |  | || StringUtils.isEmpty(identityInfo.getTelephone()) | 
|---|
|  |  |  | || StringUtils.isEmpty(identityInfo.getLocation()) | 
|---|
|  |  |  | || StringUtils.isEmpty(identityInfo.getImg1()) | 
|---|
|  |  |  | || Objects.isNull(identityInfo.getLat()) | 
|---|
|  |  |  | || Objects.isNull(identityInfo.getLgt()) | 
|---|
|  |  |  | || (Constants.equalsInteger(identityInfo.getAuthType(),Constants.ONE) && StringUtils.isEmpty(identityInfo.getCompanyName())) | 
|---|
|  |  |  | || (Constants.equalsInteger(identityInfo.getAuthType(),Constants.ZERO) && StringUtils.isEmpty(identityInfo.getImg2())) | 
|---|
|  |  |  | || (Constants.equalsInteger(identityInfo.getAuthType(),Constants.ONE) && Constants.equalsInteger(identityInfo.getType(),Constants.ONE) && StringUtils.isEmpty(identityInfo.getImg2())) | 
|---|
|  |  |  | || (Constants.equalsInteger(identityInfo.getAuthType(),Constants.ONE) && Constants.equalsInteger(identityInfo.getType(),Constants.TWO) && (StringUtils.isEmpty(identityInfo.getImg2())||StringUtils.isEmpty(identityInfo.getImg3()))) | 
|---|
|  |  |  | ){ | 
|---|
|  |  |  | throw new BusinessException(ResponseStatus.BAD_REQUEST); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(Objects.nonNull(identityInfo.getId())){ | 
|---|
|  |  |  | this.updateById(identityInfo); | 
|---|
|  |  |  | }else{ | 
|---|
|  |  |  | //查询用户是否已存在当前身份 | 
|---|
|  |  |  | if(identityInfoMapper.selectCount(new QueryWrapper<IdentityInfo>().lambda() | 
|---|
|  |  |  | .eq(IdentityInfo::getDeleted,Constants.ZERO) | 
|---|
|  |  |  | .eq(IdentityInfo::getMemberId,identityInfo.getMemberId()) | 
|---|
|  |  |  | .eq(IdentityInfo::getType,identityInfo.getType()))>Constants.ZERO){ | 
|---|
|  |  |  | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"已存在该身份请刷新查看!"); | 
|---|
|  |  |  | }; | 
|---|
|  |  |  | identityInfo.setDeleted(Constants.ZERO); | 
|---|
|  |  |  | identityInfo.setCreateTime(new Date()); | 
|---|
|  |  |  | identityInfo.setUpdateTime(identityInfo.getCreateTime()); | 
|---|
|  |  |  | identityInfo.setAuditStatus(Constants.ONE); | 
|---|
|  |  |  | identityInfoMapper.insert(identityInfo); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | memberMapper.update(new UpdateWrapper<Member>().lambda() | 
|---|
|  |  |  | .set(Constants.equalsInteger(identityInfo.getType(),Constants.ZERO),Member::getWorkerIdentity,Constants.ONE) | 
|---|
|  |  |  | .set(Constants.equalsInteger(identityInfo.getType(),Constants.ONE),Member::getDriverIdentity,Constants.ONE) | 
|---|
|  |  |  | .set(Constants.equalsInteger(identityInfo.getType(),Constants.TWO),Member::getChefIdentity,Constants.ONE) | 
|---|
|  |  |  | .eq(Member::getId,identityInfo.getMemberId())); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return identityInfo.getId(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | @Transactional(rollbackFor = {BusinessException.class,Exception.class}) | 
|---|
|  |  |  | public void updateById(IdentityInfo identityInfo) { | 
|---|
|  |  |  | if(Objects.isNull(identityInfo) | 
|---|
|  |  |  | || Objects.isNull(identityInfo.getId()) | 
|---|
|  |  |  | || Objects.isNull(identityInfo.getType()) | 
|---|
|  |  |  | || Objects.isNull(identityInfo.getMemberId()) | 
|---|
|  |  |  | || Objects.isNull(identityInfo.getAuthType()) | 
|---|
|  |  |  | || StringUtils.isEmpty(identityInfo.getLinkName()) | 
|---|
|  |  |  | || StringUtils.isEmpty(identityInfo.getTelephone()) | 
|---|
|  |  |  | || StringUtils.isEmpty(identityInfo.getLocation()) | 
|---|
|  |  |  | || StringUtils.isEmpty(identityInfo.getImg1()) | 
|---|
|  |  |  | || Objects.isNull(identityInfo.getLat()) | 
|---|
|  |  |  | || Objects.isNull(identityInfo.getLgt()) | 
|---|
|  |  |  | || (Constants.equalsInteger(identityInfo.getAuthType(),Constants.ONE) && StringUtils.isEmpty(identityInfo.getCompanyName())) | 
|---|
|  |  |  | || (Constants.equalsInteger(identityInfo.getAuthType(),Constants.ZERO) && StringUtils.isEmpty(identityInfo.getImg2())) | 
|---|
|  |  |  | || (Constants.equalsInteger(identityInfo.getAuthType(),Constants.ONE) && Constants.equalsInteger(identityInfo.getType(),Constants.ONE) && StringUtils.isEmpty(identityInfo.getImg2())) | 
|---|
|  |  |  | || (Constants.equalsInteger(identityInfo.getAuthType(),Constants.ONE) && Constants.equalsInteger(identityInfo.getType(),Constants.TWO) && (StringUtils.isEmpty(identityInfo.getImg2())||StringUtils.isEmpty(identityInfo.getImg3()))) | 
|---|
|  |  |  | ){ | 
|---|
|  |  |  | throw new BusinessException(ResponseStatus.BAD_REQUEST); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | IdentityInfo model = identityInfoMapper.selectById(identityInfo.getId()); | 
|---|
|  |  |  | if (Objects.isNull(model)){ | 
|---|
|  |  |  | throw new BusinessException(ResponseStatus.DATA_EMPTY); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(!Constants.equalsInteger(model.getMemberId(),identityInfo.getMemberId())){ | 
|---|
|  |  |  | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"非您的数据无法进行该操作"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(!Constants.equalsInteger(model.getAuditStatus(),Constants.THREE)){ | 
|---|
|  |  |  | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"当前状态无法进行该操作"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | identityInfo.setUpdateTime(new Date()); | 
|---|
|  |  |  | identityInfo.setAuditStatus(Constants.ONE); | 
|---|
|  |  |  | identityInfoMapper.updateById(identityInfo); | 
|---|
|  |  |  | memberMapper.update(new UpdateWrapper<Member>().lambda() | 
|---|
|  |  |  | .set(Constants.equalsInteger(identityInfo.getType(),Constants.ZERO),Member::getWorkerIdentity,Constants.ONE) | 
|---|
|  |  |  | .set(Constants.equalsInteger(identityInfo.getType(),Constants.ONE),Member::getDriverIdentity,Constants.ONE) | 
|---|
|  |  |  | .set(Constants.equalsInteger(identityInfo.getType(),Constants.TWO),Member::getChefIdentity,Constants.ONE) | 
|---|
|  |  |  | .eq(Member::getId,identityInfo.getMemberId())); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | @Transactional(rollbackFor = {BusinessException.class,Exception.class}) | 
|---|
|  |  |  | public void updateLocation(IdentityInfo identityInfo) { | 
|---|
|  |  |  | if(Objects.isNull(identityInfo) | 
|---|
|  |  |  | || Objects.isNull(identityInfo.getId()) | 
|---|
|  |  |  | || Objects.isNull(identityInfo.getMemberId()) | 
|---|
|  |  |  | || StringUtils.isEmpty(identityInfo.getLocation()) | 
|---|
|  |  |  | || Objects.isNull(identityInfo.getLat()) | 
|---|
|  |  |  | || Objects.isNull(identityInfo.getLgt()) | 
|---|
|  |  |  | ){ | 
|---|
|  |  |  | throw new BusinessException(ResponseStatus.BAD_REQUEST); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | IdentityInfo model = identityInfoMapper.selectById(identityInfo.getId()); | 
|---|
|  |  |  | if (Objects.isNull(model)){ | 
|---|
|  |  |  | throw new BusinessException(ResponseStatus.DATA_EMPTY); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(!Constants.equalsInteger(model.getMemberId(),identityInfo.getMemberId())){ | 
|---|
|  |  |  | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"非您的数据无法进行该操作"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(!Constants.equalsInteger(model.getAuditStatus(),Constants.TWO)){ | 
|---|
|  |  |  | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"当前状态无法进行该操作"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | model.setLocation(identityInfo.getLocation()); | 
|---|
|  |  |  | model.setLat(identityInfo.getLat()); | 
|---|
|  |  |  | model.setLgt(identityInfo.getLgt()); | 
|---|
|  |  |  | model.setUpdateTime(new Date()); | 
|---|
|  |  |  | identityInfoMapper.updateById(model); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public IdentityInfo findById(Integer id) { | 
|---|
|  |  |  | return identityInfoMapper.selectById(id); | 
|---|
|  |  |  | IdentityInfo model = identityInfoMapper.selectById(id); | 
|---|
|  |  |  | String path  = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.RESOURCE_PATH).getCode() | 
|---|
|  |  |  | +systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.INENTITY_FILES).getCode(); | 
|---|
|  |  |  | model.setImgList(new ArrayList<>()); | 
|---|
|  |  |  | if(StringUtils.isNotBlank(model.getImg1())){ | 
|---|
|  |  |  | model.getImgList().add(path + model.getImg1()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(StringUtils.isNotBlank(model.getImg2())){ | 
|---|
|  |  |  | model.getImgList().add(path + model.getImg2()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(StringUtils.isNotBlank(model.getImg3())) { | 
|---|
|  |  |  | model.getImgList().add(path + model.getImg3()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(StringUtils.isNotBlank(model.getImg4())){ | 
|---|
|  |  |  | model.getImgList().add(path + model.getImg4()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return model; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public IdentityInfo findByMemberType(Integer type,Integer memberId){ | 
|---|
|  |  |  | IdentityInfo model = identityInfoMapper.selectOne(new QueryWrapper<IdentityInfo>().lambda() | 
|---|
|  |  |  | .eq(IdentityInfo::getMemberId,memberId).eq(IdentityInfo::getType,type)); | 
|---|
|  |  |  | if(Objects.nonNull(model)){ | 
|---|
|  |  |  | String path  = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.RESOURCE_PATH).getCode() | 
|---|
|  |  |  | +systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.INENTITY_FILES).getCode(); | 
|---|
|  |  |  | model.setImgList(new ArrayList<>()); | 
|---|
|  |  |  | if(StringUtils.isNotBlank(model.getImg1())){ | 
|---|
|  |  |  | model.getImgList().add(path + model.getImg1()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(StringUtils.isNotBlank(model.getImg2())){ | 
|---|
|  |  |  | model.getImgList().add(path + model.getImg2()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(StringUtils.isNotBlank(model.getImg3())) { | 
|---|
|  |  |  | model.getImgList().add(path + model.getImg3()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(StringUtils.isNotBlank(model.getImg4())){ | 
|---|
|  |  |  | model.getImgList().add(path + model.getImg4()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }else{ | 
|---|
|  |  |  | model = new IdentityInfo(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return model; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public IdentityInfo findOne(IdentityInfo identityInfo) { | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public List<IdentityInfo> findMemberList(IdentityInfo identityInfo) { | 
|---|
|  |  |  | if(identityInfo.getMemberId() == null){ | 
|---|
|  |  |  | return  new ArrayList<>(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | Member member = memberMapper.selectById(identityInfo.getMemberId()); | 
|---|
|  |  |  | if(identityInfo == null || Constants.equalsInteger(member.getDeleted(),Constants.ONE)){ | 
|---|
|  |  |  | return  new ArrayList<>(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | List<IdentityInfo> list = new ArrayList<>(); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | String path  = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.RESOURCE_PATH).getCode() | 
|---|
|  |  |  | +systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.INENTITY_FILES).getCode(); | 
|---|
|  |  |  | //类型:0=用工身份;1=货运身份;2=供餐身份; | 
|---|
|  |  |  | if(!Constants.equalsInteger(member.getWorkerIdentity(),Constants.ZERO)){//用工身份 | 
|---|
|  |  |  | addMemberModelByType(member.getId(),Constants.ZERO,list,path); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(!Constants.equalsInteger(member.getDriverIdentity(),Constants.ZERO)){//货运身份 | 
|---|
|  |  |  | addMemberModelByType(member.getId(),Constants.ONE,list,path); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(!Constants.equalsInteger(member.getChefIdentity(),Constants.ZERO)){//供餐很粉 | 
|---|
|  |  |  | addMemberModelByType(member.getId(),Constants.TWO,list,path); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return list; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private void addMemberModelByType(Integer id,Integer type, List<IdentityInfo> list,String path) { | 
|---|
|  |  |  | MPJLambdaWrapper<IdentityInfo> wrapper = new MPJLambdaWrapper<IdentityInfo>() | 
|---|
|  |  |  | .selectAll(IdentityInfo.class) | 
|---|
|  |  |  | .selectAs(SystemUser::getUsername,IdentityInfo::getEditorName) | 
|---|
|  |  |  | .leftJoin(SystemUser.class,SystemUser::getId,IdentityInfo::getUpdateUser) | 
|---|
|  |  |  | .orderByDesc(IdentityInfo::getCreateTime )//取最新一条 | 
|---|
|  |  |  | .eq(IdentityInfo::getMemberId,id) | 
|---|
|  |  |  | .eq(IdentityInfo::getType,type) | 
|---|
|  |  |  | .eq(IdentityInfo::getDeleted,Constants.ZERO) | 
|---|
|  |  |  | .last("limit 1"); | 
|---|
|  |  |  | IdentityInfo model = identityInfoMapper.selectJoinOne(IdentityInfo.class,wrapper); | 
|---|
|  |  |  | if(model !=null){ | 
|---|
|  |  |  | initModelImage(model,path); | 
|---|
|  |  |  | list.add(model); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | public PageData<IdentityInfo> findPage(PageWrap<IdentityInfo> pageWrap) { | 
|---|
|  |  |  | IPage<IdentityInfo> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); | 
|---|
|  |  |  | QueryWrapper<IdentityInfo> queryWrapper = new QueryWrapper<>(); | 
|---|
|  |  |  | MPJLambdaWrapper<IdentityInfo> queryWrapper = new MPJLambdaWrapper<>(); | 
|---|
|  |  |  | Utils.MP.blankToNull(pageWrap.getModel()); | 
|---|
|  |  |  | pageWrap.getModel().setDeleted(Constants.ZERO); | 
|---|
|  |  |  | queryWrapper.selectAll(IdentityInfo.class) | 
|---|
|  |  |  | .selectAs(Member::getNickName,IdentityInfo::getMemberName) | 
|---|
|  |  |  | .selectAs(Member::getOpenid,IdentityInfo::getOpenid) | 
|---|
|  |  |  | .selectAs(SystemUser::getUsername,IdentityInfo::getEditorName) | 
|---|
|  |  |  | .leftJoin(Member.class,Member::getId,IdentityInfo::getMemberId) | 
|---|
|  |  |  | .leftJoin(SystemUser.class,SystemUser::getId,IdentityInfo::getUpdateUser); | 
|---|
|  |  |  | if (pageWrap.getModel().getId() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().eq(IdentityInfo::getId, pageWrap.getModel().getId()); | 
|---|
|  |  |  | queryWrapper.eq(IdentityInfo::getId, pageWrap.getModel().getId()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (pageWrap.getModel().getDeleted() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().eq(IdentityInfo::getDeleted, pageWrap.getModel().getDeleted()); | 
|---|
|  |  |  | queryWrapper.eq(IdentityInfo::getDeleted, pageWrap.getModel().getDeleted()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (pageWrap.getModel().getCreateUser() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().eq(IdentityInfo::getCreateUser, pageWrap.getModel().getCreateUser()); | 
|---|
|  |  |  | queryWrapper.eq(IdentityInfo::getCreateUser, pageWrap.getModel().getCreateUser()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (pageWrap.getModel().getCreateTime() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().ge(IdentityInfo::getCreateTime, Utils.Date.getStart(pageWrap.getModel().getCreateTime())); | 
|---|
|  |  |  | queryWrapper.lambda().le(IdentityInfo::getCreateTime, Utils.Date.getEnd(pageWrap.getModel().getCreateTime())); | 
|---|
|  |  |  | queryWrapper.ge(IdentityInfo::getCreateTime, Utils.Date.getStart(pageWrap.getModel().getCreateTime())); | 
|---|
|  |  |  | queryWrapper.le(IdentityInfo::getCreateTime, Utils.Date.getEnd(pageWrap.getModel().getCreateTime())); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (pageWrap.getModel().getUpdateUser() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().eq(IdentityInfo::getUpdateUser, pageWrap.getModel().getUpdateUser()); | 
|---|
|  |  |  | queryWrapper.eq(IdentityInfo::getUpdateUser, pageWrap.getModel().getUpdateUser()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (pageWrap.getModel().getUpdateTime() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().ge(IdentityInfo::getUpdateTime, Utils.Date.getStart(pageWrap.getModel().getUpdateTime())); | 
|---|
|  |  |  | queryWrapper.lambda().le(IdentityInfo::getUpdateTime, Utils.Date.getEnd(pageWrap.getModel().getUpdateTime())); | 
|---|
|  |  |  | queryWrapper.ge(IdentityInfo::getUpdateTime, Utils.Date.getStart(pageWrap.getModel().getUpdateTime())); | 
|---|
|  |  |  | queryWrapper.le(IdentityInfo::getUpdateTime, Utils.Date.getEnd(pageWrap.getModel().getUpdateTime())); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (pageWrap.getModel().getRemark() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().eq(IdentityInfo::getRemark, pageWrap.getModel().getRemark()); | 
|---|
|  |  |  | queryWrapper.like(IdentityInfo::getRemark, pageWrap.getModel().getRemark()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (pageWrap.getModel().getType() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().eq(IdentityInfo::getType, pageWrap.getModel().getType()); | 
|---|
|  |  |  | queryWrapper.eq(IdentityInfo::getType, pageWrap.getModel().getType()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (pageWrap.getModel().getMemberId() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().eq(IdentityInfo::getMemberId, pageWrap.getModel().getMemberId()); | 
|---|
|  |  |  | queryWrapper.eq(IdentityInfo::getMemberId, pageWrap.getModel().getMemberId()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (pageWrap.getModel().getAuthType() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().eq(IdentityInfo::getAuthType, pageWrap.getModel().getAuthType()); | 
|---|
|  |  |  | queryWrapper.eq(IdentityInfo::getAuthType, pageWrap.getModel().getAuthType()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (pageWrap.getModel().getLinkName() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().eq(IdentityInfo::getLinkName, pageWrap.getModel().getLinkName()); | 
|---|
|  |  |  | queryWrapper.like(IdentityInfo::getLinkName, pageWrap.getModel().getLinkName()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (pageWrap.getModel().getTelephone() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().eq(IdentityInfo::getTelephone, pageWrap.getModel().getTelephone()); | 
|---|
|  |  |  | queryWrapper.like(IdentityInfo::getTelephone, pageWrap.getModel().getTelephone()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (pageWrap.getModel().getLocation() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().eq(IdentityInfo::getLocation, pageWrap.getModel().getLocation()); | 
|---|
|  |  |  | queryWrapper.like(IdentityInfo::getLocation, pageWrap.getModel().getLocation()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (pageWrap.getModel().getCompanyName() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().eq(IdentityInfo::getCompanyName, pageWrap.getModel().getCompanyName()); | 
|---|
|  |  |  | queryWrapper.like(IdentityInfo::getCompanyName, pageWrap.getModel().getCompanyName()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (pageWrap.getModel().getLat() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().eq(IdentityInfo::getLat, pageWrap.getModel().getLat()); | 
|---|
|  |  |  | queryWrapper.eq(IdentityInfo::getLat, pageWrap.getModel().getLat()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (pageWrap.getModel().getLgt() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().eq(IdentityInfo::getLgt, pageWrap.getModel().getLgt()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (pageWrap.getModel().getIdentityFront() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().eq(IdentityInfo::getIdentityFront, pageWrap.getModel().getIdentityFront()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (pageWrap.getModel().getIdentityBack() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().eq(IdentityInfo::getIdentityBack, pageWrap.getModel().getIdentityBack()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (pageWrap.getModel().getBusinessLicense() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().eq(IdentityInfo::getBusinessLicense, pageWrap.getModel().getBusinessLicense()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (pageWrap.getModel().getOtherFile() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().eq(IdentityInfo::getOtherFile, pageWrap.getModel().getOtherFile()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (pageWrap.getModel().getTransportFile() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().eq(IdentityInfo::getTransportFile, pageWrap.getModel().getTransportFile()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (pageWrap.getModel().getFoodBusinessFile() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().eq(IdentityInfo::getFoodBusinessFile, pageWrap.getModel().getFoodBusinessFile()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (pageWrap.getModel().getHealthFile() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().eq(IdentityInfo::getHealthFile, pageWrap.getModel().getHealthFile()); | 
|---|
|  |  |  | queryWrapper.eq(IdentityInfo::getLgt, pageWrap.getModel().getLgt()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (pageWrap.getModel().getAuditStatus() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().eq(IdentityInfo::getAuditStatus, pageWrap.getModel().getAuditStatus()); | 
|---|
|  |  |  | queryWrapper.eq(IdentityInfo::getAuditStatus, pageWrap.getModel().getAuditStatus()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (pageWrap.getModel().getAuditTime() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().ge(IdentityInfo::getAuditTime, Utils.Date.getStart(pageWrap.getModel().getAuditTime())); | 
|---|
|  |  |  | queryWrapper.lambda().le(IdentityInfo::getAuditTime, Utils.Date.getEnd(pageWrap.getModel().getAuditTime())); | 
|---|
|  |  |  | queryWrapper.ge(IdentityInfo::getAuditTime, Utils.Date.getStart(pageWrap.getModel().getAuditTime())); | 
|---|
|  |  |  | queryWrapper.le(IdentityInfo::getAuditTime, Utils.Date.getEnd(pageWrap.getModel().getAuditTime())); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (pageWrap.getModel().getAuditRemark() != null) { | 
|---|
|  |  |  | queryWrapper.lambda().eq(IdentityInfo::getAuditRemark, pageWrap.getModel().getAuditRemark()); | 
|---|
|  |  |  | queryWrapper.like(IdentityInfo::getAuditRemark, pageWrap.getModel().getAuditRemark()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | for(PageWrap.SortData sortData: pageWrap.getSorts()) { | 
|---|
|  |  |  | if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { | 
|---|
|  |  |  | queryWrapper.orderByDesc(sortData.getProperty()); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | queryWrapper.orderByAsc(sortData.getProperty()); | 
|---|
|  |  |  | queryWrapper.orderByAsc(IdentityInfo::getAuditStatus ); | 
|---|
|  |  |  | queryWrapper.orderByDesc(IdentityInfo::getCreateTime ); | 
|---|
|  |  |  | PageData<IdentityInfo> result = PageData.from(identityInfoMapper.selectJoinPage(page,IdentityInfo.class, queryWrapper)); | 
|---|
|  |  |  | if(result!=null && result.getRecords()!=null){ | 
|---|
|  |  |  | String path  = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.RESOURCE_PATH).getCode() | 
|---|
|  |  |  | +systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.INENTITY_FILES).getCode(); | 
|---|
|  |  |  | for (IdentityInfo model :result.getRecords()){ | 
|---|
|  |  |  | initModelImage(model,path); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return PageData.from(identityInfoMapper.selectPage(page, queryWrapper)); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return result; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | private void initModelImage(IdentityInfo model, String path) { | 
|---|
|  |  |  | model.setImgList(new ArrayList<>()); | 
|---|
|  |  |  | if(StringUtils.isNotBlank(model.getImg1())){ | 
|---|
|  |  |  | model.setImg1(path+model.getImg1()); | 
|---|
|  |  |  | model.getImgList().add(model.getImg1()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(StringUtils.isNotBlank(model.getImg2())){ | 
|---|
|  |  |  | model.setImg2(path+model.getImg2()); | 
|---|
|  |  |  | model.getImgList().add(model.getImg2()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(StringUtils.isNotBlank(model.getImg3())) { | 
|---|
|  |  |  | model.setImg3(path + model.getImg3()); | 
|---|
|  |  |  | model.getImgList().add(model.getImg3()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(StringUtils.isNotBlank(model.getImg4())){ | 
|---|
|  |  |  | model.setImg4(path+model.getImg4()); | 
|---|
|  |  |  | model.getImgList().add(model.getImg4()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | 
|---|
|  |  |  | QueryWrapper<IdentityInfo> wrapper = new QueryWrapper<>(identityInfo); | 
|---|
|  |  |  | return identityInfoMapper.selectCount(wrapper); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private SendWxMessage sendWxMessage; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Override | 
|---|
|  |  |  | @Transactional(rollbackFor = {BusinessException.class,Exception.class}) | 
|---|
|  |  |  | public void audit(AuditDTO auditDTO){ | 
|---|
|  |  |  | if(Objects.isNull(auditDTO) | 
|---|
|  |  |  | || Objects.isNull(auditDTO.getId()) | 
|---|
|  |  |  | || Objects.isNull(auditDTO.getAuditStatus()) | 
|---|
|  |  |  | ||  auditDTO.getAuditStatus()<2 | 
|---|
|  |  |  | ||  auditDTO.getAuditStatus()>3){ | 
|---|
|  |  |  | throw new BusinessException(ResponseStatus.BAD_REQUEST); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal(); | 
|---|
|  |  |  | IdentityInfo identityInfo = identityInfoMapper.selectById(auditDTO.getId()); | 
|---|
|  |  |  | if(Objects.isNull(identityInfo)){ | 
|---|
|  |  |  | throw new BusinessException(ResponseStatus.DATA_EMPTY); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if(!Constants.equalsInteger(identityInfo.getAuditStatus(),Constants.ONE)){ | 
|---|
|  |  |  | throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"已审批,请勿重复操作"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | Member member = memberMapper.selectById(identityInfo.getMemberId()); | 
|---|
|  |  |  | if(Objects.isNull(member)){ | 
|---|
|  |  |  | throw new BusinessException(ResponseStatus.DATA_EMPTY); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | identityInfo.setAuditStatus(auditDTO.getAuditStatus()); | 
|---|
|  |  |  | identityInfo.setAuditRemark(auditDTO.getAuditRemark()); | 
|---|
|  |  |  | identityInfo.setAuditTime(new Date()); | 
|---|
|  |  |  | Date date = new Date(); | 
|---|
|  |  |  | identityInfoMapper.update(new UpdateWrapper<IdentityInfo>().lambda() | 
|---|
|  |  |  | .set(IdentityInfo::getAuditStatus, auditDTO.getAuditStatus() ) | 
|---|
|  |  |  | .set(StringUtils.isNotBlank(auditDTO.getAuditRemark()),IdentityInfo::getAuditRemark,auditDTO.getAuditRemark()) | 
|---|
|  |  |  | .set(IdentityInfo::getAuditTime,date) | 
|---|
|  |  |  | .set(IdentityInfo::getUpdateUser,user.getId()) | 
|---|
|  |  |  | .set(IdentityInfo::getUpdateTime,date) | 
|---|
|  |  |  | .eq(IdentityInfo::getId,identityInfo.getId()) | 
|---|
|  |  |  | ); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | memberMapper.update(new UpdateWrapper<Member>().lambda() | 
|---|
|  |  |  | .set(Member::getUpdateUser,user.getId()) | 
|---|
|  |  |  | .set(Member::getUpdateTime,date) | 
|---|
|  |  |  | .set(Constants.equalsInteger(identityInfo.getType(),Constants.ZERO),Member::getWorkerIdentity, auditDTO.getAuditStatus() ) | 
|---|
|  |  |  | .set(Constants.equalsInteger(identityInfo.getType(),Constants.ONE),Member::getDriverIdentity , auditDTO.getAuditStatus() ) | 
|---|
|  |  |  | .set(Constants.equalsInteger(identityInfo.getType(),Constants.TWO),Member::getChefIdentity , auditDTO.getAuditStatus() ) | 
|---|
|  |  |  | .eq(Member::getId,identityInfo.getMemberId()) | 
|---|
|  |  |  | ); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | try{ | 
|---|
|  |  |  | //发送微信通知 | 
|---|
|  |  |  | if(StringUtils.isNotBlank(member.getOpenid())){ | 
|---|
|  |  |  | sendWxMessage.identityInfoMessage(member.getOpenid(),identityInfo); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | }catch (WxErrorException wxErrorException){ | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|