ProjectList.vue 5.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153
  1. <script setup lang="ts">
  2. import {onMounted, reactive, ref} from "vue";
  3. const filterForm = reactive({
  4. name: '',
  5. type: '',
  6. process: '',
  7. step: '',
  8. time: ''
  9. })
  10. const inlineMode = ref(true)
  11. const list = [
  12. {
  13. name: "市妇幼保健医院新址配套市政道路工程",
  14. process: "预算",
  15. step: "(2) 收件员预审项目",
  16. submit: "0.00",
  17. increase: "0.00",
  18. decrease: "0.00",
  19. offset: "0.00",
  20. },
  21. {
  22. name: "梧桐路(石花西路)电力改迁工程",
  23. process: "结算",
  24. step: "(1) 建设单位报审项目",
  25. submit: "0.00",
  26. increase: "0.00",
  27. decrease: "0.00",
  28. offset: "0.00",
  29. },
  30. {
  31. name: "珠海城市职业技术学院机电学院、航空与海洋工程珠海城市职业技术学院机电学院、航空与海洋工程",
  32. process: "预算",
  33. step: "(1) 建设单位报审项目",
  34. submit: "0.00",
  35. increase: "0.00",
  36. decrease: "0.00",
  37. offset: "0.00",
  38. },
  39. {
  40. name: "珠海城市职业技术学院机电学院、航空与海洋工程",
  41. process: "预算",
  42. step: "(5) 主审人编制审核方案",
  43. submit: "0.00",
  44. increase: "0.00",
  45. decrease: "0.00",
  46. offset: "0.00",
  47. },
  48. {
  49. name: "珠海城市职业技术学院机电学院、航空与海洋工程",
  50. process: "预算",
  51. step: "(5) 主审人编制审核方案",
  52. submit: "0.00",
  53. increase: "0.00",
  54. decrease: "0.00",
  55. offset: "0.00",
  56. },
  57. ]
  58. list.push(...list)
  59. const projectList = reactive(list);
  60. </script>
  61. <template>
  62. <article class="project-list-page">
  63. <header class="header">
  64. <h1 class="title">项目列表</h1>
  65. <p class="desc">包括珠海市、中山市所有投资项目。</p>
  66. </header>
  67. <main class="main">
  68. <el-form inline :model="filterForm" :label-width="80">
  69. <el-form-item label="项目名称" class="name-item">
  70. <el-input v-model="filterForm.name" placeholder="请输入项目名称"></el-input>
  71. </el-form-item>
  72. <el-form-item label="工程类型" class="type-item" :class="{inline : inlineMode}">
  73. <el-select v-model="filterForm.type" placeholder="请选择工程类型">
  74. <el-option label="Zone one" value="shanghai"></el-option>
  75. <el-option label="Zone two" value="beijing"></el-option>
  76. </el-select>
  77. </el-form-item>
  78. <el-form-item label="项目流程" class="process-item" :class="{inline : inlineMode}">
  79. <el-select v-model="filterForm.process" placeholder="请选择项目流程">
  80. <el-option label="Zone one" value="shanghai"></el-option>
  81. <el-option label="Zone two" value="beijing"></el-option>
  82. </el-select>
  83. </el-form-item>
  84. <br v-if="!inlineMode"/>
  85. <el-form-item label="审核步骤" class="step-item" :class="{inline : inlineMode}">
  86. <el-select v-model="filterForm.step" placeholder="请选择审核步骤">
  87. <el-option label="Zone one" value="shanghai"></el-option>
  88. <el-option label="Zone two" value="beijing"></el-option>
  89. </el-select>
  90. </el-form-item>
  91. <el-form-item label="流程时间" class="time-item" :class="{inline : inlineMode}">
  92. <el-select v-model="filterForm.time" placeholder="请选择">
  93. <el-option label="Zone one" value="shanghai"></el-option>
  94. <el-option label="Zone two" value="beijing"></el-option>
  95. </el-select>
  96. </el-form-item>
  97. <el-form-item class="submit-item" :class="{inline : inlineMode}">
  98. <el-button type="primary" @click="onSubmit">查询</el-button>
  99. <el-button plain @click="onSubmit">重置</el-button>
  100. <el-button type="text" @click="inlineMode = !inlineMode">
  101. 展开
  102. <iconfont :class="inlineMode ? 'dsk-down' : 'dsk-up'"/>
  103. </el-button>
  104. </el-form-item>
  105. </el-form>
  106. <!-- 列表 -->
  107. <el-table :data="projectList">
  108. <el-table-column prop="name" label="项目名称" :min-width="300">
  109. <template #default="scope">
  110. <router-link to="/project" class="link">{{ scope.row.name }}</router-link>
  111. </template>
  112. </el-table-column>
  113. <el-table-column prop="process" label="项目流程" :min-width="80"/>
  114. <el-table-column prop="step" label="当前步骤" :min-width="140"/>
  115. <el-table-column
  116. prop="submit"
  117. label="送审金额(元)"
  118. align="center"
  119. :min-width="115"
  120. />
  121. <el-table-column
  122. prop="increase"
  123. label="审增金额(元)"
  124. align="center"
  125. :min-width="115"
  126. />
  127. <el-table-column
  128. prop="decrease"
  129. label="审减金额(元)"
  130. align="center"
  131. :min-width="115"
  132. />
  133. <el-table-column
  134. prop="offset"
  135. label="品迭金额(元)"
  136. align="center"
  137. :min-width="115"
  138. />
  139. <template #empty>
  140. <el-empty :image-size="120" description="暂无项目"/>
  141. </template>
  142. </el-table>
  143. <el-pagination background layout="total, prev, pager, next" :total="50"/>
  144. </main>
  145. </article>
  146. </template>
  147. <style lang="scss" src="./style.scss" scoped></style>