Blame view

src/views/dataSync/index.vue 4.04 KB
4c4f7640   梁保满   路由表,路由前端文件
1
  <template>
dd5150c5   阿宝   数据同步
2
3
4
5
6
7
8
9
    <div>
      <back-box>
        <template slot="title">
          <span>数据同步</span>
        </template>
      </back-box>
      <div class="page-content">
        <div class="down-item">
533a17d8   梁保满   备题组卷添加批量设置答案
10
          <p class="h-title">从U盘上传</p>
dd5150c5   阿宝   数据同步
11
          <p class="txt">
533a17d8   梁保满   备题组卷添加批量设置答案
12
            本功能帮助无法上网的授课端软件,将本地数据同步到云平台。
dd5150c5   阿宝   数据同步
13
14
15
16
17
18
          </p>
          <el-upload
            class="upload-demo"
            ref="upload"
            :action="url"
            :multiple="false"
dd5150c5   阿宝   数据同步
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
            :with-credentials="true"
            :limit="1"
            :on-change="change"
            :on-success="upSuccess"
            :on-error="upError"
          >
            <div class="btn-box">
              <i class="fa fa-cloud-upload"></i>
              <el-button type="primary" round>选择文件</el-button>
            </div>
          </el-upload>
        </div>
  
        <div class="down-item">
          <p class="h-title">数据导出至U盘</p>
          <p class="txt">
d32e461c   梁保满   备题组卷
35
            本功能将云平台的数据导出到U盘。
dd5150c5   阿宝   数据同步
36
          </p>
255e2506   梁保满   飞书bug及优化
37
38
39
40
41
          <div class="btn-box btn-box2" v-loading="downLoading">
            <i class="fa fa-cloud-download" @click="downloadFile"></i>
            <el-button type="primary" round @click="downloadFile"
              >文件下载</el-button
            >
dd5150c5   阿宝   数据同步
42
43
44
45
          </div>
        </div>
      </div>
    </div>
4c4f7640   梁保满   路由表,路由前端文件
46
47
48
  </template>
  
  <script>
533a17d8   梁保满   备题组卷添加批量设置答案
49
  import { formatDate } from "@/utils";
4c4f7640   梁保满   路由表,路由前端文件
50
  export default {
dd5150c5   阿宝   数据同步
51
52
    data() {
      return {
255e2506   梁保满   飞书bug及优化
53
        downLoading: false,
d32e461c   梁保满   备题组卷
54
        url: "/api_html/teaching/importData",
255e2506   梁保满   飞书bug及优化
55
        file: {},
dd5150c5   阿宝   数据同步
56
57
58
      };
    },
    methods: {
255e2506   梁保满   飞书bug及优化
59
60
61
62
63
64
65
66
67
68
69
      async downloadFile() {
        if (this.downLoading) return;
        this.downLoading = true;
        const data = await this.$request.exportData();
        this.downLoading = false;
        console.log(data)
        if (data) {
          let blob = new Blob([data], {type: 'application/octet-stream'})
          const url = URL.createObjectURL(blob);
          const link = document.createElement("a");
          document.body.appendChild(link);
533a17d8   梁保满   备题组卷添加批量设置答案
70
          link.download = this.$store.getters.info.name+formatDate(new Date,'yyyy_MM_dd_hh_mm_ss')+"文件.json";
255e2506   梁保满   飞书bug及优化
71
72
73
74
          link.href = url;
          link.click();
          document.body.removeChild(link);
          URL.revokeObjectURL(url);
dd5150c5   阿宝   数据同步
75
        } else {
255e2506   梁保满   飞书bug及优化
76
          this.$message.error("下载失败,请重试");
dd5150c5   阿宝   数据同步
77
78
79
80
        }
      },
      async submitUpload() {
        this.$refs.upload.submit();
4c4f7640   梁保满   路由表,路由前端文件
81
  
dd5150c5   阿宝   数据同步
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
        // const formData = new FormData()
        // formData.append('id',this.componentId)
        // formData.append('file',new File(this.file.raw))
        // let {status,info} = await uploadExcel(formData);
        // if(status===0){
        //   this.$message.success(info);
        //   this.$emit("upSuccess")
        // } else {
        //   this.$message.error(info);
        // }
      },
      upSuccess(res) {
        if (res && res.code == 0 && res.success) {
          this.$message.success("上传成功");
          this.$emit("upSuccess");
        } else {
          this.$message.error(res.message);
        }
      },
      upError(res) {
        if (res && res.status == 0) {
          this.$message.success("上传成功");
          this.$emit("upSuccess");
        } else {
          this.$message.error(res.message);
        }
      },
      change(file) {
        this.file = file;
      },
    },
  };
4c4f7640   梁保满   路由表,路由前端文件
114
115
  </script>
  
dd5150c5   阿宝   数据同步
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
  <style lang="scss" scoped>
  .page-content {
    padding: 50px;
    display: flex;
    justify-content: center;
    .down-item {
      width: 400px;
      border-radius: 20px;
      margin: 20px;
      background: #f8f8f8;
      box-shadow: 2px 2px 5px #ccc;
      .h-title {
        font-size: 16px;
        color: #667ffd;
        padding: 16px 0 16px 12px;
      }
      .txt {
        height: 80px;
        padding: 0 20px;
        font-size: 16px;
        color: #7f7f7f;
        line-height: 24px;
        text-align: center;
      }
    }
255e2506   梁保满   飞书bug及优化
141
    .upload-demo {
dd5150c5   阿宝   数据同步
142
143
144
145
      display: flex;
      justify-content: center;
    }
    :deep(.el-upload) {
255e2506   梁保满   飞书bug及优化
146
      margin: 0 auto;
dd5150c5   阿宝   数据同步
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
    }
    .btn-box {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      padding-bottom: 40px;
      .fa {
        font-size: 80px;
        color: #aeaeae;
        padding-bottom: 10px;
        cursor: pointer;
      }
    }
    .btn-box {
      width: 100%;
    }
  }
4c4f7640   梁保满   路由表,路由前端文件
165
  </style>