Blame view

src/views/baseComapnyInfo/index.vue 8.38 KB
477ec56f   monkeyhouyi   权限
1
2
  <template>
    <div>
5330d757   monkeyhouyi   公司信息管理完成
3
4
5
6
7
8
9
      <div class="common-info-box item-box companyInfo">
        <div class="item-title">公司信息</div>
        <div class="item-body">
          <div class="NCC-common-layout-center">
            <el-row class="NCC-common-search-box" :gutter="16">
              <el-form @submit.native.prevent size="mini">
                <el-col :span="5">
c21fb5b0   monkeyhouyi   巡查上报页面
10
                  <el-form-item label="">
65aeaaa1   monkeyhouyi   样式修改
11
                    <el-input v-model="query.companyName" placeholder="运营主体名称" clearable/>
5330d757   monkeyhouyi   公司信息管理完成
12
13
14
                  </el-form-item>
                </el-col>
                <el-col :span="5">
c21fb5b0   monkeyhouyi   巡查上报页面
15
                  <el-form-item label="">
65aeaaa1   monkeyhouyi   样式修改
16
                    <el-input v-model="query.legalPerson" placeholder="运营主体法人" clearable/>
5330d757   monkeyhouyi   公司信息管理完成
17
18
19
                  </el-form-item>
                </el-col>
                <el-col :span="5">
c21fb5b0   monkeyhouyi   巡查上报页面
20
                  <el-form-item label="">
65aeaaa1   monkeyhouyi   样式修改
21
                    <el-input v-model="query.socialCreditAgency" placeholder="社会信用代" clearable/>
5330d757   monkeyhouyi   公司信息管理完成
22
23
24
25
                  </el-form-item>
                </el-col>
                <el-col :span="4">
                  <el-form-item>
65aeaaa1   monkeyhouyi   样式修改
26
                    <el-button type="primary" icon="el-icon-search" @click="search()">搜索</el-button>
5330d757   monkeyhouyi   公司信息管理完成
27
28
29
30
                  </el-form-item>
                </el-col>
              </el-form>
              <div class="NCC-common-search-box-right">
89ab0203   monkeyhouyi   修改个人信息弹框
31
                <el-button type="success" icon="el-icon-plus" @click="addOrUpdateHandle()" size="mini" >新增</el-button>
65aeaaa1   monkeyhouyi   样式修改
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
                <!-- <el-button type="primary" icon="el-icon-download" size="mini" @click="exportData('demo')">导出模板</el-button>
                <el-upload
                  class="uploadXlax"
                  :action="define.APIURl + '/api/Extend/basecomapnyinfo/Actions/ImportByExcel'"
                  :headers="uploadHeaders"
                  :on-success="toUpload"
                  :show-file-list="false"
                  name="excelfile"
                  accept="image/*"
                >
                  <div class="avatar-box">
                    <el-button type="primary" icon="el-icon-download" size="mini">导入</el-button>
                  </div>
                </el-upload>
                <el-button type="primary" icon="el-icon-download" :loading="exportBtnLoading" size="mini" @click="exportData()">导出</el-button> -->
477ec56f   monkeyhouyi   权限
47
              </div>
5330d757   monkeyhouyi   公司信息管理完成
48
49
            </el-row>
            <div class="NCC-common-layout-main NCC-flex-main">
5330d757   monkeyhouyi   公司信息管理完成
50
              <NCC-table v-loading="listLoading" :data="list">
65aeaaa1   monkeyhouyi   样式修改
51
52
53
54
                <!-- <el-table-column prop="id" label="主键" align="left" /> -->
                <el-table-column prop="companyName" label="运营主体名称" show-overflow-tooltip align="left"/>
                <el-table-column prop="socialCreditAgency" label="社会信用代" show-overflow-tooltip align="left"/>
                <el-table-column prop="legalPerson" label="运营主体法人" show-overflow-tooltip align="left"/>
5330d757   monkeyhouyi   公司信息管理完成
55
                <el-table-column prop="address" label="公司地址" align="left" />
