新版交易所前段管理后台
1
PC-20250623MANY\Administrator
2025-09-18 350de19704298b8d1d3d427dfe0c0d9ae218c5ee
src/views/modules/ico/components/listAddOrUpdate.vue
@@ -1,18 +1,7 @@
<template>
  <el-dialog
    :title="title"
    :visible.sync="visible"
    width="800px"
    :append-to-body="true"
    @close="handClose"
  >
    <el-form
      :model="dataForm"
      :rules="dataRule"
      ref="dataForm"
      @keyup.enter.native="dataFormSubmit()"
      label-width="250px"
    >
  <el-dialog :title="title" :visible.sync="visible" width="800px" :append-to-body="true" @close="handClose">
    <el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmit()"
      label-width="250px">
      <el-form-item label="币种名称" prop="name">
        <el-input type="string" v-model="dataForm.name"></el-input>
      </el-form-item>
@@ -86,61 +75,43 @@
      </el-form-item>
      <el-form-item label="申购开始时间" prop="startDate">
        <el-date-picker
          v-model="dataForm.startDate"
          type="datetime"
          placeholder="选择日期"
          format="yyyy-MM-dd HH:mm:ss"
          value-format="yyyy-MM-dd HH:mm:ss"
        >
        <el-date-picker v-model="dataForm.startDate" type="datetime" placeholder="选择日期" format="yyyy-MM-dd HH:mm:ss"
          value-format="yyyy-MM-dd HH:mm:ss">
        </el-date-picker>
      </el-form-item>
      <el-form-item label="申购结束时间" prop="endDate">
        <el-date-picker
          v-model="dataForm.endDate"
          type="datetime"
          placeholder="选择日期"
          format="yyyy-MM-dd HH:mm:ss"
          value-format="yyyy-MM-dd HH:mm:ss"
        >
        <el-date-picker v-model="dataForm.endDate" type="datetime" placeholder="选择日期" format="yyyy-MM-dd HH:mm:ss"
          value-format="yyyy-MM-dd HH:mm:ss">
        </el-date-picker>
      </el-form-item>
      <el-form-item label="上市开始时间" prop="marketDate">
        <el-date-picker
          v-model="dataForm.marketDate"
          type="datetime"
          placeholder="选择日期"
          format="yyyy-MM-dd HH:mm:ss"
          value-format="yyyy-MM-dd HH:mm:ss"
        >
        <el-date-picker v-model="dataForm.marketDate" type="datetime" placeholder="选择日期" format="yyyy-MM-dd HH:mm:ss"
          value-format="yyyy-MM-dd HH:mm:ss">
        </el-date-picker>
      </el-form-item>
      <el-form-item label="货币图片地址" prop="imgUrl">
        <el-input type="string" v-model="dataForm.imgUrl"></el-input>
        <!-- <el-input type="string" v-model="dataForm.imgUrl"></el-input> -->
        <el-upload class="avatar-uploader" :action="$http.adornUrl('/api/uploadFile')"
          :headers="{ Authorization: $cookie.get('Authorization') }" :show-file-list="false"
          :on-success="handleAvatarSuccess" :before-upload="beforeAvatarUpload"
          :data="{ moduleName: 'icon', fileName: dataForm.symbolData }">
          <img v-if="dataForm.imgUrl" :src="dataForm.imgUrl" class="avatar" />
          <i v-else class="el-icon-plus avatar-uploader-icon"></i>
        </el-upload>
      </el-form-item>
      <el-form-item label="是否开放合约交易" prop="isContractTrading">
        <el-select v-model="dataForm.isContractTrading" placeholder="请选择">
          <el-option
            v-for="i in options"
            :key="i.value"
            :label="i.label"
            :value="i.value"
          ></el-option>
          <el-option v-for="i in options" :key="i.value" :label="i.label" :value="i.value"></el-option>
        </el-select>
      </el-form-item>
      <el-form-item label="是否预支付" prop="isPayDown">
        <el-select v-model="dataForm.isPayDown" placeholder="请选择">
          <el-option
            v-for="i in options"
            :key="i.value"
            :label="i.label"
            :value="i.value"
          ></el-option>
          <el-option v-for="i in options" :key="i.value" :label="i.label" :value="i.value"></el-option>
        </el-select>
      </el-form-item>
    </el-form>
@@ -152,6 +123,7 @@
</template>
<script>
import { Debounce } from "@/utils/debounce";
import MulPicUpload from '@/components/mul-pic-upload'
import { encrypt } from "@/utils/crypto";
export default {
  data() {
@@ -231,6 +203,9 @@
      },
    };
  },
  components: {
    MulPicUpload,
  },
  computed: {
    mainTabs: {
      get() {
@@ -287,6 +262,24 @@
        this.$refs["dataForm"].clearValidate(); // 清除表单验证
      });
    },
    handleAvatarSuccess(res, file) {
      console.log("handleAvatarSuccess = " + JSON.stringify(res));
      this.dataForm.imgUrl = URL.createObjectURL(file.raw); //显示地址
      if (res.code == 0) {
        this.dataForm.imgUrl = res.data.httpUrl; //接口传递
        console.log(this.dataForm.imgUrl);
      } else {
        this.$message.error(res.msg);
      }
    },
    beforeAvatarUpload(file) {
      const isLt2M = file.size / 1024 / 1024 < 10;
      if (!isLt2M) {
        this.$message.error("上传图片大小不能超过 10MB!");
      }
      return isLt2M;
    },
    // 表单提交
    dataFormSubmit: Debounce(function () {
      console.log(this.dataForm.safePassword);