3461dfadb8fc2b215f9fcba4e843dc7378223202.svn-base 8.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237
  1. <template>
  2. <el-row>
  3. <el-col :span="24">
  4. <el-card class="ducha_form" :body-style="{ 'padding': '20px 5px' }" :style="formStyle">
  5. <el-form :inline="true" :model="formInline" class="sh-form-inline">
  6. <el-form-item label="选择年度">
  7. <el-select v-model="formInline.year" clearable placeholder="请选择">
  8. <el-option
  9. v-for="item in yearList"
  10. :label="item.year"
  11. :value="item.year"
  12. :key="item.id"
  13. ></el-option>
  14. </el-select>
  15. </el-form-item>
  16. <el-form-item style="margin: 0">
  17. <el-button type="primary" @click="onSearch" icon="el-icon-search">查询</el-button>
  18. </el-form-item>
  19. <!-- 测评报表弹窗 -->
  20. <el-dialog class="customs_dialog"
  21. :visible.sync="dialogVisible"
  22. :before-close="handleClose" title="稽查专家现场工作情况考核表">
  23. <jcMarkYearZj :groupId="groupId" width="100%" height="100px" v-if="showReport"></jcMarkYearZj>
  24. <span slot="footer" class="dialog-footer"></span>
  25. </el-dialog>
  26. </el-form>
  27. </el-card>
  28. <el-card class="ducha_table" :body-style="{ 'padding': '0 5px' }">
  29. <el-main style="margin: 0 -5px;padding: 0;width:100%;">
  30. <el-table :data="tableList" style="width: 100%"
  31. ref="singleTable"
  32. v-loading="tableLoading"
  33. border
  34. :height="dxdcMainHeight+'px'"
  35. :render-header="renderHeader"
  36. >
  37. <el-table-column type="index" min-width="100" :index="getIndex" label="编号" show-overflow-tooltip align="center"></el-table-column>
  38. <el-table-column prop="year" label="年度" min-width="100" show-overflow-tooltip align="center"></el-table-column>
  39. <el-table-column prop="batch" label="批次" min-width="100" show-overflow-tooltip align="center"></el-table-column>
  40. <el-table-column prop="groupNm" label="稽查组" min-width="100" show-overflow-tooltip align="center"></el-table-column>
  41. <el-table-column prop="enTm" label="测评截止时间" min-width="130" show-overflow-tooltip align="center"></el-table-column>
  42. <el-table-column prop="dataStat" label="测评状态" min-min-width="130" show-overflow-tooltip align="center"></el-table-column>
  43. <el-table-column label="操作" align="center">
  44. <template slot-scope="scope">
  45. <el-button
  46. size="mini"
  47. @click="openReportDialog(scope.$index, scope.row)">测评</el-button>
  48. <el-button
  49. size="mini"
  50. type="danger"
  51. @click="submitHandler(scope.$index, scope.row)">提交</el-button>
  52. </template>
  53. </el-table-column>
  54. </el-table>
  55. </el-main>
  56. <el-footer class="el-footer-style">
  57. <el-pagination
  58. style="text-align:center;"
  59. small
  60. background
  61. :current-page.sync="page.pageNum"
  62. :page-size="page.pageSize"
  63. :page-sizes="[10, 20, 30, 40, 50, 100]"
  64. layout="sizes, total, prev, pager, next,jumper"
  65. :total="showResultCount"
  66. @current-change="pageIndexChange"
  67. @size-change="handleSizeChange"
  68. ></el-pagination>
  69. </el-footer>
  70. </el-card>
  71. </el-col>
  72. </el-row>
  73. </template>
  74. <script>
  75. import request from '@util/gw_ajax_request.js';
  76. import { exportModel } from "@util/gw_exportModel";
  77. import jcMarkYearZj from "./jc_mark_year_zj.vue";
  78. export default {
  79. name: "piciceping",
  80. components:{
  81. jcMarkYearZj:jcMarkYearZj
  82. },
  83. data() {
  84. return {
  85. tableLoading:true,
  86. tableList: [],
  87. page:{
  88. pageNum: 1,
  89. pageSize: 10,
  90. },
  91. showResultCount: 0,
  92. autoSort: '请选择',
  93. autoInput: '请输入',
  94. formInline: {
  95. year: ''
  96. },
  97. formStyle: {
  98. width: '100%',
  99. height: '70px',
  100. },
  101. dxdcMainHeight: window.innerHeight - 197,
  102. dxdcAsideHeight: window.innerHeight - 90,
  103. dialogVisible: false,
  104. yearList: [],
  105. showReport: false,
  106. groupId:'',
  107. }
  108. },
  109. mounted() {
  110. this.getDataList();
  111. this.getYearList(); // 获取稽查年度列表
  112. },
  113. activated(){
  114. this.getDataList()
  115. },
  116. methods: {
  117. empty(){
  118. this.formInline = {};
  119. },
  120. formatSttp(row,column){
  121. let sttp = row.sttp;
  122. let _sttp = '';
  123. switch (sttp) {
  124. case 'NATIONAL' : _sttp = '国家级';break;
  125. case 'PROVAUTO' : _sttp = '省级自动';break;
  126. case 'PROVHAND' : _sttp = '省级人工';break;
  127. case 'PROV' : _sttp = '省级监测站(未知手动自动)';break;
  128. }
  129. return _sttp;
  130. },
  131. provTreeSelectChangeHandler: function(params) {
  132. this.formInline.adcd = params.likeCode;
  133. this.getDataList();
  134. },
  135. getIndex(index){
  136. return (index + this.page.pageSize * (this.page.pageNum - 1)) + 1
  137. },
  138. onSearch(){
  139. this.getDataList();
  140. },
  141. pageIndexChange(val){
  142. this.page.pageNum = val;
  143. this.getDataList();
  144. },
  145. handleSizeChange(val){
  146. this.page.pageSize = val;
  147. this.getDataList();
  148. },
  149. renderHeader(){
  150. },
  151. getDataList(){
  152. let params = {
  153. 'pageSize': this.page.pageSize,
  154. 'pageNum': this.page.pageNum,
  155. 'year': this.formInline.year,
  156. };
  157. request.post('/tac/insp/year/batch/group/page',params).then((res)=>{
  158. let data = res.data
  159. this.tableList = data.list
  160. this.showResultCount = data.total
  161. this.tableLoading = false
  162. })
  163. },
  164. openReportDialog(index, row){
  165. this.groupId = row.id;
  166. this.dialogVisible = true
  167. this.showReport = true
  168. },
  169. closeReportDialog(){
  170. this.dialogVisible = false
  171. this.showReport = false
  172. },
  173. handleClose(){
  174. this.dialogVisible = false
  175. this.showReport = false
  176. },
  177. getYearList() {
  178. request.post(`/tac/insp/year/list`,{}).then(res => {
  179. this.yearList = res.data;
  180. });
  181. },
  182. submitHandler(index, row) {
  183. console.log(index, row);
  184. }
  185. },
  186. computed: {
  187. },
  188. watch: {
  189. },
  190. }
  191. </script>
  192. <style>
  193. .el-table .warning-row {
  194. background: oldlace;
  195. }
  196. .el-table .success-row {
  197. background: #f0f9eb;
  198. }
  199. .ducha_form .el-input {
  200. width: 200px !important;
  201. }
  202. .el-footer-style {
  203. text-align: center;
  204. width:100%;
  205. }
  206. .customs_dialog .el-dialog{
  207. width: 80% !important;
  208. }
  209. .customs_dialog .el-dialog__body {
  210. padding: 30px 20px;
  211. color: #606266;
  212. font-size: 14px;
  213. height: 60vh;
  214. overflow: hidden;
  215. }
  216. </style>