227efe33c12eb66ec3cc4cd5c3c2f218c1e4181a.svn-base 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172
  1. <template>
  2. <div id="mainSz" v-loading='exportLoading'>
  3. <el-row>
  4. <el-col :span="24">
  5. <div class="grid-content bg-purple-light">
  6. <el-form
  7. :inline="true"
  8. size="mini"
  9. class="demo-form-inline"
  10. style="padding: 5px;"
  11. >
  12. <el-form-item label="水闸名称">
  13. <el-input v-model="nm" placeholder="水闸名称" clearable @keydown.enter.native="searchByName"></el-input>
  14. </el-form-item>
  15. <el-form-item label="工程规模">
  16. <el-select v-model="engScale" clearable placeholder="工程规模">
  17. <el-option
  18. v-for="item in engScales"
  19. :key="item.id"
  20. :label="item.name"
  21. :value="item.id"
  22. ></el-option>
  23. </el-select>
  24. </el-form-item>
  25. &nbsp;&nbsp;&nbsp;<el-form-item>
  26. <el-button @click="searchByName" size="mini" type="primary">查询</el-button>
  27. <el-button @click="exPort" size="mini" type="success">导出</el-button>
  28. </el-form-item>
  29. &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
  30. </el-form>
  31. <div style="padding:0px;">
  32. <el-table :data="tableData_szList" height="530" border stripe style="width: 100%">
  33. <el-table-column type="index" width="50" label="序号" align="center"
  34. :index="indexMethod_sz">
  35. </el-table-column>
  36. <el-table-column prop="nm" label="水闸名称" min-width="150" align="center" show-overflow-tooltip></el-table-column>
  37. <el-table-column prop="engScal" label="工程规模" :formatter="formatEngScal" min-width="100"></el-table-column>
  38. <el-table-column prop="gateType" label="水闸类型" :formatter="formatGateType" min-width="100"></el-table-column>
  39. <el-table-column prop="location" show-overflow-tooltip min-width="200" label="水闸所在位置"></el-table-column>
  40. <el-table-column fixed="right" label="操作" min-width="200" align="center">
  41. <template slot-scope="scope">
  42. <el-button type="text" size="small" @click="szInfo(scope.row,'location')">定位</el-button>
  43. <el-button type="text" size="small" @click="szInfo(scope.row,'baseInfo')">基础信息</el-button>
  44. <el-button type="text" size="small" @click="szInfo(scope.row,'dcInfo')">督查信息</el-button>
  45. </template>
  46. </el-table-column>
  47. </el-table>
  48. <div class="block" style='text-align: center;'>
  49. <el-pagination background @size-change="handleSizeChange_sz"
  50. @current-change="handleCurrentChange_sz" :page-sizes="[10,50, 100, 200]"
  51. :page-size="15" layout="total,sizes, prev, pager, next"
  52. :total="recordTotal_sz">
  53. </el-pagination>
  54. </div>
  55. </div>
  56. </div>
  57. </el-col>
  58. </el-row>
  59. </div>
  60. </template>
  61. <script>
  62. import request from '../../../utils/gw_ajax_request'
  63. import {exportModel} from "@util/gw_exportModel";
  64. export default {
  65. name: "szInfo",
  66. props: ["currentAdCode"],
  67. data() {
  68. return {
  69. model_sz_name:'',
  70. tableData_szList:[],
  71. pageSize_sz: 10,
  72. pageIndex_sz: 1,
  73. recordTotal_sz: 0,
  74. engScales: [
  75. { id: "1", name: "大型" },
  76. { id: "2", name: "中型" },
  77. { id: "3", name: "小型" },
  78. ],
  79. engScale: "",
  80. adName:'',
  81. nm:'',
  82. dcType:'',
  83. exportLoading:false,
  84. }
  85. },
  86. mounted(){
  87. this.loadTableSz();
  88. },
  89. methods:{
  90. async exPort(){
  91. let _self = this;
  92. this.exportLoading = true;
  93. let data = {};
  94. data.rsName = _self.nm;
  95. data.presId = localStorage.getItem("userid"),
  96. data.engScal = _self.engScale;
  97. data.adCode = _self.currentAdCode;
  98. data.isExport = '1';
  99. let datas = JSON.stringify(data);
  100. let url = `/pdcApi/att/waga/rgstr/list/page`;
  101. let downloadName = "督查水闸.xls";
  102. let type = "post";
  103. let result = await exportModel(type,url,downloadName,datas);
  104. this.exportLoading = result;
  105. },
  106. loadTableSz() {
  107. request.post(`/att/waga/rgstr/list/page`,
  108. {
  109. pageNum: this.pageIndex_sz,
  110. pageSize: this.pageSize_sz,
  111. presId: localStorage.getItem("userid"),
  112. rsName: this.nm,
  113. engScal: this.engScale,
  114. adCode: this.currentAdCode
  115. })
  116. .then((res) => {
  117. if (res.success) {
  118. var obj = res.data;
  119. this.tableData_szList = obj.list;
  120. this.recordTotal_sz = obj.total;
  121. }
  122. })
  123. },
  124. indexMethod_sz(index) {
  125. return (index + 1) + this.pageSize_sz * (this.pageIndex_sz - 1)
  126. },
  127. // 查询
  128. searchByName(){
  129. this.loadTableSz();
  130. },
  131. handleSizeChange_sz: function (pageSize) {
  132. this.pageSize_sz = pageSize;
  133. this.loadTableSz();
  134. },
  135. handleCurrentChange_sz: function (pageNum) {
  136. this.pageIndex_sz = pageNum;
  137. this.loadTableSz();
  138. },
  139. szInfo(row,info){
  140. this.$emit('szInfo',row,info)
  141. },
  142. formatGateType:function(row, column){
  143. return row.gateType == "1" ? '分(泄)洪闸'
  144. : row.gateType == "2" ? '节制闸'
  145. : row.gateType == "3" ? '排(退)水闸'
  146. :row.gateType == "4" ? '引(进)水闸'
  147. :row.gateType == "5" ? '挡潮闸'
  148. :row.gateType == "6" ? '船闸':'其他'
  149. },
  150. formatEngScal:function(row, column){
  151. return row.engScal == "1" ? '大型'
  152. : row.engScal == "2" ? '中型'
  153. : row.engScal == "3" ? '小型':'其他'
  154. },
  155. },
  156. watch: {
  157. currentAdCode(){
  158. this.loadTableSz();
  159. }
  160. }
  161. }
  162. </script>
  163. <style>
  164. #mainSz .el-form-item--mini.el-form-item, .el-form-item--small.el-form-item {
  165. margin-bottom: 0;
  166. }
  167. </style>