jkgnck.vue 3.53 KB
<template>
  <div class="from-clues">
    <!-- 表单部分 -->
    <div class="from-clues-header">
      <el-form :model="queryForm" ref="queryForm" @submit.native.prevent label-width="70px">
        <el-row>
          <el-col :span="5">
            <el-form-item label="业务号">
              <el-input placeholder="请输入业务号" v-model="queryForm.ywh" clearable class="width100">
              </el-input>
            </el-form-item>
          </el-col>

          <el-col :span="4" class="btnColRight">
            <el-form-item>
              <el-button type="primary" native-type="submit" @click="handleSearch">查询</el-button>
            </el-form-item>
          </el-col>
        </el-row>
      </el-form>
    </div>
    <!-- 表格 -->
    <div class="from-clues-content">
      <lb-table :page-size="pageData.size" class="loadingtext"
                :current-page.sync="pageData.current" :total="tableData.total" @size-change="handleSizeChange"
                @p-current-change="handleCurrentChange" :column="tableData.columns" :data="tableData.data">
      </lb-table>
    </div>
  </div>
</template>
<script>
import { mapGetters } from "vuex";
import table from "@/utils/mixin/table";
import { datas, sendThis } from "./djbcxdata";
import { list, detail } from "@/api/sysPushRecord.js";

export default {
  name: "djbcx",
  mixins: [table],
  mounted () {
    sendThis(this);
    this.queryClick()
  },
  data () {
    return {
      queryForm: {
        qllx: "",
        bdcdyh: "",
        bdcqzh: "",
        ywh: "",
        interfaceType: "5"
      },
      pageData: {
        current: 1,
        size: 10,
        total: 0,
      },
      tableData: {
        columns: datas.columns(),
        data: [],
      }
    }
  },
  computed: {
    ...mapGetters(["dictData"])
  },
  methods: {
    // 初始化数据
    /**
     * @description: 初始化数据
     * @author: renchao
     */
    queryClick () {
      this.$startLoading()
      list({ ...this.queryForm, ...this.pageData }).then((res) => {
        this.$endLoading()
        if (res.code === 200) {
          let { total, records } = res.result;
          this.tableData.data = records;
          this.tableData.total = total;
        }
      });
    },
    /**
     * @description: openDialog
     * @param {*} scroll
     * @author: renchao
     */
    openDialog (scroll) {
      const h = this.$createElement;
      this.$msgbox({
        title: '推送',
        message: h('p', null, [
          h('span', null, '是否推送 '),
          h('i', { style: 'color: teal' }, scroll.ywh),
          h('span', null, ' 记录')
        ]),
        showCancelButton: true,
        confirmButtonText: '确定',
        cancelButtonText: '取消',
        beforeClose: (action, instance, done) => {
          if (action === 'confirm') {
            this.pushRecord(scroll, done);
          } else {
            done();
          }
        }
      }).then(action => { });
    },
    /**
     * @description: detail
     * @param {*} row
     * @author: renchao
     */
    detail (row) {
      detail(row.bsm).then((res) => {
        this.$endLoading()
        if (res.code === 200) {
          this.$popupDialog("详情", "sjgx/sbxtsjts/dialog/detail", res.result, "60%")
        } else {
          this.$message.warning(res.message);
        }
      })
    }
  }
}
</script>
<style scoped lang="scss">
@import "~@/styles/public.scss";

.icon-circle {
  position: relative;
}

.icon-circle::before {
  content: "";
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: #000;
  top: 0px;
  left: 0px;
}
</style>