From b565a275fe240e2bd8a939c3b4beed98d03767bc Mon Sep 17 00:00:00 2001
From: liukangdong <898885815@qq.com>
Date: 星期四, 20 二月 2025 18:17:15 +0800
Subject: [PATCH] ll

---
 admin/src/views/business/miniproSetting.vue |  123 +++++++++++++++++++++++++---------------
 1 files changed, 76 insertions(+), 47 deletions(-)

diff --git a/admin/src/views/business/miniproSetting.vue b/admin/src/views/business/miniproSetting.vue
index 18aa191..d234c77 100644
--- a/admin/src/views/business/miniproSetting.vue
+++ b/admin/src/views/business/miniproSetting.vue
@@ -1,7 +1,7 @@
 <template>
   <TableLayout :permissions="['business:baseparam:query']">
     <!-- 鎼滅储琛ㄥ崟 -->
-    <el-form ref="form" slot="search-form" :model="form" label-width="130px" label-suffix="锛�">
+    <el-form ref="form" slot="search-form" :model="form" label-width="160px" label-suffix="锛�">
 
       <el-form-item label="涓婚〉涓婚">
         <el-input v-model="form.projectName" placeholder="璇疯緭鍏ヤ富椤典富棰�"></el-input>
@@ -10,7 +10,8 @@
         <el-input v-model="form.serverPhone" placeholder="璇疯緭鍏ユ湇鍔$數璇�"></el-input>
       </el-form-item>
       <el-form-item label="鎶奸噾閲戦">
-        <el-input v-model="form.rentDeposit" @change="changeVal(form.rentDeposit,1)" type="number" placeholder="璇疯緭鍏ユ娂閲戦噾棰�"></el-input>
+        <el-input v-model="form.rentDeposit" @change="changeVal(form.rentDeposit, 1)" type="number"
+          placeholder="璇疯緭鍏ユ娂閲戦噾棰�"></el-input>
         <div class="tips">璇疯緭鍏ラ渶瑕佺即绾崇殑鎶奸噾閲戦(鍗曚綅锛氬厓)</div>
       </el-form-item>
       <el-form-item label="钀ヤ笟鏃堕棿">
@@ -21,29 +22,55 @@
           v-model="form.businessEndtime"></el-time-picker>
       </el-form-item>
       <el-form-item label="鍏嶈垂楠戣鏃堕暱">
-        <el-input v-model="form.freeRentTime" type="number" @change="changeVal(form.freeRentTime,2)" placeholder="璇疯緭鍏ュ厤璐归獞琛屾椂闀�"></el-input>
+        <el-input v-model="form.freeRentTime" type="number" @change="changeVal(form.freeRentTime, 2)"
+          placeholder="璇疯緭鍏ュ厤璐归獞琛屾椂闀�"></el-input>
         <div class="tips">鍏嶈垂楠戣鏃堕暱锛屽崟浣嶏細鍒嗛挓</div>
       </el-form-item>
       <el-form-item label="婊¤浇棰勮(%)" prop="name">
         <div style="display: flex;">
-          浣庝簬<el-input style="width: 80px;" v-model="form.warnMin" @change="changeVal(form.warnMin,3)" type="number" placeholder="鏈�灏忓��"></el-input>
-          鎴栭珮浜�<el-input style="width: 80px;" v-model="form.warnMax" @change="changeVal(form.warnMax,4)" type="number" placeholder="鏈�澶у��"></el-input>
+          浣庝簬<el-input style="width: 80px;" v-model="form.warnMin" @change="changeVal(form.warnMin, 3)" type="number"
+            placeholder="鏈�灏忓��"></el-input>
+          鎴栭珮浜�<el-input style="width: 80px;" v-model="form.warnMax" @change="changeVal(form.warnMax, 4)" type="number"
+            placeholder="鏈�澶у��"></el-input>
           浼氭兂閽夐拤缇ゅ彂閫侀璀�
         </div>
         <div class="tips">褰撹溅杈嗘弧杞借秴杩囦互涓婇厤缃椂锛屾彁绀虹鐞嗗憳</div>
       </el-form-item>
