jiangping
2024-05-09 a6d82e58a612c906dde67f365826c0be6cf94cd8
Merge remote-tracking branch 'origin/master'
已添加11个文件
已修改3个文件
993 ■■■■■ 文件已修改
h5/App.vue 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
h5/pages.json 28 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
h5/pages/changePassword/changePassword.vue 19 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
h5/pages/staff/index.vue 252 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
h5/pages/staff/visitorReport.vue 674 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
h5/static/staff/ic_fangkebaobei.png 补丁 | 查看 | 原始文档 | blame | 历史
h5/static/staff/ic_huiyishiguanli.png 补丁 | 查看 | 原始文档 | blame | 历史
h5/static/staff/ic_paichejilu.png 补丁 | 查看 | 原始文档 | blame | 历史
h5/static/staff/ic_renwuzhongxin.png 补丁 | 查看 | 原始文档 | blame | 历史
h5/static/staff/ic_wodehuiyi.png 补丁 | 查看 | 原始文档 | blame | 历史
h5/static/staff/ic_xiugaimima.png 补丁 | 查看 | 原始文档 | blame | 历史
h5/static/staff/ic_yinhuansuipai.png 补丁 | 查看 | 原始文档 | blame | 历史
h5/static/staff/ic_yongcheshenqing.png 补丁 | 查看 | 原始文档 | blame | 历史
h5/static/staff/ic_yuyuehuiyishi.png 补丁 | 查看 | 原始文档 | blame | 历史
h5/App.vue
@@ -157,5 +157,25 @@
            /* font-size: 58rpx; */
            /* border-radius: 50%; */
        }
        //
        view{
            box-sizing: border-box;
        }
        image{
            box-sizing: border-box;
            margin: 0;
            display: flex;
        }
        .main_app{
            padding: 0 30rpx;
        }
        .mr24{
            margin-right: 24rpx;
        }
        .mr12{
            margin-right: 12rpx;
        }
