jiangping
2024-10-12 829f863fe0c6be33067d9fd4115660472bf20852
最新版本
已修改3个文件
43 ■■■■ 文件已修改
server/system_service/src/main/java/com/doumee/dao/business/model/Company.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HkInterfaceTestCloudController.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java 33 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/dao/business/model/Company.java
@@ -76,8 +76,8 @@
    @ExcelColumn(name="图标")
    private String imgurl;
    @ApiModelProperty(value = "类型 0劳务公司 1内部组织")
    @ExcelColumn(name="类型 0劳务公司 1内部组织")
    @ApiModelProperty(value = "类型 0相关方公司 1内部组织")
    @ExcelColumn(name="类型 0相关方公司 1内部组织")
    private Integer type;
    @ApiModelProperty(value = "分类编码(关联category)")
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/HkInterfaceTestCloudController.java
@@ -100,10 +100,10 @@
    public ApiResponse<BaseResponse> testBroadcast(@RequestBody CustomBroadcastRequest request, HttpServletResponse response) {
        return ApiResponse.success(  HKService.customBroadcast(request));
    }
    @ApiOperation("【海康】获取代办")
    @PostMapping("/testBroadcast")
    @ApiOperation("【海康】获取代办列表")
    @PostMapping("/getTodoListPage")
    @LoginNoRequired
    public ApiResponse<BaseResponse> testBroadcast(@RequestBody GetTodoListRequest request, HttpServletResponse response) {
    public ApiResponse<BaseResponse> getTodoListPage(@RequestBody GetTodoListRequest request, HttpServletResponse response) {
        return ApiResponse.success(  HKService.getTodoListPage(request));
    }
    @ApiOperation("【海康】测试人脸图片下载")
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java
@@ -182,20 +182,39 @@
        //海康人员编码
        String userNo = request.getData().getExtEventPersonNo();
        if(StringUtils.isNotBlank(userNo)){
            Member member = memberMapper.selectOne(new QueryWrapper<Member>().lambda().eq(Member::getHkId,userNo).last("limit 1"));
            if(member !=null){
            Member member = memberMapper.selectJoinOne(Member.class,new MPJLambdaWrapper<Member>()
                    .selectAll(Member.class)
                    .selectAs(Member::getCompanyType,Company::getType)
                    .leftJoin(Company.class,Company::getId,Member::getCompanyId)
                    .eq(Member::getHkId,userNo)
                    .last("limit 1"));
                //如果人员信息存在,则删除之前的所有进场数据(无论此次推送是进厂还是出场推送事件)
                Device d = deviceMapper.selectOne(new QueryWrapper<Device>().lambda()
                        .eq(Device::getDoorId,request.getSrcIndex())
                        .eq(Device::getIsdeleted,Constants.ZERO)
                        .last("limit 1" ));
            if(d!=null && !(Constants.equalsInteger(d.getIsEntrance(),Constants.ONE) && Constants.formatIntegerNum(request.getData().getExtEventInOut()) != Constants.ONE)){
                //如果是进门,录入人员的在场数据记录
                inoutDayCount.setInMemberNum(Constants.formatIntegerNum(inoutDayCount.getInMemberNum())+1);//入场人次
            }else{
                inoutDayCount.setOutMemberNum(Constants.formatIntegerNum(inoutDayCount.getOutMemberNum())+1);//离场人次
            }
            if(member !=null){
                delRetentionLis.add(member.getId());
                if(d!=null && !(Constants.equalsInteger(d.getIsEntrance(),Constants.ONE) && Constants.formatIntegerNum(request.getData().getExtEventInOut()) != Constants.ONE)){
                    //如果是进门,录入人员的在场数据记录
                    retentionList.add(getRetentionModelByRequest(member,request));
                    inoutDayCount.setInMemberNum(1);//入场人次
                    if(Constants.equalsInteger(member.getCompanyType(),Constants.ONE)){
                        inoutDayCount.setInSelfMemberNum(Constants.formatIntegerNum(inoutDayCount.getInSelfMemberNum())+1);//内部人员入场人次
                }else{
                    inoutDayCount.setOutMemberNum(1);//离场人次
                        inoutDayCount.setInOtherMemberNum(Constants.formatIntegerNum(inoutDayCount.getInOtherMemberNum())+1);//相关方入场人次
                    }
                }else{
                    if(Constants.equalsInteger(member.getCompanyType(),Constants.ONE)){
                        inoutDayCount.setOutSelfMemberNum(Constants.formatIntegerNum(inoutDayCount.getOutSelfMemberNum())+1);//内部人员出场人次
                    }else{
                        inoutDayCount.setOutOtherMemberNum(Constants.formatIntegerNum(inoutDayCount.getOutOtherMemberNum())+1);//相关方出场人次
                    }
                }
            }
        }
@@ -692,12 +711,13 @@
            List<CarEvent> list = new ArrayList<>();
            List<Retention> retentionList = new ArrayList<>();
            List<String> delRetentionList = new ArrayList<>();
            InoutDayCount inoutDayCount = new InoutDayCount();
            for(EventParkInfoRequest request : events){
                if(request.getData() ==null ||StringUtils.isBlank(request.getData().getPlateNo())){
                    continue;
                }
                //封装事件信息表对象
                list.add(getParkEventModelByRequest(request,delRetentionList,retentionList));
                list.add(getParkEventModelByRequest(request,delRetentionList,retentionList,inoutDayCount));
            }
            if(list.size()>0){
                //插入门禁记录
@@ -713,6 +733,7 @@
                //再插入最新的在厂人员
                retentionMapper.insert(retentionList);
            }
            dealInoutDayCountBiz(inoutDayCount);
            log.info("【海康停车场事件推送】========成功=======");
        }catch (Exception e){
@@ -727,7 +748,7 @@
     * @param request
     * @return
     */
    private CarEvent getParkEventModelByRequest(EventParkInfoRequest request, List<String> delRetentionList , List<Retention> retentionList ) {
    private CarEvent getParkEventModelByRequest(EventParkInfoRequest request, List<String> delRetentionList , List<Retention> retentionList,InoutDayCount inoutDayCount ) {
        CarEvent event = new CarEvent();
        event.setIsdeleted(Constants.ZERO);
        event.setCreateDate(DateUtil.getISO8601DateByStr(request.getHappenTime()));