From 6f1203d1cf895efc473fade3ab049fc30d92c618 Mon Sep 17 00:00:00 2001 From: MrShi <1878285526@qq.com> Date: 星期三, 26 三月 2025 16:48:23 +0800 Subject: [PATCH] 优化 --- h5/pages/visitorApplication/visitorApplication.vue | 339 --------------------------------- screen/src/views/PlatformCall.vue | 11 h5/pages/staff/task/visitorApprove.vue | 31 ++ h5/pages/appointmentDetails/appointmentDetails.vue | 36 +++ h5/api/visitor.js | 7 h5/pages/driver/reserved.vue | 14 screen/vite.config.js | 4 admin/src/components/business/OperaPlatformGroupWindow.vue | 101 +++++++++ screen/src/views/TaskEfficiency.vue | 31 +-- 9 files changed, 199 insertions(+), 375 deletions(-) diff --git a/admin/src/components/business/OperaPlatformGroupWindow.vue b/admin/src/components/business/OperaPlatformGroupWindow.vue index 155a070..5892ad5 100644 --- a/admin/src/components/business/OperaPlatformGroupWindow.vue +++ b/admin/src/components/business/OperaPlatformGroupWindow.vue @@ -17,6 +17,18 @@ <el-radio :label="2" >甯傚叕鍙稿嵏璐�</el-radio> </el-radio-group> </el-form-item> + <el-form-item label="閫夋嫨绛惧埌閫氱煡浜哄憳" prop="signInNoticeUsers"> + <el-select v-model="form.signInNoticeUsers" filterable multiple clearable @change="changeSignInNoticeUsers" placeholder="璇烽�夋嫨"> + <el-option v-for="item in memberList" :key="item.id" :label="item.name" :value="item.id"> + </el-option> + </el-select> + </el-form-item> + <el-form-item label="閫夋嫨浣滀笟鏈畬鎴愰�氱煡浜哄憳" prop="unFinishNoticeUsers"> + <el-select v-model="form.unFinishNoticeUsers" filterable multiple clearable @change="changeUnFinishNoticeUsers" placeholder="璇烽�夋嫨"> + <el-option v-for="item in memberList" :key="item.id" :label="item.name" :value="item.id"> + </el-option> + </el-select> + </el-form-item> <el-form-item label="宸ヤ綔鏃堕棿锛�" prop="startTime"> <div style=" display: inline-block"> <el-time-picker @@ -49,7 +61,7 @@ import BaseOpera from '@/components/base/BaseOpera' import GlobalWindow from '@/components/common/GlobalWindow' import { numRuleGtZero } from '@/utils/form' -import { allList } from '@/api/platform/platformGroup' +import { allList } from '@/api/business/member' import { getList as deviceList } from '@/api/business/device' export default { name: 'OperaPlatformWindow', @@ -67,13 +79,18 @@ type: 0, startTime: '', endTime: '', - waitCallTime: '' + waitCallTime: '', + signInNoticeUsers: [], + unFinishNoticeUsers: [] }, // 楠岃瘉瑙勫垯 rules: { name: [{ required: true, message: '璇疯緭鍏ュ垎缁勫悕绉� ', trigger: 'blur' }], - type: [{ required: true, message: '璇烽�夋嫨涓氬姟绫诲瀷 '}] - } + type: [{ required: true, message: '璇烽�夋嫨涓氬姟绫诲瀷 '}], + signInNoticeUsers: [{ required: true, message: '璇烽�夋嫨绛惧埌閫氱煡浜哄憳', trigger: 'blur' }], + unFinishNoticeUsers: [{ required: true, message: '璇烽�夋嫨浣滀笟鏈畬鎴愰�氱煡浜哄憳', trigger: 'blur' }] + }, + memberList: [] } }, created () { @@ -83,6 +100,75 @@ }) }, methods: { + changeSignInNoticeUsers(e) { + if (this.form.signInNoticeUsers.length > 5) { + this.form.signInNoticeUsers.splice(this.form.signInNoticeUsers.length - 1, 1) + this.$message.warning('鏈�澶氬彧鑳介�夋嫨浜斾釜浜哄憳锛�') + } + }, + changeUnFinishNoticeUsers(e) { + if (this.form.unFinishNoticeUsers.length > 5) { + this.form.unFinishNoticeUsers.splice(this.form.unFinishNoticeUsers.length - 1, 1) + this.$message.warning('鏈�澶氬彧鑳介�夋嫨浜斾釜浜哄憳锛�') + } + }, + // 纭鏂板缓 + __confirmCreate () { + this.$refs.form.validate((valid) => { + if (!valid) { + return + } + let obj = JSON.parse(JSON.stringify(this.form)) + obj.signInNoticeUsers = obj.signInNoticeUsers.join(',') + obj.unFinishNoticeUsers = obj.unFinishNoticeUsers.join(',') + // 璋冪敤鏂板缓鎺ュ彛 + this.isWorking = true + this.api.create(obj) + .then(() => { + this.visible = false + this.$tip.apiSuccess('鏂板缓鎴愬姛') + this.$emit('success') + }) + .catch(e => { + // this.$tip.apiFailed(e) + }) + .finally(() => { + this.isWorking = false + }) + }) + }, + __confirmEdit () { + this.$refs.form.validate((valid) => { + if (!valid) { + return + } + let obj = JSON.parse(JSON.stringify(this.form)) + obj.signInNoticeUsers = obj.signInNoticeUsers.join(',') + obj.unFinishNoticeUsers = obj.unFinishNoticeUsers.join(',') + // 璋冪敤鏂板缓鎺ュ彛 + this.isWorking = true + this.api.updateById(obj) + .then(() => { + this.visible = false + this.$tip.apiSuccess('淇敼鎴愬姛') + this.$emit('success') + }) + .catch(e => { + // this.$tip.apiFailed(e) + }) + .finally(() => { + this.isWorking = false + }) + }) + }, + loadMember() { + allList({ + type: 2, + companyType: 1 + }).then(res => { + this.memberList = res + }) + }, seleTime(){}, /** * 鎵撳紑绐楀彛 @@ -91,6 +177,7 @@ */ open (title, target) { this.title = title + this.loadMember() this.visible = true // 鏂板缓 if (target == null) { @@ -105,6 +192,12 @@ for (const key in this.form) { this.form[key] = target[key] } + if (this.form.signInNoticeUsers) { + this.form.signInNoticeUsers = this.form.signInNoticeUsers.split(',').map(item => Number(item)) + } + if (this.form.unFinishNoticeUsers) { + this.form.unFinishNoticeUsers = this.form.unFinishNoticeUsers.split(',').map(item => Number(item)) + } }) } } diff --git a/h5/api/visitor.js b/h5/api/visitor.js index 34bb521..38f55fa 100644 --- a/h5/api/visitor.js +++ b/h5/api/visitor.js @@ -80,6 +80,13 @@ method: 'get' }) } +// 鍙栨秷棰勭害 +export const visitsCancel = (id) => { + return http({ + url: 'visitsAdmin/cloudService/business/visits/visitsCancel?visitId=' + id, + method: 'get' + }) +} // 鏉ヨ浜嬬敱 export const getVisitReason = (data) => { return http({ diff --git a/h5/pages/appointmentDetails/appointmentDetails.vue b/h5/pages/appointmentDetails/appointmentDetails.vue index 451b063..35c0d1c 100644 --- a/h5/pages/appointmentDetails/appointmentDetails.vue +++ b/h5/pages/appointmentDetails/appointmentDetails.vue @@ -85,11 +85,26 @@ <view class="box_list_item_val">{{ info.carNos }}</view> </view> </view> + <view class="footer"> + <u-button + text="鍙栨秷棰勭害" + size="mini" + v-if="[0,1,2,5].includes(info.status)" + @click="cancelShow = true" /> + </view> <u-popup :show="show" mode="center" @close="close"> <view class="qrocde"> <canvas class="qrcode_img" canvas-id="img1"></canvas> </view> </u-popup> + <!-- 鍙栨秷棰勭害寮圭獥 --> + <u-modal + :show="cancelShow" + :showCancelButton="true" + title="绯荤粺鎻愮ず" + content='纭畾鍙栨秷褰撳墠棰勭害鍚楋紵' + @cancel="cancelShow = false" + @confirm="cancel" /> </view> </template> @@ -100,9 +115,11 @@ export default { data() { return { + id: null, info: {}, show: false, - detail: '' + detail: '', + cancelShow: false } }, onBackPress(options) { @@ -121,6 +138,7 @@ onLoad(option) { uni.setStorageSync('ywinfo',{}) this.detail = option.detail || '' + this.id = option.id this.getDetail(option.id) // visitorSubDetail({ id: option.id }) // .then(res => { @@ -136,6 +154,12 @@ }, methods: { + // 鍙栨秷棰勭害 + cancel() { + visitsCancel(this.id).then(res => { + this.getDetail(this.id) + }) + }, close() { this.show = false }, @@ -170,6 +194,16 @@ <style lang="scss" scoped> .box { width: 100%; + .footer { + position: fixed; + left: 0; + bottom: 0; + width: 100%; + height: 100rpx; + text-align: right; + background-color: #ffffff; + padding-bottom: calc(30rpx + env(safe-area-inset-bottom)); + } .qrocde { width: 300rpx; height: 300rpx; diff --git a/h5/pages/driver/reserved.vue b/h5/pages/driver/reserved.vue index 1ec23fd..3571990 100644 --- a/h5/pages/driver/reserved.vue +++ b/h5/pages/driver/reserved.vue @@ -15,9 +15,9 @@ <view class="line"> <view class="label"> <text>*</text> - <text>鍚堝悓鍙�</text> + <text>鍚堝悓/鍗曟嵁缂栧彿</text> </view> - <view class="value"><input type="text" placeholder="璇疯緭鍏ユ偍鐨勫悎鍚屽彿" v-model="param.contractNum" placeholder-style="color: #999999;" /></view> + <view class="value"><input type="text" placeholder="璇疯緭鍏ユ偍鐨勫悎鍚�/鍗曟嵁缂栧彿" v-model="param.contractNum" placeholder-style="color: #999999;" /></view> </view> <!-- --> <view class="line"> @@ -33,7 +33,7 @@ <view class="line"> <view class="label"> <text>*</text> - <text>鍏ュ簱绫诲瀷</text> + <text>浣滀笟绫诲瀷</text> </view> <view class="value"> <view class="btns"> @@ -55,7 +55,7 @@ <view class="line"> <view class="label"> <text>*</text> - <text>鍑嗚繍璇佺収鐗�</text> + <text>鍑嗚繍璇�/杩愬崟鐓х墖</text> </view> <view class="value" @click="handleUpload"> <image v-if="param.transportImgFull" class="upload_wrap" :src="param.transportImgFull" alt=""> @@ -175,14 +175,14 @@ onSubmit() { const param = { ...this.param } if (!param.arriveDate) return this.showToast('璇烽�夋嫨鍒板満鏃堕棿') - if (!param.inType && param.inType != 0) return this.showToast('璇烽�夋嫨鍏ュ簱绫诲瀷') - if (!param.contractNum) return this.showToast('璇疯緭鍏ュ悎鍚屽彿') + if (!param.inType && param.inType != 0) return this.showToast('璇烽�夋嫨浣滀笟绫诲瀷') + if (!param.contractNum) return this.showToast('璇疯緭鍏ュ悎鍚�/鍗曟嵁缂栧彿') if (!param.totalNum) return this.showToast('璇疯緭鍏ユ�昏繍杈撻噺') if (!param.driverName) return this.showToast('璇疯緭鍏ュ徃鏈哄鍚�') if (!param.driverPhone) return this.showToast('璇疯緭鍏ユ墜鏈哄彿') if (!param.carCodeFront) return this.showToast('璇疯緭鍏ヨ溅鍓嶇墝鍙�') if (!param.carCodeBack) return this.showToast('璇疯緭鍏ヨ溅鍚庣墝鍙�') - if (!param.transportImgFull) return this.showToast('璇蜂笂浼犲噯杩愯瘉鐓х墖') + if (!param.transportImgFull) return this.showToast('璇蜂笂浼犲噯杩愯瘉/杩愬崟鐓х墖') param.arriveDate = param.arriveDate + ':00' let fn = param.id ? driverCarApplyEdit : driverCarApply fn({...param}).then(res => { diff --git a/h5/pages/staff/task/visitorApprove.vue b/h5/pages/staff/task/visitorApprove.vue index 970f44b..af5b291 100644 --- a/h5/pages/staff/task/visitorApprove.vue +++ b/h5/pages/staff/task/visitorApprove.vue @@ -106,7 +106,10 @@ info.approveDateVO.canBeApproved != null && info.approveDateVO.canBeApproved == 1 " class="main_footer"> + <view class="btn" @click="cancelShow = true" v-if="checkAuth('business:visits:cancel') && [0,1,2,5].includes(info.status)">鍙栨秷棰勭害</view> + <view style="width: 30rpx; height: 100%;"></view> <view class="btn" @click="handleSub(3)">鎷掔粷</view> + <view style="width: 30rpx; height: 100%;"></view> <view class="btn agree" @click="handleSub(2)">鍚屾剰</view> </view> @@ -118,10 +121,19 @@ " placeholder-class="placeholder9" /> <view class="main_footer"> <view class="btn" @click="showApprModal = false">鍙栨秷</view> + <view style="width: 30rpx; height: 100%;"></view> <view class="btn agree" @click="onSubmit">鎻愪氦</view> </view> </view> </u-popup> + <!-- 鍙栨秷棰勭害寮圭獥 --> + <u-modal + :show="cancelShow" + :showCancelButton="true" + title="绯荤粺鎻愮ず" + content='纭畾鍙栨秷褰撳墠棰勭害鍚楋紵' + @cancel="cancelShow = false" + @confirm="cancel" /> </view> </template> @@ -133,6 +145,9 @@ export default { data() { return { + userInfo: uni.getStorageSync('userInfo') || { + permissions: [] + }, showApprModal: false, param: {}, info: {}, @@ -167,7 +182,8 @@ 2: '宸查�氳繃', 3: '宸叉嫆缁�', 4: '宸插彇娑�', - } + }, + cancelShow: false } }, onLoad(op) { @@ -176,6 +192,16 @@ this.getDetail() }, methods: { + // 鍙栨秷棰勭害 + cancel() { + visitsCancel(this.id).then(res => { + this.getDetail() + }) + }, + checkAuth(str) { + const permissions = this.userInfo.permissions || [] + return permissions.indexOf(str) > -1 + }, getDetail() { const { id @@ -503,7 +529,8 @@ background: #ffffff; .btn { - width: 336rpx; + // width: 336rpx; + flex: 1; height: 88rpx; line-height: 88rpx; background: #ffffff; diff --git a/h5/pages/visitorApplication/visitorApplication.vue b/h5/pages/visitorApplication/visitorApplication.vue index 5b8f978..0fd3b21 100644 --- a/h5/pages/visitorApplication/visitorApplication.vue +++ b/h5/pages/visitorApplication/visitorApplication.vue @@ -61,17 +61,12 @@ <u-icon name="arrow-right" color="#CCCCCC" size="20"></u-icon> </view> </view> - <view class="list_item"> + <!-- <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" /> - <u-radio label="鍚�" :name="0" activeColor="#4d99a8" /> - </u-radio-group> --> <view class="checkbox_wrap"> <view class="check_item" @click="constructionChange(1)"> <text>鏄�</text> @@ -86,7 +81,7 @@ </view> </view> - </view> + </view> --> <view v-if="form1.type == '1'" class="list_item"> <view class="list_item_label"> <text></text> @@ -430,7 +425,7 @@ if (type === 'day') { return `${value}鏃 } -<<<<<<< HEAD +// <<<<<<< HEAD this.$forceUpdate() this.closeInput() }, @@ -555,10 +550,9 @@ title: '璇佷欢鍙风爜鏍煎紡閿欒', icon: 'none' }) -======= + } if (type === 'hour') { return `${value}鏃禶 ->>>>>>> f0f08cc1ff84d45de32d8bff4a40e6a7d0d7a9e6 } if (type === 'minute') { return `${value}鍒哷 @@ -791,7 +785,9 @@ }, selectedReason(e) { this.form1.reason = e.value[0].title + this.form1.type = e.value[0].constructionType console.log(e.value[0].title) + console.log(e.value[0].constructionType) this.showReason = false }, submitCart() { @@ -1442,329 +1438,6 @@ 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{ - display: flex; - align-items: center; - margin-left: 20rpx; - } - image{ - width: 42rpx; - 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; } } } diff --git a/screen/src/views/PlatformCall.vue b/screen/src/views/PlatformCall.vue index 143dcc8..e042bff 100644 --- a/screen/src/views/PlatformCall.vue +++ b/screen/src/views/PlatformCall.vue @@ -21,7 +21,8 @@ const initData = () => { getLargeScreenData().then(res => { if (res.data && res.data.allList) { - contentList.value = res.data.allList.map(item => { + contentList.value = res.data.allList.map((item, index) => { + item.index = index + 1 if (item.optTime) { item.optTimeTemp = dayjs(item.optTime).format('HH:mm') if(item.status == 4){ @@ -160,7 +161,7 @@ const handler = () => { isFullscreen.value = document.fullscreenElement !== null if (!isFullscreen) { - // 閫�鍑哄叏灞忔椂鍊欒В闄ょ洃鍚紝涓嶇劧姣忔鐩戝惉閮戒細娣诲姞涓�娆$粦瀹� + // 閫�鍑哄叏灞忔椂鍊欒В闄ょ洃鍚紝涓嶇劧姣忔鐩戝惉閮戒細娣诲姞涓�娆$粦瀹� document.removeEventListener("fullscreenchange", handler) } } @@ -214,8 +215,8 @@ <div class="item">鍋滈潬鏈堝彴</div> <div class="item">鏃堕棿</div> </div> - <div class="line" v-for="item in contentTempList" :key="item.id"> - <div class="item no">{{ item.signNum }}</div> + <div class="line" v-for="(item, index) in contentTempList" :key="index"> + <div class="item no">{{ item.index }}</div> <div class="item">{{ item.carCodeFront }}</div> <div class="item"> <div :class="{ @@ -545,4 +546,4 @@ } } -</style> \ No newline at end of file +</style> diff --git a/screen/src/views/TaskEfficiency.vue b/screen/src/views/TaskEfficiency.vue index a44debc..61ef984 100644 --- a/screen/src/views/TaskEfficiency.vue +++ b/screen/src/views/TaskEfficiency.vue @@ -498,47 +498,36 @@ series: [ { name: '鍒嗘椂浣滀笟閲�', - type: 'line', - smooth: true, - showAllSymbol: true, - symbol: 'circle', - symbolSize: 0, - lineStyle: { - color: '#2355f5', - borderColor: '#2355f5' - }, + type: 'bar', + barWidth: 15, label: { show: false, position: 'top', color: '#fff', }, itemStyle: { - color: "#2355f5", - lineStyle: { - width: 0, - type: 'solid' - } - }, - areaStyle: { color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [ { offset: 0, - color: '#2355f5' + color: '#63d6fa' }, { offset: 1, - color: 'rgba(14, 31, 65,0.1)' + color: '#32718d' } ], false), - shadowColor: 'rgba(124,248,255, 0)', - shadowBlur: 20 + lineStyle: { + width: 1, + type: 'solid' + }, + barBorderRadius: [30, 30, 0, 0], }, data: dataList3.value.map(i => i.workNum || 0) }, { name: '绱浣滀笟閲�', type: 'bar', - barWidth: 6, + barWidth: 15, label: { show: false, position: 'top', diff --git a/screen/vite.config.js b/screen/vite.config.js index ff40646..31658b3 100644 --- a/screen/vite.config.js +++ b/screen/vite.config.js @@ -26,8 +26,8 @@ proxy: { "/gateway_interface": { // target: "http://192.168.0.104:10010", - // target: "http://10.50.250.253:8088/gateway_interface", - target: "https://atwl.ahzyssl.com/zhyq_interface", + target: "http://10.50.250.253:8088/gateway_interface", + // target: "https://atwl.ahzyssl.com/zhyq_interface", changeOrigin: true, rewrite: (path) => path.replace(/^\/gateway_interface/, ""), }, -- Gitblit v1.9.3