jiangping
2024-10-22 168c5450e3493852059da54d698d08c2269b91fc
Merge remote-tracking branch 'origin/master'
已修改21个文件
291 ■■■■ 文件已修改
h5_meeting/pages/index/config.vue 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
h5_meeting/pages/index/index.vue 21 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
h5_meeting/utils/config.js 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
h5_meeting/utils/service.js 13 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/meeting/meeting_admin/src/main/java/com/doumee/cloud/admin/BookingsCloudController.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/api/cloud/SystemUserCloudController.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/core/utils/Constants.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/service/system/SystemUserService.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/service/system/impl/NoticesServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/system_service/src/main/java/com/doumee/service/system/impl/SystemUserServiceImpl.java 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformBooksCloudController.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformJobCloudController.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Member.java 72 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformBooks.java 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformJob.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Visits.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarsServiceImpl.java 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformBooksServiceImpl.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java 48 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
h5_meeting/pages/index/config.vue
@@ -28,17 +28,20 @@
</template>
<script>
    import { baseUrl } from '@/utils/config.js'
    export default {
        data() {
            return {
                param: {
                    baseUrl: 'http://192.168.5.13/gateway_interface/'
                    baseUrl,
                    time: 60
                }
            };
        },
        onLoad(){
            const param = uni.getStorageSync('param') || {
                baseUrl: 'http://192.168.5.13/gateway_interface/'
                baseUrl: baseUrl,
                time: 60
            }
            this.param = { ...param }
        },
h5_meeting/pages/index/index.vue
@@ -98,20 +98,24 @@
                    4: '即将开始',
                    5: '已撤销',
                },
                meetingInfo: {}
                meetingInfo: {},
                timer: null
            }
        },
        onShow() {
            this.initDatetime()
            this.param = uni.getStorageSync('param') || {}
            if (!this.param.code) {
                return uni.navigateTo({
                    url: '/pages/index/config'
                })
            }
            this.getData()
        },
        onReady() {},
        onReady() {},
        onHide(){
            if(this.timer){
                clearInterval(this.timer)
            }
        },
        methods: {
            getData() {
                this.showQrbg = false
@@ -173,8 +177,13 @@
                this.timer = setInterval(() => {
                    this.time = dayjs().format('HH:mm')
                    this.date = dayjs().format('YYYY-MM-DD') + ' ' + weeks[new Date().getDay()]
                }, 1000)
                setInterval(() => {
                }, 1000)
                this.param = uni.getStorageSync('param') || {}
                if(this.timer){
                    clearInterval(this.timer)
                }
                this.getData()
                this.timer = setInterval(() => {
                    this.getData()
                }, this.param.time ? this.param.time * 1000 : 60 * 1000)
            }
h5_meeting/utils/config.js
@@ -1,6 +1,7 @@
export const baseUrl = 'gateway_interface/'
// export const baseUrl = 'http://192.168.5.13/gateway_interface/'
// export const baseUrl = 'gateway_interface/'
export const baseUrl = 'http://192.168.5.13/gateway_interface/'
// export const baseUrl = 'http://10.50.250.253:8088/gateway_interface/'
export const statusMap = {
    0: '待确认',
h5_meeting/utils/service.js
@@ -8,13 +8,14 @@
            // uni.showLoading({
            //     title:"加载中..."
            // })
            uni.showLoading({
                title: '加载中',
                mask: true
            })
            // uni.showLoading({
            //     title: '加载中',
            //     mask: true
            // })
            const param = uni.getStorageSync('param') || {}
            uni.request({
                url: (param.baseUrl || baseUrl) + options.url,
                // url: baseUrl + options.url,
                data: options.data || {},
                method: options.method || 'GET',
                header: options.header || {
@@ -25,7 +26,7 @@
                success: (res) => {
                    let data = res.data
                    // 控制台显示数据信息
                    uni.hideLoading()
                    // uni.hideLoading()
                    // 登录过期
                    if (data.code === 5112) {
                        setTimeout(() => {
@@ -63,7 +64,7 @@
                    console.log('msg', baseUrl + options.url)
                    // 返回错误消息
                    reject(err)
                    uni.hideLoading()
                    // uni.hideLoading()
                },
                catch: (e) => {
                    console.log(e)
server/meeting/meeting_admin/src/main/java/com/doumee/cloud/admin/BookingsCloudController.java
@@ -151,7 +151,6 @@
    @PostMapping("/exportUserStatistics")
    @CloudRequiredPermission("business:bookings:exportExcel")
    public void exportUserStatistics (@RequestBody PageWrap<UserStatisticsDTO> pageWrap,HttpServletResponse response,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){
        List<UserStatisticsVo> records = bookingsService.getUserStatistics(pageWrap).getRecords();
        if (!CollectionUtils.isEmpty(records)){
            JSONArray o = (JSONArray) JSON.toJSON(records);
server/system_service/src/main/java/com/doumee/api/cloud/SystemUserCloudController.java
@@ -112,9 +112,6 @@
    }
    @ApiOperation("查询所有系统用户")
    @PostMapping("/findAllList")
    @CloudRequiredPermission("system:user:query")
@@ -122,6 +119,12 @@
        return ApiResponse.success(systemUserService.findAllList(pageWrap));
    }
    @ApiOperation("查询所有内部人员用户")
    @PostMapping("/findInternalList")
    @CloudRequiredPermission("system:user:query")
    public ApiResponse<List<SystemUser>> findInternalList () {
        return ApiResponse.success(systemUserService.findInternalList());
    }
    @ApiOperation("根据ID查询")
    @GetMapping("/{id}")
server/system_service/src/main/java/com/doumee/core/utils/Constants.java
@@ -240,6 +240,7 @@
        return  null;
    }
    /**
     *   判断是否为有效车牌号
     */
@@ -604,8 +605,8 @@
    }
    public static void main(String[] args) {
        System.out.println(Constants.carCodeTuominStr("皖A10991"));
        System.out.println(Constants.carCodeTuominStr("皖AA10991"));
        System.out.println(Constants.checkCarNo("皖A10991"));
        System.out.println(Constants.checkCarNo("皖AA10991"));
//        System.out.println(Constants.getVehiclePlateNo("湘B140D17").getDescription());
//        System.out.println(Constants.getVehiclePlateNo("宿AP0637").getDescription());
server/system_service/src/main/java/com/doumee/service/system/SystemUserService.java
@@ -83,6 +83,12 @@
    List<SystemUser> findAllList(SystemUser pageWrap);
    /**
     * 查询所有内部人员列表
     * @return
     */
    List<SystemUser> findInternalList();
    /**
     * 条件统计
     * @author Eva.Caesar Liu
     * @date 2023/03/21 14:49
server/system_service/src/main/java/com/doumee/service/system/impl/NoticesServiceImpl.java
@@ -168,7 +168,7 @@
            queryWrapper.eq(Notices::getUserId, noticesDTO.getMemberId());
            queryWrapper.eq(Notices::getSendacopy,Constants.ONE);
            if(Objects.nonNull(noticesDTO.getNoRead())&&Constants.equalsInteger(noticesDTO.getNoRead(),Constants.ONE)){
                queryWrapper.eq(Notices::getReaded,Constants.ONE);
                queryWrapper.eq(Notices::getReaded,Constants.ZERO);
            }
        }else{
            queryWrapper.eq("1","2");
server/system_service/src/main/java/com/doumee/service/system/impl/SystemUserServiceImpl.java
@@ -7,6 +7,7 @@
import com.doumee.core.model.PageWrap;
import com.doumee.core.utils.Constants;
import com.doumee.core.utils.Utils;
import com.doumee.dao.business.model.Company;
import com.doumee.dao.system.SystemUserJoinMapper;
import com.doumee.dao.system.SystemUserMapper;
import com.doumee.dao.system.dto.QuerySystemUserDTO;
@@ -206,8 +207,6 @@
    @Override
    public List<SystemUser> findAllList(SystemUser pageWrap) {
        MPJLambdaWrapper<SystemUser> queryWrapper = new MPJLambdaWrapper<>();
        Utils.MP.blankToNull(pageWrap);
        queryWrapper.selectAll(SystemUser.class);
@@ -217,9 +216,7 @@
                .or().like(SystemUser::getRealname,pageWrap.getUsername())
        );
        queryWrapper.orderByDesc(SystemUser::getCreateTime);
        List<SystemUser> result = systemUserJoinMapper.selectJoinList( SystemUser.class, queryWrapper);
        return result;
    }
@@ -227,5 +224,17 @@
    @Override
    public List<SystemUser> findInternalList() {
        MPJLambdaWrapper<SystemUser> queryWrapper = new MPJLambdaWrapper<>();
        queryWrapper.selectAll(SystemUser.class);
        queryWrapper.eq(SystemUser::getDeleted, Constants.ZERO);
        queryWrapper.leftJoin(Company.class,Company::getId,SystemUser::getCompanyId);
        queryWrapper.eq(Company::getType,Constants.ONE);
        queryWrapper.orderByDesc(SystemUser::getCreateTime);
        List<SystemUser> result = systemUserJoinMapper.selectJoinList( SystemUser.class, queryWrapper);
        return result;
    }
}
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformBooksCloudController.java
@@ -37,6 +37,7 @@
    @Autowired
    private PlatformBooksService platformBooksService;
    @Autowired
    private PlatformReasonService platformReasonService;
server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformJobCloudController.java
@@ -72,8 +72,6 @@
        return ApiResponse.success(platformJobService.findPage(pageWrap));
    }
    @ApiOperation("导出Excel")
    @PostMapping("/exportExcel")
    @CloudRequiredPermission("business:platformjob:exportExcel")
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Member.java
@@ -25,210 +25,171 @@
    @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="创建时间")
    private Date createDate;
    @ApiModelProperty(value = "更新人编码", example = "1")
    @ExcelColumn(name="更新人编码")
    private Integer editor;
    @ApiModelProperty(value = "更新时间")
    @ExcelColumn(name="更新时间")
      private Date editDate;
     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 = "所属组织编码(关联company表)", example = "1")
    @ExcelColumn(name="所属组织编码(关联company表)")
    private Integer companyId;
    @ApiModelProperty(value = "人脸照片")
    @ExcelColumn(name="人脸照片")
    private String faceImg;
    @ApiModelProperty(value = "人脸存储服务器标识(海康)")
    @ExcelColumn(name="人脸存储服务器标识(海康)")
    private String faceServerIndexCode;
    @ApiModelProperty(value = "人脸编码(海康)")
    @ExcelColumn(name="人脸编码(海康)")
    private String faceId;
    @ApiModelProperty(value = "人脸同步状态(海康) 0未同步 1已同步 2同步失败 3不合格")
    @ExcelColumn(name="人脸同步状态(海康) 0未同步 1已同步  2同步失败 3不合格")
    private Integer faceStatus;
    @ApiModelProperty(value = "人脸同步信息(海康)")
    @ExcelColumn(name="人脸同步信息(海康)")
    private String faceInfo;
    @ApiModelProperty(value = "健康码")
    @ExcelColumn(name="健康码")
    private String imgurl;
    @ApiModelProperty(value = "类型 0司机人员 1普通访客  2内部人员", example = "1")
    @ExcelColumn(name="类型 0司机人员 1普通访客 2内部人员")
    private Integer type;
    @ApiModelProperty(value = "访客名称/内部人员")
    @ExcelColumn(name="访客名称")
    @ExcelColumn(name="姓名",index = 0,width = 12)
    private String name;
    @ApiModelProperty(value = "访客年龄")
    @ExcelColumn(name="访客年龄")
    private Date birthday;
    @ApiModelProperty(value = "手机号")
    @ExcelColumn(name="手机号")
    @ExcelColumn(name="手机号",index = 1,width = 12)
    private String phone;
    @ApiModelProperty(value = "身份证号(MD4加密)")
    @ExcelColumn(name="身份证号(MD4加密)")
    private String idcardNo;
    @ApiModelProperty(value = "修改的身份证号 ")
    @TableField(exist = false)
    private String idcardNoNew;
    @ApiModelProperty(value = "证件显示信息")
    @ExcelColumn(name="证件显示信息")
    @ExcelColumn(name="身份证号",index = 2,width = 8)
    private String idcardDecode;
    @ApiModelProperty(value = "证件类型 0身份证 1港澳证件 2护照", example = "1")
    @ExcelColumn(name="证件类型 0身份证 1港澳证件 2护照")
    private Integer idcardType;
    @ApiModelProperty(value = "是否是物流司机 0不是 1是", example = "1")
    @ExcelColumn(name="是否是物流司机 0不是 1是")
    private Integer isDriver;
    @ApiModelProperty(value = "工号")
    @ExcelColumn(name="工号")
    @ExcelColumn(name="工号",index = 13,width = 12)
    private String code;
    @ApiModelProperty(value = "班次 0白班 1夜班")
    @ExcelColumn(name="班次 0白班 1夜班")
    private Integer classes;
    @ApiModelProperty(value = "状态 0正常 1禁用 2拉黑/冻结", example = "1")
    @ExcelColumn(name="状态 0正常 1禁用 2拉黑/冻结")
    private Integer status;
    @ApiModelProperty(value = "性别 1男 2女 ", example = "1")
    @ExcelColumn(name="性别 1男 2女")
    @ExcelColumn(name="性别",index = 3,width = 8,valueMapping = "1=男;2=女;")
    private Integer sex;
    @ApiModelProperty(value = "添加人编码(自关联)", example = "1")
    @ExcelColumn(name="添加人编码(自关联)")
    private Integer parentId;
    @ApiModelProperty(value = "微信openid")
    @ExcelColumn(name="微信openid")
    private String openid;
    @ApiModelProperty(value = "飞书标识")
    @ExcelColumn(name="飞书标识")
    private String fsId;
    @ApiModelProperty(value = "飞书同步状态 0未同步 1已同步", example = "1")
    @ExcelColumn(name="飞书同步状态 0未同步 1已同步")
    private Integer fsStatus;
    @ApiModelProperty(value = "飞书最近同步时间")
    @ExcelColumn(name="飞书最近同步时间")
    private Date fsDate;
    @ApiModelProperty(value = "海康标识", example = "1")
    @ExcelColumn(name="海康标识")
    private String hkId;
    @ApiModelProperty(value = "海康同步状态 0未同步 1已同步 2同步失败 3不符合下发条件 4等待删除权限  ", example = "1")
    @ExcelColumn(name="海康同步状态 0未同步 1已同步 2同步失败 3不符合下发条件 4等待删除权限")
    @ExcelColumn(name="海康同步状态",index = 11,width = 12, valueMapping = "0=未同步;1=已同步;2=同步失败;3=不符合下发条件;4=等待删除权限")
    private Integer hkStatus;
    @ApiModelProperty(value = "海康授权状态 0未授权 1已授权   ", example = "1")
    @ExcelColumn(name="海康授权状态 0未授权 1已授权 ")
    @ExcelColumn(name="海康授权状态",index = 12,width = 12, valueMapping = "0=未授权;1=已授权;")
    private Integer authStatus;
    @ApiModelProperty(value = "海康最近同步时间")
    @ExcelColumn(name="海康最近同步时间")
    private Date hkDate;
    @ApiModelProperty(value = "在职状态 0在职 1离职", example = "1")
    @ExcelColumn(name="在职状态 0在职 1离职")
    @ExcelColumn(name="在职状态",index = 10,width = 12, valueMapping = "0=在职;1=离职;")
    private Integer workStatus;
    @ApiModelProperty(value = "是否党员 0否 1是", example = "1")
    @ExcelColumn(name="是否党员 0否 1是")
    @ExcelColumn(name="是否党员",index = 6,width = 12,valueMapping = "1=否;2=是;")
    private Integer isDangyuan;
    @ApiModelProperty(value = "岗位编码,关联positionbiao", example = "1")
    @ExcelColumn(name="岗位编码")
    private Integer positionId;
    @ApiModelProperty(value = "ERP标识", example = "1")
    @ExcelColumn(name="ERP标识")
    private String erpId;
    @ApiModelProperty(value = "ERP同步时间")
    @ExcelColumn(name="ERP同步时间")
    private Date erpDate;
    @ApiModelProperty(value = "入职如期")
    @ExcelColumn(name="入职如期")
    @JsonFormat(pattern = "yyyy-MM-dd")
    @ExcelColumn(name="入职日期",index = 7,width = 12, dateFormat = "yyyy-MM-dd")
    private Date jobDate;
    @ApiModelProperty(value = "ERP同步状态 0未同步 1已同步", example = "1")
    @ExcelColumn(name="ERP同步状态 0未同步 1已同步")
    private Integer erpStatus;
    @ApiModelProperty(value = "钉钉标识", example = "1")
    @ExcelColumn(name="钉钉标识")
    private Integer ddId;
    @ApiModelProperty(value = "钉钉同步时间")
    @ExcelColumn(name="钉钉同步时间")
    private Date ddDate;
    @ApiModelProperty(value = "钉钉P同步状态 0未同步 1已同步", example = "1")
    @ExcelColumn(name="钉钉P同步状态 0未同步 1已同步")
    private Integer ddStatus;
    @ApiModelProperty(value = "登陆密码")
    @ExcelColumn(name="登陆密码")
    private String passward;
    @ApiModelProperty(value = "是否可拜访人 0否 1是", example = "1")
    @ExcelColumn(name="是否可拜访人 0否 1是")
    @ExcelColumn(name="是否可拜访人",index = 8,width = 12, valueMapping = "0=否;1=是;")
    private Integer canVisit;
    @ApiModelProperty(value = "是否高级审批人 0否 1是", example = "1")
    @ExcelColumn(name="是否高级审批人 0否 1是")
    private Integer highCheckor;
    @ApiModelProperty(value = "门禁角色编码(关联device_role),多个英文逗号隔开", example = "1")
    @ExcelColumn(name="门禁角色编码 ")
    private String roleId;
    @ApiModelProperty(value = "门禁角色授权时间")
    @ExcelColumn(name="门禁角色授权时间")
    private Date roleDate;
    @ApiModelProperty(value = "ERP组织编码")
    @ExcelColumn(name="ERP组织编码")
    private String erpOrgId;
    @ApiModelProperty(value = "访客公司名称")
    @ExcelColumn(name="访客公司名称")
    private String visitCompanyName;
    @ApiModelProperty(value = "组织名称")
    @ExcelColumn(name="所属部门",index = 4,width = 12)
    @TableField(exist = false)
    private String companyName;
    @ApiModelProperty(value = "最后操作人")
    @TableField(exist = false)
    private String editorName;
    @ApiModelProperty(value = "组织类型 0劳务公司 1内部组织")
    @ExcelColumn(name="部门类型",index = 9,width = 12, valueMapping = "0=劳务公司;1=内部组织;")
    @TableField(exist = false)
    private Integer companyType;
@@ -273,16 +234,13 @@
    @TableField(exist = false)
    private Integer visitTimes;
    @ApiModelProperty(value = "最后访问时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date lastVisitDate;
    @ApiModelProperty(value = "门禁有效期开始")
    @ExcelColumn(name="门禁有效期开始",index= 5,dateFormat = "yyyy-MM-dd")
    private Date startTime;
    @ApiModelProperty(value = "编码集合")
    @TableField(exist = false)
    private List<Integer> idList;
    @ApiModelProperty(value = "门禁有效期结束", example = "1")
    @ExcelColumn(name="门禁有效期结束",index= 6,dateFormat = "yyyy-MM-dd")
    private Date endTime;
    @ApiModelProperty(value = "人脸照片完整地址")
    @TableField(exist = false)
@@ -294,6 +252,7 @@
    @TableField(exist = false)
    private Integer headStatus;
    @ApiModelProperty(value = "持卡数量")
    @ExcelColumn(name="持卡数量",index = 14,width = 12)
    @TableField(exist = false)
    private int memberCardCount;
@@ -304,6 +263,7 @@
    @TableField(exist = false)
    private String optRemark;
    @ApiModelProperty(value = "岗位名称")
    @ExcelColumn(name="岗位名称",index = 5,width = 12)
    @TableField(exist = false)
    private String positionName;
    @ApiModelProperty(value = "培训开始时间")
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformBooks.java
@@ -26,109 +26,91 @@
    @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="创建时间")
    private Date createDate;
    @ApiModelProperty(value = "更新人编码", example = "1")
    @ExcelColumn(name="更新人编码")
    private Integer editor;
    @ApiModelProperty(value = "更新时间")
    @ExcelColumn(name="更新时间")
    private Date editDate;
    @ApiModelProperty(value = "是否删除0否 1是", example = "1")
    @ExcelColumn(name="是否删除0否 1是")
    private Integer isdeleted;
    @ApiModelProperty(value = "名称")
    @ExcelColumn(name="名称")
    private String name;
    @ApiModelProperty(value = "备注")
    @ExcelColumn(name="备注")
    private String remark;
    @ApiModelProperty(value = "状态 0待审批 1审批中 2审批通过 3审批不通过 4已取消", example = "1")
    @ExcelColumn(name="状态 0待审批 1审批中 2审批通过 3审批不通过")
    @ExcelColumn(name="审批状态",index = 9,width = 12,valueMapping = "0=待审批;1=审批中;2=审批通过;3=审批不通过;4=已取消;")
    private Integer status;
    @ApiModelProperty(value = "合同号")
    @ExcelColumn(name="合同号")
    @ExcelColumn(name="合同号",index = 0,width = 12)
    private String contractNum;
    @ApiModelProperty(value = "预计到场时间")
    @ExcelColumn(name="预计到场时间")
    @ExcelColumn(name="预计到场时间",index = 8,width = 12,dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date arriveDate;
    @ApiModelProperty(value = "入库类型 0整托盘 1件烟", example = "1")
    @ExcelColumn(name="入库类型 0整托盘 1件烟")
    @ExcelColumn(name="入库类型",index = 7,width = 12,valueMapping = "0=整托盘;1=件烟;")
    private Integer inType;
    @ApiModelProperty(value = "总运输量", example = "1")
    @ExcelColumn(name="总运输量")
    @ExcelColumn(name="总运输量",index = 2,width = 12)
    private BigDecimal totalNum;
    @ApiModelProperty(value = "前车牌号")
    @ExcelColumn(name="前车牌号")
    @ExcelColumn(name="前车牌号",index = 3,width = 12)
    private String carCodeFront;
    @ApiModelProperty(value = "后车牌号")
    @ExcelColumn(name="后车牌号")
    @ExcelColumn(name="后车牌号",index = 4,width = 12)
    private String carCodeBack;
    @ApiModelProperty(value = "司机编码", example = "1")
    @ExcelColumn(name="司机编码")
    private Integer driverId;
    @ApiModelProperty(value = "司机姓名")
    @ExcelColumn(name="司机姓名")
    @ExcelColumn(name="司机姓名",index = 5,width = 12)
    private String driverName;
    @ApiModelProperty(value = "车牌号")
    @ExcelColumn(name="车牌号")
    private String plateNum;
    @ApiModelProperty(value = "司机手机号")
    @ExcelColumn(name="司机手机号")
    @ExcelColumn(name="司机手机号",index = 6,width = 12)
    private String driverPhone;
    @ApiModelProperty(value = "准运证照片")
    @ExcelColumn(name="准运证照片")
    private String transportImg;
    @ApiModelProperty(value = "入园原因")
    @ExcelColumn(name="入园原因")
    @ExcelColumn(name="入园原因",index = 1,width = 12)
    private String inReason;
    @ApiModelProperty(value = "入园原因主键")
    @ExcelColumn(name="入园原因主键")
    private Integer reasonId;
    @ApiModelProperty(value = "取消时间")
    @ExcelColumn(name="取消时间")
    private Date cancelTime;
    @ApiModelProperty(value = "取消人")
    @ExcelColumn(name="取消人")
    private Integer cancelUser;
    @ApiModelProperty(value = "取消备注")
    @ExcelColumn(name="取消备注")
    private String cancelInfo;
    @ApiModelProperty(value = "生成任务主键 platform_job:id")
    @ExcelColumn(name="入园原因主键")
    private Integer jobId;
    @ApiModelProperty(value = "查询日期 用户微信端查询")
@@ -148,9 +130,15 @@
    private Date arriveDateEnd;
    @ApiModelProperty(value = "审批人名称")
    @ExcelColumn(name="审批人名称",index = 10,width = 12)
    @TableField(exist = false)
    private String auditName;
    @ApiModelProperty(value = "审批时间")
    @ExcelColumn(name="审批描述",index = 11,width = 12,valueMapping = "yyyy-MM-dd HH:mm:ss")
    @TableField(exist = false)
    private String auditTime;
    @ApiModelProperty(value = "审批信息数据")
    @TableField(exist = false)
    private ApproveDataVO approveDateVO;
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformJob.java
@@ -51,7 +51,7 @@
    private String remark;
    @ApiModelProperty(value = "状态 0待确认 1待签到 2等待叫号 3入园等待 4已叫号 5作业中 6作业完成 7转移中 8异常挂起 9已授权离园 10已离园 11 已过号  12取消(WMS)" , example = "1")
    @ExcelColumn(name="状态",index = 8, valueMapping = "0:待确认;1:待签到;2:等待叫号;3:入园等待;4:已叫号;5:作业中;6:作业完成;7:转移中;8:异常挂起;9:已授权离园;10:已离园;11:已过号;12:取消(WMS);")
    @ExcelColumn(name="状态",index = 8, valueMapping = "0=待确认;1=待签到;2=等待叫号;3=入园等待;4=已叫号;5=作业中;6=作业完成;7=转移中;8=异常挂起;9=已授权离园;10=已离园;11=已过号;12=取消(WMS);")
    private Integer status;
    @ApiModelProperty(value = "车辆进入状态 0不在 1进入 " , example = "1")
server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Visits.java
@@ -244,7 +244,7 @@
//    @ApiModelProperty(value = "班次")
//    private String memberClasses;
    @ApiModelProperty(value = "类型 0劳务访客 1普通访客  2内部人员", example = "1")
    @ApiModelProperty(value = "类型 0劳务访客 1普通访客 2内部人员", example = "1")
    @TableField(exist = false)
    private Integer memberType;
    @ApiModelProperty(value = "劳务访客申请随访人员")
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java
@@ -285,14 +285,16 @@
            if(CollectionUtils.isNotEmpty(noticesList)){
                //待我处理的数据
                internalHomeVO.setNoticeWaitNum(
                        noticesList.stream().filter(i->Constants.equalsInteger(i.getUserId(),memberId)
                        noticesList.stream().filter(i->
                                Constants.equalsInteger(i.getUserId(),memberId)
                                &&Constants.equalsInteger(i.getStatus(),Constants.ZERO)
                                &&Constants.equalsInteger(i.getSendacopy(),Constants.ZERO)
                        ).count()
                );
                //已处理数据
                internalHomeVO.setNoticeDealNum(
                        noticesList.stream().filter(i->Constants.equalsInteger(i.getUserId(),memberId)
                        noticesList.stream().filter(i->
                                Constants.equalsInteger(i.getUserId(),memberId)
                                &&StringUtils.equals(i.getParam4(),i.getUserId().toString())
                                &&Constants.equalsInteger(i.getStatus(),Constants.ONE)
                                &&Constants.equalsInteger(i.getSendacopy(),Constants.ZERO)
@@ -303,9 +305,10 @@
                        noticesJoinMapper.selectCount(new QueryWrapper<Notices>().lambda().eq(Notices::getParam3,memberId))
                );
                //抄送我的数据
                internalHomeVO.setNoticeCopyNum(
                 internalHomeVO.setNoticeCopyNum(
                        noticesList.stream().filter(i->Constants.equalsInteger(i.getUserId(),memberId)
                                &&Constants.equalsInteger(i.getSendacopy(),Constants.ONE)
                                &&Constants.equalsInteger(i.getReaded(),Constants.ZERO)
                        ).count()
                );
            }
@@ -563,7 +566,7 @@
                approve.setTemplatId(approveTempl.getId());
                approve.setChekorId(memberId);
                approve.setStatus(i==0?Constants.ONE:Constants.ZERO);
                approve.setStatusInfo(i==0?"审批中":"处理中");
                approve.setStatusInfo(i==0?"审批中":"待处理");
                approve.setTitle(StringUtils.isBlank(approveParam.getRemark())?"审批中":approveParam.getRemark());
                approve.setIsEndCheck((i+1) == approveParamList.size()?Constants.ONE:Constants.ZERO);
                approve.setObjId(businessId);
@@ -921,7 +924,6 @@
                }else{
                    waitModel.setStatus(level.getStatus());
                    waitModel.setType(Constants.ZERO);
                    //waitModel.setStatusInfo(passList.size()<=0?StringUtils.defaultString(level.getTitle(),"审批人"):"抄送或签审批人");
                    waitModel.setTitle(passList.size()<=0?StringUtils.defaultString(level.getTitle(),"审批人"):"抄送或签审批人");
                }
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/CarsServiceImpl.java
@@ -64,6 +64,7 @@
        ){
            throw  new BusinessException(ResponseStatus.BAD_REQUEST);
        }
        if(model.getMemberId()!=null){
            //检查车主信息
            Member member =memberMapper.selectOne(new QueryWrapper<Member>().lambda()
@@ -76,6 +77,10 @@
            }
            model.setMemberHkId(member.getHkId());
        }
        if(!Constants.checkCarNo(model.getCode())){
            throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"请输入正确的车牌!");
        };
        //检查车牌号是否重复
        if(carsMapper.selectCount(new QueryWrapper<Cars>().lambda()
                .eq(Cars::getCode,model.getCode() )
@@ -193,8 +198,10 @@
        Cars car = carJoinMapper.selectById(model.getId());
        if(car ==null ||Constants.equalsInteger(car.getIsdeleted(),Constants.ONE)){
            throw  new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"对不起,车辆信息不存在!");
        }
        if(!Constants.checkCarNo(model.getCode())){
            throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"请输入正确的车牌!");
        };
        if(model.getMemberId()!=null){
            //检查车主信息
            Member member =memberMapper.selectOne(new QueryWrapper<Member>().lambda()
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
@@ -62,6 +62,7 @@
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
import java.math.BigDecimal;
import java.util.Date;
import java.util.*;
import java.util.stream.Collectors;
@@ -1744,7 +1745,7 @@
                .eq(Member::getStatus,Constants.ZERO)
                .eq(Member::getWorkStatus,Constants.ZERO)
                .eq(Member::getCanVisit,Constants.ONE)
                .eq(Member::getType,Constants.memberType.internal)
                .eq(Company::getType,Constants.ONE)
        );
        List<MemberVO> memberVOList = new ArrayList<>();
        if (com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(memberList)) {
@@ -1853,7 +1854,7 @@
            ExcelImporter ie = null;
            List<MemberImport> dataList =null;
            try {
                ie = new ExcelImporter(file,1,0);
                ie = new ExcelImporter(file,2,0);
                dataList = ie.getDataList(MemberImport.class,null);
            }  catch (Exception e) {
                e.printStackTrace();
@@ -1938,6 +1939,11 @@
        if (!PhoneUtil.isPhone(model.getPhone())){
            throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"对不起,第"+(index+3)+"行手机号【"+model.getPhone()+"】格式不正确,请检查表格内容!");
        }
        if(model.getPhone().indexOf(".")>=Constants.ZERO){
            model.setPhone(
                    String.valueOf(new BigDecimal(model.getPhone()).intValue())
            );
        }
        if(StringUtils.isNotBlank(model.getIdcardNo())){
            if ( !isDebug && !IdcardUtil.isValidCard(model.getIdcardNo())){
                throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"对不起,第"+(index+3)+"行身份证号【"+model.getIdcardNo()+"】格式不正确,请检查表格内容!");
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformBooksServiceImpl.java
@@ -261,6 +261,9 @@
        if(!Constants.equalsInteger(platformGroup.getIsdeleted(),Constants.ZERO)){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"绑定月台组数据异常,请联系管理员");
        }
        if(!Constants.checkCarNo(platformBooksApplyDTO.getCarCodeFront())){
            throw  new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"请输入正确的车牌!");
        };
        //查询车辆是否为自有车
        if(carsMapper.selectCount(new QueryWrapper<Cars>().lambda().eq(Cars::getIsdeleted,Constants.ZERO).eq(Cars::getCode,platformBooksApplyDTO.getCarCodeFront()))>Constants.ZERO){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"["+platformBooksApplyDTO.getCarCodeFront()+"]属于内部车辆,无法预约");
server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/VisitsServiceImpl.java
@@ -131,6 +131,8 @@
    private NoticesJoinMapper noticesJoinMapper;
    @Autowired
    private InoutDayCountMapper inoutDayCountMapper;
    @Autowired
    private CarEventMapper carEventMapper;
    @Autowired
    private SmsConfigMapper smsConfigMapper;
@@ -1596,23 +1598,48 @@
            List<InterestedListVO> weekVisitList = new ArrayList<>();
            List<InterestedListVO> weekCarList = new ArrayList<>();
            List<InterestedListVO> lwList = new ArrayList<>();
            //查询七天前的访客记录数量
            List<Visits> visitsList = visitsMapper.selectList(new QueryWrapper<Visits>().lambda().in(Visits::getStatus,
                    Constants.VisitStatus.signin,Constants.VisitStatus.signout)
                    .apply(" STARTTIME >   CURDATE() - INTERVAL 7 DAY " )
            );
            List<CarEvent> carEventList = carEventMapper.selectList(new QueryWrapper<CarEvent>().lambda()
                    .in(CarEvent::getEventType,"771760131","771760130")
                    .apply(" STR_TO_DATE(happen_time, '%Y-%m-%dT%H:%i:%s') > CURDATE() - INTERVAL 7 DAY  " )
            );
            for (String days:weekDays) {
                InoutDayCount inoutDayCount = inoutDayCountMapper.selectOne(new QueryWrapper<InoutDayCount>()
                        .lambda()
                        .apply(" DATE(TIME_INFO) = '"+days+"' ")
                        .last("  limit 1  ")
                );
                InterestedListVO visitVO = new InterestedListVO();
                visitVO.setName(days);
                if(CollectionUtils.isNotEmpty(visitsList)){
                    //处理访客人员数量
                    List<Visits> daysList = visitsList.stream().filter(i->Objects.nonNull(i.getStarttime())&&DateUtil.dateToString(i.getStarttime(),"yyyy-MM-dd").equals(days)).collect(Collectors.toList());
                    List<String> memberIds = daysList.stream().map(i->i.getMemberId().toString()).collect(Collectors.toList());
                    if(CollectionUtils.isNotEmpty(memberIds)){
                        visitVO.setNum(new HashSet<String>(memberIds).size());
                    }
                }
                if(Objects.isNull(visitVO.getNum())){
                    visitVO.setNum(Constants.ZERO);
                }
                visitVO.setName(days);
                InterestedListVO carVO = new InterestedListVO();
                carVO.setName(days);
                if(Objects.isNull(inoutDayCount)){
                if(CollectionUtils.isNotEmpty(carEventList)){
                    //处理访客人员数量
                    List<CarEvent> daysList = carEventList.stream().filter(i->StringUtils.isNotBlank(i.getHappenTime()) && i.getHappenTime().substring(0,10).equals(days)).collect(Collectors.toList());
                    List<String> carCodeList = daysList.stream().map(i->i.getPlateNos()).collect(Collectors.toList());
                    if(CollectionUtils.isNotEmpty(carCodeList)){
                        carVO.setNum(new HashSet<String>(carCodeList).size());
                    }
                }
                if(Objects.isNull(carVO.getNum())){
                    visitVO.setNum(Constants.ZERO);
                    carVO.setNum(Constants.ZERO);
                }else{
                    visitVO.setNum(inoutDayCount.getInVisitorNum());
                    carVO.setNum(inoutDayCount.getInCarNum());
                }
                weekVisitList.add(visitVO);
                weekCarList.add(carVO);
@@ -1667,7 +1694,6 @@
            queryWrapper.selectAll(Visits.class);
            queryWrapper.selectAs(Member::getName,Visits::getReceptMemberName);
            queryWrapper.select("TIMESTAMPDIFF( MINUTE, NOW(), t.OUT_DATE) AS timeOut");
            queryWrapper.selectAs(Member::getType,Visits::getMemberType);
            queryWrapper.selectAs(Company::getName,Visits::getReceptMemberDepartment);
            queryWrapper.leftJoin(Member.class,Member::getId,Visits::getReceptMemberId);
            queryWrapper.leftJoin(Company.class,Company::getId,Member::getCompanyId);