a35140fc278c4bd6aede6aacfe686bd9a29b53f7.svn-base 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212
  1. <template>
  2. <el-container style="height:520px;" class="qsjgqk">
  3. <el-main style="border:1px solid #d5d5ff;margin-left:5px;padding:0px;">
  4. <el-card class="box-card">
  5. <el-row style="padding: 10px 20px;">
  6. <el-col :span="24">
  7. <el-button style="float: right;" type="primary" @click="addQsk" icon="el-icon-plus">添加
  8. </el-button>
  9. </el-col>
  10. </el-row>
  11. <el-table
  12. v-loading="loading"
  13. border
  14. ref="multipleTable"
  15. :data="tableDataList"
  16. :height="tableHeight"
  17. tooltip-effect="dark"
  18. style="width: 100%">
  19. <el-table-column align="center" type="index" label="序号" min-width="40">
  20. <template slot-scope="scope">
  21. {{ (pageNum - 1) * pageSize + (scope.$index + 1) }}
  22. </template>
  23. </el-table-column>
  24. <el-table-column
  25. header-align="center"
  26. align="center"
  27. min-width="100"
  28. prop="wintName"
  29. label="取水口名称"
  30. show-overflow-tooltip>
  31. </el-table-column>
  32. <el-table-column
  33. align="center"
  34. prop
  35. min-width="100"
  36. label="操作"
  37. show-overflow-tooltip
  38. fixed="right">
  39. <template slot-scope="scope">
  40. <el-button icon="el-icon-edit" type="text" @click="editTianBao(scope.row)"></el-button>
  41. <el-button icon="el-icon-delete" type="text" @click="removeRow(scope.row.id)"></el-button>
  42. </template>
  43. </el-table-column>
  44. </el-table>
  45. <!-- 分页 -->
  46. <div>
  47. <el-pagination
  48. class="paginationCenter"
  49. background
  50. @size-change="handleSizeChange"
  51. @current-change="handleCurrentChange"
  52. :current-page.sync="pageNum"
  53. :page-sizes="[10, 20, 50, 100]"
  54. :page-size="pageSize"
  55. layout="total, sizes, prev, pager, next, jumper"
  56. :total="total">
  57. </el-pagination>
  58. </div>
  59. </el-card>
  60. </el-main>
  61. <!--添加取水口-->
  62. <editDcdxInfo v-if="qskVisible" :currentObjectRgstrId="currentObjectRgstrId"
  63. @addSuccess="DuiXiangAddSuccessHandler"
  64. @closeDuChaDuiXiangDialog="closeDuChaDuiXiangDialog"></editDcdxInfo>
  65. <!--填报-->
  66. <el-dialog
  67. class="outerDialog custom_dialog"
  68. :title="rowData.wintName"
  69. width="60%"
  70. :visible.sync="editTianBaoVisible"
  71. :close-on-click-modal="false"
  72. :modal-append-to-body="true"
  73. :append-to-body="true">
  74. <waterIntakeSupervision v-if="editTianBaoVisible" :rowData="rowData" :szRuls="szRuls" @closeDialog="closeDialog"
  75. :currentObjectRgstrId="currentObjectRgstrId"
  76. :currentObjectName="currentObjectName"
  77. :currentObjectId="currentObjectId"></waterIntakeSupervision>
  78. </el-dialog>
  79. </el-container>
  80. </template>
  81. <script>
  82. import request from "@util/gw_ajax_request.js"
  83. export default {
  84. props: ['currentObjectId', 'currentObjectName', 'currentObjectRgstrId', 'szRuls'],
  85. data() {
  86. return {
  87. tableHeight: 400,
  88. tableDataList: [],
  89. loading: false,
  90. currentPage: 1,
  91. pageSize: 10,
  92. pageNum: 1,
  93. total: 0,
  94. addForm: {},
  95. dialogProjectVisible: false,
  96. qskVisible: false,
  97. editTianBaoVisible: false,
  98. rowData: {}
  99. }
  100. },
  101. components: {
  102. editDcdxInfo: resolve => {
  103. require(['./editDcdxInfo.vue'], resolve)
  104. },//添加取水口
  105. waterIntakeSupervision: resolve => {
  106. require(['./waterIntakeSupervision.vue'], resolve)
  107. }
  108. },
  109. computed: {
  110. persId() {
  111. return localStorage.getItem('userid') ? localStorage.getItem('userid') : ''
  112. }
  113. },
  114. mounted() {
  115. this.getTableDataList();
  116. },
  117. methods: {
  118. //用水户添加
  119. addQsk() {
  120. for (var obj in this.addForm) {
  121. this.addForm[obj] = '';
  122. }
  123. this.qskVisible = true;
  124. },
  125. handleSizeChange(val) {
  126. this.pageSize = val;
  127. this.getTableDataList();
  128. },
  129. handleCurrentChange(val) {
  130. this.pageNum = val;
  131. this.getTableDataList();
  132. },
  133. getTableDataList() {
  134. let _self = this;
  135. let obj = {
  136. "rgstrId": _self.currentObjectRgstrId,
  137. "pageSize": _self.pageSize,
  138. "pageNum": _self.pageNum
  139. }
  140. request.post(`/bis/insp/wrm/rgstr/wint/page`, obj).then(res => {
  141. if (res.success) {
  142. _self.tableDataList = res.data.list;
  143. _self.total = res.data.total;
  144. } else {
  145. this.$message.error(res.message)
  146. }
  147. });
  148. },
  149. editTianBao(row) {
  150. this.rowData = row;
  151. this.editTianBaoVisible = true;
  152. },
  153. removeRow(rowId) {
  154. this.$confirm("确认删除该数据吗?", "提示", {
  155. confirmButtonText: "确定",
  156. cancelButtonText: "取消",
  157. type: "warning"
  158. }).then(() => {
  159. request.get(`/bis/insp/wrm/rgstr/wint/del/${rowId}`).then(res => {
  160. if (res.success) {
  161. this.$message({
  162. type: "success",
  163. message: "删除成功!"
  164. });
  165. this.getTableDataList(); //删除之后立刻重新拉取数据
  166. } else {
  167. this.$message({
  168. type: "error",
  169. message: res.message
  170. });
  171. }
  172. });
  173. });
  174. },
  175. DuiXiangAddSuccessHandler: function () {
  176. this.qskVisible = false;
  177. this.getTableDataList();
  178. },
  179. closeDuChaDuiXiangDialog() {
  180. this.qskVisible = false;
  181. },
  182. closeDialog(val) {
  183. if(val == "success") {
  184. this.editTianBaoVisible = false;
  185. this.getTableDataList();
  186. }
  187. },
  188. }
  189. }
  190. </script>
  191. <style lang="scss">
  192. .qsjgqk {
  193. .el-icon-circle-plus {
  194. margin-left: 20px;
  195. color: #00bbff;
  196. font-size: 18px;
  197. line-height: 12px;
  198. vertical-align: top;
  199. cursor: pointer;
  200. }
  201. .el-card__body {
  202. padding: 0 0 20px;
  203. }
  204. }
  205. </style>