Mr.Zhang
2023-10-24 969d3507163720cd59e5c78e3e0a7e0bdb47c366
admin/src/views/business/miniproSetting.vue
@@ -14,9 +14,11 @@
        <div class="tips">请输入需要缴纳的押金金额(单位:元)</div>
      </el-form-item>
      <el-form-item label="营业时间">
        <el-time-picker placeholder="开始时间" value-format="HH:mm" :picker-options="option" v-model="form.businessStarttime"></el-time-picker>
        <el-time-picker placeholder="开始时间" value-format="HH:mm" format='HH:mm'
          v-model="form.businessStarttime"></el-time-picker>
        至
        <el-time-picker placeholder="结束时间" value-format="HH:mm" :picker-options="option" v-model="form.businessEndtime"></el-time-picker>
        <el-time-picker placeholder="结束时间" value-format="HH:mm" format='HH:mm'
          v-model="form.businessEndtime"></el-time-picker>
      </el-form-item>
      <el-form-item label="免费骑行时长">
        <el-input v-model="form.freeRentTime" type="number" placeholder="请输入免费骑行时长"></el-input>
@@ -33,14 +35,36 @@
      <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>
        </div>
      </el-form-item>
      <el-form-item label="租赁流程视频" prop="name">
        <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>
          <!-- <img v-if="imageUrl" :src="imageUrl" > -->
          <i v-else class="el-icon-plus avatar-uploader-icon"></i>
        </el-upload>
        <div class="tips">只能上传mp4格式,建议不超过50M</div>
        <div style="display: flex;">
          <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>
            <!-- <img v-if="imageUrl" :src="imageUrl" > -->
            <i v-else class="el-icon-plus avatar-uploader-icon"></i>
          </el-upload>
          <div class="tips">
            <div>
              <el-button type="text" style="color: red;" @click="form.rentTipsVideo = ''">删除</el-button>
            </div>
            <div>只能上传mp4格式,建议不超过50M</div>
          </div>
        </div>
      </el-form-item>
      <el-form-item label="租赁须知">
        <RichEditor :content="{ content: form.leaseNotice }" @edit="form.leaseNotice = $event"></RichEditor>
      </el-form-item>
      <el-form-item label="骑车通知内容">
        <el-input type="textarea" :autosize="{ minRows: 4, maxRows: 8 }" v-model="form.rentNotice"
@@ -55,14 +79,27 @@
            placeholder="请输入停止服务提示"></el-input>
        </el-form-item>
        <el-form-item label="停止服务时间">
          <el-time-picker placeholder="开始时间" value-format="HH:mm" :picker-options="option" v-model="form.stopServeStarttime"></el-time-picker>
          <!-- <el-time-picker placeholder="开始时间" format='HH:mm' value-format="yyyy-MM-dd HH:mm:ss"
            v-model="form.stopServeStarttime"></el-time-picker>
          至
          <el-time-picker placeholder="结束时间" value-format="HH:mm" :picker-options="option" v-model="form.stopServeEndtime"></el-time-picker>
          <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>
          <div class="tips">停止服务开始时间至结束时间</div>
        </el-form-item>
      </template>
      <el-form-item label="">
        <el-button type="primary" v-permissions="['system:dict:updateMiniProgrammeDTO']" @click="saveSetting">保存配置项</el-button>
        <el-button type="primary" v-permissions="['system:dict:updateMiniProgrammeDTO']"
          @click="saveSetting">保存配置项</el-button>
      </el-form-item>
    </el-form>
  </TableLayout>
@@ -71,19 +108,27 @@
<script>
import TableLayout from '@/layouts/TableLayout'
import { getMiniProgrammeDTO, updateById } from '@/api/business/minproSetting'
import UploadAvatarImage from '@/components/common/UploadAvatarImage.vue'
import RichEditor from '@/components/common/RichEditor.vue'
export default {
  name: 'BaseParam',
  components: { TableLayout },
  components: { TableLayout, UploadAvatarImage, RichEditor },
  data() {
    return {
      uploadImgUrl: process.env.VUE_APP_API_PREFIX + '/public/uploadLocal',
      option: {
        format: 'HH:mm'
      },
      uploadData: {folder: 'bike'},
      leaseNoticeUrl: '',
      isUploading: false,
      value1: [],
      // 搜索
      form: {
        businessEndtime: '',
        businessStarttime: '',
        leaseNoticeUrl: '',
        leaseNotice: '',
        freeRentTime: '',
        isStopServe: 0,
        projectName: '',
@@ -105,12 +150,25 @@
      .then(res => {
        console.log(res);
        this.form = res
        this.value1 = [res.stopServeStarttime, res.stopServeEndtime]
      })
  },
  methods: {
    handleAvatarSuccess(res, file) {
      console.log(res.data.url);
      this.form.rentTipsVideo = res.data.url;
    },
    uploadOutSuccess(file) {
      this.leaseNoticeUrl = file.imgurl;
      this.form.leaseNoticeUrl = file.imgurlfull;
    },
    selectDate(v) {
      this.form.stopServeStarttime = ''
      this.form.stopServeEndtime = ''
      if (v) {
        this.form.stopServeStarttime = v[0]
        this.form.stopServeEndtime = v[1]
      }
    },
    // beforeAvatarUpload(file) {
    //   console.log(file.type);
@@ -136,7 +194,7 @@
<style lang="scss" scoped>
::v-deep .el-form {
  width: 800px;
  width: 900px;
}
::v-deep .table-content {
@@ -178,5 +236,9 @@
.tips {
  color: #999;
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  margin-left: 10px;
}
</style>