From 91a6d368073912a2e54bbd8c8a39c44d783881d8 Mon Sep 17 00:00:00 2001 From: zhangwei <1504152376@qq.com> Date: 星期三, 28 八月 2024 17:03:00 +0800 Subject: [PATCH] 打卡相关 --- src/pages/checkin/checkin.vue | 161 ++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 120 insertions(+), 41 deletions(-) diff --git a/src/pages/checkin/checkin.vue b/src/pages/checkin/checkin.vue index d7c1d98..b5d2da5 100644 --- a/src/pages/checkin/checkin.vue +++ b/src/pages/checkin/checkin.vue @@ -2,28 +2,43 @@ <view> <view class='chuany-flex camera-fill chuany-justify-center chuany-align-center'> <fui-upload immediate :url="`${apiBaseUrl}api/UpFile/UpdateFile`" ref="uploadB" max='1' @success="success" - @error="error" @complete="complete" width="300" height="300"> - <image v-if="src" :src="src" mode="widthFix" style="width: 300rpx;height: 300rpx;"></image> - <fui-icon v-else name="camera-fill"></fui-icon> + @error="error" @complete="complete" width="280" height="280"> + <image v-if="checkPhoto" :src="checkPhoto" mode="widthFix" style="width: 280rpx;height: 280rpx;"> + </image> + <view class=" chuany-flex chuany-flex-direction chuany-align-center" v-else> + <fui-icon name="camera-fill"></fui-icon> + <view class="chuany-font20">鎷嶆憚鐜鐓х墖</view> + </view> + </fui-upload> + <fui-upload ref="uploadB" max='1' @error="error" @complete="completePerson" width="280" height="280"> + <image v-if="src" :src="src" mode="widthFix" style="width: 280rpx;height: 280rpx;"></image> + <view class=" chuany-flex chuany-flex-direction chuany-align-center" v-else> + <fui-icon name="addfriends-fill"></fui-icon> + <view class="chuany-font20">鎷嶆憚浜鸿劯鐓х墖</view> + </view> </fui-upload> </view> - <view class="c-m-30 c-p-t-20 c-p-b-20"> + <view class="c-m-20 chuany-font24"> 涓轰簡淇濊瘉鎵撳崱鐨勬纭�э紝鈥屽缓璁湪鍏徃闂ㄥ彛鎴栬繘鍏ュ姙鍏鐨勯棬鍙e啀鎵撳崱銆傗�屽悓鏃讹紝鈥岀‘淇濈収鐗囩殑娓呮櫚銆佲�屾槑浜紝鈥岄潰閮ㄥ彲瑙併�� </view> - <view class="c-p-20"> - <view class="chuany-flex chuany-justify-between c-p-t-20"> - <view class="chuany-flex chuany-flex-direction chuany-align-center textclo chuany-font24 step_item" - v-for="(item,index) in 4"> - <up-avatar shape="square" size="38" src="https://uview-plus.jiangruyi.com/album/1.jpg" - @click="previewImage"></up-avatar> - <view class="line line-active" v-if="index!==3"> - + <view> + <view class="chuany-flex chuany-justify-evenly chuany-flex-wrap c-p-t-20"> + <view + class="chuany-flex chuany-flex-direction chuany-align-center chuany-justify-around textclo chuany-font24 c-p-b-30 daka" + :key="index" v-for="(item,index) in dakaList"> + <up-avatar shape="square" size="56" :src="item.checkPhoto" + @click="previewImage(item.checkPhoto)"></up-avatar> + <view class="step_item"> + <up-icon name="checkmark-circle-fill" :color="item.checktime?'#2979ff':'#e9e8e8'" + size="22"></up-icon> + <view class="line" :class="item.checkPhoto?'line-active':''" + v-if="index!==dakaList.length-1&&index%2==0"> + </view> </view> - <up-icon name="checkmark-circle-fill" color="#2979ff" size="22"></up-icon> - <text>宸叉墦鍗�</text> - <text>10:00</text> + <text>{{item.checktime?'宸叉墦鍗�':'鏈墦鍗�'}}</text> + <text + :class="$util.formatDate(item.checktime,true)=='-'?'core-opa':''">{{$util.formatDate(item.checktime,true)}}</text> </view> - </view> </view> <view class="tabbtns"> @@ -39,22 +54,39 @@ export default { data() { return { - src: '' + src: '', + apiBaseUrl, + orderBiddingId: '', //鎷涘伐鏄庣粏OrderBiddingId + checkPhoto: '', //鎵撳崱鐓х墖 + faceImg: '', //浜鸿劯鍥剧墖 + dakaList: null } }, onLoad(option) { - let { - orderid - } = option - this.$api.getDaka({ - orderId: orederid - }).then(res => { - console.log(res, '鎵撳崱'); - }) + this.apiBaseUrl = apiBaseUrl + let id = option.orderid + this.orderBiddingId = id + this.getDaka(id) }, methods: { + getDaka(id) { + this.$api.getDaka({ + orderId: id + }).then(res => { + if(res.code==1){ + this.dakaList = res.data.orderBiddingDetailCheck + this.dakaList.length = 3 + if (this.dakaList.length % 2 !== 0) { + this.dakaList.push({}) + } + }else{ + this.$util.showToast({ + title: res.error + }) + } + }) + }, openCamera() { - console.log('-----------------') // 鎷嶇収鍜岀浉鍐� uni.chooseImage({ count: 1, @@ -69,18 +101,20 @@ }); }, + success(e) { //e.res 涓烘湇鍔″櫒杩斿洖鏁版嵁 //涓婁紶鎴愬姛鍥炶皟锛屽鐞嗘湇鍔″櫒杩斿洖鏁版嵁銆愭澶勬牴鎹疄闄呰繑鍥炴暟鎹繘琛屽鐞嗐�� let res = JSON.parse(e.res.data.replace(/\ufeff/g, "") || "{}") - console.log(res.data); - if (res.data.url) { - enterpriseInfo.businessLicense = res.data.url - enterpriseInfo.suppliername = res.data.info.name //浼佷笟鍚嶇О - enterpriseInfo.regtime = res.data.info.setDate //娉ㄥ唽鏃堕棿 - enterpriseInfo.address = res.data.info.address //鑱旂郴鍦板潃 - enterpriseInfo.suppliercode = res.data.info.regNum //浼佷笟娉ㄥ唽鍙� - enterpriseInfo.contact = res.data.info.person //鑱旂郴浜� + if (res.data) { + this.checkPhoto = res.data //鎵撳崱鐓х墖 + //浜鸿劯鍥剧墖 + // enterpriseInfo.businessLicense = res.data.url + // enterpriseInfo.suppliername = res.data.info.name //浼佷笟鍚嶇О + // enterpriseInfo.regtime = res.data.info.setDate //娉ㄥ唽鏃堕棿 + // enterpriseInfo.address = res.data.info.address //鑱旂郴鍦板潃 + // enterpriseInfo.suppliercode = res.data.info.regNum //浼佷笟娉ㄥ唽鍙� + // enterpriseInfo.contact = res.data.info.person //鑱旂郴浜� } }, error() { @@ -92,9 +126,48 @@ } console.log(e, '鍒犻櫎') }, - previewImage() { + completePerson(e) { + this.$util.pathToBase64(e.urls[0]).then(res => { + this.faceImg = res + }) + }, + previewImage(url) { uni.previewImage({ - urls: ['https://uview-plus.jiangruyi.com/album/1.jpg'] + urls: [url] + }) + }, + enroll() { + if (!this.checkPhoto) { + this.$util.showToast({ + title: "璇锋媿鎽勭幆澧冪収鐗囷紒", + icon: "error" + }) + return + } + if (!this.faceImg) { + this.$util.showToast({ + title: "璇锋媿鎽勪汉鑴哥収鐗囷紒", + icon: "error" + }) + return + } + let obj = { + OrderId: this.orderBiddingId, //鎷涘伐鏄庣粏OrderBiddingId + checkPhoto: this.checkPhoto, //鎵撳崱鐓х墖 + faceImg: this.faceImg, + } + this.$api.saveDaka(obj).then(res => { + if (res.code == 1) { + this.$util.showToast({ + title: "鎵撳崱鎴愬姛锛�", + icon: "success" + }) + this.getDaka(this.orderBiddingId) + } else { + this.$util.showToast({ + title: res.data, + }) + } }) } } @@ -103,10 +176,15 @@ <style lang="scss"> .camera-fill { - width: 400rpx; - height: 400rpx; + // width: 400rpx; + // height: 400rpx; margin: 20rpx auto; border-radius: 20rpx; + } + + .daka { + width: 260rpx; + height: 230rpx; } .step_item { @@ -116,12 +194,13 @@ .line { position: absolute; - top: 92rpx; - left: 52rpx; + top: 17rpx; + left: 35rpx; content: ""; height: 4rpx; - width: 192rpx; + width: 310rpx; background-color: #e9e8e8; + z-index: -1; } .line-active { -- Gitblit v1.9.1