k94314517
2024-05-27 ab0a9275c3bbd9ffa1a3f2147fcb1e409622cca8
代码初始化
已添加1个文件
已修改15个文件
137 ■■■■ 文件已修改
server/system_gateway/src/main/resources/bootstrap.yml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HiddenDangerLogCloudController.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/VisitorWebController.java 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_admin/src/main/resources/bootstrap.yml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/join/HiddenDangerLogJoinMapper.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/ApproveTempl.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/HiddenDangerLog.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Visits.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/reqeust/CheckVisitedDTO.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/MemberService.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerLogServiceImpl.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitReasonServiceImpl.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_gateway/src/main/resources/bootstrap.yml
@@ -14,7 +14,7 @@
      password: nacos
      discovery:
        server-addr: http://175.27.187.84:8848 #配置Nacos地址
        namespace: dmvisit
        namespace: dev_renkang
        username: nacos
        password: nacos
    gateway:
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HiddenDangerLogCloudController.java
@@ -16,6 +16,8 @@
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
/**
 * @author æ±Ÿè¹„蹄
 * @since 2024/04/28 16:06
@@ -67,6 +69,13 @@
        return ApiResponse.success(hiddenDangerLogService.findPage(pageWrap));
    }
    @ApiOperation("列表查询")
    @PostMapping("/findList")
    @CloudRequiredPermission("business:hiddendangerlog:query")
    public ApiResponse<List<HiddenDangerLog>> findList (@RequestBody HiddenDangerLog hiddenDangerLog,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
        return ApiResponse.success(hiddenDangerLogService.findList(hiddenDangerLog));
    }
    @ApiOperation("导出Excel")
    @PostMapping("/exportExcel")
    @CloudRequiredPermission("business:hiddendangerlog:exportExcel")
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/VisitorWebController.java
@@ -8,12 +8,15 @@
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.core.utils.Constants;
import com.doumee.dao.business.model.VisitReason;
import com.doumee.dao.business.model.Visits;
import com.doumee.dao.web.reqeust.CheckVisitedDTO;
import com.doumee.dao.web.response.MemberVO;
import com.doumee.dao.web.response.VisitDetailVO;
import com.doumee.dao.web.response.VisitRecordVO;
import com.doumee.dao.web.response.WxAuthorizeVO;
import com.doumee.service.business.MemberService;
import com.doumee.service.business.VisitReasonService;
import com.doumee.service.business.VisitsService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
@@ -25,6 +28,7 @@
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List;
/**
 * Created by IntelliJ IDEA.
@@ -47,6 +51,8 @@
    @Autowired
    private VisitsService visitsService;
    @Autowired
    private VisitReasonService visitReasonService;
    @ApiOperation(value = "访客微信授权", notes = "访客微信授权获取openId")
    @GetMapping("/wxAuthorize")
@@ -61,7 +67,7 @@
    @ApiOperation(value = "查询被访问人信息", notes = "查询被访问人信息")
    @PostMapping("/getVisitedMember")
    public ApiResponse<MemberVO> getVisitedMember(@Valid @RequestBody CheckVisitedDTO checkVisitedDTO) {
    public ApiResponse<List<MemberVO>> getVisitedMember(@Valid @RequestBody CheckVisitedDTO checkVisitedDTO) {
        return ApiResponse.success("查询成功", memberService.getVisitedMember(checkVisitedDTO));
    }
@@ -74,10 +80,18 @@
    }
    @ApiOperation(value = "来访事由", notes = "来访事由")
    @PostMapping("/visitReason")
    public ApiResponse<List<VisitReason>> visitReason() {
        return ApiResponse.success("查询成功", visitReasonService.findList(null));
    }
    @ApiOperation(value = "访客记录详情", notes = "访客记录详情")
    @GetMapping("/detail")
    public ApiResponse<VisitDetailVO> detail(@RequestParam Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
        return ApiResponse.success("查询成功", visitsService.getVisitDetail(id,getLoginUser(token).getMemberId()));
    public ApiResponse<VisitDetailVO> detail(@RequestParam Integer id) {
        return ApiResponse.success("查询成功", visitsService.getVisitDetail(id,null));
    }
server/visits/dmvisit_admin/src/main/resources/bootstrap.yml
@@ -31,7 +31,7 @@
#        data-id: com.doumee.meeting.admin
      discovery:
        server-addr: http://175.27.187.84:8848 #配置Nacos地址
        namespace: dmvisit
        namespace: dev_renkang
        username: nacos
        password: nacos
# swagger配置
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/join/HiddenDangerLogJoinMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,14 @@
package com.doumee.dao.business.join;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.doumee.dao.business.model.HiddenDangerLog;
import com.github.yulichang.base.mapper.MPJJoinMapper;
/**
 * @author æ±Ÿè¹„蹄
 * @since 2024/04/28 16:06
 */
