dontaipingjia.vue 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196
  1. <template>
  2. <div class="dtpj-index">
  3. <el-form ref="dtpjFormRef" :model="dtpjForm" :inline="true" size="small" class="dtpj-form">
  4. <el-form-item label="时间选择:">
  5. <el-select v-model="dtpjForm.timeType" placeholder="请选择..." style="width: 60px;">
  6. <el-option
  7. v-for="(item) in timeTypeList"
  8. :key="item.value"
  9. :label="item.label"
  10. :value="item.value"
  11. />
  12. </el-select>
  13. </el-form-item>
  14. <el-form-item label="月份:" v-if="dtpjForm.timeType == 'month'">
  15. <el-date-picker
  16. v-model="dtpjForm.monthrange"
  17. value-format="YYYY-DD"
  18. type="monthrange"
  19. range-separator="至"
  20. start-placeholder="开始日期"
  21. end-placeholder="结束日期"
  22. />
  23. </el-form-item>
  24. <el-form-item label="年份:" v-if="dtpjForm.timeType == 'year'">
  25. <el-col :span="10">
  26. <el-date-picker
  27. v-model="dtpjForm.startYear"
  28. value-format="YYYY"
  29. type="year"
  30. placeholder="开始时间"
  31. style="width: 90px"
  32. />
  33. </el-col>
  34. <el-col class="text-center" :span="1" style="margin: 0 0.5rem">-</el-col>
  35. <el-col :span="10">
  36. <el-date-picker
  37. v-model="dtpjForm.endYear"
  38. value-format="YYYY"
  39. type="year"
  40. placeholder="结束时间"
  41. style="width: 90px"
  42. />
  43. </el-col>
  44. </el-form-item>
  45. <el-form-item label="流域:" style="width: 10%;">
  46. <el-select v-model="dtpjForm.liuyu" placeholder="请选择...">
  47. <el-option
  48. v-for="(item) in liuYuList"
  49. :key="item.value"
  50. :label="item.label"
  51. :value="item.value"
  52. />
  53. </el-select>
  54. </el-form-item>
  55. <el-form-item label="省份:" style="width: 10%;">
  56. <el-select v-model="dtpjForm.province" placeholder="请选择...">
  57. <el-option
  58. v-for="(item) in provinceList"
  59. :key="item.value"
  60. :label="item.label"
  61. :value="item.value"
  62. />
  63. </el-select>
  64. </el-form-item>
  65. <el-form-item label="水功能区:" style="width: 10%;">
  66. <el-select v-model="dtpjForm.waterFunc" placeholder="请选择...">
  67. <el-option
  68. v-for="(item) in waterFuncList"
  69. :key="item.value"
  70. :label="item.label"
  71. :value="item.value"
  72. />
  73. </el-select>
  74. </el-form-item>
  75. <el-form-item label="评价方法:" style="width: 10%;">
  76. <el-select v-model="dtpjForm.evaluation" placeholder="请选择...">
  77. <el-option
  78. v-for="(item) in evaluationList"
  79. :key="item.value"
  80. :label="item.label"
  81. :value="item.value"
  82. />
  83. </el-select>
  84. </el-form-item>
  85. <el-form-item label="关键字:" style="width: 8%;">
  86. <el-input v-model="dtpjForm.keyword" placeholder="关键字"/>
  87. </el-form-item>
  88. </el-form>
  89. <div class="dtpj-content">
  90. <div class="content-btns">
  91. <el-button type="primary" size="small" @click="handleRefresh">刷新</el-button>
  92. <el-button type="primary" size="small" @click="handleSearch">查询</el-button>
  93. <el-button type="primary" size="small" @click="handleReset">重置</el-button>
  94. <el-button type="primary" size="small" @click="handleAutoEva">自动评价</el-button>
  95. </div>
  96. <el-table
  97. :data="dtpjData"
  98. border
  99. stripe
  100. style="width: 100%;"
  101. :height="heightAll"
  102. :header-cell-style="{
  103. background: '#d2eafa !important',
  104. fontSize: '12px'
  105. }"
  106. >
  107. <el-table-column type="index" width="50"/>
  108. <el-table-column prop="tm" label="名称" width="220"/>
  109. <el-table-column prop="tm" label="所属流域" align="center" width="120"/>
  110. <el-table-column prop="tm" label="起始断面" width="120"/>
  111. <el-table-column prop="tm" label="终止断面" width="120"/>
  112. <el-table-column prop="tm" label="水质目标" align="center" width="120"/>
  113. <el-table-column prop="tm" label="评价时段" align="center" width="120"/>
  114. <el-table-column prop="tm" label="评价日期" align="center" width="120"/>
  115. <el-table-column prop="tm" label="评价结果" align="center" width="120"/>
  116. <el-table-column prop="tm" label="达标情况" align="center" width="120"/>
  117. <el-table-column prop="tm" label="超标项目及倍数"/>
  118. </el-table>
  119. <el-pagination
  120. v-model:current-page="pagination.currentPage"
  121. v-model:page-size="pagination.pageSize"
  122. :size="pagination.size"
  123. :total="pagination.totalCount"
  124. :disabled=false
  125. background
  126. layout="total, prev, pager, next, jumper"
  127. @size-change="handleSizeChange"
  128. @current-change="handleCurrentChange"
  129. />
  130. </div>
  131. </div>
  132. </template>
  133. <script setup>
  134. const dtpjForm = ref({
  135. timeType:"month",
  136. monthrange:[],
  137. startYear:"",
  138. endYear:"",
  139. liuyu:"",
  140. province:"",
  141. evaluation:"",
  142. keyword:""
  143. });
  144. const timeTypeList =[
  145. {label:"月",value:"month"},
  146. {label:"年",value:"year"},
  147. ];
  148. const liuYuList = ref([]);
  149. const provinceList = ref([]);
  150. const waterFuncList = ref([]);
  151. const evaluationList = ref([]);
  152. const heightAll = 82 + 'vh';
  153. const dtpjData = ref([]);
  154. const pagination = ref({
  155. currentPage: 1,
  156. pageSize: 10,
  157. totalCount: 0,
  158. });
  159. const handleRefresh = () => {};
  160. const handleSearch = () => {};
  161. const handleReset = () => {};
  162. const handleAutoEva = () => {};
  163. const handleSizeChange = (val) => {
  164. pagination.value.pageSize = val;
  165. }
  166. const handleCurrentChange = (val) => {
  167. pagination.value.currentPage = val;
  168. }
  169. </script>
  170. <style scoped lang="scss">
  171. .dtpj-index{
  172. width: 99%;
  173. height: 100%;
  174. margin: auto;
  175. .dtpj-form{
  176. width: 100%;
  177. padding: 5px 0;
  178. .el-form-item{
  179. margin-bottom: 0 !important;
  180. }
  181. }
  182. .dtpj-content{
  183. width: 100%;
  184. border: 1px solid #DCDFE6;
  185. .content-btns{
  186. width: 99%;
  187. margin: 5px auto;
  188. position: relative;
  189. }
  190. }
  191. }
  192. </style>