Blame view

src/views/baseComapnyInfo/index.vue 10.1 KB
477ec56f   monkeyhouyi   权限
1
2
  <template>
    <div>
5330d757   monkeyhouyi   公司信息管理完成
3
      <div class="common-info-box item-box companyInfo">
8994407e   monkeyhouyi   优化
4
        <div class="item-title">运营主体信息</div>
5330d757   monkeyhouyi   公司信息管理完成
5
6
7
8
        <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">
f7abd928   monkeyhouyi   1.基础信息库-筛选:应用信息、运...
9
                <el-col :span="4">
8994407e   monkeyhouyi   优化
10
                  <el-form-item label=""  v-if="laderType != 0">
f7abd928   monkeyhouyi   1.基础信息库-筛选:应用信息、运...
11
12
13
14
15
16
                    <el-select v-model="query.areaId" placeholder="请选择所属区(市)县" clearable>
                      <el-option v-for="item in areaOptions" :key="item.id" :label="item.fullName" :value="item.id"/>
                    </el-select>
                  </el-form-item>
                </el-col>
                <el-col :span="3">
c21fb5b0   monkeyhouyi   巡查上报页面
17
                  <el-form-item label="">
65aeaaa1   monkeyhouyi   样式修改
18
                    <el-input v-model="query.companyName" placeholder="运营主体名称" clearable/>
5330d757   monkeyhouyi   公司信息管理完成
19
20
                  </el-form-item>
                </el-col>
f7abd928   monkeyhouyi   1.基础信息库-筛选:应用信息、运...
21
                <el-col :span="3">
c21fb5b0   monkeyhouyi   巡查上报页面
22
                  <el-form-item label="">
65aeaaa1   monkeyhouyi   样式修改
23
                    <el-input v-model="query.legalPerson" placeholder="运营主体法人" clearable/>
5330d757   monkeyhouyi   公司信息管理完成
24
25
                  </el-form-item>
                </el-col>
bc4f2fcb   monkeyhouyi   1
26
                <!-- <el-col :span="3">
c21fb5b0   monkeyhouyi   巡查上报页面
27
                  <el-form-item label="">
1388fe70   monkeyhouyi   字段
28
                    <el-input v-model="query.socialCreditAgency" placeholder="社会信用代码" clearable/>
5330d757   monkeyhouyi   公司信息管理完成
29
                  </el-form-item>
bc4f2fcb   monkeyhouyi   1
30
                </el-col> -->
5330d757   monkeyhouyi   公司信息管理完成
31
32
                <el-col :span="4">
                  <el-form-item>
65aeaaa1   monkeyhouyi   样式修改
33
                    <el-button type="primary" icon="el-icon-search" @click="search()">搜索</el-button>
f7abd928   monkeyhouyi   1.基础信息库-筛选:应用信息、运...
34
                    <el-button icon="el-icon-refresh-right" @click="reset()">重置</el-button>
5330d757   monkeyhouyi   公司信息管理完成
35
36
37
38
                  </el-form-item>
                </el-col>
              </el-form>
              <div class="NCC-common-search-box-right">
89ab0203   monkeyhouyi   修改个人信息弹框
39
                <el-button type="success" icon="el-icon-plus" @click="addOrUpdateHandle()" size="mini" >新增</el-button>
a242b994   monkeyhouyi   附件调试
40
                <el-button type="primary" icon="el-icon-download" size="mini" @click="exportData('demo')">导出模板</el-button>
65aeaaa1   monkeyhouyi   样式修改
41
42
43
44
45
46
47
                <el-upload
                  class="uploadXlax"
                  :action="define.APIURl + '/api/Extend/basecomapnyinfo/Actions/ImportByExcel'"
                  :headers="uploadHeaders"
                  :on-success="toUpload"
                  :show-file-list="false"
                  name="excelfile"
65aeaaa1   monkeyhouyi   样式修改
48
49
                >
                  <div class="avatar-box">
bc4f2fcb   monkeyhouyi   1
50
                    <el-button type="warning" icon="el-icon-upload" size="mini">导入</el-button>
65aeaaa1   monkeyhouyi   样式修改
51
52
                  </div>
                </el-upload>
a242b994   monkeyhouyi   附件调试
53
                <el-button type="primary" icon="el-icon-download" :loading="exportBtnLoading" size="mini" @click="exportData()">导出</el-button>
477ec56f   monkeyhouyi   权限
54
              </div>
5330d757   monkeyhouyi   公司信息管理完成
55
56
            </el-row>
            <div class="NCC-common-layout-main NCC-flex-main">
5330d757   monkeyhouyi   公司信息管理完成
57
              <NCC-table v-loading="listLoading" :data="list">
65aeaaa1   monkeyhouyi   样式修改
58
59
                <!-- <el-table-column prop="id" label="主键" align="left" /> -->
                <el-table-column prop="companyName" label="运营主体名称" show-overflow-tooltip align="left"/>
