jiangping
2024-05-31 bf8d85d5f83c2036fb4239d764d33e99c1b62bd3
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
@@ -39,6 +39,7 @@
import com.doumee.dao.web.reqeust.VisitRecordDTO;
import com.doumee.dao.web.response.VisitDetailVO;
import com.doumee.dao.web.response.VisitRecordVO;
import com.doumee.service.business.ApproveService;
import com.doumee.service.business.InterfaceLogService;
import com.doumee.service.business.SmsEmailService;
import com.doumee.service.business.VisitsService;
@@ -104,6 +105,8 @@
    private SmsEmailService smsEmailService;
    @Autowired
    private SystemUserMapper systemUserMapper;
    @Autowired
    private ApproveService approveService;
    @Override
@@ -235,8 +238,9 @@
                    systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_PREFIX).getCode(),
                    systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_AUDIT_VISIT).getCode());
        }else if(dataSyncConfig.getVisitorDataOrigin().equals(Constants.ZERO)){
            visits.setStatus(Constants.VisitStatus.pass);
            visits.setStatus(Constants.VisitStatus.waitCheck);
            visitsMapper.updateById(visits);
            approveService.createApproveFlow(visits.getType(),visits.getId(),visits.getReceptMemberId());
        }else{
            throw new BusinessException(ResponseStatus.SERVER_ERROR.getCode(), "对不起,发起拜访审批申请失败!");
        }
@@ -254,6 +258,7 @@
    @Override
    @Transactional(rollbackFor = {BusinessException.class,Exception.class})
    public Integer visitReporting(Visits visits) {
        visits.setSourceType(Constants.ZERO);
        isValidBaseParam(visits);
        //检验被拜访人是否合法
        Member visitMember = isValideVisitedUser(visits.getMemberId());
@@ -267,7 +272,7 @@
        visits.setVisitType(Integer.valueOf(systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.MDJ_VISIT_REQUIRED).getCode()));
        visits.setIdcardNo(DESUtil.decrypt(Constants.EDS_PWD, visitMember.getIdcardNo()));
        //初始化访客信息
        initVisitInfo(visits,date);
//        initVisitInfo(visits,date);
        visitsMapper.insert(visits);
        return visits.getId();
    }
@@ -490,7 +495,6 @@
                .eq(ApproveParam::getMemberType,Constants.ZERO)
                .last("limit 1"));
         return  Objects.isNull(approveParam)?null:approveParam.getId();
    }
@@ -604,22 +608,29 @@
                ||  StringUtils.isBlank( visits.getName())
                ||  StringUtils.isBlank( visits.getPhone())
                ||  StringUtils.isBlank( visits.getCompanyName())
                ||  visits.getIdcardType() == null
                ||  Objects.isNull(visits.getType())
//                ||  StringUtils.isBlank( visits.getFaceImg() )
                ||  StringUtils.isBlank( visits.getIdcardNo() )
                || visits.getReceptMemberId() == null){
            throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "对不起,信息填写不正确!");
        }
        if(Constants.equalsInteger(visits.getType(),Constants.ZERO)
             ||  Constants.equalsInteger(visits.getType(),Constants.ONE)){
            if(  visits.getIdcardType() == null
                    ||  StringUtils.isBlank( visits.getIdcardNo() ) ){
                throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "对不起,信息填写不正确!");
            }
        }
        //访客报备
        if(visits.getType().equals(Constants.TWO)
         && (StringUtils.isBlank( visits.getName())
            && (StringUtils.isBlank( visits.getName())
                ||  StringUtils.isBlank( visits.getPhone())
                ||  StringUtils.isBlank( visits.getCompanyName()))
                ||  StringUtils.isBlank( visits.getCarNos())
                ||  Objects.isNull( visits.getMemberNum())
                ||  Objects.isNull(visits.getReceptMemberId())
        ){
            throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "对不起,信息填写不正确!");
        }else if(visits.getType().equals(Constants.ONE) && StringUtils.isBlank(visits.getConstructionReason())){
            throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "对不起,未填写施工事由!");
        }
        if(visits.getEndtime().getTime() < System.currentTimeMillis()){
            throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "对不起,入厂时间必须大于当前时间!");//
@@ -1125,7 +1136,7 @@
  
    @Override
    public PageData<Visits> findPage(PageWrap<Visits> pageWrap) {
        IPage<Visits> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
         IPage<Visits> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
        MPJLambdaWrapper<Visits> queryWrapper = new MPJLambdaWrapper<>();
        queryWrapper.selectAll(Visits.class);
@@ -1138,6 +1149,8 @@
        queryWrapper.eq(Visits::getIsdeleted,Constants.ZERO);
        queryWrapper.eq(pageWrap.getModel().getType()!=null,Visits::getType,pageWrap.getModel().getType());
        queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getType()),Visits::getType,pageWrap.getModel().getType());
        queryWrapper.eq(StringUtils.isNotBlank(pageWrap.getModel().getOpenid()),Visits::getOpenid,pageWrap.getModel().getOpenid());
        queryWrapper.eq(StringUtils.isBlank(pageWrap.getModel().getOpenid()),"1","2");
        queryWrapper.and(StringUtils.isNotBlank(pageWrap.getModel().getName()),ms->ms.like(Visits::getName,pageWrap.getModel().getName())
                .or().like(Visits::getPhone,pageWrap.getModel().getName()))
                .eq(StringUtils.isNotBlank(pageWrap.getModel().getIdcardNo()),Visits::getIdcardNo,DESUtil.encrypt(Constants.EDS_PWD, pageWrap.getModel().getIdcardNo()))
@@ -1210,7 +1223,7 @@
    @Override
    public VisitDetailVO getVisitDetail(Integer id){
    public VisitDetailVO getVisitDetail(Integer id,Integer memberId){
        Visits visits = visitsMapper.selectById(id);
        if(Objects.isNull(visits)){
            throw new BusinessException(ResponseStatus.DATA_EMPTY);
@@ -1235,6 +1248,8 @@
        visitDetailVO.setName(visits.getName());
        visitDetailVO.setCompanyName(visits.getCompanyName());
        visitDetailVO.setFaceImg(visits.getFaceImg());
        visitDetailVO.setType(visits.getType());
        visitDetailVO.setConstructionReason(visits.getConstructionReason());
        visitDetailVO.setImgUrl(visits.getImgurl());
        visitDetailVO.setIdCardDecode(visits.getIdcardDecode());
        visitDetailVO.setPrefix(systemDictDataBiz.queryByCode(Constants.FTP,Constants.FTP_RESOURCE_PATH).getCode() +
@@ -1254,6 +1269,15 @@
                visitsMapper.selectList(new QueryWrapper<Visits>().lambda()
                .select(Visits::getName,Visits::getPhone,Visits::getQrcode,Visits::getFaceImg,Visits::getImgurl,Visits::getIdcardDecode,Visits::getStatus)
                .eq(Visits::getParentId,id)));
        if(Objects.nonNull(memberId)){
            visitDetailVO.setApproveDateVO(
                    approveService.arrangeApprovedData(id,
                            visits.getType(),
                            memberId)
            );
        }
        return visitDetailVO;
    }
@@ -1356,8 +1380,6 @@
        dto.setId(systemUser.getId());
        dto.setOperaUserId(systemUser.getId());
        systemUserBiz.resetPwd(dto);
    }
}