toolWaiBao.vue 5.7 KB
<template xmlns:el-col="http://www.w3.org/1999/html">
  <div>
    <el-row style="margin-bottom: 15px; margin-top: 5px">
      <el-col :span="8">
        <el-form ref="queryPhoneCode" :model="queryPhoneCode" label-width="0px">
          <el-card class="darkred" shadow="always">
            <div slot="header" class="clearfix">
              <span>查询短信验证码</span>
            </div>
            <div class="text item">
              <el-form-item>
                <el-input placeholder="请输入手机号" v-model="queryPhoneCode.phone" clearable></el-input>
              </el-form-item>
              <el-form-item>
                <el-select v-model="queryPhoneCode.huanjing" placeholder="请选择执行环境">
                  <el-option
                    v-for="item in queryPhoneCodeOptions"
                    :key="item.value"
                    :label="item.label"
                    :value="item.value">
                  </el-option>
                </el-select>
              </el-form-item>
              <el-form-item>
                <el-select v-model="queryPhoneCode.version" placeholder="请选择平台版本">
                  <el-option
                    v-for="item in queryPhoneCodeVersionOptions"
                    :key="item.value"
                    :label="item.label"
                    :value="item.value">
                  </el-option>
                </el-select>
              </el-form-item>
              <div style="margin: 15px 0;"></div>
              <el-form-item>
                <el-button round @click="queryPhoneCodeSubmit">查询验证码</el-button>
              </el-form-item>
            </div>
          </el-card>
        </el-form>
        <el-dialog
          title="短信验证码:"
          :visible.sync="dialogQueryPhoneCode"
          width="30%">
          <span>{{myQueryPhoneCode}}</span>
          <span slot="footer" class="dialog-footer">
            <el-button type="primary" v-clipboard:copy="JSON.stringify(myQueryPhoneCode)" v-clipboard:success="onCopy" @click="dialogQueryPhoneCode = false">点击复制</el-button>
          </span>
        </el-dialog>
      </el-col>
    </el-row>
  </div>
</template>

<style>
  .text {
    font-size: 14px;
  }

  .item {
    margin-bottom: 18px;
  }

  .clearfix:before,
  .clearfix:after {
    display: table;
    content: "";
  }
  .clearfix:after {
    clear: both
  }
  .yellowgreen {
    width: calc(100% - 20px);
    padding: 0px;
    background-color: yellowgreen;
  }

  .darkred {
    width: calc(100% - 20px);
    padding: 0px;
    background-color: darkkhaki;
  }

  .blue {
    width: calc(100% - 20px);
    padding: 0px;
    background-color: deepskyblue;
  }

  .Orange {
    width: calc(100% - 20px);
    padding: 0px;
    background-color: Orange;
  }

  .chocolate {
    width: calc(100% - 20px);
    padding: 0px;
    background-color: chocolate;
  }

  .CadetBlue {
    width: calc(100% - 20px);
    padding: 0px;
    background-color: CadetBlue;
  }
  .LightPink {
    width: calc(100% - 20px);
    padding: 0px;
    background-color: LightPink;
  }
  .LightSalmon {
    width: calc(100% - 20px);
    padding: 0px;
    background-color: LightSalmon;
  }
</style>

<script>
  export default {
    data() {
      return {
        queryPhoneCode: {
          phone: '',
          huanjing: [],
          version: []
        },
        queryPhoneCodeOptions: [{
          value: '0',
          label: '测试环境'
        },{
          value: '1',
          label: '线上环境'
        }],
        queryPhoneCodeVersionOptions: [{
          value: '2',
          label: '二期活动'
        },{
          value: '3',
          label: '三期活动'
        }],
        dialogQueryPhoneCode: false,
        myQueryPhoneCode: ''
      }
    },
    mounted() {
      this.openToolPage();
    },
    methods: {
      openToolPage() {
        let config = {
          headers: {
            'Content-Type': 'application/x-www-form-urlencoded'
          }
        }
        this.$http.get('/tool2/openToolPage',config).then((res)=>{
          console.log(res);
        }).catch(error=>{
          console.log(error);
        })
      },
      onCopy (e) {
        this.$message({
          showClose: true,
          message: '内容已复制到剪切板!',
          type: 'success'
        });
      },
      queryPhoneCodeSubmit() {
        const loading = this.$loading({
          lock: true,
          text: '加载中...',
          spinner: 'el-icon-loading',
          background: 'rgba(0, 0, 0, 0.7)'
        });
        let config = {
          headers: {
            'Content-Type': 'application/x-www-form-urlencoded'
          }
        }
        this.$http.get('/tool2/waibaoQueryPhoneCode?'+this.$qs.stringify({
          phone: this.queryPhoneCode.phone,
          type: this.queryPhoneCode.huanjing.toString(),
          version: this.queryPhoneCode.version.toString()
        }),config).then((res)=>{
          console.log(res);
          if(res.data=='codenull') {
            this.$message({
              showClose: true,
              message: '该手机号验证码为空',
              type: 'error'
            });
          } else if(res.data=='typeError') {
            this.$message({
              showClose: true,
              message: '执行环境参数错误',
              type: 'error'
            });
          } else {
            this.myQueryPhoneCode = res.data
            this.dialogQueryPhoneCode = true
          }
          loading.close();
        }).catch(error=>{
          console.log(error);
          loading.close();
          this.$message({
            showClose: true,
            message: '服务器处理失败,请核对参数!',
            type: 'error'
          });
        })
      }
    }
  }
</script>