-<!--      <el-form-item label="棰勮閽夐拤缇ゅ湴鍧�">-->
-<!--        <el-input v-model="form.warnDingdingUrl" placeholder="璇疯緭鍏ラ璀﹂拤閽夌兢鍦板潃"></el-input>-->
-<!--      </el-form-item>-->
+      <el-form-item label="鐢靛姩杞︿复鏃跺仠杞﹂檺鍒�">
+        <el-radio v-model="form.pauseBikeType" :label="0">鍋滆溅鐐瑰唴鍋滆溅</el-radio>
+        <el-radio v-model="form.pauseBikeType" :label="1">杩愯惀鍖哄唴鍋滆溅</el-radio>
+      </el-form-item>
+      <el-form-item label="鐢靛姩杞︿复鏃惰嚜鍔ㄥ叧閿�">
+        <el-input v-model="form.pauseAutoCloseTime"
+          oninput="value=value.replace(/[^\d.]/g, '').replace(/\.{2,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3').replace(/^\./g, '')"
+          type="number"></el-input>
+        <div class="placeholder9">涓村仠瓒呰繃閰嶇疆鏃堕暱锛岀郴缁熶細鑷姩鍏抽攣骞惰繘琛岀粨绠楋紝鍗曚綅锛氬垎閽�</div>
+      </el-form-item>
+      <el-form-item label="鐢靛姩杞︾數鍘嬭缃�">
+        <div style="display: flex;">
+          浣庣數鍘嬮璀﹀��<el-input style="width: 80px;"
+            oninput="value=value.replace(/[^\d.]/g, '').replace(/\.{2,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3').replace(/^\./g, '')"
+            v-model="form.lowBikeVoltage" type="number"></el-input>
+          浼忥紝婊$數鐢靛帇 <el-input style="width: 80px;"
+            oninput="value=value.replace(/[^\d.]/g, '').replace(/\.{2,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3').replace(/^\./g, '')"
+            v-model="form.fullBikeVoltage" type="number"></el-input>
+        </div>
+      </el-form-item>
+      <el-form-item label="杩愯惀鍖哄煙璁剧疆">
+        <el-button type="primary" @click="handleDraw">鏌ョ湅/缂栬緫</el-button>
+        <div class="placeholder9">鐐瑰嚮鎸夐挳鍙煡鐪�/缂栬緫杩愯惀鍖哄煙锛岀敤鎴峰彧鑳藉湪杩愯惀鍖哄煙鍐呮壂鐮侀獞琛�</div>
+      </el-form-item>
+      <!--      <el-form-item label="棰勮閽夐拤缇ゅ湴鍧�">-->
+      <!--        <el-input v-model="form.warnDingdingUrl" placeholder="璇疯緭鍏ラ璀﹂拤閽夌兢鍦板潃"></el-input>-->
+      <!--      </el-form-item>-->
       <el-form-item label="绉熻祦椤荤煡涓诲浘">
         <div style="display: flex;">
-          <UploadAvatarImage
-            :file="{ 'imgurlfull': form.leaseNoticeUrl, 'imgurl': leaseNoticeUrl }"
-            :uploadData="uploadData" tipsLabel="" @uploadSuccess="uploadOutSuccess" @uploadEnd="isUploading=false"
-            @uploadBegin="isUploading=true" />
-            <div class="tips">
-              <el-button type="text" style="color: red;" @click="form.leaseNoticeUrl = ''">鍒犻櫎</el-button>
-            </div>
+          <UploadAvatarImage :file="{ 'imgurlfull': form.leaseNoticeUrl, 'imgurl': leaseNoticeUrl }"
+            :uploadData="uploadData" tipsLabel="" @uploadSuccess="uploadOutSuccess" @uploadEnd="isUploading = false"
+            @uploadBegin="isUploading = true" />
+          <div class="tips">
+            <el-button type="text" style="color: red;" @click="form.leaseNoticeUrl = ''">鍒犻櫎</el-button>
+          </div>
         </div>
       </el-form-item>
       <el-form-item label="绉熻祦娴佺▼瑙嗛" prop="name">
@@ -51,27 +78,21 @@
           <div style="width: 250px;height: 180px" v-if="form.rentTipsVideo">
             <video controls :src="form.rentTipsVideo" style="width: 100%;height: 100%"></video>
           </div>
-<!--          <el-upload class="avatar-uploader" :action="uploadImgUrl" :show-file-list="false" accept=".mp4"-->
-<!--            :data="{ folder: 'bike', }" :on-success="handleAvatarSuccess">-->
-<!--            <video v-if="form.rentTipsVideo" :src="form.rentTipsVideo" class="avatar"></video>-->
-<!--            <i v-else class="el-icon-plus avatar-uploader-icon"></i>-->
-<!--          </el-upload>-->
+          <!--          <el-upload class="avatar-uploader" :action="uploadImgUrl" :show-file-list="false" accept=".mp4"-->
+          <!--            :data="{ folder: 'bike', }" :on-success="handleAvatarSuccess">-->
+          <!--            <video v-if="form.rentTipsVideo" :src="form.rentTipsVideo" class="avatar"></video>-->
+          <!--            <i v-else class="el-icon-plus avatar-uploader-icon"></i>-->
+          <!--          </el-upload>-->
           <div class="tips">
             <div>