bc4f2fcb   monkeyhouyi   1
60
                <!-- <el-table-column prop="socialCreditAgency" label="社会信用代码" show-overflow-tooltip align="left"/> -->
65aeaaa1   monkeyhouyi   样式修改
61
                <el-table-column prop="legalPerson" label="运营主体法人" show-overflow-tooltip align="left"/>
77e1ac72   monkeyhouyi   优化
62
                <el-table-column prop="address" label="运营主体地址" align="left" />
82cf5bfd   monkeyhouyi   联系下电话
63
                <el-table-column prop="contactPhone" show-overflow-tooltip label="联系电话" align="left"/>
af8e6fa8   monkeyhouyi   添加电话号加密显示,但未启用
64
65
66
                <!-- <el-table-column prop="contactPhone" show-overflow-tooltip label="联系电话" align="left">
                  <template slot-scope="scope">{{ scope.row.contactPhone | phoneEncryp() }}</template>
                </el-table-column> -->
f7abd928   monkeyhouyi   1.基础信息库-筛选:应用信息、运...
67
68
69
                <el-table-column label="所属区(市)县" prop="areaId" align="left" show-overflow-tooltip>
                  <template slot-scope="scope">{{ scope.row.areaId | dynamicText(areaOptions) }}</template>
                </el-table-column>
5330d757   monkeyhouyi   公司信息管理完成
70
71
                <el-table-column label="操作" fixed="right" width="100">
                  <template slot-scope="scope">
eb9b5842   monkeyhouyi   应用上传图片
72
                    <el-button type="text" @click="addOrUpdateHandle(scope.row.id, false)">编辑</el-button>
e8dbf78f   monkeyhouyi   设置id=77777的人员可以删除...
73
                    <el-button type="text" @click="handleDel(scope.row.id)" class="NCC-table-delBtn" v-if="isSHILevel && userId == '77777'">删除</el-button>
5330d757   monkeyhouyi   公司信息管理完成
74
75
76
                  </template>
                </el-table-column>
              </NCC-table>
65aeaaa1   monkeyhouyi   样式修改
77
              <pagination :total="total" :page.sync="listQuery.currentPage" :limit.sync="listQuery.pageSize" @pagination="initData"/>
5330d757   monkeyhouyi   公司信息管理完成
78
            </div>
477ec56f   monkeyhouyi   权限
79
          </div>
5330d757   monkeyhouyi   公司信息管理完成
80
          <NCC-Form v-if="formVisible" ref="NCCForm" @refresh="refresh" />
65aeaaa1   monkeyhouyi   样式修改
81
          <ExportBox v-if="exportBoxVisible" ref="ExportBox" @download="download"/>
5330d757   monkeyhouyi   公司信息管理完成
82
83
        </div>
      </div>
477ec56f   monkeyhouyi   权限
84
85
86
    </div>
  </template>
  <script>
5330d757   monkeyhouyi   公司信息管理完成
87
88
89
90
91
  import {
    getCompanyInfoList,
    delCompanyInfo,
    exportCompanyInfo,
  } from "@/api/baseData/company";
477ec56f   monkeyhouyi   权限
92
93
  import NCCForm from "./Form";
  import ExportBox from "./ExportBox";
65aeaaa1   monkeyhouyi   样式修改
94
  import request from "@/utils/request";
f7abd928   monkeyhouyi   1.基础信息库-筛选:应用信息、运...
95
  import infoMixin from "@/mixins/info";
65aeaaa1   monkeyhouyi   样式修改
96
  import define from '@/utils/define'
06c7a82f   李宇   最新代码
97
  
477ec56f   monkeyhouyi   权限
98
  export default {
f7abd928   monkeyhouyi   1.基础信息库-筛选:应用信息、运...
99
    mixins: [infoMixin],
477ec56f   monkeyhouyi   权限
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
    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   样式修改
119
        exportBtnLoading: false,
477ec56f   monkeyhouyi   权限
120
121
        formVisible: false,
        exportBoxVisible: false,
12fba5f0   monkeyhouyi   导入Islogin
122
123
124
125
        uploadHeaders: { 
          Authorization: this.$store.getters.token,
          IsLogin: true,
        },
477ec56f   monkeyhouyi   权限
126
127
128
129
130
131
132
133
134
135
        columnList: [
          { prop: "id", label: "主键" },
          { prop: "companyName", label: "公司名称" },
          { prop: "socialCreditAgency", label: "社会信用代" },
          { prop: "legalPerson", label: "公司法人" },
          { prop: "address", label: "公司地址" },
          { prop: "contactInformation", label: "联系方式" },
        ],
      };
    },
8994407e   monkeyhouyi   优化
136
    computed: {
e8dbf78f   monkeyhouyi   设置id=77777的人员可以删除...
137
138
139
140
141
142
143
144
      isSHILevel() {
        // 判断角色是否为‘市级办公室’
        return this.$store.state.user.islader;
      },
      userId() {
        // admin1这个人可以删除数据
        return this.$store.state.user.id;
      },
8994407e   monkeyhouyi   优化
145
146
147
148
      laderType() {
        return this.$store.state.user.laderType;
      }
    },
