| | |
| | | <template> |
| | | <!-- 已完成的不修改需将 finish1 改成 finish --> |
| | | <div> |
| | | <div align="left"> |
| | | |
| | | <div class="btn-line"> |
| | | <!-- <el-button type="primary" @click="addProject">新建项目</el-button> --> |
| | | <el-button type="primary" v-if="editShow" @click="editProject">编辑项目</el-button> |
| | |
| | | <el-table highlight-current-row |
| | | ref="data_table" |
| | | @current-change="tableChange" |
| | | @sort-change="sortChange" |
| | | v-loading="loading_table" |
| | | size="small" |
| | | :data="tableData" |
| | | :header-cell-style="{'width': '100%', 'text-align': 'center'}" |
| | | :row-class-name="tableRowClassName"> |
| | | <el-table-column type="index" width="50"> </el-table-column> |
| | | <el-table-column prop="code" label="项目号" width="130"> |
| | | <el-table-column prop="code" label="项目号" width="130" sortable="custom"> |
| | | </el-table-column> |
| | | <el-table-column prop="name" label="项目名称" width="120" show-overflow-tooltip> |
| | | <el-table-column prop="name" label="项目名称" width="120" sortable="custom" show-overflow-tooltip> |
| | | </el-table-column> |
| | | <el-table-column prop="status" label="当前状态" width="100" align="center" :formatter="status_"> |
| | | <el-table-column prop="status" label="当前状态" width="100" sortable="custom" align="center" :formatter="status_"> |
| | | </el-table-column> |
| | | <el-table-column prop="totalCnt" label="服务项目数" width="100" align="center"> |
| | | <el-table-column prop="totalCnt" label="服务项目数" width="120" align="center"> |
| | | </el-table-column> |
| | | <el-table-column prop="finishCnt" label="已完成项目" width="100" align="center"> |
| | | <el-table-column prop="finishCnt" label="已完成项目" width="120" align="center"> |
| | | </el-table-column> |
| | | <el-table-column prop="delayCnt" label="延期项目" width="100" align="center"> |
| | | <el-table-column prop="delayCnt" label="延期项目" width="100" align="center"> |
| | | </el-table-column> |
| | | <el-table-column prop="startTime" label="开始时间" width="100" align="center" :formatter="dateFormat_"> |
| | | <el-table-column prop="startTime" label="开始时间" width="100" sortable="custom" align="center" :formatter="dateFormat_"> |
| | | </el-table-column> |
| | | <el-table-column prop="endTime" label="结束时间" width="100" align="center" :formatter="dateFormat_" > |
| | | <el-table-column prop="endTime" label="结束时间" width="100" sortable="custom" align="center" :formatter="dateFormat_" > |
| | | </el-table-column> |
| | | <el-table-column prop="desc" label="项目描述" show-overflow-tooltip></el-table-column> |
| | | <el-table-column label="操作" align="center" width="300"> |
| | |
| | | "Randomised controlled trial (RCT)", |
| | | "Other" |
| | | ], |
| | | |
| | | orderBy: "", |
| | | } |
| | | }, |
| | | mounted() { //组件配置后,页面显示前。用于加载数据 |
| | |
| | | this.getData(); |
| | | }, |
| | | methods: { |
| | | sortChange(column, prop, order) { |
| | | this.orderBy = ""; |
| | | if (column.prop && column.order) { |
| | | this.orderBy = this.toLine(column.prop); |
| | | if (column.order == "descending") { |
| | | this.orderBy += " desc"; |
| | | } |
| | | } |
| | | |
| | | this.query_(); |
| | | }, |
| | | |
| | | // 下划线转换驼峰 |
| | | toHump(name) { |
| | | return name.replace(/\_(\w)/g, function(all, letter){ |
| | | return letter.toUpperCase(); |
| | | }); |
| | | }, |
| | | // 驼峰转换下划线 |
| | | toLine(name) { |
| | | return name.replace(/([A-Z])/g,"_$1").toLowerCase(); |
| | | }, |
| | | |
| | | download() { |
| | | if (!this.selected) { |
| | | this.$message({message:'请选择下载条目', type: 'warning'}); |
| | |
| | | params.type = query.type; |
| | | } |
| | | |
| | | if(this.orderBy) { |
| | | params.orderBy = this.orderBy; |
| | | } |
| | | |
| | | this.$axios.get(url, { |
| | | params |
| | | }) |
| | |
| | | this.rowData = {}; |
| | | }, |
| | | editProject() { |
| | | if(!this.selected || this.selected.status == "finish"){ |
| | | |
| | | //已完成的不修改需将 finish1 改成 finish |
| | | // if(!this.selected || this.selected.status == "finish"){ |
| | | if(!this.selected || this.selected.status == "finish1"){ |
| | | this.$message({message:'请选中一条未完成的项目', type: 'warning'}); |
| | | }else { |
| | | this.rowData = { |