中国算力平台算力登记系统2.0
yanzhaofeige
3 days ago 7c91ba68decae833c328ffabdf31ba9988cca2b7
commit | author | age
5cc82f 1 <template>
Y 2   <div class="app-container">
7c91ba 3     <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="100px">
5cc82f 4       <el-form-item label="编号" prop="idcNo">
Y 5         <el-input
6           v-model="queryParams.idcNo"
7           placeholder="请输入编号"
8           clearable
9           @keyup.enter.native="handleQuery"
10         />
11       </el-form-item>
12       <el-form-item label="规模类型" prop="type">
13         <el-select v-model="queryParams.type" placeholder="请选择规模类型" clearable>
14           <el-option
15             v-for="dict in dict.type.idc_scale_type"
16             :key="dict.value"
17             :label="dict.label"
18             :value="dict.value"
19           />
20         </el-select>
21       </el-form-item>
22       <el-form-item label="业务类型" prop="businessType">
23         <el-select v-model="queryParams.businessType" placeholder="请选择业务类型" clearable>
24           <el-option
25             v-for="dict in dict.type.idc_business_type"
26             :key="dict.value"
27             :label="dict.label"
28             :value="dict.value"
29           />
30         </el-select>
31       </el-form-item>
32       <el-form-item label="名称" prop="name">
33         <el-input
34           v-model="queryParams.name"
35           placeholder="请输入名称"
36           clearable
37           @keyup.enter.native="handleQuery"
38         />
39       </el-form-item>
40       <el-form-item label="省" prop="province">
41         <el-input
42           v-model="queryParams.province"
43           placeholder="请输入省"
44           clearable
45           @keyup.enter.native="handleQuery"
46         />
47       </el-form-item>
48       <el-form-item label="市" prop="city">
49         <el-input
50           v-model="queryParams.city"
51           placeholder="请输入市"
52           clearable
53           @keyup.enter.native="handleQuery"
54         />
55       </el-form-item>
56       <el-form-item label="区、县" prop="area">
57         <el-input
58           v-model="queryParams.area"
59           placeholder="请输入区、县"
60           clearable
61           @keyup.enter.native="handleQuery"
62         />
63       </el-form-item>
7c91ba 64
5cc82f 65       <el-form-item label="运营主体统一社会信用代码" prop="creditCode">
Y 66         <el-input
67           v-model="queryParams.creditCode"
68           placeholder="请输入运营主体统一社会信用代码"
69           clearable
70           @keyup.enter.native="handleQuery"
71         />
72       </el-form-item>
73       <el-form-item label="运营主体" prop="mainbody">
74         <el-input
75           v-model="queryParams.mainbody"
76           placeholder="请输入运营主体"
77           clearable
78           @keyup.enter.native="handleQuery"
79         />
80       </el-form-item>
81       <el-form-item label="运营公司总公司" prop="mainbodyHeader">
82         <el-select v-model="queryParams.mainbodyHeader" placeholder="请选择运营公司总公司" clearable>
83           <el-option
84             v-for="dict in dict.type.idc_base_mainbody_header"
85             :key="dict.value"
86             :label="dict.label"
87             :value="dict.value"
88           />
89         </el-select>
90       </el-form-item>
91       <el-form-item label="运营主体类型" prop="mainbodyType">
92         <el-select v-model="queryParams.mainbodyType" placeholder="请选择运营主体类型" clearable>
93           <el-option
94             v-for="dict in dict.type.idc_base_mainbody_type"
95             :key="dict.value"
96             :label="dict.label"
97             :value="dict.value"
98           />
99         </el-select>
100       </el-form-item>
101       <el-form-item label="投产时间" prop="productionTime">
102         <el-date-picker clearable
103           v-model="queryParams.productionTime"
104           type="date"
105           value-format="yyyy-MM-dd"
106           placeholder="请选择投产时间">
107         </el-date-picker>
108       </el-form-item>
109       <el-form-item label="接入网络级别" prop="netLevel">
110         <el-select v-model="queryParams.netLevel" placeholder="请选择接入网络级别" clearable>
111           <el-option
112             v-for="dict in dict.type.idc_net_level"
113             :key="dict.value"
114             :label="dict.label"
115             :value="dict.value"
116           />
117         </el-select>
118       </el-form-item>
119       <el-form-item label="链接的运营商" prop="netOperator">
120         <el-select v-model="queryParams.netOperator" placeholder="请选择链接的运营商" clearable>
121           <el-option
122             v-for="dict in dict.type.idc_net_operator"
123             :key="dict.value"
124             :label="dict.label"
125             :value="dict.value"
126           />
127         </el-select>
128       </el-form-item>
129       <el-form-item label="制冷方式" prop="airRefrigerationType">
130         <el-select v-model="queryParams.airRefrigerationType" placeholder="请选择制冷方式" clearable>
131           <el-option
132             v-for="dict in dict.type.idc_air_refrigeration_type"
133             :key="dict.value"
134             :label="dict.label"
135             :value="dict.value"
136           />
137         </el-select>
138       </el-form-item>
139       <el-form-item label="状态" prop="state">
140         <el-select v-model="queryParams.state" placeholder="请选择状态" clearable>
141           <el-option
142             v-for="dict in dict.type.idc_process_status"
143             :key="dict.value"
144             :label="dict.label"
145             :value="dict.value"
146           />
147         </el-select>
148       </el-form-item>
149       <el-form-item label="是否可用" prop="isEnable">
150         <el-input
151           v-model="queryParams.isEnable"
152           placeholder="请输入是否可用"
153           clearable
154           @keyup.enter.native="handleQuery"
155         />
156       </el-form-item>
157       <el-form-item label="创建者" prop="createUser">
158         <el-input
159           v-model="queryParams.createUser"
160           placeholder="请输入创建者"
161           clearable
162           @keyup.enter.native="handleQuery"
163         />
164       </el-form-item>
165       <el-form-item>
166         <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
167         <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
168       </el-form-item>
169     </el-form>
170
171     <el-row :gutter="10" class="mb8">
172       <el-col :span="1.5">
173         <el-button
174           type="primary"
175           plain
176           icon="el-icon-plus"
177           size="mini"
178           @click="handleAdd"
179           v-hasPermi="['bis:useBase:add']"
180         >新增</el-button>
181       </el-col>
182       <el-col :span="1.5">
183         <el-button
184           type="success"
185           plain
186           icon="el-icon-edit"
187           size="mini"
188           :disabled="single"
189           @click="handleUpdate"
190           v-hasPermi="['bis:useBase:edit']"
191         >修改</el-button>
192       </el-col>
193       <el-col :span="1.5">
194         <el-button
195           type="danger"
196           plain
197           icon="el-icon-delete"
198           size="mini"
199           :disabled="multiple"
200           @click="handleDelete"
201           v-hasPermi="['bis:useBase:remove']"
202         >删除</el-button>
203       </el-col>
204       <el-col :span="1.5">
205         <el-button
206           type="warning"
207           plain
208           icon="el-icon-download"
209           size="mini"
210           @click="handleExport"
211           v-hasPermi="['bis:useBase:export']"
212         >导出</el-button>
213       </el-col>
214       <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
215     </el-row>
216
217     <el-table v-loading="loading" :data="useBaseList" @selection-change="handleSelectionChange">
218       <el-table-column type="selection" width="55" align="center" />
219       <el-table-column label="序号" align="center" prop="id" />
220       <el-table-column label="在建转过来的表ID" align="center" prop="buildId" />
221       <el-table-column label="编号" align="center" prop="idcNo" />
222       <el-table-column label="规模类型" align="center" prop="type">
223         <template slot-scope="scope">
224           <dict-tag :options="dict.type.idc_scale_type" :value="scope.row.type"/>
225         </template>
226       </el-table-column>
227       <el-table-column label="业务类型" align="center" prop="businessType">
228         <template slot-scope="scope">
229           <dict-tag :options="dict.type.idc_business_type" :value="scope.row.businessType"/>
230         </template>
231       </el-table-column>
232       <el-table-column label="设计机架数" align="center" prop="frameNum" />
233       <el-table-column label="设计机架功率" align="center" prop="framePower" />
234       <el-table-column label="名称" align="center" prop="name" />
235       <el-table-column label="省" align="center" prop="province" />
236       <el-table-column label="市" align="center" prop="city" />
237       <el-table-column label="区、县" align="center" prop="area" />
238       <el-table-column label="地址" align="center" prop="address" />
239       <el-table-column label="补充地址" align="center" prop="addressExt" />
240       <el-table-column label="机楼" align="center" prop="building" />
241       <el-table-column label="运营主体统一社会信用代码" align="center" prop="creditCode" />
242       <el-table-column label="运营主体" align="center" prop="mainbody" />
243       <el-table-column label="运营公司总公司" align="center" prop="mainbodyHeader">
244         <template slot-scope="scope">
245           <dict-tag :options="dict.type.idc_base_mainbody_header" :value="scope.row.mainbodyHeader"/>
246         </template>
247       </el-table-column>
248       <el-table-column label="运营主体类型" align="center" prop="mainbodyType">
249         <template slot-scope="scope">
250           <dict-tag :options="dict.type.idc_base_mainbody_type" :value="scope.row.mainbodyType"/>
251         </template>
252       </el-table-column>
253       <el-table-column label="建设初始投资" align="center" prop="investment" />
254       <el-table-column label="投产时间" align="center" prop="productionTime" width="180">
255         <template slot-scope="scope">
256           <span>{{ parseTime(scope.row.productionTime, '{y}-{m}-{d}') }}</span>
257         </template>
258       </el-table-column>
259       <el-table-column label="建设等级/标准" align="center" prop="dcBuildingLevel" />
260       <el-table-column label="数据中心总设计面积" align="center" prop="dcAllArea" />
261       <el-table-column label="IT机房面积" align="center" prop="dcItArea" />
262       <el-table-column label="建筑形式" align="center" prop="buildingType">
263         <template slot-scope="scope">
264           <dict-tag :options="dict.type.idc_base_building_type" :value="scope.row.buildingType"/>
265         </template>
266       </el-table-column>
267       <el-table-column label="市电引入方式" align="center" prop="cityElectricityType">
268         <template slot-scope="scope">
269           <dict-tag :options="dict.type.idc_city_electricity_type" :value="scope.row.cityElectricityType"/>
270         </template>
271       </el-table-column>
272       <el-table-column label="市电引入方式,其它" align="center" prop="cityElectricityTypeOther" />
273       <el-table-column label="总配电量(KWA)" align="center" prop="powerDistribution" />
274       <el-table-column label="用电类型" align="center" prop="electricityType">
275         <template slot-scope="scope">
276           <dict-tag :options="dict.type.idc_electricity_type" :value="scope.row.electricityType"/>
277         </template>
278       </el-table-column>
279       <el-table-column label="用电类型_其它" align="center" prop="electricityTypeOther" />
280       <el-table-column label="设计PUE" align="center" prop="pueDesign" />
281       <el-table-column label="设计全年用水量" align="center" prop="waterDesign" />
282       <el-table-column label="接入网络级别" align="center" prop="netLevel">
283         <template slot-scope="scope">
284           <dict-tag :options="dict.type.idc_net_level" :value="scope.row.netLevel"/>
285         </template>
286       </el-table-column>
287       <el-table-column label="链接的运营商" align="center" prop="netOperator">
288         <template slot-scope="scope">
289           <dict-tag :options="dict.type.idc_net_operator" :value="scope.row.netOperator"/>
290         </template>
291       </el-table-column>
292       <el-table-column label="链接的运营商_其它" align="center" prop="netOperatorOther" />
293       <el-table-column label="制冷方式" align="center" prop="airRefrigerationType">
294         <template slot-scope="scope">
295           <dict-tag :options="dict.type.idc_air_refrigeration_type" :value="scope.row.airRefrigerationType"/>
296         </template>
297       </el-table-column>
298       <el-table-column label="制冷方式_其它" align="center" prop="airRefrigerationTypeOther" />
299       <el-table-column label="排序" align="center" prop="sort" />
300       <el-table-column label="反馈信息" align="center" prop="message" />
301       <el-table-column label="状态" align="center" prop="state">
302         <template slot-scope="scope">
303           <dict-tag :options="dict.type.idc_process_status" :value="scope.row.state"/>
304         </template>
305       </el-table-column>
306       <el-table-column label="是否可用" align="center" prop="isEnable">
307         <template slot-scope="scope">
308           <dict-tag :options="dict.type.idc_yes_no" :value="scope.row.isEnable"/>
309         </template>
310       </el-table-column>
311       <el-table-column label="创建者" align="center" prop="createUser" />
312       <el-table-column label="更新者" align="center" prop="updateUser" />
313       <el-table-column label="管理员备注及信息反馈" align="center" prop="remark" />
314       <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
315         <template slot-scope="scope">
316           <el-button
317             size="mini"
318             type="text"
319             icon="el-icon-edit"
320             @click="handleUpdate(scope.row)"
321             v-hasPermi="['bis:useBase:edit']"
322           >修改</el-button>
323           <el-button
324             size="mini"
325             type="text"
326             icon="el-icon-delete"
327             @click="handleDelete(scope.row)"
328             v-hasPermi="['bis:useBase:remove']"
329           >删除</el-button>
330         </template>
331       </el-table-column>
332     </el-table>
7c91ba 333
5cc82f 334     <pagination
Y 335       v-show="total>0"
336       :total="total"
337       :page.sync="queryParams.pageNum"
338       :limit.sync="queryParams.pageSize"
339       @pagination="getList"
340     />
341
342     <!-- 添加或修改在用数据中心对话框 -->
343     <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
344       <el-form ref="form" :model="form" :rules="rules" label-width="80px">
345         <el-form-item label="在建转过来的表ID" prop="buildId">
346           <el-input v-model="form.buildId" placeholder="请输入在建转过来的表ID" />
347         </el-form-item>
348         <el-form-item label="编号" prop="idcNo">
349           <el-input v-model="form.idcNo" placeholder="请输入编号" />
350         </el-form-item>
351         <el-form-item label="规模类型" prop="type">
352           <el-radio-group v-model="form.type">
353             <el-radio
354               v-for="dict in dict.type.idc_scale_type"
355               :key="dict.value"
356               :label="parseInt(dict.value)"
357             >{{dict.label}}</el-radio>
358           </el-radio-group>
359         </el-form-item>
360         <el-form-item label="业务类型" prop="businessType">
361           <el-radio-group v-model="form.businessType">
362             <el-radio
363               v-for="dict in dict.type.idc_business_type"
364               :key="dict.value"
365               :label="parseInt(dict.value)"
366             >{{dict.label}}</el-radio>
367           </el-radio-group>
368         </el-form-item>
369         <el-form-item label="设计机架数" prop="frameNum">
370           <el-input v-model="form.frameNum" placeholder="请输入设计机架数" />
371         </el-form-item>
372         <el-form-item label="设计机架功率" prop="framePower">
373           <el-input v-model="form.framePower" placeholder="请输入设计机架功率" />
374         </el-form-item>
375         <el-form-item label="名称" prop="name">
376           <el-input v-model="form.name" placeholder="请输入名称" />
377         </el-form-item>
378         <el-form-item label="省" prop="province">
379           <el-input v-model="form.province" placeholder="请输入省" />
380         </el-form-item>
381         <el-form-item label="市" prop="city">
382           <el-input v-model="form.city" placeholder="请输入市" />
383         </el-form-item>
384         <el-form-item label="区、县" prop="area">
385           <el-input v-model="form.area" placeholder="请输入区、县" />
386         </el-form-item>
387         <el-form-item label="地址" prop="address">
388           <el-input v-model="form.address" placeholder="请输入地址" />
389         </el-form-item>
390         <el-form-item label="补充地址" prop="addressExt">
391           <el-input v-model="form.addressExt" placeholder="请输入补充地址" />
392         </el-form-item>
393         <el-form-item label="机楼" prop="building">
394           <el-input v-model="form.building" placeholder="请输入机楼" />
395         </el-form-item>
396         <el-form-item label="运营主体统一社会信用代码" prop="creditCode">
397           <el-input v-model="form.creditCode" placeholder="请输入运营主体统一社会信用代码" />
398         </el-form-item>
399         <el-form-item label="运营主体" prop="mainbody">
400           <el-input v-model="form.mainbody" placeholder="请输入运营主体" />
401         </el-form-item>
402         <el-form-item label="运营公司总公司" prop="mainbodyHeader">
403           <el-select v-model="form.mainbodyHeader" placeholder="请选择运营公司总公司">
404             <el-option
405               v-for="dict in dict.type.idc_base_mainbody_header"
406               :key="dict.value"
407               :label="dict.label"
408               :value="dict.value"
409             ></el-option>
410           </el-select>
411         </el-form-item>
412         <el-form-item label="运营主体类型" prop="mainbodyType">
413           <el-select v-model="form.mainbodyType" placeholder="请选择运营主体类型">
414             <el-option
415               v-for="dict in dict.type.idc_base_mainbody_type"
416               :key="dict.value"
417               :label="dict.label"
418               :value="dict.value"
419             ></el-option>
420           </el-select>
421         </el-form-item>
422         <el-form-item label="建设初始投资" prop="investment">
423           <el-input v-model="form.investment" placeholder="请输入建设初始投资" />
424         </el-form-item>
425         <el-form-item label="投产时间" prop="productionTime">
426           <el-date-picker clearable
427             v-model="form.productionTime"
428             type="date"
429             value-format="yyyy-MM-dd"
430             placeholder="请选择投产时间">
431           </el-date-picker>
432         </el-form-item>
433         <el-form-item label="建设等级/标准" prop="dcBuildingLevel">
434           <el-input v-model="form.dcBuildingLevel" placeholder="请输入建设等级/标准" />
435         </el-form-item>
436         <el-form-item label="数据中心总设计面积" prop="dcAllArea">
437           <el-input v-model="form.dcAllArea" placeholder="请输入数据中心总设计面积" />
438         </el-form-item>
439         <el-form-item label="IT机房面积" prop="dcItArea">
440           <el-input v-model="form.dcItArea" placeholder="请输入IT机房面积" />
441         </el-form-item>
442         <el-form-item label="建筑形式" prop="buildingType">
443           <el-select v-model="form.buildingType" placeholder="请选择建筑形式">
444             <el-option
445               v-for="dict in dict.type.idc_base_building_type"
446               :key="dict.value"
447               :label="dict.label"
448               :value="dict.value"
449             ></el-option>
450           </el-select>
451         </el-form-item>
452         <el-form-item label="市电引入方式" prop="cityElectricityType">
453           <el-select v-model="form.cityElectricityType" placeholder="请选择市电引入方式">
454             <el-option
455               v-for="dict in dict.type.idc_city_electricity_type"
456               :key="dict.value"
457               :label="dict.label"
458               :value="dict.value"
459             ></el-option>
460           </el-select>
461         </el-form-item>
462         <el-form-item label="市电引入方式,其它" prop="cityElectricityTypeOther">
463           <el-input v-model="form.cityElectricityTypeOther" placeholder="请输入市电引入方式,其它" />
464         </el-form-item>
465         <el-form-item label="总配电量(KWA)" prop="powerDistribution">
466           <el-input v-model="form.powerDistribution" placeholder="请输入总配电量(KWA)" />
467         </el-form-item>
468         <el-form-item label="用电类型" prop="electricityType">
469           <el-select v-model="form.electricityType" placeholder="请选择用电类型">
470             <el-option
471               v-for="dict in dict.type.idc_electricity_type"
472               :key="dict.value"
473               :label="dict.label"
474               :value="dict.value"
475             ></el-option>
476           </el-select>
477         </el-form-item>
478         <el-form-item label="用电类型_其它" prop="electricityTypeOther">
479           <el-input v-model="form.electricityTypeOther" placeholder="请输入用电类型_其它" />
480         </el-form-item>
481         <el-form-item label="设计PUE" prop="pueDesign">
482           <el-input v-model="form.pueDesign" placeholder="请输入设计PUE" />
483         </el-form-item>
484         <el-form-item label="设计全年用水量" prop="waterDesign">
485           <el-input v-model="form.waterDesign" placeholder="请输入设计全年用水量" />
486         </el-form-item>
487         <el-form-item label="接入网络级别" prop="netLevel">
488           <el-radio-group v-model="form.netLevel">
489             <el-radio
490               v-for="dict in dict.type.idc_net_level"
491               :key="dict.value"
492               :label="dict.value"
493             >{{dict.label}}</el-radio>
494           </el-radio-group>
495         </el-form-item>
496         <el-form-item label="链接的运营商" prop="netOperator">
497           <el-select v-model="form.netOperator" placeholder="请选择链接的运营商">
498             <el-option
499               v-for="dict in dict.type.idc_net_operator"
500               :key="dict.value"
501               :label="dict.label"
502               :value="dict.value"
503             ></el-option>
504           </el-select>
505         </el-form-item>
506         <el-form-item label="链接的运营商_其它" prop="netOperatorOther">
507           <el-input v-model="form.netOperatorOther" placeholder="请输入链接的运营商_其它" />
508         </el-form-item>
509         <el-form-item label="制冷方式" prop="airRefrigerationType">
510           <el-select v-model="form.airRefrigerationType" placeholder="请选择制冷方式">
511             <el-option
512               v-for="dict in dict.type.idc_air_refrigeration_type"
513               :key="dict.value"
514               :label="dict.label"
515               :value="dict.value"
516             ></el-option>
517           </el-select>
518         </el-form-item>
519         <el-form-item label="制冷方式_其它" prop="airRefrigerationTypeOther">
520           <el-input v-model="form.airRefrigerationTypeOther" placeholder="请输入制冷方式_其它" />
521         </el-form-item>
522         <el-form-item label="排序" prop="sort">
523           <el-input v-model="form.sort" placeholder="请输入排序" />
524         </el-form-item>
525         <el-form-item label="反馈信息" prop="message">
526           <el-input v-model="form.message" type="textarea" placeholder="请输入内容" />
527         </el-form-item>
528         <el-form-item label="状态" prop="state">
529           <el-radio-group v-model="form.state">
530             <el-radio
531               v-for="dict in dict.type.idc_process_status"
532               :key="dict.value"
533               :label="parseInt(dict.value)"
534             >{{dict.label}}</el-radio>
535           </el-radio-group>
536         </el-form-item>
537         <el-form-item label="是否可用" prop="isEnable">
538           <el-input v-model="form.isEnable" placeholder="请输入是否可用" />
539         </el-form-item>
540         <el-form-item label="创建者" prop="createUser">
541           <el-input v-model="form.createUser" placeholder="请输入创建者" />
542         </el-form-item>
543         <el-form-item label="更新者" prop="updateUser">
544           <el-input v-model="form.updateUser" placeholder="请输入更新者" />
545         </el-form-item>
546         <el-form-item label="管理员备注及信息反馈" prop="remark">
547           <el-input v-model="form.remark" placeholder="请输入管理员备注及信息反馈" />
548         </el-form-item>
549       </el-form>
550       <div slot="footer" class="dialog-footer">
551         <el-button type="primary" @click="submitForm">确 定</el-button>
552         <el-button @click="cancel">取 消</el-button>
553       </div>
554     </el-dialog>
555   </div>
556 </template>
557
558 <script>
559 import { listUseBase, getUseBase, delUseBase, addUseBase, updateUseBase } from "@/api/bis/useBase";
560
561 export default {
562   name: "UseBase",
563   dicts: ['idc_electricity_type', 'idc_base_mainbody_header', 'idc_business_type', 'idc_base_mainbody_type', 'idc_scale_type', 'idc_process_status', 'idc_air_refrigeration_type', 'idc_net_operator', 'idc_base_building_type', 'idc_city_electricity_type', 'idc_net_level'],
564   data() {
565     return {
566       // 遮罩层
567       loading: true,
568       // 选中数组
569       ids: [],
570       // 非单个禁用
571       single: true,
572       // 非多个禁用
573       multiple: true,
574       // 显示搜索条件
575       showSearch: true,
576       // 总条数
577       total: 0,
578       // 在用数据中心表格数据
579       useBaseList: [],
580       // 弹出层标题
581       title: "",
582       // 是否显示弹出层
583       open: false,
584       // 查询参数
585       queryParams: {
586         pageNum: 1,
587         pageSize: 10,
588         buildId: null,
589         idcNo: null,
590         type: null,
591         businessType: null,
592         frameNum: null,
593         framePower: null,
594         name: null,
595         province: null,
596         city: null,
597         area: null,
598         address: null,
599         addressExt: null,
600         building: null,
601         creditCode: null,
602         mainbody: null,
603         mainbodyHeader: null,
604         mainbodyType: null,
605         investment: null,
606         productionTime: null,
607         dcBuildingLevel: null,
608         dcAllArea: null,
609         dcItArea: null,
610         buildingType: null,
611         cityElectricityType: null,
612         cityElectricityTypeOther: null,
613         powerDistribution: null,
614         electricityType: null,
615         electricityTypeOther: null,
616         pueDesign: null,
617         waterDesign: null,
618         netLevel: null,
619         netOperator: null,
620         netOperatorOther: null,
621         airRefrigerationType: null,
622         airRefrigerationTypeOther: null,
623         sort: null,
624         message: null,
625         state: null,
626         isEnable: null,
627         createUser: null,
628         updateUser: null,
629       },
630       // 表单参数
631       form: {},
632       // 表单校验
633       rules: {
634         type: [
635           { required: true, message: "规模类型不能为空", trigger: "change" }
636         ],
637         businessType: [
638           { required: true, message: "业务类型不能为空", trigger: "change" }
639         ],
640         frameNum: [
641           { required: true, message: "设计机架数不能为空", trigger: "blur" }
642         ],
643         framePower: [
644           { required: true, message: "设计机架功率不能为空", trigger: "blur" }
645         ],
646         name: [
647           { required: true, message: "名称不能为空", trigger: "blur" }
648         ],
649         province: [
650           { required: true, message: "省不能为空", trigger: "blur" }
651         ],
652         city: [
653           { required: true, message: "市不能为空", trigger: "blur" }
654         ],
655         area: [
656           { required: true, message: "区、县不能为空", trigger: "blur" }
657         ],
658         address: [
659           { required: true, message: "地址不能为空", trigger: "blur" }
660         ],
661         addressExt: [
662           { required: true, message: "补充地址不能为空", trigger: "blur" }
663         ],
664         building: [
665           { required: true, message: "机楼不能为空", trigger: "blur" }
666         ],
667         creditCode: [
668           { required: true, message: "运营主体统一社会信用代码不能为空", trigger: "blur" }
669         ],
670         mainbody: [
671           { required: true, message: "运营主体不能为空", trigger: "blur" }
672         ],
673         mainbodyHeader: [
674           { required: true, message: "运营公司总公司不能为空", trigger: "change" }
675         ],
676         mainbodyType: [
677           { required: true, message: "运营主体类型不能为空", trigger: "change" }
678         ],
679         productionTime: [
680           { required: true, message: "投产时间不能为空", trigger: "blur" }
681         ],
682         dcBuildingLevel: [
683           { required: true, message: "建设等级/标准不能为空", trigger: "blur" }
684         ],
685         dcAllArea: [
686           { required: true, message: "数据中心总设计面积不能为空", trigger: "blur" }
687         ],
688         dcItArea: [
689           { required: true, message: "IT机房面积不能为空", trigger: "blur" }
690         ],
691         buildingType: [
692           { required: true, message: "建筑形式不能为空", trigger: "change" }
693         ],
694         cityElectricityType: [
695           { required: true, message: "市电引入方式不能为空", trigger: "change" }
696         ],
697         cityElectricityTypeOther: [
698           { required: true, message: "市电引入方式,其它不能为空", trigger: "blur" }
699         ],
700         powerDistribution: [
701           { required: true, message: "总配电量(KWA)不能为空", trigger: "blur" }
702         ],
703         electricityType: [
704           { required: true, message: "用电类型不能为空", trigger: "change" }
705         ],
706         electricityTypeOther: [
707           { required: true, message: "用电类型_其它不能为空", trigger: "blur" }
708         ],
709         pueDesign: [
710           { required: true, message: "设计PUE不能为空", trigger: "blur" }
711         ],
712         waterDesign: [
713           { required: true, message: "设计全年用水量不能为空", trigger: "blur" }
714         ],
715         netLevel: [
716           { required: true, message: "接入网络级别不能为空", trigger: "change" }
717         ],
718         netOperator: [
719           { required: true, message: "链接的运营商不能为空", trigger: "change" }
720         ],
721         netOperatorOther: [
722           { required: true, message: "链接的运营商_其它不能为空", trigger: "blur" }
723         ],
724         airRefrigerationType: [
725           { required: true, message: "制冷方式不能为空", trigger: "change" }
726         ],
727         airRefrigerationTypeOther: [
728           { required: true, message: "制冷方式_其它不能为空", trigger: "blur" }
729         ],
730         createUser: [
731           { required: true, message: "创建者不能为空", trigger: "blur" }
732         ],
733       }
734     };
735   },
736   created() {
737     this.getList();
738   },
739   methods: {
740     /** 查询在用数据中心列表 */
741     getList() {
742       this.loading = true;
743       listUseBase(this.queryParams).then(response => {
744         this.useBaseList = response.rows;
745         this.total = response.total;
746         this.loading = false;
747       });
748     },
749     // 取消按钮
750     cancel() {
751       this.open = false;
752       this.reset();
753     },
754     // 表单重置
755     reset() {
756       this.form = {
757         id: null,
758         buildId: null,
759         idcNo: null,
760         type: null,
761         businessType: null,
762         frameNum: null,
763         framePower: null,
764         name: null,
765         province: null,
766         city: null,
767         area: null,
768         address: null,
769         addressExt: null,
770         building: null,
771         creditCode: null,
772         mainbody: null,
773         mainbodyHeader: null,
774         mainbodyType: null,
775         investment: null,
776         productionTime: null,
777         dcBuildingLevel: null,
778         dcAllArea: null,
779         dcItArea: null,
780         buildingType: null,
781         cityElectricityType: null,
782         cityElectricityTypeOther: null,
783         powerDistribution: null,
784         electricityType: null,
785         electricityTypeOther: null,
786         pueDesign: null,
787         waterDesign: null,
788         netLevel: null,
789         netOperator: null,
790         netOperatorOther: null,
791         airRefrigerationType: null,
792         airRefrigerationTypeOther: null,
793         sort: null,
794         message: null,
795         state: null,
796         isEnable: null,
797         createUser: null,
798         createTime: null,
799         updateUser: null,
800         updateTime: null,
801         remark: null
802       };
803       this.resetForm("form");
804     },
805     /** 搜索按钮操作 */
806     handleQuery() {
807       this.queryParams.pageNum = 1;
808       this.getList();
809     },
810     /** 重置按钮操作 */
811     resetQuery() {
812       this.resetForm("queryForm");
813       this.handleQuery();
814     },
815     // 多选框选中数据
816     handleSelectionChange(selection) {
817       this.ids = selection.map(item => item.id)
818       this.single = selection.length!==1
819       this.multiple = !selection.length
820     },
821     /** 新增按钮操作 */
822     handleAdd() {
823       this.reset();
824       this.open = true;
825       this.title = "添加在用数据中心";
826     },
827     /** 修改按钮操作 */
828     handleUpdate(row) {
829       this.reset();
830       const id = row.id || this.ids
831       getUseBase(id).then(response => {
832         this.form = response.data;
833         this.open = true;
834         this.title = "修改在用数据中心";
835       });
836     },
837     /** 提交按钮 */
838     submitForm() {
839       this.$refs["form"].validate(valid => {
840         if (valid) {
841           if (this.form.id != null) {
842             updateUseBase(this.form).then(response => {
843               this.$modal.msgSuccess("修改成功");
844               this.open = false;
845               this.getList();
846             });
847           } else {
848             addUseBase(this.form).then(response => {
849               this.$modal.msgSuccess("新增成功");
850               this.open = false;
851               this.getList();
852             });
853           }
854         }
855       });
856     },
857     /** 删除按钮操作 */
858     handleDelete(row) {
859       const ids = row.id || this.ids;
860       this.$modal.confirm('是否确认删除在用数据中心编号为"' + ids + '"的数据项?').then(function() {
861         return delUseBase(ids);
862       }).then(() => {
863         this.getList();
864         this.$modal.msgSuccess("删除成功");
865       }).catch(() => {});
866     },
867     /** 导出按钮操作 */
868     handleExport() {
869       this.download('bis/useBase/export', {
870         ...this.queryParams
871       }, `useBase_${new Date().getTime()}.xlsx`)
872     }
873   }
874 };
875 </script>