feat: 处方点评模块完整开发

后端:
- ReviewController: 新增7个API端点(plans/plan CRUD/records/ranking/auto-screen)
- ReviewAppService: 实现计划管理、记录查询、排名统计
- ReviewPlan/ReviewRecord: 补充deptName/targetCount/remark/unreasonableType等字段
- Flyway V37: 创建review_plan和review_record表

前端:
- 新增src/api/review.js (12个API调用)
- 新增review/plan/index.vue (计划管理CRUD)
- 新增review/workbench/index.vue (点评工作台)
- 新增review/records/index.vue (点评记录)
- 新增review/ranking/index.vue (医生排名)
- 新增4个菜单项(点评计划/工作台/记录/排名)

数据库:
- review_plan表: id/plan_name/review_type/dept_name/target_count等
- review_record表: plan_id/prescription_no/review_result/unreasonable_type等

验证: 5个API全部返回200
This commit is contained in:
2026-06-07 17:12:56 +08:00
parent 51b3728600
commit 4dd5bfeb4f
11 changed files with 437 additions and 9 deletions

View File

@@ -0,0 +1,46 @@
import request from '@/utils/request'
// ==================== 处方点评 ====================
export function createPlan(data) {
return request({ url: '/api/v1/review/plan', method: 'post', data })
}
export function listPlans(params) {
return request({ url: '/api/v1/review/plans', method: 'get', params })
}
export function getPlanDetail(id) {
return request({ url: `/api/v1/review/plan/${id}`, method: 'get' })
}
export function updatePlan(data) {
return request({ url: '/api/v1/review/plan', method: 'put', data })
}
export function deletePlan(id) {
return request({ url: `/api/v1/review/plan/${id}`, method: 'delete' })
}
export function submitReview(data) {
return request({ url: '/api/v1/review/record', method: 'post', data })
}
export function getRecordsByPlan(planId) {
return request({ url: `/api/v1/review/records/${planId}`, method: 'get' })
}
export function listRecords(params) {
return request({ url: '/api/v1/review/records', method: 'get', params })
}
export function getStatistics(params) {
return request({ url: '/api/v1/review/statistics', method: 'get', params })
}
export function getDoctorRanking(params) {
return request({ url: '/api/v1/review/ranking', method: 'get', params })
}
export function autoScreen(data) {
return request({ url: '/api/v1/review/auto-screen', method: 'post', data })
}