k94314517
2024-02-28 42df87e4459821a18aa8e4998ed94c50f1e1ca70
ERP接口
已修改14个文件
259 ■■■■ 文件已修改
server/dmvisit_admin/src/main/java/com/doumee/api/business/CarEventController.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_admin/src/main/java/com/doumee/api/business/DeviceEventController.java 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_admin/src/main/java/com/doumee/api/business/RetentionController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_admin/src/main/java/com/doumee/api/business/VisitEventController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_admin/src/main/java/com/doumee/api/business/VisitsController.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_service/src/main/java/com/doumee/dao/admin/response/CarEventDTO.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_service/src/main/java/com/doumee/dao/admin/response/DeviceEventDTO.java 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Retention.java 43 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_service/src/main/java/com/doumee/dao/business/model/UserAction.java 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_service/src/main/java/com/doumee/dao/business/model/VisitEvent.java 49 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/RetentionServiceImpl.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/UserActionServiceImpl.java 79 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/dmvisit_admin/src/main/java/com/doumee/api/business/CarEventController.java
@@ -80,8 +80,8 @@
    @PostMapping("/exportExcel")
    //@RequiresPermissions("business:carevent:exportExcel")
    public void exportExcel (@RequestBody PageWrap<CarEvent> pageWrap, HttpServletResponse response) {
        ExcelExporter.build(CarEventVo.class).exportWithFirstAndEnd (carEventService.findPageExcel(pageWrap),"停车场事件推送记录表", null, "停车场事件推送记录导出报表",null , response);
//        ExcelExporter.build(CarEvent.class).export(carEventService.findPage(pageWrap).getRecords(), "停车场事件推送记录表", response);
//        ExcelExporter.build(CarEventVo.class).exportWithFirstAndEnd (carEventService.findPageExcel(pageWrap),"停车场事件推送记录表", null, "停车场事件推送记录导出报表",null , response);
        ExcelExporter.build(CarEventDTO.class).export(carEventService.findVisitCarPage(pageWrap).getRecords(), "停车场事件推送记录表", response);
    }
    @ApiOperation("根据ID查询")
server/dmvisit_admin/src/main/java/com/doumee/api/business/DeviceEventController.java
@@ -80,8 +80,11 @@
    @PostMapping("/exportExcel")
    //@RequiresPermissions("business:deviceevent:exportExcel")
    public void exportExcel (@RequestBody PageWrap<DeviceEvent> pageWrap, HttpServletResponse response) {
        ExcelExporter.build(DeviceEventVo.class).export(deviceEventService.findDeviceEventExcel(pageWrap), "门禁事件推送记录表", response);
        ExcelExporter.build(DeviceEventDTO.class).export(deviceEventService.findDeviceEventDTOPage(pageWrap).getRecords(), "门禁事件推送记录表", response);
    }
//    public void exportExcel (@RequestBody PageWrap<DeviceEvent> pageWrap, HttpServletResponse response) {
//        ExcelExporter.build(DeviceEventVo.class).export(deviceEventService.findDeviceEventExcel(pageWrap), "门禁事件推送记录表", response);
//    }
    @ApiOperation("根据ID查询")
    @GetMapping("/{id}")
server/dmvisit_admin/src/main/java/com/doumee/api/business/RetentionController.java
@@ -80,7 +80,7 @@
    @PostMapping("/exportExcel")
    //@RequiresPermissions("business:retention:exportExcel")
    public void exportExcel (@RequestBody PageWrap<Retention> pageWrap, HttpServletResponse response) {
        ExcelExporter.build(RetentionVo.class).export(retentionService.findPageExcel(pageWrap), "在厂人员信息 表(滞留)", response);
        ExcelExporter.build(Retention.class).export(retentionService.findTrainTimePage(pageWrap).getRecords(), "实时在场人员", response);
    }
    @ApiOperation("根据ID查询")
server/dmvisit_admin/src/main/java/com/doumee/api/business/VisitEventController.java
@@ -80,7 +80,7 @@
    @PostMapping("/exportExcel")
    //@RequiresPermissions("business:visitevent:exportExcel")
    public void exportExcel (@RequestBody PageWrap<VisitEvent> pageWrap, HttpServletResponse response) {
        ExcelExporter.build(VisitEvent.class).export(visitEventService.findPageExcel(pageWrap), "访客事件推送记录表", response);
        ExcelExporter.build(VisitEvent.class).export(visitEventService.findPageExcel(pageWrap), "访客出入事件_" + System.currentTimeMillis(), response);
    }
    @ApiOperation("根据ID查询")
