index.vue 6.15 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11
<template>
  <div class="edition-wrapper height100">
    <div class="search-container">
      <el-form :inline="true" :model="form">
        <el-form-item>
          <el-date-picker
            v-model="form.dateRange"
            type="daterange"
            range-separator="至"
            start-placeholder="开始日期"
            end-placeholder="结束日期"
qzhxx's avatar
qzhxx committed
12
            value-format="yyyy-MM-dd"
13 14 15 16 17 18 19 20 21 22 23
          ></el-date-picker>
        </el-form-item>
        <el-form-item>
          <div class="btn-group">
            <el-button type="primary" @click="onSearch">查询</el-button>
            <el-button @click="handleReset">重置</el-button>
          </div>
        </el-form-item>
      </el-form>
      <div class="page-tip">
        <span class="page-tip-title">页面说明:</span>
乐宝呗666's avatar
乐宝呗666 committed
24 25 26
        <span class="page-tips"
          >可查看系统使用过的所有app版本信息,可设置其中一个版本为当前使用版本。可产看安装包详情信息。可上传新的安装包,“*”为必填项。</span
        >
27 28 29 30 31 32 33
      </div>
    </div>
    <div class="table-content">
      <div class="btn-group">
        <el-button type="primary" @click="addBox">上传安装包</el-button>
      </div>
      <div class="party-table">
乐宝呗666's avatar
乐宝呗666 committed
34 35 36 37 38 39
        <el-table
          border
          style="width: 100%; height: 100%"
          height="100%"
          :data="tableData"
        >
40 41 42 43 44
          <el-table-column type="index" width="120" label="序号" align="center">
            <template slot-scope="scope">
              <span>{{ (page._index - 1) * 10 + scope.$index + 1 }}</span>
            </template>
          </el-table-column>
乐宝呗666's avatar
乐宝呗666 committed
45 46 47
          <el-table-column
            label="app版本号"
            prop="appVersion"
乐宝呗666's avatar
乐宝呗666 committed
48
            align="center"
乐宝呗666's avatar
乐宝呗666 committed
49
          ></el-table-column>
乐宝呗666's avatar
乐宝呗666 committed
50
          <el-table-column align="center" label="是否为最新版本">
qzhxx's avatar
qzhxx committed
51
            <template slot-scope="scope">
乐宝呗666's avatar
乐宝呗666 committed
52
              <span>{{ scope.row.isCurrent ? "是" : "否" }}</span>
qzhxx's avatar
qzhxx committed
53 54
            </template>
          </el-table-column>
55 56 57 58 59 60 61 62 63 64
          <el-table-column
            align="center"
            label="上传时间"
            prop="createTime"
          ></el-table-column>
          <el-table-column
            align="center"
            label="操作者"
            prop="userName"
          ></el-table-column>
乐宝呗666's avatar
乐宝呗666 committed
65
          <el-table-column align="center" label="操作" header-align="center">
66
            <template slot-scope="scope" width="220">
qzhxx's avatar
qzhxx committed
67 68
              <div class="table-btn-group">
                <el-tooltip content="详情" placement="top">
乐宝呗666's avatar
乐宝呗666 committed
69 70 71
                  <el-button circle @click="handleDetail(scope.row)">
                    <i class="icon-table icon-detail"></i>
                  </el-button>
qzhxx's avatar
qzhxx committed
72 73
                </el-tooltip>
                <el-tooltip content="启用" placement="top">
乐宝呗666's avatar
乐宝呗666 committed
74
                  <el-button circle :disabled="!!scope.row.isCurrent" @click="ableBtn(scope.row)">
乐宝呗666's avatar
乐宝呗666 committed
75 76
                    <i class="icon-table icon-enable"></i>
                  </el-button>
qzhxx's avatar
qzhxx committed
77
                </el-tooltip>
乐宝呗666's avatar
乐宝呗666 committed
78
              </div>
79 80 81 82
            </template>
          </el-table-column>
        </el-table>
      </div>
83
      <party-pagination :page="page" @changePage="handleCurrentChange" />
84
    </div>
乐宝呗666's avatar
乐宝呗666 committed
85 86
    <add-dialog ref="addDialog" @refreshFn="onSearch" />
    <detail-dialog ref="detailDialog" />
87 88 89
  </div>