public interface HiddenDangerLogJoinMapper extends MPJJoinMapper<HiddenDangerLog> {
}
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/ApproveTempl.java
@@ -54,8 +54,8 @@
    @ExcelColumn(name="备注")
    private String remark;
    @ApiModelProperty(value = "名称 0非施工人员访客申请 1非施工人员访客申请 2访客报备 3公车市内用车 4公车室外用车 5市公司物流车预约", example = "1")
    @ExcelColumn(name="名称 0非施工人员访客申请 1非施工人员访客申请 2访客报备 3公车市内用车 4公车室外用车 5市公司物流车预约")
    @ApiModelProperty(value = "名称 0非施工人员访客申请 1施工人员访客申请 2访客报备 3公车市内用车 4公车室外用车 5市公司物流车预约", example = "1")
    @ExcelColumn(name="名称 0非施工人员访客申请 1施工人员访客申请 2访客报备 3公车市内用车 4公车室外用车 5市公司物流车预约")
    private Integer type;
    @ApiModelProperty(value = "名称")
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/HiddenDangerLog.java
@@ -80,4 +80,12 @@
    @ExcelColumn(name="操作后内容")
    private String afterContent;
    @ApiModelProperty(value = "操作人")
    private String createUserName;
    @ApiModelProperty(value = "操作人头像")
    private String avatar;
    @ApiModelProperty(value = "操作组织信息")
    private String companyName;
}
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Visits.java
@@ -234,6 +234,10 @@
    @ApiModelProperty(value = "来源类型:0=本系统;1=ERP", example = "1")
    private Integer sourceType;
    @ApiModelProperty(value = "施工事由")
    @ExcelColumn(name="施工事由")
    private String constructionReason;
    @ApiModelProperty(value = "普通访客申请随访人员")
    @TableField(exist = false)
    private List<Visits> withUserList;
