前后端-更新医院上线状态
1、后端接口
1.1、编写控制层方法
@ApiOperation("更新医院上线状态")
@GetMapping("updateHospStatus/{id}/{status}")
public Result updateHospStatus(@PathVariable String id,
@PathVariable Integer status){
hospitalService.updateHospStatus(id,status);
return Result.ok();
}
1.2、编写业务层方法
接口:
//更新医院上线状态
void updateHospStatus(String id, Integer status);
实现类:
//更新医院上线状态
@Override
public void updateHospStatus(String id, Integer status) {
//首先根据id查询hospital信息
Hospital hospital = hospitalRepository.findById(id).get();
//修改医院上线状态
hospital.setStatus(status);
hospital.setUpdateTime(new Date());
hospitalRepository.save(hospital);
}
2、前端
2.1、在hospital中定义方法进行接口的调用
//更新医院上下线状态
updateHospStatus(id,status){
return request({
url:`/admin/hosp/hospital/updateHospStatus/${id}/${status}`,
method:'get'
})
}
2.2、在src/hospital/list.vue中编写页面组件
<el-table-column label="操作" width="230" align="center">
<template slot-scope="scope">
<!-- 如果scope.row.status == 1当前为上线状态,点击updateStatus时间,将其变成下线状态 -->
<el-button v-if="scope.row.status == 1" type="primary" size="mini" @click="updateStatus(scope.row.id, 0)">下线</el-button>
<!-- 如果scope.row.status == 0当前为下线状态,点击updateStatus时间,将其变成上线状态 -->
<el-button v-if="scope.row.status == 0" type="danger" size="mini" @click="updateStatus(scope.row.id, 1)">上线</el-button>
</template>
</el-table-column>
2.3、在src/hospital/list.vue编写方法
//更新医院上下线状态
updateStatus(id,status){
hospital.updateHospStatus(id,status)
.then(response=>{
this.fetchData(1)
})
},