</template>
<script>
90
import { partyPagination } from "@/components/index";
乐宝呗666's avatar
乐宝呗666 committed
91
import { addDialog, detailDialog } from "./components/index";
92 93 94
export default {
  data() {
    return {
95 96 97 98
      page: {
        _index: 1,
        _size: 10,
        total: 0,
乐宝呗666's avatar
乐宝呗666 committed
99
      },
100
      form: {
乐宝呗666's avatar
乐宝呗666 committed
101
        dateRange: [],
102
      },
乐宝呗666's avatar
乐宝呗666 committed
103
      tableData: [],
104 105
    };
  },
乐宝呗666's avatar
乐宝呗666 committed
106
  components: { partyPagination, addDialog, detailDialog },
qzhxx's avatar
qzhxx committed
107
  mounted() {
乐宝呗666's avatar
乐宝呗666 committed
108
    this.onSearch();
qzhxx's avatar
qzhxx committed
109
  },
110 111 112
  methods: {
    // 查询
    onSearch() {
113
      this.page._index = 1;
114 115 116 117
      this.getTableData();
    },
    // 获得数据接口
    getTableData() {
118
      let vm = this;
119
      let param = {
120 121
        _index: this.page._index,
        _size: this.page._size,
乐宝呗666's avatar
乐宝呗666 committed
122 123
        startDate: this.form.dateRange.length ? this.form.dateRange[0] : "",
        endDate: this.form.dateRange.length ? this.form.dateRange[1] : "",
124 125 126
      };
      vm.$https(
        {
qzhxx's avatar
qzhxx committed
127
          url: "tAppVersion/getPageList",
128
          method: "post",
乐宝呗666's avatar
乐宝呗666 committed
129
          authType: this.backToken,
130 131 132
        },
        vm.$qs.stringify(param)
      )
乐宝呗666's avatar
乐宝呗666 committed
133 134
        .then((res) => {
          if (res.data.resultCode === "200") {
135 136 137
            let data = res.data.data;
            vm.page.total = data.total;
            vm.tableData = data.records;
乐宝呗666's avatar
乐宝呗666 committed
138
          } else {
139
            this.$message.error(res.data.message);
140 141
          }
        })
乐宝呗666's avatar
乐宝呗666 committed
142
        .catch(function (err) {
143
          console.log(err);
144 145 146 147
        });
    },
    // 新增弹框打开
    addBox() {
乐宝呗666's avatar
乐宝呗666 committed
148
      this.$refs.addDialog.backFn();
149 150 151
    },
    // 详情弹框打开
    handleDetail(item) {
乐宝呗666's avatar
乐宝呗666 committed
152
      this.$refs.detailDialog.backFn(item);
153 154
    },
    // 启用
qzhxx's avatar
qzhxx committed
155
    ableBtn(row) {
156 157 158 159 160
      const _this = this;
      this.$confirm("确定要设置为最新版本?", "提示", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning",
乐宝呗666's avatar
乐宝呗666 committed
161
        center: true,
162 163
      })
        .then(() => {
乐宝呗666's avatar
乐宝呗666 committed
164
          this.updateVersion(row);
165 166
        })
        .catch(() => {
乐宝呗666's avatar
乐宝呗666 committed
167
          this.$message("已取消");
168 169
        });
    },
乐宝呗666's avatar
乐宝呗666 committed
170 171
    // 启用
    updateVersion(row) {
172
      let vm = this;
qzhxx's avatar
qzhxx committed
173 174
      let param = {
        id: row.id,
乐宝呗666's avatar
乐宝呗666 committed
175
        isCurrent: 1,
qzhxx's avatar
qzhxx committed
176 177 178 179 180
      };
      vm.$https(
        {
          url: "tAppVersion/update",
          method: "put",
乐宝呗666's avatar
乐宝呗666 committed
181
          authType: this.backToken,
qzhxx's avatar
qzhxx committed
182 183 184
        },
        vm.$qs.stringify(param)
      )
乐宝呗666's avatar
乐宝呗666 committed
185 186
        .then((res) => {
          if (res.data.resultCode === "200") {
187 188
            this.$message.success("操作成功");
            this.onSearch();
乐宝呗666's avatar
乐宝呗666 committed
189
          } else {
190
            this.$message.error(res.data.message);
qzhxx's avatar
qzhxx committed
191 192
          }
        })
乐宝呗666's avatar
乐宝呗666 committed
193
        .catch(function (err) {
194
          console.log(err);
qzhxx's avatar
qzhxx committed
195 196
        });
    },
乐宝呗666's avatar
乐宝呗666 committed
197
    // 重置
198
    handleReset() {
乐宝呗666's avatar
乐宝呗666 committed
199 200 201
      this.form = {
        dateRange: [],
      };
202
      this.onSearch();
203 204 205
    },
    // 分页
    handleCurrentChange(val) {
206 207
      this.page._index = val;
      this.getTableData();
乐宝呗666's avatar
乐宝呗666 committed
208 209
    },
  },
210 211 212
};
</script>
<style lang="less">
乐宝呗666's avatar
乐宝呗666 committed
213 214
@import "~@/style/table.less";
@import "~@/style/pagination.less";
215
</style>