-              <el-upload
-                class="upload-demo"
-                ref="upload"
-                :action="uploadImgUrl"
-                :show-file-list="false"
-                accept=".mp4"
-                :data="{ folder: 'bike', }"
-                :on-success="handleAvatarSuccess">
+              <el-upload class="upload-demo" ref="upload" :action="uploadImgUrl" :show-file-list="false" accept=".mp4"
+                :data="{ folder: 'bike', }" :on-success="handleAvatarSuccess">
                 <el-button slot="trigger" size="small" type="primary">涓婁紶瑙嗛</el-button>
                 <div slot="tip" class="el-upload__tip">鍙兘涓婁紶mp4鏍煎紡锛屽缓璁笉瓒呰繃50M</div>
               </el-upload>
               <el-button type="text" style="color: red;" @click="form.rentTipsVideo = ''">鍒犻櫎</el-button>
             </div>
-<!--            <div>鍙兘涓婁紶mp4鏍煎紡锛屽缓璁笉瓒呰繃50M</div>-->
+            <!--            <div>鍙兘涓婁紶mp4鏍煎紡锛屽缓璁笉瓒呰繃50M</div>-->
           </div>
         </div>
 
@@ -97,16 +118,9 @@
           鑷�
           <el-time-picker placeholder="缁撴潫鏃堕棿" value-format="yyyy-MM-dd HH:mm:ss" format='HH:mm'
             v-model="form.stopServeEndtime"></el-time-picker> -->
-            <el-date-picker
-              v-model="value1"
-              type="datetimerange"
-              @change="selectDate"
-              range-separator="鑷�"
-              start-placeholder="寮�濮嬫椂闂�"
-              end-placeholder="缁撴潫鏃堕棿"
-              format="yyyy-MM-dd HH:mm:ss"
-              value-format="yyyy-MM-dd HH:mm:ss"
-            ></el-date-picker>
+          <el-date-picker v-model="value1" type="datetimerange" @change="selectDate" range-separator="鑷�"
+            start-placeholder="寮�濮嬫椂闂�" end-placeholder="缁撴潫鏃堕棿" format="yyyy-MM-dd HH:mm:ss"
+            value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
           <div class="tips">鍋滄鏈嶅姟寮�濮嬫椂闂磋嚦缁撴潫鏃堕棿</div>
         </el-form-item>
       </template>
@@ -115,6 +129,7 @@
           @click="saveSetting">淇濆瓨閰嶇疆椤�</el-button>
       </el-form-item>
     </el-form>
+    <AMap @change="changeMap" ref="MapRef" />
   </TableLayout>
 </template>
 
@@ -123,10 +138,11 @@
 import { getMiniProgrammeDTO, updateById } from '@/api/business/minproSetting'
 import UploadAvatarImage from '@/components/common/UploadAvatarImage.vue'
 import RichEditor from '@/components/common/RichEditor.vue'
+import AMap from './components/Map.vue'
 export default {
   name: 'BaseParam',
-  components: { TableLayout, UploadAvatarImage, RichEditor },
-  data () {
+  components: { TableLayout, UploadAvatarImage, RichEditor, AMap },
+  data() {
     return {
       uploadImgUrl: process.env.VUE_APP_API_PREFIX + '/public/uploadLocal',
       option: {
@@ -158,7 +174,7 @@
       }
     }
   },
-  created () {
+  created() {
     getMiniProgrammeDTO()
       .then(res => {
         this.form = res
@@ -166,7 +182,11 @@
       })
   },
   methods: {
-    changeVal (val, type) {
+    changeMap(e) {
+      console.log('e', e)
+      this.$set(this.form, 'parkLatLngList', JSON.stringify(e))
+    },
+    changeVal(val, type) {
       if (type === 1) {
         if (this.form.rentDeposit < 0) {
           this.form.rentDeposit = ''
@@ -185,15 +205,24 @@
         }
       }
     },
-    handleAvatarSuccess (res, file) {
+    handleDraw() {
+      this.$refs.MapRef.isShowModal = true
+      this.$nextTick(() => {
+        if (this.form.parkLatLngList) {
+          this.$refs.MapRef.polygons = JSON.parse(this.form.parkLatLngList)
+        }
+        this.$refs.MapRef.initMap()
+      })
+    },
+    handleAvatarSuccess(res, file) {
       console.log(res.data.url)
       this.form.rentTipsVideo = res.data.url
     },
-    uploadOutSuccess (file) {
+    uploadOutSuccess(file) {
       this.leaseNoticeUrl = file.imgurl
       this.form.leaseNoticeUrl = file.imgurlfull
     },
-    selectDate (v) {
+    selectDate(v) {
       this.form.stopServeStarttime = ''
       this.form.stopServeEndtime = ''
       if (v) {
@@ -213,7 +242,7 @@
     //   // }
     //   return isJPG;
     // },
-    saveSetting () {
+    saveSetting() {
       const reg = /^[0-9][0-9]*|0\.\d*[0-9]\d*$/
       if (!reg.test(this.form.rentDeposit)) {
         return this.$tip.apiFailed({ message: '鎶奸噾閲戦蹇呴』澶т簬0' })

--
Gitblit v1.9.3