65aeaaa1   monkeyhouyi   样式修改
56
                <el-table-column prop="contactInformation" show-overflow-tooltip label="联系方式" align="left"/>
5330d757   monkeyhouyi   公司信息管理完成
57
58
                <el-table-column label="操作" fixed="right" width="100">
                  <template slot-scope="scope">
65aeaaa1   monkeyhouyi   样式修改
59
                    <el-button type="text" @click="addOrUpdateHandle(scope.row.id)">编辑</el-button>
73755355   monkeyhouyi   优化
60
                    <!-- <el-button type="text" @click="handleDel(scope.row.id)" class="NCC-table-delBtn" >删除</el-button> -->
5330d757   monkeyhouyi   公司信息管理完成
61
62
63
                  </template>
                </el-table-column>
              </NCC-table>
65aeaaa1   monkeyhouyi   样式修改
64
              <pagination :total="total" :page.sync="listQuery.currentPage" :limit.sync="listQuery.pageSize" @pagination="initData"/>
5330d757   monkeyhouyi   公司信息管理完成
65
            </div>
477ec56f   monkeyhouyi   权限
66
          </div>
5330d757   monkeyhouyi   公司信息管理完成
67
          <NCC-Form v-if="formVisible" ref="NCCForm" @refresh="refresh" />
65aeaaa1   monkeyhouyi   样式修改
68
          <ExportBox v-if="exportBoxVisible" ref="ExportBox" @download="download"/>
5330d757   monkeyhouyi   公司信息管理完成
69
70
        </div>
      </div>
477ec56f   monkeyhouyi   权限
71
72
73
    </div>
  </template>
  <script>
5330d757   monkeyhouyi   公司信息管理完成
74
75
76
77
78
  import {
    getCompanyInfoList,
    delCompanyInfo,
    exportCompanyInfo,
  } from "@/api/baseData/company";
477ec56f   monkeyhouyi   权限
79
80
  import NCCForm from "./Form";
  import ExportBox from "./ExportBox";
65aeaaa1   monkeyhouyi   样式修改
81
82
  import request from "@/utils/request";
  import define from '@/utils/define'
