diff --git a/ruoyi-ui/src/api/psychology/questionnaireAnswer.js b/ruoyi-ui/src/api/psychology/questionnaireAnswer.js index e3e464aa..80d34a5f 100644 --- a/ruoyi-ui/src/api/psychology/questionnaireAnswer.js +++ b/ruoyi-ui/src/api/psychology/questionnaireAnswer.js @@ -67,3 +67,30 @@ export function getQuestionnaireRankList(questionnaireId) { }) } +// 查询待评分的主观题列表 +export function getPendingScoringList(query) { + return request({ + url: '/psychology/questionnaire/answer/scoring/pending', + method: 'get', + params: query + }) +} + +// 提交主观题评分 +export function submitScoring(data) { + return request({ + url: '/psychology/questionnaire/answer/scoring/submit', + method: 'post', + data: data + }) +} + +// 批量提交主观题评分 +export function batchSubmitScoring(data) { + return request({ + url: '/psychology/questionnaire/answer/scoring/batch', + method: 'post', + data: data + }) +} + diff --git a/ruoyi-ui/src/api/psychology/report.js b/ruoyi-ui/src/api/psychology/report.js index 6ae13eea..37a924e3 100644 --- a/ruoyi-ui/src/api/psychology/report.js +++ b/ruoyi-ui/src/api/psychology/report.js @@ -44,14 +44,41 @@ export function updateReport(data) { }) } -// 删除报告 -export function delReport(reportIds) { +// 修改报告(支持传递sourceType) +export function updateReportWithType(reportId, sourceType, data) { + const updateData = { + reportId: reportId, + sourceType: sourceType, + ...data + } return request({ - url: '/psychology/report/' + reportIds, + url: '/psychology/report', + method: 'put', + data: updateData + }) +} + +// 删除报告(支持传递sourceType) +export function delReport(reportIds, sourceType) { + let url = '/psychology/report/' + reportIds; + if (sourceType) { + url += '?sourceType=' + sourceType; + } + return request({ + url: url, method: 'delete' }) } +// 批量删除报告(支持传递sourceType映射) +export function delReports(reportData) { + return request({ + url: '/psychology/report/batch', + method: 'delete', + data: reportData + }) +} + // 生成报告 export function generateReport(assessmentId) { return request({ diff --git a/ruoyi-ui/src/router/index.js b/ruoyi-ui/src/router/index.js index a22556f3..1ff96060 100644 --- a/ruoyi-ui/src/router/index.js +++ b/ruoyi-ui/src/router/index.js @@ -390,6 +390,17 @@ export const dynamicRoutes = [ title: '问卷题目管理', roles: ['admin'] } + }, + // 主观题评分 + { + path: 'questionnaire/scoring', + name: 'QuestionnaireScoring', + component: () => import('@/views/psychology/questionnaire/scoring'), + meta: { + title: '主观题评分', + icon: 'edit', + roles: ['admin'] + } } ] } diff --git a/ruoyi-ui/src/views/psychology/interpretation/index.vue b/ruoyi-ui/src/views/psychology/interpretation/index.vue index 03cebad9..c1dfba50 100644 --- a/ruoyi-ui/src/views/psychology/interpretation/index.vue +++ b/ruoyi-ui/src/views/psychology/interpretation/index.vue @@ -298,10 +298,12 @@ export default { this.getList(); }, methods: { - /** 加载量表列表 */ + /** 加载量表列表(只显示量表,不包含问卷) */ loadScaleList() { - listScale({ status: '0', pageNum: 1, pageSize: 1000 }).then(response => { - this.scaleList = response.rows || []; + listScale({ status: '0', pageNum: 1, pageSize: 1000, includeQuestionnaire: false }).then(response => { + // 再次过滤,确保只显示量表 + this.scaleList = (response.rows || []) + .filter(scale => !scale.sourceType || scale.sourceType === 'scale'); }); }, /** 加载因子列表(用于搜索) */ diff --git a/ruoyi-ui/src/views/psychology/permission/index.vue b/ruoyi-ui/src/views/psychology/permission/index.vue index d3221190..356667b6 100644 --- a/ruoyi-ui/src/views/psychology/permission/index.vue +++ b/ruoyi-ui/src/views/psychology/permission/index.vue @@ -209,10 +209,12 @@ export default { this.loading = false; }); }, - /** 加载量表列表 */ + /** 加载量表列表(只显示量表,不包含问卷) */ loadScales() { - listScale({ status: '0' }).then(response => { - this.scaleList = response.rows || []; + listScale({ status: '0', includeQuestionnaire: false }).then(response => { + // 过滤掉问卷,只保留量表 + this.scaleList = (response.rows || []) + .filter(scale => !scale.sourceType || scale.sourceType === 'scale'); }); }, /** 加载用户列表 */ diff --git a/ruoyi-ui/src/views/psychology/permission/user.vue b/ruoyi-ui/src/views/psychology/permission/user.vue index d3d52f99..2cc4b75a 100644 --- a/ruoyi-ui/src/views/psychology/permission/user.vue +++ b/ruoyi-ui/src/views/psychology/permission/user.vue @@ -77,14 +77,17 @@ export default { this.userName = response.data.userName; }); }, - /** 加载量表列表 */ + /** 加载量表列表(只显示量表,不包含问卷) */ loadScales() { - listScale({ status: '0' }).then(response => { - this.scaleList = (response.rows || []).map(scale => ({ - key: scale.scaleId, - label: scale.scaleName, - itemCount: scale.itemCount || 0 - })); + listScale({ status: '0', includeQuestionnaire: false }).then(response => { + // 过滤掉问卷,只保留量表 + this.scaleList = (response.rows || []) + .filter(scale => !scale.sourceType || scale.sourceType === 'scale') + .map(scale => ({ + key: scale.scaleId, + label: scale.scaleName, + itemCount: scale.itemCount || 0 + })); }); }, /** 加载用户已有权限的量表 */ diff --git a/ruoyi-ui/src/views/psychology/qrcode/index.vue b/ruoyi-ui/src/views/psychology/qrcode/index.vue index b5782611..f026d922 100644 --- a/ruoyi-ui/src/views/psychology/qrcode/index.vue +++ b/ruoyi-ui/src/views/psychology/qrcode/index.vue @@ -425,10 +425,12 @@ export default { this.loading = false; }); }, - /** 加载量表列表 */ + /** 加载量表列表(只显示量表,不包含问卷) */ loadScales() { - listScale({ status: '0', pageNum: 1, pageSize: 1000 }).then(response => { - this.scaleList = response.rows || []; + listScale({ status: '0', pageNum: 1, pageSize: 1000, includeQuestionnaire: false }).then(response => { + // 再次过滤,确保只显示量表 + this.scaleList = (response.rows || []) + .filter(scale => !scale.sourceType || scale.sourceType === 'scale'); }).catch(() => { this.scaleList = []; }); diff --git a/ruoyi-ui/src/views/psychology/questionnaire/index.vue b/ruoyi-ui/src/views/psychology/questionnaire/index.vue index 4bced042..3bab7362 100644 --- a/ruoyi-ui/src/views/psychology/questionnaire/index.vue +++ b/ruoyi-ui/src/views/psychology/questionnaire/index.vue @@ -111,7 +111,7 @@ {{ parseTime(scope.row.createTime, '{y}-{m}-{d} {h}:{i}:{s}') }} - + + + + diff --git a/ruoyi-ui/src/views/psychology/report/detail.vue b/ruoyi-ui/src/views/psychology/report/detail.vue index a8799e15..9e206fc1 100644 --- a/ruoyi-ui/src/views/psychology/report/detail.vue +++ b/ruoyi-ui/src/views/psychology/report/detail.vue @@ -3,7 +3,16 @@
测评报告详情 - 返回 +
+ 编辑 + 返回 +
@@ -64,11 +73,50 @@ 下载PDF报告
+ + + + + + + + + + + + + + + + + + + +
+ 提示:报告内容支持HTML格式,可以包含标题、段落、列表等格式 +
+
+
+ +