server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/reqeust/CheckVisitedDTO.java
@@ -15,7 +15,6 @@
@Data
public class CheckVisitedDTO {
    @NotBlank(message = "手机号未录入")
    @ApiModelProperty(value = "手机号")
    private String mobile;
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/MemberService.java
@@ -177,7 +177,7 @@
    MemberVO getVisitedMember(CheckVisitedDTO checkVisitedDTO);
    List<MemberVO> getVisitedMember(CheckVisitedDTO checkVisitedDTO);
    /**
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java
@@ -227,7 +227,7 @@
    /**
     * åˆ›å»ºå®¡æ‰¹æµç¨‹
     * @param tempType æ¨¡æ¿ç±»åž‹  0非施工人员访客申请 1非施工人员访客申请 2访客报备 3公车市内用车 4公车室外用车 5市公司物流车预约
     * @param tempType æ¨¡æ¿ç±»åž‹  0非施工人员访客申请 1施工人员访客申请 2访客报备 3公车市内用车 4公车室外用车 5市公司物流车预约
     * @param businessId ä¸šåС䏻键 æ ¹æ® tempType
     * @param createMemberId æäº¤æµç¨‹äººå‘˜
     */
@@ -241,7 +241,7 @@
                .last(" limit 1 ")
        );
        if(Objects.isNull(approveTempl)){
            throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"未查询到配置模板");
            throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"未查询到审批流配置模板");
        }
        //查询配置流程
        List<ApproveParam> approveParamAllList = approveParamMapper.selectList(new QueryWrapper<ApproveParam>()
@@ -305,6 +305,7 @@
                approve.setIsEndCheck((i+1) == approveParamList.size()?Constants.ONE:Constants.ZERO);
                approve.setObjId(businessId);
                approve.setLevel(i+1);
                approve.setObjType(approveTempl.getType());
                approve.setApproveType(approveParam.getApproveType());
                approve.setDriverParam(approveParam.getDriverParam());
                approve.setAddrParam(approveParam.getAddrParam());
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerLogServiceImpl.java
@@ -2,19 +2,28 @@
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.core.utils.Constants;
import com.doumee.core.utils.Utils;
import com.doumee.dao.business.HiddenDangerLogMapper;
import com.doumee.dao.business.join.HiddenDangerLogJoinMapper;
import com.doumee.dao.business.model.Company;
import com.doumee.dao.business.model.HiddenDanger;
import com.doumee.dao.business.model.HiddenDangerLog;
import com.doumee.dao.business.model.Member;
import com.doumee.dao.system.model.SystemUser;
import com.doumee.service.business.HiddenDangerLogService;
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 org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import org.springframework.util.StringUtils;
import java.util.List;
import java.util.Objects;
/**
 * ç†è³ æ“ä½œåŽ†å²è¡¨Service实现
@@ -26,6 +35,9 @@
    @Autowired
    private HiddenDangerLogMapper hiddenDangerLogMapper;
    @Autowired
    private HiddenDangerLogJoinMapper hiddenDangerLogJoinMapper;
    @Override
    public Integer create(HiddenDangerLog hiddenDangerLog) {
@@ -80,8 +92,20 @@
    @Override
    public List<HiddenDangerLog> findList(HiddenDangerLog hiddenDangerLog) {
        QueryWrapper<HiddenDangerLog> wrapper = new QueryWrapper<>(hiddenDangerLog);
        return hiddenDangerLogMapper.selectList(wrapper);
        List<HiddenDangerLog> hiddenDangerLogList = hiddenDangerLogJoinMapper.selectJoinList(HiddenDangerLog.class,
                new MPJLambdaWrapper<HiddenDangerLog>()
                        .selectAll(HiddenDangerLog.class)
                        .selectAs(SystemUser::getRealname,HiddenDangerLog::getCreateUserName)
                        .selectAs(SystemUser::getAvatar,HiddenDangerLog::getAvatar)
                        .selectAs(Company::getName,HiddenDangerLog::getCompanyName)
                        .leftJoin(SystemUser.class,SystemUser::getId,HiddenDangerLog::getCreator)
                        .leftJoin(Company.class,Company::getId,SystemUser::getCompanyId)
                        .eq(Objects.nonNull(hiddenDangerLog.getHiddenDangerId()),HiddenDangerLog::getHiddenDangerId,hiddenDangerLog.getHiddenDangerId())
                        .eq(Objects.isNull(hiddenDangerLog.getHiddenDangerId()),"1",2)
                        .eq(HiddenDangerLog::getIsdeleted, Constants.ZERO)
                        .orderByAsc(HiddenDangerLog::getCreateDate)
        );
        return hiddenDangerLogList;
    }
  
    @Override
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/HiddenDangerServiceImpl.java
@@ -162,6 +162,9 @@
            throw  new BusinessException(ResponseStatus.DATA_EMPTY);
        }
        initFiles(model);
        return model;
    }
    private void initFiles(HiddenDanger unionChange) {
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
@@ -1624,30 +1624,24 @@
    @Override
    public MemberVO getVisitedMember(CheckVisitedDTO checkVisitedDTO){
        Integer validType = Integer.valueOf(systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.BEVISITED_USER_VALID).getCode());
        if(Objects.isNull(checkVisitedDTO)||StringUtils.isBlank(checkVisitedDTO.getMobile())||(validType.equals(Constants.ONE)&&StringUtils.isBlank(checkVisitedDTO.getName()))){
            throw new BusinessException(ResponseStatus.BAD_REQUEST);
        }
        Member member = memberMapper.selectOne(new QueryWrapper<Member>().lambda()
                .eq(Member::getPhone,checkVisitedDTO.getMobile())
                .eq(validType.equals(Constants.ONE),Member::getName,checkVisitedDTO.getName())
    public List<MemberVO> getVisitedMember(CheckVisitedDTO checkVisitedDTO){
        List<Member> memberList = memberMapper.selectList(new QueryWrapper<Member>().lambda()
                .eq(StringUtils.isNotBlank(checkVisitedDTO.getMobile()),Member::getPhone,checkVisitedDTO.getMobile())
                .eq(StringUtils.isNotBlank(checkVisitedDTO.getName()),Member::getName,checkVisitedDTO.getName())
                .eq(Member::getIsdeleted,Constants.ZERO)
//                .eq(Member::getStatus,Constants.ZERO)
                .eq(Member::getStatus,Constants.ZERO)
                .eq(Member::getCanVisit,Constants.ONE)
                .eq(Member::getType,Constants.memberType.internal)
                .last(" limit 1 ")
        );
        List<MemberVO> memberVOList = new ArrayList<>();
        if (com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(memberList)) {
            for (Member member:memberList) {
        MemberVO memberVO = new MemberVO();
        if(!Objects.isNull(member)){
            if(!member.getStatus().equals(Constants.ZERO)){
                throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"被访人账号异常,请确认后再试");
            }
            BeanUtils.copyProperties(member,memberVO);
        }else{
            throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"请核实被访人信息!");
                memberVOList.add(memberVO);
        }
        return memberVO;
        }
        return memberVOList;
    }
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitReasonServiceImpl.java
@@ -98,6 +98,7 @@
    @Override
    public List<VisitReason> findList(VisitReason visitReason) {
        QueryWrapper<VisitReason> wrapper = new QueryWrapper<>(visitReason);
        wrapper.eq("isdeleted",Constants.ZERO);
        return visitReasonMapper.selectList(wrapper);
    }
  
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
@@ -202,7 +202,7 @@
        //检查是否必须答题,并且符合答题要求
        ProblemLog problemLog = isValidProblemLog(visits);
        //获取申请的海康访问门禁组信息
        getHkDeviceRoles(visits,isERP);
//        getHkDeviceRoles(visits,isERP);
        //检验拜访人是否合法
        Member visitMember = isValideVisitedUser(visits.getReceptMemberId());
        if(Constants.equalsInteger(Constants.ZERO, visits.getIdcardType())&&visits.getIdcardNo().length()!=18
@@ -620,9 +620,11 @@
                ||  StringUtils.isBlank( visits.getPhone())
                ||  StringUtils.isBlank( visits.getCompanyName()))
                ||  StringUtils.isBlank( visits.getCarNos())
                ||  Objects.isNull( visits.getMemberNum())
        ){
            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(), "对不起,入厂时间必须大于当前时间!");//