477ec56f   monkeyhouyi   权限
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
  export default {
    components: { NCCForm, ExportBox },
    data() {
      return {
        showAll: false,
        query: {
          companyName: undefined,
          legalPerson: undefined,
          socialCreditAgency: undefined,
        },
        list: [],
        listLoading: true,
        multipleSelection: [],
        total: 0,
        listQuery: {
          currentPage: 1,
          pageSize: 20,
          sort: "desc",
          sidx: "",
        },
65aeaaa1   monkeyhouyi   样式修改
103
        exportBtnLoading: false,
477ec56f   monkeyhouyi   权限
104
105
        formVisible: false,
        exportBoxVisible: false,
65aeaaa1   monkeyhouyi   样式修改
106
        uploadHeaders: { Authorization: this.$store.getters.token },
477ec56f   monkeyhouyi   权限
107
108
109
110
111
112
113
114
115
116
117
118
        columnList: [
          { prop: "id", label: "主键" },
          { prop: "companyName", label: "公司名称" },
          { prop: "socialCreditAgency", label: "社会信用代" },
          { prop: "legalPerson", label: "公司法人" },
          { prop: "address", label: "公司地址" },
          { prop: "contactInformation", label: "联系方式" },
        ],
      };
    },
    computed: {},
    created() {
5330d757   monkeyhouyi   公司信息管理完成
119
      this.initData();
477ec56f   monkeyhouyi   权限
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
    },
    methods: {
      initData() {
        this.listLoading = true;
        let _query = {
          ...this.listQuery,
          ...this.query,
        };
        let query = {};
        for (let key in _query) {
          if (Array.isArray(_query[key])) {
            query[key] = _query[key].join();
          } else {
            query[key] = _query[key];
          }
        }
5330d757   monkeyhouyi   公司信息管理完成
136
        getCompanyInfoList(query).then((res) => {
477ec56f   monkeyhouyi   权限
137
138
139
140
141
142
143
144
145
          this.list = res.data.list;
          this.total = res.data.pagination.total;
          this.listLoading = false;
        });
      },
      handleDel(id) {
        this.$confirm("此操作将永久删除该数据, 是否继续?", "提示", {
          type: "warning",
        })
5330d757   monkeyhouyi   公司信息管理完成
146
147
148
149
150
151
152
153
          .then(async () => {
            let res = await delCompanyInfo(id);
            this.$message({
              type: "success",
              message: res.msg,
              onClose: () => {
                this.initData();
              },
477ec56f   monkeyhouyi   权限
154
155
156
157
158
159
160
161
162
163
            });
          })
          .catch(() => {});
      },
      addOrUpdateHandle(id, isDetail) {
        this.formVisible = true;
        this.$nextTick(() => {
          this.$refs.NCCForm.init(id, isDetail);
        });
      },
65aeaaa1   monkeyhouyi   样式修改
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
      toUpload(response, file, fileList) {
        console.log(response, file, fileList);
      },
      exportData(type) {
        let obj = {};
        if(type) {
          obj = {
            url: '/Extend/basecomapnyinfo/Actions/GenerateImportTemplate',
            method: "GET",
          }
        } else {
          let _query = {
            ...this.query,
          };
          let query = {};
          for (let key in _query) {
            if (Array.isArray(_query[key])) {
              query[key] = _query[key].join();
            } else {
              query[key] = _query[key];
            }
          }
          obj ={
            url: '/Extend/basecomapnyinfo/Actions/ImportByExcel',
            method: "POST",
            data: query,
          }
        };
        request(obj).then((res) => {
          console.log(res);
          const url = define.APIURl + res.data.url;
          const link = document.createElement("a");
          link.href = url;
          link.download = res.data.name;
          link.click();
        }).catch(() => this.exportBtnLoading = false);
      },
      exportForm(url) {
        const link = document.createElement("a");
        link.href = url;
        link.download = '公司信息模板.xlsx';
        link.click();
477ec56f   monkeyhouyi   权限
206
      },
5330d757   monkeyhouyi   公司信息管理完成
207
      async download(data) {
477ec56f   monkeyhouyi   权限
208
        let query = { ...data, ...this.listQuery, ...this.query };
5330d757   monkeyhouyi   公司信息管理完成
209
210
211
212
213
        let res = await exportCompanyInfo(query);
        if (!res.data.url) return;
        window.location.href = this.define.comUrl + res.data.url;
        this.$refs.ExportBox.visible = false;
        this.exportBoxVisible = false;
477ec56f   monkeyhouyi   权限
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
      },
      search() {
        this.listQuery = {
          currentPage: 1,
          pageSize: 20,
          sort: "desc",
          sidx: "",
        };
        this.initData();
      },
      refresh(isrRefresh) {
        this.formVisible = false;
        if (isrRefresh) this.reset();
      },
      reset() {
        for (let key in this.query) {
          this.query[key] = undefined;
        }
        this.listQuery = {
          currentPage: 1,
          pageSize: 20,
          sort: "desc",
          sidx: "",
        };
        this.initData();
      },
    },
  };
  </script>
  <style lang="scss" scoped>
0af91599   monkeyhouyi   弹框请求优化
244
  .common-info-box .companyInfo {
477ec56f   monkeyhouyi   权限
245
246
247
248
    :deep(.el-table__body-wrapper.is-scrolling-none) {
      height: calc(100% - 47px);
      overflow-y: scroll;
    }
c21fb5b0   monkeyhouyi   巡查上报页面
249
250
251
    .item-body {
  	height: calc(100% - 35px);
    }
477ec56f   monkeyhouyi   权限
252
  }
65aeaaa1   monkeyhouyi   样式修改
253
254
255
256
  .uploadXlax {
    display: inline-block;
    margin: 0 8px;
  }
477ec56f   monkeyhouyi   权限
257
  </style>