k94314517
2024-12-19 68a19b71ddb5775670e4cb125c29b4ee70d62da9
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
@@ -331,6 +331,19 @@
        //初始化访客信息
//        initVisitInfo(visits,date);
        visitsMapper.insert(visits);
        if(Objects.nonNull(visits.getLoginUserInfo())){
            SystemUser systemUser = systemUserMapper.selectById(visits.getLoginUserInfo().getId());
            if(Objects.nonNull(systemUser)&&StringUtils.isNotBlank(systemUser.getOpenid())){
                WxPlatNotice wxPlatNotice = new WxPlatNotice();
                wxPlatNotice.sendVisitTemplateNotice(systemDictDataBiz,
                        wxNoticeConfigMapper,visits,
                        Constants.equalsInteger(visits.getType(),Constants.TWO)?WxPlatConstants.visitReportContent.visitReportUpload:WxPlatConstants.visitContent.visitUpload,
                        systemDictDataBiz.queryByCode(Constants.WX_PLATFORM,Constants.WX_PLATFORM_ACCESS_TOKEN).getCode(),
                        Arrays.asList(systemUser.getOpenid().split(","))
                );
            }
        }
        approveService.createApproveFlow(visits.getType(),visits.getId(),visits.getReceptMemberId());
        return visits.getId();
    }
@@ -1207,6 +1220,22 @@
            result.setBusinessStatus(result.getStatus());
        }
        Notices notices = noticesJoinMapper.selectOne(new QueryWrapper<Notices>().lambda()
                .eq(Notices::getObjId,id)
                .eq(Notices::getType,Constants.equalsInteger(result.getType(),Constants.TWO)?Constants.noticesObjectType.visitReporting:Constants.noticesObjectType.visit)
                .eq(Notices::getUserId,memberId)
                .eq(Notices::getSendacopy,Constants.ZERO)
                .orderByDesc(Notices::getId).last(" limit 1 "));
        if(Objects.nonNull(notices)){
            if(Constants.equalsInteger(notices.getStatus(),Constants.ZERO)){
                result.setInfo("待我处理");
            }else{
                result.setInfo(notices.getInfo());
            }
        }
        return result;
    }
@@ -1409,30 +1438,21 @@
                            memberId)
            );
//        }
        if(Constants.equalsInteger(visits.getStatus(),Constants.VisitStatus.waitCheck)||Constants.equalsInteger(visits.getStatus(),Constants.VisitStatus.submitCheck)){
            Notices notices = noticesJoinMapper.selectOne(new QueryWrapper<Notices>().lambda().eq(Notices::getObjId,visits.getId())
                    .eq(Notices::getType,Constants.equalsInteger(visits.getType(),Constants.TWO)?Constants.noticesObjectType.visitReporting:Constants.noticesObjectType.visit)
                    .eq(Notices::getUserId,memberId)
                    .eq(Notices::getSendacopy,Constants.ZERO)
                    .last(" limit 1 ")
            );
            visitDetailVO.setInfoStatus(1);
            if(Objects.nonNull(notices)){
                visitDetailVO.setInfo(notices.getInfo());
            }else{
                visitDetailVO.setInfo("暂无");
            }
        }else if(Constants.equalsInteger(visits.getStatus(),Constants.VisitStatus.noPass)){
            visitDetailVO.setInfoStatus(Constants.VisitStatus.noPass);
            visitDetailVO.setInfo("审批未通过");
        }else if(Constants.equalsInteger(visits.getStatus(),Constants.VisitStatus.cancel)){
            visitDetailVO.setInfoStatus(Constants.VisitStatus.cancel);
            visitDetailVO.setInfo("已取消");
        }else{
            visitDetailVO.setInfoStatus(Constants.VisitStatus.pass);
            visitDetailVO.setInfo("审批已通过");
        Notices notices = noticesJoinMapper.selectOne(new QueryWrapper<Notices>().lambda()
                .eq(Notices::getObjId,id)
                .eq(Notices::getType,Constants.equalsInteger(visits.getType(),Constants.TWO)?Constants.noticesObjectType.visitReporting:Constants.noticesObjectType.visit)
                .eq(Notices::getUserId,memberId)
                .eq(Notices::getSendacopy,Constants.ZERO)
                .orderByDesc(Notices::getId).last(" limit 1 "));
        if(Objects.nonNull(notices)){
            if(Constants.equalsInteger(notices.getStatus(),Constants.ZERO)){
                visitDetailVO.setInfo("待我处理");
            }else{
                visitDetailVO.setInfo(notices.getInfo());
            }
        }
        return visitDetailVO;
    }