server/dmvisit_admin/src/main/java/com/doumee/api/business/VisitsController.java
@@ -6,6 +6,7 @@
import com.doumee.core.model.ApiResponse;
import com.doumee.core.model.PageWrap;
import com.doumee.core.model.PageData;
import com.doumee.core.utils.Constants;
import com.doumee.dao.business.model.Visits;
import com.doumee.service.business.VisitsService;
import com.doumee.service.business.impl.hksync.fhk.HkSyncVisitFromHKServiceImpl;
@@ -104,6 +105,7 @@
    @PostMapping("/retentionPage")
    @RequiresPermissions("business:visits:query")
    public ApiResponse<PageData<Visits>> retentionPage (@RequestBody PageWrap<Visits> pageWrap) {
        pageWrap.getModel().setLevelStatus(Constants.ZERO);
        return ApiResponse.success(visitsService.retentionPage(pageWrap));
    }
}
server/dmvisit_service/src/main/java/com/doumee/dao/admin/response/CarEventDTO.java
@@ -1,5 +1,6 @@
package com.doumee.dao.admin.response;
import com.doumee.core.annotation.excel.ExcelColumn;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@@ -50,7 +51,9 @@
    @ApiModelProperty(value = "事件类型")
    private Integer eventType;
    @ApiModelProperty(value = "事件类型名称")
    @ExcelColumn(name="事件类型",index = 4,width = 18)
    private String eventTypeName;
    @ApiModelProperty(value = "事件状态,0-瞬时 1-开始2-停止4-事件联动结果更新5-事件图片异步上传")
@@ -60,6 +63,7 @@
    private String timeout;
    @ApiModelProperty(value = "事件发生时间(设备时间")
    @ExcelColumn(name="事件时间",index = 10,width = 16)
    private String happenTime;
    @ApiModelProperty(value = "事件发生的事件源父设备")
@@ -75,18 +79,22 @@
    private String cardNo;
    /**关联人员信息**/
    @ApiModelProperty(value = "手机号")
    @ExcelColumn(name="手机号",index = 8,width = 16)
    private String personPhone;
    @ApiModelProperty(value = "人员类型")
    @ExcelColumn(name="人员类型",index = 6,width = 10,valueMapping = "0=劳务访客;1=普通访客;2=内部人员;")
    private Integer personType;
    @ApiModelProperty(value = "人员身份证号")
    private String personIdcardDecode;
    @ApiModelProperty(value = "人员组织公司")
    @ExcelColumn(name="公司/部门",index = 9,width = 16)
    private String personCompanyName;
    @ApiModelProperty(value = "姓名")
    @ExcelColumn(name="姓名",index = 7,width = 16)
    private String personName;
    @ApiModelProperty(value = "事件号,1:压线事件2:上传图片3:入场4:出场5:车牌矫正6:图片重传")
@@ -99,6 +107,7 @@
    private String gateIndex;
    @ApiModelProperty(value = "出入口名称")
    @ExcelColumn(name="出入口名称",index = 3,width = 18)
    private String gateName;
    @ApiModelProperty(value = "放行权限")
@@ -117,9 +126,11 @@
    private Integer releaseWay;
    @ApiModelProperty(value = "进出场类型,0:进场,1:出场")
    @ExcelColumn(name="出入类型",index = 5,width = 10,valueMapping = "0=进场;1=出场;")
    private Integer inoutType;
    @ApiModelProperty(value = "车牌号")
    @ExcelColumn(name="车牌号",index = 1,width = 12)
    private String plateNos;
    @ApiModelProperty(value = "车辆主品牌")
@@ -129,6 +140,7 @@
    private String parkIndex;
    @ApiModelProperty(value = "停车库名称")
    @ExcelColumn(name="停车库名称",index = 2,width = 18)
    private String parkName;
    @ApiModelProperty(value = "车牌颜色")