</style>
h5/pages.json
@@ -2,8 +2,7 @@
    "easycom": {
        "^u-(.*)": "uview-ui/components/u-$1/u-$1.vue"
    },
    "pages": [
        {
    "pages": [{
            "path": "pages/notice/notice",
            "style": {
                "navigationBarTitleText": "入园须知",
@@ -172,13 +171,27 @@
                "navigationBarTitleText": "修改密码",
                "enablePullDownRefresh": false
            }
        },
        {
            "path": "pages/staff/index",
            "style": {
                "navigationBarTitleText": "安泰物流",
                "enablePullDownRefresh": false
            }
        },
        {
            "path": "pages/staff/visitorReport",
            "style": {
                "navigationBarTitleText": "访客报备",
                "enablePullDownRefresh": false
            }
        }
    ],
    "subPackages": [
        {
    "subPackages": [{
            "root": "n_pages",
            "pages": [
                {
            "pages": [{
                    "path": "login/login",
                    "style": {
                        "navigationBarTitleText": "登录",
@@ -223,8 +236,7 @@
        {
            "root": "packagesMine",
            "name": "mine",
            "pages": [
                {
            "pages": [{
                    "path": "notice/notice",
                    "style": {
                        "navigationBarTitleText": "通知",
h5/pages/changePassword/changePassword.vue
@@ -1,9 +1,5 @@
<template>
    <view class="box">
        <view class="box_tips">
            <image src="@/static/ic_tip@2x.png" mode="widthFix"></image>
            <text>如遗忘密码,请联系园区系统管理员重置</text>
        </view>
        <view class="list">
            <view class="list_item">
                <view class="list_item_label">
@@ -20,7 +16,7 @@
                    <text>*</text>
                </view>
                <view class="list_item_content">
                    <input type="number" maxlength="11" placeholder="请输入6-18位数字、字母组合新密码" placeholder-style="color: #999999;" />
                    <input type="number" maxlength="11" placeholder="请输入6-18位数字、字母组合" placeholder-style="color: #999999;" />
                </view>
            </view>
            <view class="list_item">
@@ -29,9 +25,13 @@
                    <text>*</text>
                </view>
                <view class="list_item_content">
                    <input type="number" maxlength="11" placeholder="请输入6-18位数字、字母组合新密码" placeholder-style="color: #999999;" />
                    <input type="number" maxlength="11" placeholder="请再输一次新密码" placeholder-style="color: #999999;" />
                </view>
            </view>
        </view>
        <view class="box_tips">
            <u-icon name="info-circle" class="mr12" color="#4d99a8"></u-icon>
            <text>如密码遗忘,请联系园区系统管理员重置</text>
        </view>
        <view class="footer-box">
            <view class="submit-button">提交</view>
@@ -70,7 +70,7 @@
            text {
                font-size: 26rpx;
                font-weight: 400;
                color: #E0312A;
                color: #4c99a7;
            }
        }
        .list {
@@ -135,8 +135,7 @@
        }
        .footer-box {
            width: 100%;
            position: fixed;
            bottom: 30rpx;
            margin-top: 48rpx;
            height: 80rpx;
            display: flex;
            justify-content: center;
@@ -145,7 +144,7 @@
                width: calc(100% - 60rpx);
                height: 88rpx;
                line-height: 88rpx;
                background: #025eef;
                background: #4d99a8;
                border-radius: 4rpx;
                color: #fff;
                border-radius: 44rpx;
h5/pages/staff/index.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,252 @@
<template>
    <view class="main_app">
        <view class="title_wrap">
            <view class="name">某某某,欢迎登录~</view>
            <view class="btn" @click="loginOut">退出登录</view>
        </view>
        <view class="banner_wrap">
            <view class="h1">安泰物流</view>
            <view class="h2">安全重于泰山 æœåŠ¡è¿½æ±‚å“è¶Š</view>
            <image class="banner" src="../../static/banner.jpg" mode="widthFix"></image>
        </view>
        <view class="title_wrap"><view class="name">业务办理</view></view>
        <view class="container1">
            <view class="left">
                <view class="img_wrap img1">
                    <image src="@/static/staff/ic_fangkebaobei.png" class="img"></image>
                    <view class="h1">访客报备</view>
                    <view class="h2">VISITOR REPORTING</view>
                </view>
                <view class="img_wrap img2">
                    <image src="@/static/staff/ic_yuyuehuiyishi.png" class="img"></image>
                    <view class="h1">预约会议室</view>
                    <view class="h2">BOOK A MEETING ROOM</view>
                </view>
            </view>
            <view class="right">
                <view class="img_wrap img2">
                    <image src="@/static/staff/ic_yinhuansuipai.png" class="img"></image>
                    <view class="h1">隐患随手拍</view>
                    <view class="h2">HIDDEN DANGER</view>
                </view>
                <view class="img_wrap img2">
                    <image src="@/static/staff/ic_yongcheshenqing.png" class="img"></image>
                    <view class="h1">用车申请</view>
                    <view class="h2">VEHICLE APPLICATION</view>
                </view>
                <view class="img_wrap img2">
                    <image src="@/static/staff/ic_xiugaimima.png" class="img"></image>
                    <view class="h1">修改密码</view>
                    <view class="h2">CHANGE PASSWORD</view>
                </view>
            </view>
        </view>
        <!--  -->
        <view class="title_wrap"><view class="name">业务查询</view></view>
        <view class="container2">
            <view class="img_wrap">
                <image class="img" src="@/static/staff/ic_renwuzhongxin.png"></image>
                <view class="h1">任务中心</view>
                <view class="h2">TASK CENTER</view>
                <view class="task_num">99+</view>
            </view>
            <view class="img_wrap">
                <image class="img" src="@/static/staff/ic_wodehuiyi.png"></image>
                <view class="h1">我的会议日历</view>
                <view class="h2">MY MEETING CALENDAR</view>
            </view>
            <view class="img_wrap">
                <image class="img" src="@/static/staff/ic_paichejilu.png"></image>
                <view class="h1">派车记录</view>
                <view class="h2">VEHICLE DISPATCH</view>
            </view>
            <view class="img_wrap">
                <image class="img" src="@/static/staff/ic_huiyishiguanli.png"></image>
                <view class="h1">会议室管理</view>
                <view class="h2">MANAGE MEETING ROOMS</view>
            </view>
        </view>
        <view class="copyright">
            <image src="@/static/logo_s@2x.png" mode="widthFix" />
            <text>安徽安泰物流有限责任公司版权所有</text>
        </view>
    </view>
</template>
<script>
export default {
    data() {
        return {};
    },
    methods: {
        jump(path){
            uni.navigateTo({
                url: path
            });
        },
        loginOut() {
            uni.clearStorageSync()
            uni.redirectTo({
                url: '/pages/login/login'
            })
        },
    }
};
</script>
<style lang="scss" scoped>
.title_wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 24rpx;
    .name {
        font-weight: 500;
        font-size: 34rpx;
        color: #222222;
    }
    .btn {
        width: 144rpx;
        height: 56rpx;
        border-radius: 36rpx;
        border: 1rpx solid #279baa;
        font-size: 26rpx;
        color: #279baa;
        display: flex;
        justify-content: center;
        align-items: center;
    }
}
.main_app {
    padding-top: 12rpx;
}
.banner_wrap {
    padding: 54rpx 44rpx;
    color: #fff;
    position: relative;
    width: 688rpx;
    height: 270rpx;
    margin-bottom: 40rpx;
    .h1 {
        font-weight: bold;
        line-height: 66rpx;
        font-size: 44rpx;
        margin-bottom: 14rpx;
    }
    .banner {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        z-index: -1;
    }
}
.container1 {
    display: flex;
    flex-wrap: wrap;
    view {
        width: 336rpx;
    }
    .left {
        margin-right: 18rpx;
    }
    .img_wrap {
        position: relative;
        padding: 24rpx 0rpx 0 28rpx;
        border-radius: 8rpx;
        overflow: hidden;
        .h1 {
            font-weight: 500;
            font-size: 32rpx;
            color: #222222;
            line-height: 48rpx;
            margin-bottom: 4rpx;
        }
        .h2 {
            font-size: 22rpx;
            color: #7b9da1;
            line-height: 34rpx;
        }
        .img {
            width: 100%;
            height: 100%;
            position: absolute;
            top: 0;
            left: 0;
            z-index: -1;
        }
    }
    .img1 {
        width: 336rpx;
        height: 296rpx;
        margin-bottom: 16rpx;
    }
    .img2 {
        width: 336rpx;
        height: 140rpx;
        margin-bottom: 16rpx;
    }
}
.container2 {
    display: flex;
    flex-wrap: wrap;
    .img_wrap {
        width: 336rpx;
        height: 140rpx;
        margin-bottom: 16rpx;
        position: relative;
        border-radius: 8rpx;
        overflow: hidden;
        padding: 24rpx 0rpx 0 28rpx;
        &:nth-of-type(2n) {
            margin-left: 18rpx;
        }
        .task_num{
            position: absolute;
            left: 164rpx;
            top: 20rpx;
            width: 60rpx;
            height: 48rpx;
            border-radius: 50%;
            background-color: #fff;
            color: #db534c;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 24rpx
        }
        .h1 {
            font-weight: 500;
            font-size: 32rpx;
            color: #222222;
            line-height: 48rpx;
            margin-bottom: 4rpx;
        }
        .h2 {
            font-size: 22rpx;
            color: #7b9da1;
            line-height: 34rpx;
        }
        .img {
            width: 100%;
            height: 100%;
            position: absolute;
            top: 0;
            left: 0;
            z-index: -1;
        }
    }
}
.copyright {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 44rpx;
    font-size: 24rpx;
    color: #666666;
    image {
        width: 40rpx;
        height: 40rpx;
    }
}
</style>
h5/pages/staff/visitorReport.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,674 @@
<template>
    <view class="visit">
        <view class="list">
            <view class="list_item">
                <view class="list_item_label">
                    <text>*</text>
                    <text>被访人姓名</text>
                </view>
                <view class="list_item_content"><input type="text" placeholder="请输入姓名" v-model="form1.receptMemberName" @blur="getUser" placeholder-style="color: #999999;" /></view>
            </view>
            <view class="list_item">
                <view class="list_item_label">
                    <text>*</text>
                    <text>入厂时间</text>
                </view>
                <view class="list_item_content" @click="show4 = true">
                    <text :style="{ color: form1.starttime ? '#000000' : '' }">{{ form1.starttime ? form1.starttime : '请选择' }}</text>
                    <u-icon name="arrow-right" color="#CCCCCC" size="20"></u-icon>
                </view>
            </view>
            <view class="list_item">
                <view class="list_item_label">
                    <text>*</text>
                    <text>离厂时间</text>
                </view>
                <view class="list_item_content" @click="openLC">
                    <text :style="{ color: form1.endtime ? '#000000' : '' }">{{ form1.endtime ? form1.endtime : '请选择' }}</text>
                    <u-icon name="arrow-right" color="#CCCCCC" size="20"></u-icon>
                </view>
            </view>
            <div class="empty"></div>
            <view class="list_item">
                <view class="list_item_label">
                    <text>*</text>
                    <text>联系人</text>
                </view>
                <view class="list_item_content"><input type="text" v-model="form1.reason" placeholder="请输入联系人姓名" placeholder-style="color: #999999;" /></view>
            </view>
            <view class="list_item">
                <view class="list_item_label">
                    <text>*</text>
                    <text>手机号</text>
                </view>
                <view class="list_item_content">
                    <input
                        type="number"
                        maxlength="11"
                        v-model="form1.phone1"
                        :placeholder="'请输入联系人手机号'"
                        placeholder-style="color: #999999;"
                    />
                </view>
            </view>
            <view class="list_item">
                <view class="list_item_label">
                    <text>*</text>
                    <text>来访单位</text>
                </view>
                <view class="list_item_content"><input type="text" v-model="form1.reason" placeholder="请输入来访单位的全称" placeholder-style="color: #999999;" /></view>
            </view>
            <view class="list_item">
                <view class="list_item_label">
                    <text>*</text>
                    <text>入园车辆</text>
                </view>
                <view class="list_item_content" @click="openInput(1)">
                    <text :style="{ color: form1.carNos ? '#000000' : '' }">{{ form1.carNos ? form1.carNos : '请输入车牌号码' }}</text>
                    <!-- <input type="text" placeholder="请输入车牌号" v-model="form1.carNos" maxlength="8" placeholder-style="color: #999999;" /> -->
                </view>
            </view>
            <view class="list_item">
                <view class="list_item_label">
                    <text>*</text>
                    <text>随车人数</text>
                </view>
                <view class="list_item_content"><input type="text" v-model="form1.reason" placeholder="请输入随车人员总数" placeholder-style="color: #999999;" /></view>
            </view>
            <view class="list_item">
                <view class="list_item_label">
                    <text>*</text>
                    <text>来访事由</text>
                </view>
                <view class="list_item_content"><input type="text" v-model="form1.reason" placeholder="请输入来访事由" placeholder-style="color: #999999;" /></view>
            </view>
        </view>
        <view class="zw"></view>
        <view class="footer"><view class="footer_btn" @click="submit">提交</view></view>
        <!-- å…¥åœºæ—¶é—´ -->
        <u-datetime-picker :show="show4" :minDate="new Date().getTime()" mode="datetime" @cancel="show4 = false" @confirm="setinDate"></u-datetime-picker>
        <!-- ç¦»åœºæ—¶é—´ -->
        <u-datetime-picker
            v-if="form1.starttime"
            :show="show5"
            :minDate="formatTimeStamp(form1.starttime)"
            :maxDate="formatTimeStamp(maxTime)"
            mode="datetime"
            @cancel="show5 = false"
            @confirm="setoutDate"
        ></u-datetime-picker>
        <!-- è½¦è¾† -->
        <u-popup :show="show2" :round="10" :safeAreaInsetBottom="true" :closeable="true" mode="bottom" @close="show2 = false">
            <view class="addcar">
                <view class="addcar_head">添加车辆</view>
                <view class="addcar_ipt"><input type="text" v-model="carName" placeholder="请输入车牌号" /></view>
                <view class="addcar_footer">
                    <view class="addcar_footer_item" @click="show2 = false">取消</view>
                    <view class="addcar_footer_item t" @click="submitCart">提交</view>
                </view>
            </view>
        </u-popup>
        <u-picker keyName="name" :show="show6" :columns="columns1" @confirm="seleIdcard" @cancel="show6 = false"></u-picker>
        <!-- <tly-picture-cut ref="tlyPictureCut" :pictureSrc="photoSrc" @createImg="uploadImg"></tly-picture-cut> -->
        <keyboardInput ref="keyboard" @export="setPlate" @close="closeInput" />
        <qf-image-cropper ref="cropper" :width="280" :height="280" :radius="30" @crop="uploadImg"></qf-image-cropper>
    </view>
</template>
<script>
import tlyPictureCut from '@/components/tly-picture-cut/tlyPictureCut.vue';
import keyboardInput from '@/components/keyboard-input/keyboard-input.vue';
import QfImageCropper from '@/uni_modules/qf-image-cropper/components/qf-image-cropper/qf-image-cropper.vue';
import { getDaysAfterDate } from '@/utils/utils.js';
export default {
    data() {
        return {
            photoSrc: '',
            type: '',
            inputType: '',
            show1: false,
            show2: false,
            show4: false,
            show5: false,
            show6: false,
            show7: false,
            fileList: [],
            columns1: [[{ name: '身份证', id: 0 }, { name: '港澳证件', id: 1 }, { name: '护照', id: 2 }]],
            columnsNames: [[{ name: '张三', id: 0 }, { name: '张三', id: 1 }, { name: '张三', id: 2 }]],
            columns: [],
            cars: [],
            day: null,
            maxTime: '',
            carName: '',
            personnel: [],
            userAnswerId: '',
            form1: {
                phone1: '',
                receptMemberId: '',
                receptMemberName: '',
                starttime: '',
                endtime: '',
                doors: '',
                doorSelectName: '',
                reason: '',
                carNos: ''
            },
            withUserList: {
                name: '',
                phone: '',
                idcardType: '',
                idcardTypeName: '',
                companyName: '',
                idcardNo: '',
                faceImg: '',
                faceImgUrl: '',
                imgurl: '',
                imgurlUrl: ''
            },
            visit: '',
            form: {},
            accessControl: '',
            verify: ''
        };
    },
    components: { tlyPictureCut, keyboardInput, QfImageCropper },
    onLoad(options) {
        if (options.data) {
            this.form = JSON.parse(options.data);
        }
        // this.getvisit()
        // this.getVisit1()
        // this.getUserValid()
    },
    methods: {
        openInput(type) {
            this.inputType = type;
            this.$refs.keyboard.open();
        },
        setPlate(e) {
            if (this.inputType === 1) {
                this.form1.carNos = e;
            } else if (this.inputType === 2) {
                this.withUserList.carNos = e;
            }
            this.$forceUpdate();
            this.closeInput();
        },
        closeInput() {
            this.$refs.keyboard.close();
        },
        uploadImg(file) {
            this.$refs.cropper.close();
            uni.showLoading({ title: '上传中', mask: true });
            uni.uploadFile({
                url: `${this.$baseUrl}visitsAdmin/cloudService/web/public/uploadFtp.do`,
                filePath: file.tempFilePath,
                name: 'file',
                formData: {
                    folderCode: 'MEMBER_IMG'
                },
                success: uploadFileRes => {
                    let res = JSON.parse(uploadFileRes.data);
                    this.withUserList.faceImg = res.data.halfPath;
                    this.withUserList.faceImgUrl = res.data.prefixPath + res.data.folder + res.data.halfPath;
                },
                complete() {
                    uni.hideLoading();
                }
            });
        },
        submit() {
            if (!this.form1.receptMemberId)
                return uni.showToast({
                    title: '请填写有效的访问人',
                    icon: 'none'
                });
            if (!this.form1.starttime)
                return uni.showToast({
                    title: '入场时间不能为空',
                    icon: 'none'
                });
            if (!this.form1.endtime)
                return uni.showToast({
                    title: '离场时间不能为空',
                    icon: 'none'
                });
            if (!this.form1.doorSelectName && this.accessControl == 1)
                return uni.showToast({
                    title: '访问门禁不能为空',
                    icon: 'none'
                });
            if (!this.form1.reason)
                return uni.showToast({
                    title: '拜访事由不能为空',
                    icon: 'none'
                });
            // this.form1.starttime = this.form1.starttime + ':00'
            // this.form1.endtime = this.form1.endtime + ':00'
            let data = JSON.parse(JSON.stringify(this.form1));
            data.starttime = data.starttime + ':00';
            data.endtime = data.endtime + ':00';
            this.$u.api
                .createFk({
                    ...this.form,
                    ...data,
                    openid: this.$store.state.openId,
                    withUserList: this.personnel
                })
                .then(res => {
                    if (res.code === 200) {
                        uni.reLaunch({
                            url: `/pages/appointmentDetails/appointmentDetails?id=${res.data}`
                        });
                    }
                });
        },
        deleUser(i) {
            this.personnel.splice(i, 1);
        },
        getVisit1() {
            // æ˜¯å¦éœ€è¦ç­”题
            this.$u.api
                .getSystemDictData({
                    dictCode: 'SYSTEM',
                    label: 'HEALTH_CARD'
                })
                .then(res => {
                    if (res.code === 200) {
                        this.visit = res.data.code;
                    }
                });
            // èµ·å§‹æ—¶é—´æ—¶é•¿
            this.$u.api
                .getSystemDictData({
                    dictCode: 'VISIT_CONFIG',
                    label: 'VALIDATE_VISIT'
                })
                .then(res => {
                    if (res.code === 200) {
                        this.day = Number(res.data.code);
                        // console.log(nextDay('after', true, this.day))
                    }
                });
        },
        upload(type) {
            this.type = type;
            if (type === 'faceImg') {
                this.$refs.cropper.open();
                return;
            }
            uni.chooseImage({
                success: chooseImageRes => {
                    // if (type === 'faceImg') {
                    //     this.photoSrc = chooseImageRes.tempFilePaths[0];
                    //     this.$refs.tlyPictureCut.showPop();
                    //     return
                    // }
                    uni.showLoading({ title: '上传中', mask: true });
                    for (let i = 0; i < chooseImageRes.tempFilePaths.length; i++) {
                        uni.uploadFile({
                            url: `${this.$baseUrl}visitsAdmin/cloudService/web/public/uploadFtp.do`,
                            filePath: chooseImageRes.tempFilePaths[i],
                            name: 'file',
                            formData: {
                                folderCode: 'MEMBER_IMG'
                            },
                            success: uploadFileRes => {
                                let res = JSON.parse(uploadFileRes.data);
                                if (type === 'faceImg') {
                                    this.withUserList.faceImg = res.data.halfPath;
                                    this.withUserList.faceImgUrl = res.data.prefixPath + res.data.folder + res.data.halfPath;
                                } else {
                                    this.withUserList.imgurl = res.data.halfPath;
                                    this.withUserList.imgurlUrl = res.data.prefixPath + res.data.folder + res.data.halfPath;
                                }
                            },
                            complete() {
                                if (i === chooseImageRes.tempFilePaths.length - 1) {
                                    uni.hideLoading();
                                }
                            }
                        });
                    }
                }
            });
        },
        seleIdcard(e) {
            this.withUserList.idcardType = e.value[0].id;
            this.withUserList.idcardTypeName = e.value[0].name;
            this.show6 = false;
        },
        submitCart() {
            if (!this.carName)
                return uni.showToast({
                    title: '请输入车牌号码',
                    icon: 'none'
                });
            this.cars.push(this.carName);
            this.form1.carNos = this.cars.join(',');
            this.carName = '';
            this.show2 = false;
        },
        deleCars(i) {
            this.cars.splice(i, 1);
            this.form1.carNos = this.cars.join(',');
        },
        seleMJ(i) {
            this.columns.forEach((item, index) => {
                if (index === i) {
                    item.active = !item.active;
                }
            });
        },
        openLC() {
            if (!this.form1.starttime)
                return uni.showToast({
                    title: '请先选择入厂时间',
                    icon: 'none'
                });
            this.show5 = true;
        },
        setinDate(e) {
            this.form1.starttime = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM');
            // this.maxTime = getDaysAfterDate(uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM'), this.day)
            this.maxTime = this.form1.starttime.slice(0, 11) + '23:59'
            this.form1.endtime = ''
            this.show4 = false;
        },
        setoutDate(e) {
            this.form1.endtime = uni.$u.timeFormat(e.value, 'yyyy-mm-dd hh:MM');
            this.show5 = false;
        },
        formatTimeStamp(date) {
            return Date.parse(new Date(`${date}`)) || Date.parse(new Date(`${date.replace(/-/g, '/')}`));
        },
        // æŸ¥è¯¢ç”¨æˆ·
        getUser() {
            if (this.verify === '0') {
                if (this.form1.phone1) {
                    this.$u.api
                        .getVisitedMember({
                            mobile: this.form1.phone1
                        })
                        .then(res => {
                            if (res.code === 200) {
                                this.form1.receptMemberId = res.data.id;
                                this.form1.receptMemberName = res.data.name;
                            }
                        });
                }
            } else {
                if (this.form1.phone1 && this.form1.receptMemberName) {
                    this.$u.api
                        .getVisitedMember({
                            mobile: this.form1.phone1,
                            name: this.form1.receptMemberName
                        })
                        .then(res => {
                            if (res.code === 200) {
                                this.form1.receptMemberId = res.data.id;
                                this.form1.receptMemberName = res.data.name;
                            }
                        });
                }
            }
        },
        // è¢«æ‹œè®¿äººä¿¡æ¯æ ¡éªŒæ–¹å¼ï¼ˆ0手机号单独校验 1手机号和姓名组合校验)
        getUserValid() {
            this.$u.api
                .getSystemDictData({
                    dictCode: 'SYSTEM',
                    label: 'BEVISITED_USER_VALID'
                })
                .then(res => {
                    if (res.code === 200) {
                        this.verify = res.data.code;
                    }
                });
        },
        // èŽ·å–æ˜¯å¦éœ€è¦é€‰æ‹©é—¨ç¦/门禁列表
        getvisit() {
            this.$u.api
                .getSystemDictData({
                    dictCode: 'SYSTEM',
                    label: 'SELECT_DOORS_VISIT_REQUIRED'
                })
                .then(res => {
                    if (res.code === 200) {
                        this.accessControl = res.data.code;
                        if (res.data.code === '1') {
                            this.$u.api.deviceRoleList({ type: 1 }).then(device => {
                                if (device.code === 200) {
                                    if (device.data.length > 0) {
                                        device.data.forEach(item => {
                                            item.active = false;
                                        });
                                        this.columns = device.data;
                                    }
                                }
                            });
                        }
                    }
                });
        }
    }
};
</script>
<style>
page {
    background-color: #f7f7f7 !important;
}
.u-upload__button {
    margin: 0 !important;
}
</style>
<style lang="scss" scoped>
.visit {
    width: 100%;
    padding-top: 10rpx 0;
    .menjin {
        width: 100%;
        .respondent-title {
            width: 100%;
            height: 100rpx;
            line-height: 100rpx;
            text-align: center;
            font-size: 32rpx;
            font-weight: 500;
            color: #222222;
        }
        .list {
            width: 100%;
            height: 400rpx;
            display: flex;
            flex-direction: column;
            .list_item {
                width: 100%;
                display: flex;
                align-items: center;
                justify-content: space-between;
                text {
                    font-size: 28rpx;
                    color: #000000;
                }
                image {
                    width: 30rpx;
                    height: 30rpx;
                }
            }
        }
        .menjin_footer {
            width: 100%;
            padding: 30rpx;
            box-sizing: border-box;
            display: flex;
            align-items: center;
            justify-content: space-between;
            .menjin_footer_item {
                flex: 1;
                height: 80rpx;
                display: flex;
                align-items: center;
                justify-content: center;
                border-radius: 10rpx;
                background-color: #025eef;
                color: #ffffff;
                font-size: 26rpx;
                margin-left: 30rpx;
                &:first-child {
                    margin-left: 0 !important;
                }
            }
        }
    }
    .addcar {
        padding: 30rpx;
        width: 100%;
        box-sizing: border-box;
        .addcar_head {
            text-align: center;
            font-size: 32rpx;
            font-family: PingFangSC, PingFang SC;
            font-weight: 500;
            color: #222222;
        }
        .addcar_ipt {
            width: 100%;
            height: 100rpx;
            line-height: 100rpx;
            text-align: center;
            background: #f7f7f7;
            border-radius: 50rpx;
            margin-top: 60rpx;
            input {
                width: 100%;
                height: 100%;
                font-size: 28rpx;
                font-weight: 400;
                color: #000000;
                text-align: center;
            }
        }
        .addcar_footer {
            width: 100%;
            display: flex;
            align-items: center;
            justify-content: space-between;
            margin-top: 60rpx;
            .t {
                background: #025eef !important;
                color: #ffffff !important;
            }
            .addcar_footer_item {
                flex: 1;
                height: 88rpx;
                line-height: 88rpx;
                font-size: 32rpx;
                font-weight: 400;
                color: #025eef;
                text-align: center;
                border-radius: 44rpx;
                border: 1rpx solid #025eef;
                margin-right: 18rpx;
                &:last-child {
                    margin-right: 0 !important;
                }
            }
        }
    }
    .list {
        width: 100%;
        padding: 0 30rpx;
        box-sizing: border-box;
        background-color: #ffffff;
        .empty {
            width: 750rpx;
            height: 20rpx;
            background-color: #f7f7f7;
            margin: 0 -30rpx;
        }
        .list_item {
            width: 100%;
            // min-height: 98rpx;
            padding: 30rpx 0;
            box-sizing: border-box;
            display: flex;
            align-items: center;
            justify-content: space-between;
            border-bottom: 1rpx solid #e5e5e5;
            .list_item_label {
                flex-shrink: 0;
                display: flex;
                align-items: center;
                text {
                    &:nth-child(2) {
                        font-size: 30rpx;
                        font-weight: 400;
                        color: #222222;
                    }
                    &:nth-child(1) {
                        font-size: 30rpx;
                        font-weight: 400;
                        color: #e42d2d;
                    }
                }
            }
            .list_item_content {
                flex: 1;
                height: 100%;
                margin-left: 30rpx;
                display: flex;
                align-items: center;
                justify-content: flex-end;
                text {
                    font-size: 28rpx;
                    font-weight: 400;
                    color: #999999;
                    margin-right: 6rpx;
                }
                input {
                    width: 100%;
                    height: 100%;
                    text-align: right;
                    font-size: 28rpx;
                    font-weight: 400;
                    color: #222222;
                }
            }
        }
    }
    .zw {
        width: 100%;
        height: calc(env(safe-area-inset-bottom) + 118rpx);
    }
    .footer {
        width: 100%;
        padding: 0 30rpx;
        padding-bottom: env(safe-area-inset-bottom);
        box-sizing: border-box;
        position: fixed;
        left: 0;
        bottom: 68rpx;
        .footer_btn {
            width: 100%;
            height: 88rpx;
            line-height: 88rpx;
            text-align: center;
            background: #4e99a9;
            border-radius: 44rpx;
            font-size: 32rpx;
            color: #ffffff;
        }
    }
}
</style>
h5/static/staff/ic_fangkebaobei.png
h5/static/staff/ic_huiyishiguanli.png
h5/static/staff/ic_paichejilu.png
h5/static/staff/ic_renwuzhongxin.png
h5/static/staff/ic_wodehuiyi.png
h5/static/staff/ic_xiugaimima.png
h5/static/staff/ic_yinhuansuipai.png
h5/static/staff/ic_yongcheshenqing.png
h5/static/staff/ic_yuyuehuiyishi.png