From 908ce43ff21c2068ef5148b0a417423c8ed9eae5 Mon Sep 17 00:00:00 2001 From: liukangdong <898885815@qq.com> Date: 星期三, 12 三月 2025 16:37:32 +0800 Subject: [PATCH] Merge branch 'master' of http://139.186.142.91:10010/r/productDev/dmvisit --- h5/pages/visitorApplication/visitorApplication.vue | 3121 ++++++++++++++++++++++++++++++++-------------------------- 1 files changed, 1,733 insertions(+), 1,388 deletions(-) diff --git a/h5/pages/visitorApplication/visitorApplication.vue b/h5/pages/visitorApplication/visitorApplication.vue index c76ea05..5b8f978 100644 --- a/h5/pages/visitorApplication/visitorApplication.vue +++ b/h5/pages/visitorApplication/visitorApplication.vue @@ -1,72 +1,72 @@ -<template> - <view class="visit"> - <!-- <view class="head">鎷滆淇℃伅</view> --> - <view class="list"> - <view class="list_item"> - <view class="list_item_label"> - <text>*</text> - <text>琚浜�</text> - </view> - <view class="list_item_content" @click="selName"> - <text :style="{ color: form1.receptMemberName ? '#000000' : '' }">{{ - form1.receptMemberName ? form1.receptMemberName : "璇烽�夋嫨" - }}</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="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> - <!-- <view class="list_item" v-if="accessControl === '1'" @click="show = true"> - <view class="list_item_label"> - <text>璁块棶闂ㄧ</text> - <text>*</text> - </view> - <view class="list_item_content"> - <text :style="{color: form1.doorSelectName ? '#000000' : ''}">{{form1.doorSelectName ? form1.doorSelectName : '璇烽�夋嫨'}}</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" @click="showReason = true"> - <text :style="{ color: form1.reason ? '#000000' : '' }">{{ - form1.reason ? form1.reason : "璇烽�夋嫨鎷滆浜嬬敱" - }}</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"> +<template> + <view class="visit"> + <!-- <view class="head">鎷滆淇℃伅</view> --> + <view class="list"> + <view class="list_item"> + <view class="list_item_label"> + <text>*</text> + <text>琚浜�</text> + </view> + <view class="list_item_content" @click="selName"> + <text :style="{ color: form1.receptMemberName ? '#000000' : '' }">{{ + form1.receptMemberName ? form1.receptMemberName : "璇烽�夋嫨" + }}</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="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> + <!-- <view class="list_item" v-if="accessControl === '1'" @click="show = true"> + <view class="list_item_label"> + <text>璁块棶闂ㄧ</text> + <text>*</text> + </view> + <view class="list_item_content"> + <text :style="{color: form1.doorSelectName ? '#000000' : ''}">{{form1.doorSelectName ? form1.doorSelectName : '璇烽�夋嫨'}}</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" @click="showReason = true"> + <text :style="{ color: form1.reason ? '#000000' : '' }">{{ + form1.reason ? form1.reason : "璇烽�夋嫨鎷滆浜嬬敱" + }}</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"> <!-- <switch color="#4e99a9" style="transform: scale(0.8)" @change="constructionChange" /> --> <!-- <u-radio-group v-model="form1.type"> <u-radio label="鏄�" :name="1" activeColor="#4d99a8" class="mr24" /> @@ -84,1238 +84,1583 @@ <image v-else src="@/static/checkbox_disable@3x.png" mode=""></image> </view> - </view> - </view> - </view> - <view v-if="form1.type == '1'" class="list_item"> - <view class="list_item_label"> - <text></text> - <text>鏂藉伐鍐呭</text> - <!-- <text>*</text> --> - </view> - <view class="list_item_content"> - <input type="text" v-model="form1.constructionReason" 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> - <view class="footer"> - <view class="footer_btn" @click="onSubmit">鎻愪氦</view> - </view> - <!-- 鍏ュ洯鏃堕棿 --> - <u-datetime-picker :show="show4" :minDate="new Date().getTime()" mode="datetime" :formatter="formatter" - @cancel="show4 = false" @confirm="setstarttime"></u-datetime-picker> - <!-- 绂诲洯鏃堕棿 --> - <u-datetime-picker v-if="form1.starttime" :show="show5" :formatter="formatter" - :minDate="formatTimeStamp(form1.starttime)" :maxDate="formatTimeStamp(form1.starttime.slice(0,10) + ' 23:59')" - mode="datetime" @cancel="show5 = false" @confirm="setendtime"></u-datetime-picker> - <!-- 闂ㄧ --> - <u-popup :show="show" :round="10" :safeAreaInsetBottom="true" :closeable="true" mode="bottom" @close="closeMJ"> - <view class="menjin"> - <view class="respondent-title"> 閫夋嫨闂ㄧ </view> - <scroll-view scroll-y class="list"> - <view class="list_item" v-for="(item, index) in columns" :key="index" @click="seleMJ(index)"> - <text>{{ item.name }}</text> - <image src="@/static/checkbox@2x.png" mode="widthFix" v-show="!item.active"></image> - <image src="@/static/checkbo1x_sel@2x.png" mode="widthFix" v-show="item.active"></image> - </view> - </scroll-view> - <view class="menjin_footer"> - <view class="menjin_footer_item" @click="closeMJ">鍙栨秷</view> - <view class="menjin_footer_item" @click="submitMJ">纭</view> - </view> - </view> - </u-popup> - <!-- 閫夋嫨闅忚浜哄憳 --> - <u-popup :show="show1" :round="10" :safeAreaInsetBottom="true" :closeable="true" mode="bottom" - @close="show1 = false"> - <view class="popup-content"> - <view class="respondent-title"> 閫夋嫨闅忚浜哄憳 </view> - <view class="search-box"> - <view class="search-box-top"> - <view class="search-box-top-ipt"> - <image src="@/static/ic_search@2x.png" mode="widthFix"></image> - <input type="text" placeholder="鎼滅储濮撳悕/鎵嬫満鍙�" /> - </view> - <text @click=" - show1 = false; - show3 = true; - ">鏂板</text> - </view> - <view class="search-box-total">鍏�0鏉℃暟鎹�</view> - </view> - <scroll-view scroll-y class="list"> - <view class="item" v-for="(item, index) in 8" :key="index"> - <view class="item_a"> - <!-- <image src="@/static/checkbox.png" mode="widthFix" v-if="!item.active" /> --> - <image src="@/static/checkbox_sel@2x.png" mode="widthFix" /> - </view> - <view class="item_b"> - <image src="@/static/ic_mima@2x.png" mode="widthFix" /> - </view> - <view class="item_c"> - <text>鐢ㄦ埛鍚�</text> - <text>宸叉媺榛�</text> - </view> - </view> - </scroll-view> - <view class="footer1"> - <view class="footer_left"> - <text class="footer_left_a">宸查�夋嫨锛�0浜�</text> - <text class="footer_left_b">鏉庝紵锛�</text> - </view> - <view class="footer_btn">纭 0/0</view> - </view> - </view> - </u-popup> - <!-- 杞﹁締 --> - <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-popup :show="show3" :round="10" :safeAreaInsetBottom="true" :closeable="true" mode="bottom" - @close="show3 = false"> - <view class="adduser"> - <view class="adduser_head">闅忚浜哄憳</view> - <view class="adduser_list"> - <view class="adduser_list_item"> - <view class="adduser_list_item_label"> - <text>濮撳悕</text> - <text>*</text> - </view> - <view class="adduser_list_item_ipt"> - <input type="text" v-model="withUserList.name" placeholder-style="color: #999999;font-size: 28rpx;" - placeholder="璇疯緭鍏ョ湡瀹炲鍚�" /> - </view> - </view> - <view class="adduser_list_item"> - <view class="adduser_list_item_label"> - <text>鎵嬫満鍙�</text> - <text>*</text> - </view> - <view class="adduser_list_item_ipt"> - <input type="number" v-model="withUserList.phone" maxlength="11" - placeholder-style="color: #999999;font-size: 28rpx;" placeholder="璇疯緭鍏ユ墜鏈哄彿" /> - </view> - </view> - <view class="adduser_list_item"> - <view class="adduser_list_item_label"> - <text>璇佷欢绫诲瀷</text> - <text>*</text> - </view> - <view class="adduser_list_item_ipt" @click="show6 = true"> - <text :style="{ color: withUserList.idcardTypeName ? '#000000' : '' }">{{ - withUserList.idcardTypeName - ? withUserList.idcardTypeName - : "璇烽�夋嫨" - }}</text> - <u-icon name="arrow-right" color="#CCCCCC" size="16"></u-icon> - </view> - </view> - <view class="adduser_list_item"> - <view class="adduser_list_item_label"> - <text>璇佷欢鍙风爜</text> - <text>*</text> - </view> - <view class="adduser_list_item_ipt"> - <input type="text" v-model="withUserList.idcardNo" maxlength="18" - placeholder-style="color: #999999;font-size: 28rpx;" placeholder="璇疯緭鍏ヨ瘉浠跺彿鐮�" /> - </view> - </view> - <view class="adduser_list_item"> - <view class="adduser_list_item_label"> - <text>*</text> - <text>鍏徃</text> - </view> - <view class="adduser_list_item_ipt"> - <input type="text" v-model="withUserList.companyName" placeholder-style="color: #999999;font-size: 28rpx;" - placeholder="璇疯緭鍏ュ叕鍙稿悕绉�" /> - </view> - </view> - <view class="adduser_list_item"> - <view class="adduser_list_item_label"> - <text></text> - <text>闅忚杞﹁締</text> - </view> - <view class="adduser_list_item_ipt" @click="openInput(2)"> - <text :style="{ color: withUserList.carNos ? '#000000' : '' }">{{ - withUserList.carNos ? withUserList.carNos : "璇疯緭鍏ヨ溅鐗屽彿鐮�" - }}</text> - <!-- <input type="text" v-model="withUserList.carNos" disabled placeholder-style="color: #999999;font-size: 28rpx;" placeholder="璇疯緭鍏ヨ溅鐗屽彿" /> --> - </view> - </view> - <view class="adduser_list_item"> - <view class="adduser_list_item_label1"> - <text class="cc">浜鸿劯鐓х墖<b>*</b></text> - <text class="aa">1銆佽鎻愪緵浜斿畼娓呮櫚锛屼汉鑴稿眳涓殑姝i潰浜鸿劯鍏嶅啝鐓х墖锛�</text> - <text class="aa">2銆佺収鐗囨棤閫嗗厜銆佹棤PS銆佹棤杩囧害缇庨澶勭悊锛�</text> - </view> - <view class="adduser_list_item_ipt"> - <view class="adduser_list_item_ipt1_upload" @click="upload('faceImg')" v-if="!withUserList.faceImgUrl"> - <u-icon name="plus" color="rgb(153, 153, 153)" size="28"></u-icon> - </view> - <view class="adduser_list_item_ipt1_upload" @click="upload('faceImg')" v-else> - <image :src="withUserList.faceImgUrl" mode="widthFix"></image> - </view> - </view> - </view> - <view class="adduser_list_item"> - <view class="adduser_list_item_label"> - <text>鍋ュ悍璇佺収鐗�</text> - <text v-if="visit === '1'">*</text> - </view> - <view class="adduser_list_item_ipt"> - <view class="adduser_list_item_ipt1_upload" @click="upload('imgurl')" v-if="!withUserList.imgurlUrl"> - <u-icon name="plus" color="rgb(153, 153, 153)" size="28"></u-icon> - </view> - <view class="adduser_list_item_ipt1_upload" @click="upload('imgurl')" v-else> - <image :src="withUserList.imgurlUrl" mode="widthFix"></image> - </view> - </view> - </view> - </view> - <view class="adduser_footer"> - <view class="adduser_footer_item" @click="show3 = false">鍙栨秷</view> - <view class="adduser_footer_item t" @click="submitUser">鎻愪氦</view> - </view> - </view> - </u-popup> - <u-picker keyName="name" :show="show6" :columns="columns1" @confirm="seleIdcard" @cancel="show6 = false"></u-picker> - <u-picker keyName="name" :show="showName" :columns="VisitPoeple" @confirm="selectedName" - @cancel="showName = false"></u-picker> - <u-picker keyName="title" :show="showReason" :columns="VisitReason" @confirm="selectedReason" - @cancel="showReason = 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' - import { - getVisitedMember, - getSystemDictData, - getVisitedVisitReason, - createFk - } from '@/api' - export default { - data() { - return { - photoSrc: '', - type: '', - inputType: '', - showName: false, - show: false, - show1: false, - show2: false, - show3: false, - show4: false, - show5: false, - show6: false, - show7: false, - showReason: false, - fileList: [], - columns1: [ - [{ - name: '韬唤璇�', - id: 0 - }, { - name: '娓境璇佷欢', - id: 1 - }, { - name: '鎶ょ収', - id: 2 - }], - ], - VisitReason: [], - VisitPoeple: [], - columns: [], - cars: [], - day: null, - maxTime: '', - carName: '', - personnel: [], - userAnswerId: '', - form1: { - phone1: '', - receptMemberId: '', - receptMemberName: '', - starttime: '', - endtime: '', - doors: '', - doorSelectName: '', - reason: '', - carNos: '', - type: 0 - }, - 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() - this.getUser() - }, - mounted() { - this.$eventBus.$on('svisitorAppSel', (option) => { - // this.$set(this.param, 'checkUserId', option.id) - // this.$set(this.param, 'applyCheckUserId', option.id) - // this.$set(this.param, 'checkorName', option.name) - - this.form1.receptMemberName = option.name - this.form1.receptMemberId = option.id - this.form1.receptMemberDepartment = option.companyName - }) - }, - methods: { - formatter(type, value) { - if (type === 'year') { - return `${value}骞碻 - } - if (type === 'month') { - return `${value}鏈坄 - } - if (type === 'day') { - return `${value}鏃 + </view> + </view> + </view> + <view v-if="form1.type == '1'" class="list_item"> + <view class="list_item_label"> + <text></text> + <text>鏂藉伐鍐呭</text> + <!-- <text>*</text> --> + </view> + <view class="list_item_content"> + <input type="text" v-model="form1.constructionReason" 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> + <view class="footer"> + <view class="footer_btn" @click="onSubmit">鎻愪氦</view> + </view> + <!-- 鍏ュ洯鏃堕棿 --> + <u-datetime-picker :show="show4" :minDate="new Date().getTime()" mode="datetime" :formatter="formatter" + @cancel="show4 = false" @confirm="setstarttime"></u-datetime-picker> + <!-- 绂诲洯鏃堕棿 --> + <u-datetime-picker v-if="form1.starttime" :show="show5" :formatter="formatter" + :minDate="formatTimeStamp(form1.starttime)" :maxDate="formatTimeStamp(form1.starttime.slice(0,10) + ' 23:59')" + mode="datetime" @cancel="show5 = false" @confirm="setendtime"></u-datetime-picker> + <!-- 闂ㄧ --> + <u-popup :show="show" :round="10" :safeAreaInsetBottom="true" :closeable="true" mode="bottom" @close="closeMJ"> + <view class="menjin"> + <view class="respondent-title"> 閫夋嫨闂ㄧ </view> + <scroll-view scroll-y class="list"> + <view class="list_item" v-for="(item, index) in columns" :key="index" @click="seleMJ(index)"> + <text>{{ item.name }}</text> + <image src="@/static/checkbox@2x.png" mode="widthFix" v-show="!item.active"></image> + <image src="@/static/checkbo1x_sel@2x.png" mode="widthFix" v-show="item.active"></image> + </view> + </scroll-view> + <view class="menjin_footer"> + <view class="menjin_footer_item" @click="closeMJ">鍙栨秷</view> + <view class="menjin_footer_item" @click="submitMJ">纭</view> + </view> + </view> + </u-popup> + <!-- 閫夋嫨闅忚浜哄憳 --> + <u-popup :show="show1" :round="10" :safeAreaInsetBottom="true" :closeable="true" mode="bottom" + @close="show1 = false"> + <view class="popup-content"> + <view class="respondent-title"> 閫夋嫨闅忚浜哄憳 </view> + <view class="search-box"> + <view class="search-box-top"> + <view class="search-box-top-ipt"> + <image src="@/static/ic_search@2x.png" mode="widthFix"></image> + <input type="text" placeholder="鎼滅储濮撳悕/鎵嬫満鍙�" /> + </view> + <text @click=" + show1 = false; + show3 = true; + ">鏂板</text> + </view> + <view class="search-box-total">鍏�0鏉℃暟鎹�</view> + </view> + <scroll-view scroll-y class="list"> + <view class="item" v-for="(item, index) in 8" :key="index"> + <view class="item_a"> + <!-- <image src="@/static/checkbox.png" mode="widthFix" v-if="!item.active" /> --> + <image src="@/static/checkbox_sel@2x.png" mode="widthFix" /> + </view> + <view class="item_b"> + <image src="@/static/ic_mima@2x.png" mode="widthFix" /> + </view> + <view class="item_c"> + <text>鐢ㄦ埛鍚�</text> + <text>宸叉媺榛�</text> + </view> + </view> + </scroll-view> + <view class="footer1"> + <view class="footer_left"> + <text class="footer_left_a">宸查�夋嫨锛�0浜�</text> + <text class="footer_left_b">鏉庝紵锛�</text> + </view> + <view class="footer_btn">纭 0/0</view> + </view> + </view> + </u-popup> + <!-- 杞﹁締 --> + <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-popup :show="show3" :round="10" :safeAreaInsetBottom="true" :closeable="true" mode="bottom" + @close="show3 = false"> + <view class="adduser"> + <view class="adduser_head">闅忚浜哄憳</view> + <view class="adduser_list"> + <view class="adduser_list_item"> + <view class="adduser_list_item_label"> + <text>濮撳悕</text> + <text>*</text> + </view> + <view class="adduser_list_item_ipt"> + <input type="text" v-model="withUserList.name" placeholder-style="color: #999999;font-size: 28rpx;" + placeholder="璇疯緭鍏ョ湡瀹炲鍚�" /> + </view> + </view> + <view class="adduser_list_item"> + <view class="adduser_list_item_label"> + <text>鎵嬫満鍙�</text> + <text>*</text> + </view> + <view class="adduser_list_item_ipt"> + <input type="number" v-model="withUserList.phone" maxlength="11" + placeholder-style="color: #999999;font-size: 28rpx;" placeholder="璇疯緭鍏ユ墜鏈哄彿" /> + </view> + </view> + <view class="adduser_list_item"> + <view class="adduser_list_item_label"> + <text>璇佷欢绫诲瀷</text> + <text>*</text> + </view> + <view class="adduser_list_item_ipt" @click="show6 = true"> + <text :style="{ color: withUserList.idcardTypeName ? '#000000' : '' }">{{ + withUserList.idcardTypeName + ? withUserList.idcardTypeName + : "璇烽�夋嫨" + }}</text> + <u-icon name="arrow-right" color="#CCCCCC" size="16"></u-icon> + </view> + </view> + <view class="adduser_list_item"> + <view class="adduser_list_item_label"> + <text>璇佷欢鍙风爜</text> + <text>*</text> + </view> + <view class="adduser_list_item_ipt"> + <input type="text" v-model="withUserList.idcardNo" maxlength="18" + placeholder-style="color: #999999;font-size: 28rpx;" placeholder="璇疯緭鍏ヨ瘉浠跺彿鐮�" /> + </view> + </view> + <view class="adduser_list_item"> + <view class="adduser_list_item_label"> + <text>*</text> + <text>鍏徃</text> + </view> + <view class="adduser_list_item_ipt"> + <input type="text" v-model="withUserList.companyName" placeholder-style="color: #999999;font-size: 28rpx;" + placeholder="璇疯緭鍏ュ叕鍙稿悕绉�" /> + </view> + </view> + <view class="adduser_list_item"> + <view class="adduser_list_item_label"> + <text></text> + <text>闅忚杞﹁締</text> + </view> + <view class="adduser_list_item_ipt" @click="openInput(2)"> + <text :style="{ color: withUserList.carNos ? '#000000' : '' }">{{ + withUserList.carNos ? withUserList.carNos : "璇疯緭鍏ヨ溅鐗屽彿鐮�" + }}</text> + <!-- <input type="text" v-model="withUserList.carNos" disabled placeholder-style="color: #999999;font-size: 28rpx;" placeholder="璇疯緭鍏ヨ溅鐗屽彿" /> --> + </view> + </view> + <view class="adduser_list_item"> + <view class="adduser_list_item_label1"> + <text class="cc">浜鸿劯鐓х墖<b>*</b></text> + <text class="aa">1銆佽鎻愪緵浜斿畼娓呮櫚锛屼汉鑴稿眳涓殑姝i潰浜鸿劯鍏嶅啝鐓х墖锛�</text> + <text class="aa">2銆佺収鐗囨棤閫嗗厜銆佹棤PS銆佹棤杩囧害缇庨澶勭悊锛�</text> + </view> + <view class="adduser_list_item_ipt"> + <view class="adduser_list_item_ipt1_upload" @click="upload('faceImg')" v-if="!withUserList.faceImgUrl"> + <u-icon name="plus" color="rgb(153, 153, 153)" size="28"></u-icon> + </view> + <view class="adduser_list_item_ipt1_upload" @click="upload('faceImg')" v-else> + <image :src="withUserList.faceImgUrl" mode="widthFix"></image> + </view> + </view> + </view> + <view class="adduser_list_item"> + <view class="adduser_list_item_label"> + <text>鍋ュ悍璇佺収鐗�</text> + <text v-if="visit === '1'">*</text> + </view> + <view class="adduser_list_item_ipt"> + <view class="adduser_list_item_ipt1_upload" @click="upload('imgurl')" v-if="!withUserList.imgurlUrl"> + <u-icon name="plus" color="rgb(153, 153, 153)" size="28"></u-icon> + </view> + <view class="adduser_list_item_ipt1_upload" @click="upload('imgurl')" v-else> + <image :src="withUserList.imgurlUrl" mode="widthFix"></image> + </view> + </view> + </view> + </view> + <view class="adduser_footer"> + <view class="adduser_footer_item" @click="show3 = false">鍙栨秷</view> + <view class="adduser_footer_item t" @click="submitUser">鎻愪氦</view> + </view> + </view> + </u-popup> + <u-picker keyName="name" :show="show6" :columns="columns1" @confirm="seleIdcard" @cancel="show6 = false"></u-picker> + <u-picker keyName="name" :show="showName" :columns="VisitPoeple" @confirm="selectedName" + @cancel="showName = false"></u-picker> + <u-picker keyName="title" :show="showReason" :columns="VisitReason" @confirm="selectedReason" + @cancel="showReason = 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' + import { + getVisitedMember, + getSystemDictData, + getVisitedVisitReason, + createFk + } from '@/api' + export default { + data() { + return { + photoSrc: '', + type: '', + inputType: '', + showName: false, + show: false, + show1: false, + show2: false, + show3: false, + show4: false, + show5: false, + show6: false, + show7: false, + showReason: false, + fileList: [], + columns1: [ + [{ + name: '韬唤璇�', + id: 0 + }, { + name: '娓境璇佷欢', + id: 1 + }, { + name: '鎶ょ収', + id: 2 + }], + ], + VisitReason: [], + VisitPoeple: [], + columns: [], + cars: [], + day: null, + maxTime: '', + carName: '', + personnel: [], + userAnswerId: '', + form1: { + phone1: '', + receptMemberId: '', + receptMemberName: '', + starttime: '', + endtime: '', + doors: '', + doorSelectName: '', + reason: '', + carNos: '', + type: 0 + }, + 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() + this.getUser() + }, + mounted() { + this.$eventBus.$on('svisitorAppSel', (option) => { + // this.$set(this.param, 'checkUserId', option.id) + // this.$set(this.param, 'applyCheckUserId', option.id) + // this.$set(this.param, 'checkorName', option.name) + + this.form1.receptMemberName = option.name + this.form1.receptMemberId = option.id + this.form1.receptMemberDepartment = option.companyName + }) + }, + methods: { + formatter(type, value) { + if (type === 'year') { + return `${value}骞碻 } + if (type === 'month') { + return `${value}鏈坄 + } + if (type === 'day') { + return `${value}鏃 + } +<<<<<<< HEAD + 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}public/api/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(); + } + }); + }, + closeMJ() { + this.show = false + this.columns.forEach(item => { + item.active = false + }) + }, + 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(this.day) + // console.log(nextDay('after', true, this.day)) + } + }) + }, + submitUser() { + if (!this.withUserList.name) return uni.showToast({ + title: '濮撳悕涓嶈兘涓虹┖', + icon: 'none' + }) + if (!this.withUserList.phone) return uni.showToast({ + title: '鎵嬫満鍙蜂笉鑳戒负绌�', + icon: 'none' + }) + const regExp = /^1[3456789]\d{9}$/; + if (!regExp.test(this.withUserList.phone)) return uni.showToast({ + title: '鎵嬫満鍙锋牸寮忛敊璇�', + icon: 'none' + }) + if (!String(this.withUserList.idcardType)) return uni.showToast({ + title: '璇佷欢绫诲瀷涓嶈兘涓虹┖', + icon: 'none' + }) + if (!this.withUserList.idcardNo) return uni.showToast({ + title: '璇佷欢鍙风爜涓嶈兘涓虹┖', + icon: 'none' + }) + if (this.withUserList.idcardType === 0) { + const regex = /^[1-9]\d{5}(19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[1-2]\d|3[0-1])\d{3}[\dxX]$/; + if (!regex.test(this.withUserList.idcardNo)) return uni.showToast({ + title: '璇佷欢鍙风爜鏍煎紡閿欒', + icon: 'none' + }) +======= if (type === 'hour') { return `${value}鏃禶 +>>>>>>> f0f08cc1ff84d45de32d8bff4a40e6a7d0d7a9e6 } if (type === 'minute') { return `${value}鍒哷 - } - return value - }, - selName() { - uni.navigateTo({ - url: '/pages/visitorApplication/memberSel' - }) - }, - 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() - }, - constructionChange(value) { - this.form1.type = value - }, - 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() - } - }) - }, - closeMJ() { - this.show = false - this.columns.forEach(item => { - item.active = false - }) - }, - onSubmit() { - 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' - createFk({ - ...this.form, - ...data, - openid: this.$store.state.openId, - withUserList: this.personnel - }).then(res => { - if (res.code === 200) { - uni.navigateTo({ - 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 - } - }) - // 璧峰鏃堕棿鏃堕暱 - 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)) - } - }) - }, - submitUser() { - if (!this.withUserList.name) return uni.showToast({ - title: '濮撳悕涓嶈兘涓虹┖', - icon: 'none' - }) - if (!this.withUserList.phone) return uni.showToast({ - title: '鎵嬫満鍙蜂笉鑳戒负绌�', - icon: 'none' - }) - const regExp = /^1[3456789]\d{9}$/ - if (!regExp.test(this.withUserList.phone)) return uni.showToast({ - title: '鎵嬫満鍙锋牸寮忛敊璇�', - icon: 'none' - }) - if (!String(this.withUserList.idcardType)) return uni.showToast({ - title: '璇佷欢绫诲瀷涓嶈兘涓虹┖', - icon: 'none' - }) - if (!this.withUserList.idcardNo) return uni.showToast({ - title: '璇佷欢鍙风爜涓嶈兘涓虹┖', - icon: 'none' - }) - if (this.withUserList.idcardType === 0) { - const regex = /^[1-9]\d{5}(19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[1-2]\d|3[0-1])\d{3}[\dxX]$/ - if (!regex.test(this.withUserList.idcardNo)) return uni.showToast({ - title: '璇佷欢鍙风爜鏍煎紡閿欒', - icon: 'none' - }) - } - if (!this.withUserList.companyName) return uni.showToast({ - title: '鍏徃涓嶈兘涓虹┖', - icon: 'none' - }) - if (!this.withUserList.faceImg) return uni.showToast({ - title: '浜鸿劯鐓х墖涓嶈兘涓虹┖', - icon: 'none' - }) - if (this.visit === '1') { - if (!this.withUserList.imgurl) return uni.showToast({ - title: '浜鸿劯鐓х墖涓嶈兘涓虹┖', - icon: 'none' - }) - } - let arr = JSON.parse(JSON.stringify(this.withUserList)) - this.personnel.push(arr) - this.show3 = false - this.withUserList.name = '' - this.withUserList.phone = '' - this.withUserList.idcardType = '' - this.withUserList.idcardTypeName = '' - this.withUserList.companyName = '' - this.withUserList.idcardNo = '' - this.withUserList.faceImg = '' - this.withUserList.faceImgUrl = '' - this.withUserList.imgurl = '' - this.withUserList.imgurlUrl = '' - }, - upload(type) { - this.type = type - if (type === 'faceImg') { - this.$refs.cropper.open() - return - } - uni.chooseImage({ - success: (chooseImageRes) => { - 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 - }, - selectedName(e) { - this.form1.receptMemberName = e.value[0].name - this.form1.receptMemberId = e.value[0].id - this.form1.receptMemberDepartment = e.value[0].companyId - this.showName = false - }, - selectedReason(e) { - this.form1.reason = e.value[0].title - console.log(e.value[0].title) - this.showReason = 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(',') - }, - submitMJ() { - let arr = [] - let names = [] - this.columns.forEach(item => { - if (item.active) { - arr.push(item.id) - names.push(item.name) - } - }) - if (arr.length === 0) return uni.showToast({ - title: '璇烽�夋嫨闂ㄧ', - icon: 'none' - }) - this.form1.doorSelectName = names.join(',') - this.form1.doors = arr.join(',') - this.show = false - }, - 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 - }, - setstarttime(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 - console.log(this.form1.starttime.slice(0, 10)) - this.show4 = false - }, - setendtime(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() { - getVisitedMember().then(res => { - this.VisitPoeple = [res.data || []] - }) - getVisitedVisitReason({}).then(res => { - this.VisitReason = [res.data || []] - }) - }, - // 琚嫓璁夸汉淇℃伅鏍¢獙鏂瑰紡锛�0鎵嬫満鍙峰崟鐙牎楠� 1鎵嬫満鍙峰拰濮撳悕缁勫悎鏍¢獙锛� - getUserValid() { - getSystemDictData({ - dictCode: 'SYSTEM', - label: 'BEVISITED_USER_VALID' - }).then(res => { - if (res.code === 200) { - this.verify = res.data.code - } - }) - }, - // 鑾峰彇鏄惁闇�瑕侀�夋嫨闂ㄧ/闂ㄧ鍒楄〃 - getvisit() { - 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 - } - } - }) - } - } - }) - }, - confirm(e) { - this.show = false - } - } - } -</script> -<style> - page { - background-color: #f7f7f7 !important; - } - - .u-upload__button { - margin: 0 !important; - } -</style> -<style lang="scss" scoped> - .visit { - width: 100%; - - .menjin { - width: 100%; - - .respondent-title { - width: 100%; - height: 100rpx; - line-height: 100rpx; - text-align: center; - font-size: 32rpx; - font-weight: 600; - 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: $uni-color-primary; - color: #ffffff; - font-size: 26rpx; - margin-left: 30rpx; - - &:first-child { - margin-left: 0 !important; - } - } - } - } - - .adduser { - padding: 30rpx; - width: 100%; - box-sizing: border-box; - - .adduser_head { - width: 100%; - text-align: center; - font-size: 32rpx; - font-family: PingFangSC, PingFang SC; - font-weight: 600; - color: #222222; - } - - .adduser_list { - width: 100%; - margin-top: 40rpx; - - .adduser_list_item { - width: 100%; - padding: 24rpx 0; - box-sizing: border-box; - border-bottom: 1rpx solid #e5e5e5; - display: flex; - align-items: center; - justify-content: space-between; - - .adduser_list_item_label1 { - flex: 1; - display: flex; - flex-direction: column; - - .cc { - font-size: 30rpx; - font-family: PingFangSC, PingFang SC; - font-weight: 400; - color: #222222; - margin-bottom: 20rpx; - - b { - font-size: 30rpx; - font-family: PingFangSC, PingFang SC; - font-weight: 400; - color: #e0312a; - } - } - - .aa { - font-size: 24rpx; - font-weight: 400; - color: #999999; - } - } - - .adduser_list_item_label { - flex-shrink: 0; - display: flex; - align-items: center; - font-family: PingFangSC, PingFang SC; - font-size: 30rpx; - - text { - &:nth-child(1) { - color: #e0312a; - } - - &:nth-child(2) { - color: #222222; - } - } - } - - .adduser_list_item_ipt { - flex-shrink: 0; - text-align: right; - font-size: 28rpx; - font-family: PingFangSC, PingFang SC; - font-weight: 400; - color: #333333; - margin-left: 30rpx; - display: flex; - align-items: center; - justify-content: flex-end; - - .adduser_list_item_ipt1_upload { - width: 120rpx; - height: 120rpx; - background-color: #ececec; - display: flex; - align-items: center; - justify-content: center; - overflow: hidden; - - image { - width: 100%; - height: 100%; - } - } - - text { - font-size: 28rpx; - font-family: PingFangSC, PingFang SC; - font-weight: 400; - color: #999999; - } - } - } - } - - .adduser_footer { - width: 100%; - margin-top: 60rpx; - display: flex; - align-items: center; - justify-content: space-between; - - .t { - background: #4d99a9 !important; - color: #ffffff !important; - } - - .adduser_footer_item { - width: 336rpx; - height: 88rpx; - line-height: 88rpx; - text-align: center; - border-radius: 44rpx; - border: 1rpx solid #4d99a9; - font-size: 32rpx; - font-family: PingFangSC, PingFang SC; - font-weight: 400; - color: #4d99a9; - margin-right: 18rpx; - - &:last-child { - margin: 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: 600; - 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: #4d99a9 !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; - } - } - } - } - - .popup-content { - padding: 30rpx 30rpx 0 30rpx; - overflow: hidden; - display: flex; - flex-flow: column; - - .respondent-title { - width: 100%; - text-align: center; - font-size: 32rpx; - font-weight: 600; - color: #222222; - } - - .search-box { - width: 100%; - margin-top: 40rpx; - - .search-box-top { - width: 100%; - height: 68rpx; - display: flex; - align-items: center; - - .search-box-top-ipt { - flex: 1; - height: 100%; - padding: 0 30rpx; - box-sizing: border-box; - background: #f7f7f7; - border-radius: 4rpx; - display: flex; - align-items: center; - - image { - width: 36rpx; - height: 36rpx; - flex-shrink: 0; - margin-right: 22rpx; - } - - input { - flex: 1; - height: 100%; - font-size: 26rpx; - font-weight: 400; - color: #b2b2b2; - } - } - - text { - flex-shrink: 0; - margin-left: 30rpx; - font-size: 28rpx; - font-weight: 400; - color: #025eef; - } - } - - .search-box-total { - font-size: 26rpx; - font-weight: 400; - color: #666666; - margin-top: 24rpx; - } - } - - .list { - width: 100%; - height: 800rpx; - margin-top: 30rpx; - padding: 0 !important; - - .item { - width: 100%; - height: 102rpx; - display: flex; - align-items: center; - border-bottom: 1rpx solid #e5e5e5; - - .item_a { - flex-shrink: 0; - width: 36rpx; - height: 36rpx; - margin-right: 24rpx; - - image { - width: 100%; - height: 100%; - } - } - - .item_b { - flex-shrink: 0; - width: 80rpx; - height: 80rpx; - display: flex; - align-items: center; - justify-content: center; - overflow: hidden; - margin-right: 24rpx; - - image { - width: 100%; - height: 100%; - } - } - - .item_c { - flex: 1; - display: flex; - align-items: center; - - text { - &:nth-child(1) { - font-size: 30rpx; - font-family: PingFangSC, PingFang SC; - font-weight: 400; - color: #222222; - } - - &:nth-child(2) { - font-size: 20rpx; - font-family: PingFangSC, PingFang SC; - font-weight: 400; - color: #999999; - padding: 1rpx 4rpx; - box-sizing: border-box; - background-color: #eeeeee; - margin-left: 12rpx; - } - } - } - } - } - - .footer1 { - width: 100%; - height: 100rpx; - display: flex; - align-items: center; - justify-content: space-between; - padding: 14rpx 0 0 0; - box-sizing: border-box; - - .footer_left { - flex: 1; - display: flex; - flex-direction: column; - - .footer_left_a { - font-size: 26rpx; - font-family: PingFangSC, PingFang SC; - font-weight: 400; - color: #333333; - } - - .footer_left_b { - font-size: 24rpx; - font-family: PingFangSC, PingFang SC; - font-weight: 400; - color: #999999; - } - } - - .footer_btn { - flex-shrink: 0; - width: 216rpx; - height: 72rpx; - line-height: 72rpx; - text-align: center; - background: #025eef; - border-radius: 8rpx; - font-size: 28rpx; - font-weight: 600; - color: #ffffff; - } - } - } - - .head { - width: 100%; - padding: 20rpx 30rpx; - box-sizing: border-box; - font-size: 28rpx; - font-weight: 400; - color: #666666; - } - - .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(1) { - font-size: 30rpx; - font-weight: 400; - color: #e42d2d; - } - - &:nth-child(2) { - font-size: 30rpx; - font-weight: 400; - color: #222222; - } - } - } - - .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; - } } + return value + }, + selName() { + uni.navigateTo({ + url: '/pages/visitorApplication/memberSel' + }) + }, + 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() + }, + constructionChange(value) { + this.form1.type = value + }, + 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() + } + }) + }, + closeMJ() { + this.show = false + this.columns.forEach(item => { + item.active = false + }) + }, + onSubmit() { + 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' + createFk({ + ...this.form, + ...data, + openid: this.$store.state.openId, + withUserList: this.personnel + }).then(res => { + if (res.code === 200) { + uni.navigateTo({ + 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 + } + }) + // 璧峰鏃堕棿鏃堕暱 + 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)) + } + }) + }, + submitUser() { + if (!this.withUserList.name) return uni.showToast({ + title: '濮撳悕涓嶈兘涓虹┖', + icon: 'none' + }) + if (!this.withUserList.phone) return uni.showToast({ + title: '鎵嬫満鍙蜂笉鑳戒负绌�', + icon: 'none' + }) + const regExp = /^1[3456789]\d{9}$/ + if (!regExp.test(this.withUserList.phone)) return uni.showToast({ + title: '鎵嬫満鍙锋牸寮忛敊璇�', + icon: 'none' + }) + if (!String(this.withUserList.idcardType)) return uni.showToast({ + title: '璇佷欢绫诲瀷涓嶈兘涓虹┖', + icon: 'none' + }) + if (!this.withUserList.idcardNo) return uni.showToast({ + title: '璇佷欢鍙风爜涓嶈兘涓虹┖', + icon: 'none' + }) + if (this.withUserList.idcardType === 0) { + const regex = /^[1-9]\d{5}(19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[1-2]\d|3[0-1])\d{3}[\dxX]$/ + if (!regex.test(this.withUserList.idcardNo)) return uni.showToast({ + title: '璇佷欢鍙风爜鏍煎紡閿欒', + icon: 'none' + }) + } + if (!this.withUserList.companyName) return uni.showToast({ + title: '鍏徃涓嶈兘涓虹┖', + icon: 'none' + }) + if (!this.withUserList.faceImg) return uni.showToast({ + title: '浜鸿劯鐓х墖涓嶈兘涓虹┖', + icon: 'none' + }) + if (this.visit === '1') { + if (!this.withUserList.imgurl) return uni.showToast({ + title: '浜鸿劯鐓х墖涓嶈兘涓虹┖', + icon: 'none' + }) + } + let arr = JSON.parse(JSON.stringify(this.withUserList)) + this.personnel.push(arr) + this.show3 = false + this.withUserList.name = '' + this.withUserList.phone = '' + this.withUserList.idcardType = '' + this.withUserList.idcardTypeName = '' + this.withUserList.companyName = '' + this.withUserList.idcardNo = '' + this.withUserList.faceImg = '' + this.withUserList.faceImgUrl = '' + this.withUserList.imgurl = '' + this.withUserList.imgurlUrl = '' + }, + upload(type) { + this.type = type + if (type === 'faceImg') { + this.$refs.cropper.open() + return + } + uni.chooseImage({ + success: (chooseImageRes) => { + 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 + }, + selectedName(e) { + this.form1.receptMemberName = e.value[0].name + this.form1.receptMemberId = e.value[0].id + this.form1.receptMemberDepartment = e.value[0].companyId + this.showName = false + }, + selectedReason(e) { + this.form1.reason = e.value[0].title + console.log(e.value[0].title) + this.showReason = 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(',') + }, + submitMJ() { + let arr = [] + let names = [] + this.columns.forEach(item => { + if (item.active) { + arr.push(item.id) + names.push(item.name) + } + }) + if (arr.length === 0) return uni.showToast({ + title: '璇烽�夋嫨闂ㄧ', + icon: 'none' + }) + this.form1.doorSelectName = names.join(',') + this.form1.doors = arr.join(',') + this.show = false + }, + 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 + }, + setstarttime(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 + console.log(this.form1.starttime.slice(0, 10)) + this.show4 = false + }, + setendtime(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() { + getVisitedMember().then(res => { + this.VisitPoeple = [res.data || []] + }) + getVisitedVisitReason({}).then(res => { + this.VisitReason = [res.data || []] + }) + }, + // 琚嫓璁夸汉淇℃伅鏍¢獙鏂瑰紡锛�0鎵嬫満鍙峰崟鐙牎楠� 1鎵嬫満鍙峰拰濮撳悕缁勫悎鏍¢獙锛� + getUserValid() { + getSystemDictData({ + dictCode: 'SYSTEM', + label: 'BEVISITED_USER_VALID' + }).then(res => { + if (res.code === 200) { + this.verify = res.data.code + } + }) + }, + // 鑾峰彇鏄惁闇�瑕侀�夋嫨闂ㄧ/闂ㄧ鍒楄〃 + getvisit() { + 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 + } + } + }) + } + } + }) + }, + confirm(e) { + this.show = false + } + } + } +</script> +<style> + page { + background-color: #f7f7f7 !important; + } + + .u-upload__button { + margin: 0 !important; + } +</style> +<style lang="scss" scoped> + .visit { + width: 100%; + + .menjin { + width: 100%; + + .respondent-title { + width: 100%; + height: 100rpx; + line-height: 100rpx; + text-align: center; + font-size: 32rpx; + font-weight: 600; + 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: $uni-color-primary; + color: #ffffff; + font-size: 26rpx; + margin-left: 30rpx; + + &:first-child { + margin-left: 0 !important; + } + } + } + } + + .adduser { + padding: 30rpx; + width: 100%; + box-sizing: border-box; + + .adduser_head { + width: 100%; + text-align: center; + font-size: 32rpx; + font-family: PingFangSC, PingFang SC; + font-weight: 600; + color: #222222; + } + + .adduser_list { + width: 100%; + margin-top: 40rpx; + + .adduser_list_item { + width: 100%; + padding: 24rpx 0; + box-sizing: border-box; + border-bottom: 1rpx solid #e5e5e5; + display: flex; + align-items: center; + justify-content: space-between; + + .adduser_list_item_label1 { + flex: 1; + display: flex; + flex-direction: column; + + .cc { + font-size: 30rpx; + font-family: PingFangSC, PingFang SC; + font-weight: 400; + color: #222222; + margin-bottom: 20rpx; + + b { + font-size: 30rpx; + font-family: PingFangSC, PingFang SC; + font-weight: 400; + color: #e0312a; + } + } + + .aa { + font-size: 24rpx; + font-weight: 400; + color: #999999; + } + } + + .adduser_list_item_label { + flex-shrink: 0; + display: flex; + align-items: center; + font-family: PingFangSC, PingFang SC; + font-size: 30rpx; + + text { + &:nth-child(1) { + color: #e0312a; + } + + &:nth-child(2) { + color: #222222; + } + } + } + + .adduser_list_item_ipt { + flex-shrink: 0; + text-align: right; + font-size: 28rpx; + font-family: PingFangSC, PingFang SC; + font-weight: 400; + color: #333333; + margin-left: 30rpx; + display: flex; + align-items: center; + justify-content: flex-end; + + .adduser_list_item_ipt1_upload { + width: 120rpx; + height: 120rpx; + background-color: #ececec; + display: flex; + align-items: center; + justify-content: center; + overflow: hidden; + + image { + width: 100%; + height: 100%; + } + } + + text { + font-size: 28rpx; + font-family: PingFangSC, PingFang SC; + font-weight: 400; + color: #999999; + } + } + } + } + + .adduser_footer { + width: 100%; + margin-top: 60rpx; + display: flex; + align-items: center; + justify-content: space-between; + + .t { + background: #4d99a9 !important; + color: #ffffff !important; + } + + .adduser_footer_item { + width: 336rpx; + height: 88rpx; + line-height: 88rpx; + text-align: center; + border-radius: 44rpx; + border: 1rpx solid #4d99a9; + font-size: 32rpx; + font-family: PingFangSC, PingFang SC; + font-weight: 400; + color: #4d99a9; + margin-right: 18rpx; + + &:last-child { + margin: 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: 600; + 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: #4d99a9 !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; + } + } + } + } + + .popup-content { + padding: 30rpx 30rpx 0 30rpx; + overflow: hidden; + display: flex; + flex-flow: column; + + .respondent-title { + width: 100%; + text-align: center; + font-size: 32rpx; + font-weight: 600; + color: #222222; + } + + .search-box { + width: 100%; + margin-top: 40rpx; + + .search-box-top { + width: 100%; + height: 68rpx; + display: flex; + align-items: center; + + .search-box-top-ipt { + flex: 1; + height: 100%; + padding: 0 30rpx; + box-sizing: border-box; + background: #f7f7f7; + border-radius: 4rpx; + display: flex; + align-items: center; + + image { + width: 36rpx; + height: 36rpx; + flex-shrink: 0; + margin-right: 22rpx; + } + + input { + flex: 1; + height: 100%; + font-size: 26rpx; + font-weight: 400; + color: #b2b2b2; + } + } + + text { + flex-shrink: 0; + margin-left: 30rpx; + font-size: 28rpx; + font-weight: 400; + color: #025eef; + } + } + + .search-box-total { + font-size: 26rpx; + font-weight: 400; + color: #666666; + margin-top: 24rpx; + } + } + + .list { + width: 100%; + height: 800rpx; + margin-top: 30rpx; + padding: 0 !important; + + .item { + width: 100%; + height: 102rpx; + display: flex; + align-items: center; + border-bottom: 1rpx solid #e5e5e5; + + .item_a { + flex-shrink: 0; + width: 36rpx; + height: 36rpx; + margin-right: 24rpx; + + image { + width: 100%; + height: 100%; + } + } + + .item_b { + flex-shrink: 0; + width: 80rpx; + height: 80rpx; + display: flex; + align-items: center; + justify-content: center; + overflow: hidden; + margin-right: 24rpx; + + image { + width: 100%; + height: 100%; + } + } + + .item_c { + flex: 1; + display: flex; + align-items: center; + + text { + &:nth-child(1) { + font-size: 30rpx; + font-family: PingFangSC, PingFang SC; + font-weight: 400; + color: #222222; + } + + &:nth-child(2) { + font-size: 20rpx; + font-family: PingFangSC, PingFang SC; + font-weight: 400; + color: #999999; + padding: 1rpx 4rpx; + box-sizing: border-box; + background-color: #eeeeee; + margin-left: 12rpx; + } + } + } + } + } + + .footer1 { + width: 100%; + height: 100rpx; + display: flex; + align-items: center; + justify-content: space-between; + padding: 14rpx 0 0 0; + box-sizing: border-box; + + .footer_left { + flex: 1; + display: flex; + flex-direction: column; + + .footer_left_a { + font-size: 26rpx; + font-family: PingFangSC, PingFang SC; + font-weight: 400; + color: #333333; + } + + .footer_left_b { + font-size: 24rpx; + font-family: PingFangSC, PingFang SC; + font-weight: 400; + color: #999999; + } + } + + .footer_btn { + flex-shrink: 0; + width: 216rpx; + height: 72rpx; + line-height: 72rpx; + text-align: center; + background: #025eef; + border-radius: 8rpx; + font-size: 28rpx; + font-weight: 600; + color: #ffffff; + } + } + } + + .head { + width: 100%; + padding: 20rpx 30rpx; + box-sizing: border-box; + font-size: 28rpx; + font-weight: 400; + color: #666666; + } + + .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(1) { + font-size: 30rpx; + font-weight: 400; + color: #e42d2d; + } + + &:nth-child(2) { + font-size: 30rpx; + font-weight: 400; + color: #222222; + } + } + } + + .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; + } + } +<<<<<<< HEAD + let arr = JSON.parse(JSON.stringify(this.withUserList)) + this.personnel.push(arr) + this.show3 = false + this.withUserList.name = '' + this.withUserList.phone = '' + this.withUserList.idcardType = '' + this.withUserList.idcardTypeName = '' + this.withUserList.companyName = '' + this.withUserList.idcardNo = '' + this.withUserList.faceImg = '' + this.withUserList.faceImgUrl = '' + this.withUserList.imgurl = '' + this.withUserList.imgurlUrl = '' + }, + 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}public/api/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(',') + }, + submitMJ() { + let arr = [] + let names = [] + this.columns.forEach(item => { + if (item.active) { + arr.push(item.id) + names.push(item.name) + } + }) + if (arr.length === 0) return uni.showToast({ + title: '璇烽�夋嫨闂ㄧ', + icon: 'none' + }) + this.form1.doorSelectName = names.join(',') + this.form1.doors = arr.join(',') + this.show = false + }, + 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'), this.day - 1) + 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 + } + } + }) + } + } + }) + }, + confirm(e) { + this.show = false + } + } + } +</script> +<style> + page { + background-color: #F7F7F7 !important; + } + .u-upload__button { + margin: 0 !important; + } +</style> +<style lang="scss" scoped> + .visit { + width: 100%; + .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%; +======= .checkbox_wrap{ +>>>>>>> f0f08cc1ff84d45de32d8bff4a40e6a7d0d7a9e6 display: flex; align-items: center; .check_item{ @@ -1328,99 +1673,99 @@ height: 42rpx; margin-left: 10rpx; } - } - } - } - - .cate { - width: 100%; - padding: 30rpx; - box-sizing: border-box; - background-color: #ffffff; - - .cate_head { - font-size: 32rpx; - font-family: PingFangSC, PingFang SC; - font-weight: 600; - color: #222222; - } - - .cate_list { - width: 100%; - display: flex; - align-items: center; - flex-wrap: wrap; - margin-top: 30rpx; - - .cate_list_item { - height: 64rpx; - padding: 0 20rpx; - box-sizing: border-box; - background-color: #eeeeee; - border-radius: 4rpx; - margin-right: 20rpx; - margin-bottom: 20rpx; - display: flex; - align-items: center; - - &:last-child { - margin-right: 0 !important; - } - - text { - font-size: 26rpx; - font-family: PingFangSC, PingFang SC; - font-weight: 400; - color: #333333; - margin-right: 30rpx; - } - } - } - - .cate_add { - width: 200rpx; - height: 50rpx; - display: flex; - align-items: center; - justify-content: center; - background: rgba(2, 94, 239, 0); - border-radius: 25rpx; - border: 1rpx solid #4c99a8; - font-size: 22rpx; - font-family: PingFangSC, PingFang SC; - font-weight: 400; - margin-top: 20rpx; - color: #4c99a8; - margin: 0 auto; - } - } - - .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; - margin-top: 80rpx; - // position: fixed; - // left: 0; - // bottom: 30rpx; - - .footer_btn { - width: 100%; - height: 88rpx; - line-height: 88rpx; - text-align: center; - background: #4c99a8; - border-radius: 44rpx; - font-size: 32rpx; - font-weight: 600; - color: #ffffff; - } - } - } + } + } + } + + .cate { + width: 100%; + padding: 30rpx; + box-sizing: border-box; + background-color: #ffffff; + + .cate_head { + font-size: 32rpx; + font-family: PingFangSC, PingFang SC; + font-weight: 600; + color: #222222; + } + + .cate_list { + width: 100%; + display: flex; + align-items: center; + flex-wrap: wrap; + margin-top: 30rpx; + + .cate_list_item { + height: 64rpx; + padding: 0 20rpx; + box-sizing: border-box; + background-color: #eeeeee; + border-radius: 4rpx; + margin-right: 20rpx; + margin-bottom: 20rpx; + display: flex; + align-items: center; + + &:last-child { + margin-right: 0 !important; + } + + text { + font-size: 26rpx; + font-family: PingFangSC, PingFang SC; + font-weight: 400; + color: #333333; + margin-right: 30rpx; + } + } + } + + .cate_add { + width: 200rpx; + height: 50rpx; + display: flex; + align-items: center; + justify-content: center; + background: rgba(2, 94, 239, 0); + border-radius: 25rpx; + border: 1rpx solid #4c99a8; + font-size: 22rpx; + font-family: PingFangSC, PingFang SC; + font-weight: 400; + margin-top: 20rpx; + color: #4c99a8; + margin: 0 auto; + } + } + + .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; + margin-top: 80rpx; + // position: fixed; + // left: 0; + // bottom: 30rpx; + + .footer_btn { + width: 100%; + height: 88rpx; + line-height: 88rpx; + text-align: center; + background: #4c99a8; + border-radius: 44rpx; + font-size: 32rpx; + font-weight: 600; + color: #ffffff; + } + } + } </style> \ No newline at end of file -- Gitblit v1.9.3