server/dmvisit_service/src/main/java/com/doumee/dao/admin/response/DeviceEventDTO.java
@@ -14,8 +14,6 @@
@ApiModel("门禁事件推送记录表")
public class DeviceEventDTO {
    @ApiModelProperty(value = "创建人编码")
    private Integer creator;
@@ -38,6 +36,7 @@
    private String eventId;
    @ApiModelProperty(value = "事件类型 -- 197163,人脸认证失败 ; 196893,人脸认证通过")
    @ExcelColumn(name="事件类型",index = 7,width = 16,valueMapping = "197163=人脸认证失败;196893=人脸认证通过;")
    private Integer eventType;
    @ApiModelProperty(value = "事件类型名称")
    private String eventTypeName;
@@ -47,15 +46,18 @@
    @ApiModelProperty(value = "事件发生时间(设备时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ExcelColumn(name="事件时间",index = 9,width = 16,dateFormat = "yyyy-MM-dd HH:mm:ss")
    private String happenTime;
    @ApiModelProperty(value = "门禁点唯一接入编码")
    private String srcIndex;
    @ApiModelProperty(value = "门禁点名称")
    @ExcelColumn(name="门禁点",index = 6,width = 16)
    private String srcName;
    @ApiModelProperty(value = "门禁名称")
    @ExcelColumn(name="门禁名称",index = 5,width = 16)
    private String devName;
    @ApiModelProperty(value = "事件状态,0-瞬时1-开始2-停止4-事件联动结果更新5-事件图片异步上传")
@@ -86,10 +88,10 @@
    private Integer extEventDoorID;
    @ApiModelProperty(value = "身份证图片URL")
    @ExcelColumn(name="身份证图片URL")
    private String extEventIDCardPictureURL;
    @ApiModelProperty(value = "进出方向 1-进 0-出 -1:未知 要求:进门读卡器拨码设置为1,出门读卡器拨码设置为2")
    @ExcelColumn(name="出入类型",index = 8,width = 8,valueMapping = "1=进;-1=出;")
    private Integer extEventInOut;
    @ApiModelProperty(value = "就地控制器id")
@@ -102,18 +104,22 @@
    private String extEventPersonNo;
    @ApiModelProperty(value = "公司/组织")
    @ExcelColumn(name="公司/组织",index = 4,width = 16)
    private String personCompanyName;
    @ApiModelProperty(value = "手机号")
    @ExcelColumn(name="手机号",index = 3,width = 10)
    private String personPhone;
    @ApiModelProperty(value = "人员类型")
    @ExcelColumn(name="人员类型",valueMapping = "0=劳务访客;1=普通访客;2=内部人员;",index = 1,width = 10)
    private Integer personType;
    @ApiModelProperty(value = "人员身份证号")
    private String personIdcardDecode;
    @ApiModelProperty(value = "人员名称")
    @ExcelColumn(name="姓名",index = 2,width = 10)
    private String personName;
    @ApiModelProperty(value = "人员编码")
    private String memberId;
server/dmvisit_service/src/main/java/com/doumee/dao/business/model/Retention.java
@@ -23,114 +23,96 @@
    @TableId(type = IdType.AUTO)
    @ApiModelProperty(value = "主键")
    @ExcelColumn(name="主键")
    private Integer id;
    @ApiModelProperty(value = "创建人编码")
    @ExcelColumn(name="创建人编码")
    private Integer creator;
    @ApiModelProperty(value = "创建时间")
    @ExcelColumn(name="创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date createDate;
    @ApiModelProperty(value = "更新人编码")
    @ExcelColumn(name="更新人编码")
    private Integer editor;
    @ApiModelProperty(value = "更新时间")
    @ExcelColumn(name="更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date editDate;
    @ApiModelProperty(value = "是否删除0否 1是")
    @ExcelColumn(name="是否删除0否 1是")
    private Integer isdeleted;
    @ApiModelProperty(value = "备注")
    @ExcelColumn(name="备注")
    private String remark;
    @ApiModelProperty(value = "所属组织编码(关联company表)")
    @ExcelColumn(name="所属组织编码(关联company表)")
    private Integer companyId;
    @ApiModelProperty(value = "人脸照片")
    @ExcelColumn(name="人脸照片")
    private String faceImg;
    @ApiModelProperty(value = "健康码")
    @ExcelColumn(name="健康码")
    private String imgurl;
    @ApiModelProperty(value = "类型 0劳务访客 1普通访客 2内部员工 3车辆信息")
    @ExcelColumn(name="类型 0劳务访客 1普通访客 2内部员工 3车辆信息")
    @ExcelColumn(name="人员类型" ,index = 2, valueMapping="0=劳务访客;1=普通访客;2=内部员工;3=车辆信息;",width = 8)
    private Integer type;
    @ApiModelProperty(value = "访客名称")
    @ExcelColumn(name="访客名称")
    @ExcelColumn(name="姓名" ,index = 3,width = 6)
    private String name;
    @ApiModelProperty(value = "访客年龄")
    @ExcelColumn(name="访客年龄")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date birthday;
    @ApiModelProperty(value = "手机号")
    @ExcelColumn(name="手机号")
    @ExcelColumn(name="手机号" ,index = 4,width = 12)
    private String phone;
    @ApiModelProperty(value = "身份证号(MD4加密)")
    @ExcelColumn(name="身份证号(MD4加密)")
    private String idcardNo;
    @ApiModelProperty(value = "证件显示信息")
    @ExcelColumn(name="证件显示信息")
    @ExcelColumn(name="身份证号" ,index = 5,width = 12)
    private String idcardDecode;
    @ApiModelProperty(value = "工号")
    @ExcelColumn(name="工号")
    private String code;
    @ApiModelProperty(value = "班次")
    @ExcelColumn(name="班次")
    private Integer classes;
    @ApiModelProperty(value = "海康门禁名称")
    @ExcelColumn(name="海康门禁名称")
    @ExcelColumn(name="进厂门禁" ,index = 6,width = 12)
    private String deviceName;
    @ApiModelProperty(value = "海康门禁编码")
    @ExcelColumn(name="海康门禁编码")
    private String deviceIndex;
    @ApiModelProperty(value = "入厂时间")
    @ExcelColumn(name="入厂时间")
    @ExcelColumn(name="进场时间" ,index = 7,width = 12,dateFormat = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date eventDate;
    @ApiModelProperty(value = "访客ID(关联member)")
    @ExcelColumn(name="访客ID(关联member)")
    private Integer memberId;
    @ApiModelProperty(value = "事件类型码")
    @ExcelColumn(name="事件类型码")
    private String eventCode;
    @ApiModelProperty(value = "车牌号(type=3使用)")
    @ExcelColumn(name="车牌号(type=3使用)")
    private String carNo;
    @ApiModelProperty(value = "公司组织")
    @ExcelColumn(name="公司组织")
    @TableField(exist = false)
    public String companyName;
    @ApiModelProperty(value = "访客组织名称")
    @ExcelColumn(name="访客组织名称")
    @TableField(exist = false)
    public String visitCompanyName;
    // 条件查询参数
    @ApiModelProperty(value = "姓名/手机号")
    @TableField(exist = false)
    private String keyWords;
@@ -142,9 +124,14 @@
    @ApiModelProperty(value = "结束时间")
    @TableField(exist = false)
    private Date endTime;
    @ApiModelProperty(value = "人脸照片")
    @TableField(exist = false)
    private String faceImgFull;
    @ApiModelProperty(value = "导出公司名称",hidden = true)
    @ExcelColumn(name="公司/组织" ,index = 1,width = 12)
    @TableField(exist = false)
    public String excelCompanyName;
}
server/dmvisit_service/src/main/java/com/doumee/dao/business/model/UserAction.java
@@ -1,5 +1,6 @@
package com.doumee.dao.business.model;
import com.baomidou.mybatisplus.annotation.TableField;
import com.doumee.core.annotation.excel.ExcelColumn;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@@ -31,7 +32,6 @@
    @ApiModelProperty(value = "创建时间")
    @ExcelColumn(name="创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date createDate;
    @ApiModelProperty(value = "更新人编码", example = "1")
@@ -63,4 +63,28 @@
    @ExcelColumn(name="操作前状态 0解冻 1冻结 2拉黑 3恢复 4设为拜访人 5取消拜访人 6设为高级审批人 7取消高级审批人 8手动离场 9删除")
    private Integer beforeStatus;
    @ApiModelProperty(value = "操作人名称", example = "1")
    @TableField(exist = false)
    private String createName;
    @ApiModelProperty(value = "人员类型:0劳务访客 1普通访客  2内部人员", example = "1")
    @TableField(exist = false)
    private String memberType;
    @ApiModelProperty(value = "操作对象", example = "1")
    @TableField(exist = false)
    private String memberName;
    @ApiModelProperty(value = "公司名称", example = "1")
    @TableField(exist = false)
    private String companyName;
    @ApiModelProperty(value = "访客公司名称", example = "1")
    @TableField(exist = false)
    private String visitCompanyName;
    @ApiModelProperty(value = "手机号", example = "1")
    @TableField(exist = false)
    private String mobile;
}
server/dmvisit_service/src/main/java/com/doumee/dao/business/model/VisitEvent.java
@@ -23,151 +23,121 @@
    @TableId(type = IdType.AUTO)
    @ApiModelProperty(value = "主键", example = "1")
//    @ExcelColumn(name="主键")
    private Integer id;
    @ApiModelProperty(value = "创建人编码", example = "1")
//    @ExcelColumn(name="创建人编码")
    private Integer creator;
    @ApiModelProperty(value = "创建时间")
    @ExcelColumn(name="创建时间" )
//    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date createDate;
    @ApiModelProperty(value = "更新人编码", example = "1")
//    @ExcelColumn(name="更新人编码")
    private Integer editor;
    @ApiModelProperty(value = "更新时间")
//    @ExcelColumn(name="更新时间")
//    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date editDate;
    @ApiModelProperty(value = "是否删除0否 1是", example = "1")
//    @ExcelColumn(name="是否删除0否 1是")
    private Integer isdeleted;
    @ApiModelProperty(value = "备注")
//    @ExcelColumn(name="备注")
    private String remark;
    @ApiModelProperty(value = "事件唯一标识,同一事件若上报多次,则上报事件的eventId相同")
//    @ExcelColumn(name="事件唯一标识")
    private String eventId;
    @ApiModelProperty(value = "事件源编号,物理设备是资源编号")
//    @ExcelColumn(name="事件源编号,物理设备是资源编号")
    private String srcIndex;
    @ApiModelProperty(value = "事件源类型")
//    @ExcelColumn(name="事件源类型")
    private String srcType;
    @ApiModelProperty(value = "事件源名称")
//    @ExcelColumn(name="事件源名称")
    private String srcName;
    @ApiModelProperty(value = "事件类型(登记 签离)")
//    @ExcelColumn(name="事件类型")
    private Integer eventType;
    @ApiModelProperty(value = "事件状态,0-瞬时1-开始2-停止4-事件联动结果更新5-事件图片异步上传", example = "1")
//    @ExcelColumn(name="事件状态,0-瞬时1-开始2-停止4-事件联动结果更新5-事件图片异步上传")
    private Integer status;
    @ApiModelProperty(value = "脉冲超时时间")
//    @ExcelColumn(name="脉冲超时时间")
    private Integer timeout;
    @ApiModelProperty(value = "事件发生时间(设备时间")
//    @ExcelColumn(name="事件发生时间")
    @ExcelColumn(name="事件时间",index = 9,width = 16)
    private String happenTime;
    @ApiModelProperty(value = "事件发生的事件源父设备")
//    @ExcelColumn(name="事件发生的事件源父设备")
    private String srcParentIndex;
    @ApiModelProperty(value = "访客Is,,对应访客来访记录中的orderId字段")
//    @ExcelColumn(name="访客Is,,对应访客来访记录中的orderId字段")
    private String visitorId;
    @ApiModelProperty(value = "姓名")
    @ExcelColumn(name="姓名")
    @ExcelColumn(name="姓名" ,index = 1,width = 10)
    private String personName;
    @ApiModelProperty(value = "性别 1-男2-女", example = "1")
//    @ExcelColumn(name="性别 1-男2-女")
    private Integer sex;
    @ApiModelProperty(value = "证件类型 111身份证")
//    @ExcelColumn(name="证件类型 111身份证")
    private Integer idType;
    @ApiModelProperty(value = "证件号 ")
    private String idNo;
    @ApiModelProperty(value = "被访问人姓名")
    @ExcelColumn(name="被访问人姓名")
    @ExcelColumn(name="被访问人姓名",index = 6,width = 16)
    private String beVisitedPersonName;
    @ApiModelProperty(value = "被访问人所属组织")
    @ExcelColumn(name="被访问人所属组织")
    @ExcelColumn(name="被访问人组织",index = 7,width = 30)
    private String beVisitedPersonOrg;
    @ApiModelProperty(value = "来访单位")
    @ExcelColumn(name="来访单位")
    @ExcelColumn(name="公司",index = 4,width = 20)
    private String visitorWorkUint;
    @ApiModelProperty(value = "访客验证码")
//    @ExcelColumn(name="访客验证码")
    private String visitorCode;
    @ApiModelProperty(value = "来访事由")
    @ExcelColumn(name="来访事由")
    private String purpose;
    @ApiModelProperty(value = "证件签发机关")
//    @ExcelColumn(name="证件签发机关")
    private String signOrg;
    @ApiModelProperty(value = "来访时间")
    @ExcelColumn(name="来访时间")
    private String startTime;
    @ApiModelProperty(value = "离开时间")
    @ExcelColumn(name="离开时间")
    private String endTime;
    @ApiModelProperty(value = "手机号码")
    @ExcelColumn(name="手机号码")
    @ExcelColumn(name="手机号码",index = 2,width = 10)
    private String phone;
    @ApiModelProperty(value = "车牌号")
    @ExcelColumn(name="车牌号")
    @ExcelColumn(name="车牌号",index = 5,width = 16)
    private String carNo;
    @ApiModelProperty(value = "照片uri")
//    @ExcelColumn(name="照片uri")
    private String photoUrl;
    @ApiModelProperty(value = "抓拍图uri")
//    @ExcelColumn(name="抓拍图uri")
    private String captureUrl;
    @ApiModelProperty(value = "图片存储服务器唯一标识")
//    @ExcelColumn(name="图片存储服务器唯一标识")
    private String svrIndexCode;
    @ApiModelProperty(value = "被访问人id")
//    @ExcelColumn(name="被访问人id")
    private String beVisitedPersonId;
    @ApiModelProperty(value = "被访问人所属组织id")
//    @ExcelColumn(name="被访问人所属组织id")
    private String beVisitedPersonOrgId;
    @ApiModelProperty(value = "证件号")
    @ExcelColumn(name="证件号")
    @ExcelColumn(name="证件号" ,index = 3,width = 16)
    private String idcardDecode;
    // 条件查询参数
@@ -185,11 +155,10 @@
    @ApiModelProperty(value = "事件类型名称")
    @TableField(exist = false)
    @ExcelColumn(name="事件类型")
    @ExcelColumn(name="事件类型",index = 8,width = 16)
    private String eventTypeName;
    @ApiModelProperty(value = "抓拍图uri完整")
    @TableField(exist = false)
//    @ExcelColumn(name="抓拍图uri")
    private String captureUrlFull;
}
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
@@ -224,11 +224,11 @@
                userAction.setCreator(loginUserInfo.getId());
                if(Constants.equalsInteger(type,Constants.ONE)){
                    userAction.setType(Constants.ONE);
                    userAction.setRemark("由【"+loginUserInfo.getUsername()+"】于【操作时间"+new Date()+"】,进行【冻结】");
                    userAction.setRemark("由【"+loginUserInfo.getUsername()+"】于【操作时间"+DateUtil.format(new Date(),"yyyy-MM-dd HH:mm:ss")+"】,进行【冻结】");
                }
                if(Constants.equalsInteger(type,Constants.TWO)){
                    userAction.setType(Constants.TWO);
                    userAction.setRemark("由【"+loginUserInfo.getUsername()+"】于【操作时间"+new Date()+"】,进行【拉黑】");
                    userAction.setRemark("由【"+loginUserInfo.getUsername()+"】于【操作时间"+DateUtil.format(new Date(),"yyyy-MM-dd HH:mm:ss")+"】,进行【拉黑】");
                }
                userAction.setMemberId(id+"");
@@ -276,11 +276,11 @@
        userAction.setCreator(loginUserInfo.getId());
        if(Constants.equalsInteger(result.getType(),Constants.TWO)){
            userAction.setType(Constants.ONE);
            userAction.setRemark("由【"+loginUserInfo.getUsername()+"】于【操作时间"+new Date()+"】,进行【冻结】");
            userAction.setRemark("由【"+loginUserInfo.getUsername()+"】于【操作时间"+DateUtil.format(new Date(),"yyyy-MM-dd HH:mm:ss")+"】,进行【冻结】");
        }
        if(Constants.equalsInteger(result.getType(),Constants.ZERO)){
            userAction.setType(Constants.TWO);
            userAction.setRemark("由【"+loginUserInfo.getUsername()+"】于【操作时间"+new Date()+"】,进行【拉黑】");
            userAction.setRemark("由【"+loginUserInfo.getUsername()+"】于【操作时间"+DateUtil.format(new Date(),"yyyy-MM-dd HH:mm:ss")+"】,进行【拉黑】");
        }
        userAction.setMemberId(result.getId()+"");
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/RetentionServiceImpl.java
@@ -205,6 +205,13 @@
                            +dataMap.get(Constants.MEMBER_IMG).getCode()
                            +obj.getFaceImg());
                }
                if(Objects.nonNull(obj.getType())){
                    if(!obj.getType().equals(Constants.memberType.visitor)){
                        obj.setExcelCompanyName(obj.getCompanyName());
                    }else{
                        obj.setExcelCompanyName(obj.getVisitCompanyName());
                    }
                }
            });
        }
        return PageData.from(retentionIPage);
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/UserActionServiceImpl.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.UserActionMapper;
import com.doumee.dao.business.join.UserActionJoinMapper;
import com.doumee.dao.business.model.Company;
import com.doumee.dao.business.model.Member;
import com.doumee.dao.business.model.ParkBook;
import com.doumee.dao.business.model.UserAction;
import com.doumee.dao.system.model.SystemUser;
import com.doumee.service.business.UserActionService;
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.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.List;
import java.util.Objects;
/**
 * 人员操作记录日志Service实现
@@ -26,6 +35,9 @@
    @Autowired
    private UserActionMapper userActionMapper;
    @Autowired
    private UserActionJoinMapper userActionJoinMapper;
    @Override
    public Integer create(UserAction userAction) {
@@ -87,48 +99,33 @@
    @Override
    public PageData<UserAction> findPage(PageWrap<UserAction> pageWrap) {
        IPage<UserAction> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
        QueryWrapper<UserAction> queryWrapper = new QueryWrapper<>();
        MPJLambdaWrapper<UserAction> queryWrapper = new MPJLambdaWrapper<>();
        Utils.MP.blankToNull(pageWrap.getModel());
        if (pageWrap.getModel().getId() != null) {
            queryWrapper.lambda().eq(UserAction::getId, pageWrap.getModel().getId());
        }
        if (pageWrap.getModel().getCreator() != null) {
            queryWrapper.lambda().eq(UserAction::getCreator, pageWrap.getModel().getCreator());
        }
        if (pageWrap.getModel().getCreateDate() != null) {
            queryWrapper.lambda().ge(UserAction::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate()));
            queryWrapper.lambda().le(UserAction::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate()));
        }
        if (pageWrap.getModel().getEditor() != null) {
            queryWrapper.lambda().eq(UserAction::getEditor, pageWrap.getModel().getEditor());
        }
        if (pageWrap.getModel().getEditDate() != null) {
            queryWrapper.lambda().ge(UserAction::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate()));
            queryWrapper.lambda().le(UserAction::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate()));
        }
        if (pageWrap.getModel().getIsdeleted() != null) {
            queryWrapper.lambda().eq(UserAction::getIsdeleted, pageWrap.getModel().getIsdeleted());
        }
        if (pageWrap.getModel().getRemark() != null) {
            queryWrapper.lambda().eq(UserAction::getRemark, pageWrap.getModel().getRemark());
        }
        if (pageWrap.getModel().getType() != null) {
            queryWrapper.lambda().eq(UserAction::getType, pageWrap.getModel().getType());
        }
        if (pageWrap.getModel().getMemberId() != null) {
            queryWrapper.lambda().eq(UserAction::getMemberId, pageWrap.getModel().getMemberId());
        }
        if (pageWrap.getModel().getBeforeStatus() != null) {
            queryWrapper.lambda().eq(UserAction::getBeforeStatus, pageWrap.getModel().getBeforeStatus());
        }
        for(PageWrap.SortData sortData: pageWrap.getSorts()) {
            if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) {
                queryWrapper.orderByDesc(sortData.getProperty());
            } else {
                queryWrapper.orderByAsc(sortData.getProperty());
            }
        }
        return PageData.from(userActionMapper.selectPage(page, queryWrapper));
        UserAction queryModel =  pageWrap.getModel();
        queryWrapper.selectAll(UserAction.class)
                .leftJoin(Member.class,Member::getId,UserAction::getMemberId)
                .leftJoin(Company.class,Company::getId,Member::getCompanyId)
                .leftJoin(SystemUser.class,SystemUser::getId,UserAction::getCreator)
                .selectAs(SystemUser::getRealname,UserAction::getCreateName)
                .selectAs(Member::getName,UserAction::getMemberName)
                .selectAs(Company::getName,UserAction::getCompanyName)
                .selectAs(Member::getType,UserAction::getMemberType)
                .selectAs(Member::getPhone,UserAction::getMobile)
                .select(" ( SELECT v.company_name FROM visits v WHERE v.member_id = t.member_id ORDER BY create_date DESC limit 1 ) as visitCompanyName ")
                .like(StringUtils.isNotBlank(queryModel.getCreateName()),SystemUser::getRealname,queryModel.getCreateName())
                .like(StringUtils.isNotBlank(queryModel.getMemberName()),Member::getName,queryModel.getMemberName())
                .like(StringUtils.isNotBlank(queryModel.getMobile()),Member::getPhone,queryModel.getMobile())
                .and(StringUtils.isNotBlank(queryModel.getCompanyName()),
                        p-> p.like(Company::getName, queryModel.getCompanyName())
                                .or()
                                .exists(" select 1 from visits v where  v.member_id = t.member_id and v.company_name like '%"+pageWrap.getModel().getCompanyName()+"%' "))
                .eq(!Objects.isNull(queryModel.getMemberType()),Member::getType,queryModel.getMemberType())
                .eq(!Objects.isNull(queryModel.getBeforeStatus()),UserAction::getBeforeStatus,queryModel.getBeforeStatus())
                .eq(!Objects.isNull(queryModel.getType()),UserAction::getType,queryModel.getType())
                .orderByDesc(UserAction::getCreateDate)
        ;
        IPage<UserAction> result =  userActionJoinMapper.selectJoinPage(page,UserAction.class,queryWrapper);
        return PageData.from(result);
    }
    @Override
server/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
@@ -1033,11 +1033,9 @@
        queryWrapper.eq(Visits::getIsdeleted,Constants.ZERO);
        queryWrapper.eq(Objects.nonNull(pageWrap.getModel().getType()),Visits::getType,pageWrap.getModel().getType());
        queryWrapper.and(StringUtils.isNotBlank(pageWrap.getModel().getName()),ms->ms.like(Visits::getPhone,pageWrap.getModel().getName())
                .or().like(Visits::getPhone,pageWrap.getModel().getName()))
                .eq(StringUtils.isNotBlank(pageWrap.getModel().getIdcardNo()),Visits::getIdcardNo,StringUtils.isNotBlank(pageWrap.getModel().getIdcardNo()))
                .eq(StringUtils.isNotBlank(pageWrap.getModel().getCompanyName()),Visits::getCompanyName,pageWrap.getModel().getCompanyName())
                .eq(Objects.nonNull(pageWrap.getModel().getStatus()),Visits::getStatus,pageWrap.getModel().getStatus());
        queryWrapper.isNull(!Objects.nonNull(pageWrap.getModel().getLevelStatus()),Visits::getOutDate);
                .or().like(Visits::getName,pageWrap.getModel().getName()));
        queryWrapper.eq(StringUtils.isNotBlank(pageWrap.getModel().getIdcardNo()),Visits::getIdcardNo,StringUtils.isNotBlank(pageWrap.getModel().getIdcardNo()));
        queryWrapper.eq(StringUtils.isNotBlank(pageWrap.getModel().getCompanyName()),Visits::getCompanyName,pageWrap.getModel().getCompanyName());
        queryWrapper.orderByDesc(Visits::getEditDate);
        IPage<Visits> result = visitsJoinMapper.selectJoinPage(page, Visits.class,queryWrapper);
        if(result!=null&&result.getRecords()!=null){