477ec56f   monkeyhouyi   权限
149
    created() {
f7abd928   monkeyhouyi   1.基础信息库-筛选:应用信息、运...
150
      this.initAreaTypeList();
5330d757   monkeyhouyi   公司信息管理完成
151
      this.initData();
477ec56f   monkeyhouyi   权限
152
153
154
    },
    methods: {
      initData() {
bae8b004   monkeyhouyi   1
155
        this.list = [];
477ec56f   monkeyhouyi   权限
156
157
158
159
160
161
162
163
164
165
166
167
168
        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   公司信息管理完成
169
        getCompanyInfoList(query).then((res) => {
477ec56f   monkeyhouyi   权限
170
171
172
173
174
175
176
177
178
          this.list = res.data.list;
          this.total = res.data.pagination.total;
          this.listLoading = false;
        });
      },
      handleDel(id) {
        this.$confirm("此操作将永久删除该数据, 是否继续?", "提示", {
          type: "warning",
        })
5330d757   monkeyhouyi   公司信息管理完成
179
180
181
182
183
184
185
186
          .then(async () => {
            let res = await delCompanyInfo(id);
            this.$message({
              type: "success",
              message: res.msg,
              onClose: () => {
                this.initData();
              },
477ec56f   monkeyhouyi   权限
187
188
189
190
191
192
193
194
195
196
            });
          })
          .catch(() => {});
      },
      addOrUpdateHandle(id, isDetail) {
        this.formVisible = true;
        this.$nextTick(() => {
          this.$refs.NCCForm.init(id, isDetail);
        });
      },
65aeaaa1   monkeyhouyi   样式修改
197
      toUpload(response, file, fileList) {
a242b994   monkeyhouyi   附件调试
198
199
        this.$message({
          showClose: true,
dc42979c   monkeyhouyi   联系方式
200
          message: response.code == 200 ? '上传成功' : '上传失败',
a242b994   monkeyhouyi   附件调试
201
202
203
204
205
          type: response.code == 200 ? 'success' : 'error',
          close: () => {
            response.code == 200 && this.initData();
          }
        });
65aeaaa1   monkeyhouyi   样式修改
206
207
208
209
210
211
      },
      exportData(type) {
        let obj = {};
        if(type) {
          obj = {
            url: '/Extend/basecomapnyinfo/Actions/GenerateImportTemplate',
a242b994   monkeyhouyi   附件调试
212
            responseType: 'blob',
65aeaaa1   monkeyhouyi   样式修改
213
214
215
            method: "GET",
          }
        } else {
a242b994   monkeyhouyi   附件调试
216
217
          obj = {
            url: '/Extend/basecomapnyinfo/Actions/Export',
65aeaaa1   monkeyhouyi   样式修改
218
            method: "POST",
a242b994   monkeyhouyi   附件调试
219
            data: this.query,
65aeaaa1   monkeyhouyi   样式修改
220
221
222
          }
        };
        request(obj).then((res) => {
a242b994   monkeyhouyi   附件调试
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
          if(type) {
            const blob = new Blob([res], {type: 'application/json'});
            const url = window.URL.createObjectURL(blob);
            let link = document.createElement('a');
            link.style.display = 'none';
            link.href = url;
            link.download = '公司录入模板.xlsx';
            link.click();
          } else {
            if(res.code != 200) return;
            const url = define.APIURl + res.data.url;
            const link = document.createElement("a");
            link.href = url;
            link.download = res.data.name;
            link.click();
          }
        })
65aeaaa1   monkeyhouyi   样式修改
240
241
242
243
244
245
      },
      exportForm(url) {
        const link = document.createElement("a");
        link.href = url;
        link.download = '公司信息模板.xlsx';
        link.click();
477ec56f   monkeyhouyi   权限
246
      },
5330d757   monkeyhouyi   公司信息管理完成
247
      async download(data) {
477ec56f   monkeyhouyi   权限
248
        let query = { ...data, ...this.listQuery, ...this.query };
5330d757   monkeyhouyi   公司信息管理完成
249
250
251
252
253
        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   权限
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
      },
      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   弹框请求优化
284
  .common-info-box .companyInfo {
477ec56f   monkeyhouyi   权限
285
286
287
288
    :deep(.el-table__body-wrapper.is-scrolling-none) {
      height: calc(100% - 47px);
      overflow-y: scroll;
    }
c21fb5b0   monkeyhouyi   巡查上报页面
289
290
291
    .item-body {
  	height: calc(100% - 35px);
    }
477ec56f   monkeyhouyi   权限
292
  }
65aeaaa1   monkeyhouyi   样式修改
293
294
295
296
  .uploadXlax {
    display: inline-block;
    margin: 0 8px;
  }
477ec56f   monkeyhouyi   权限
297
  </style>