From ecc0d00a4fd348854116c21c2261f2451a48c0e3 Mon Sep 17 00:00:00 2001 From: Stickman <2048979561@qq.com> Date: Fri, 13 Mar 2026 15:14:29 +0800 Subject: [PATCH] =?UTF-8?q?=E8=BE=85=E5=AF=BC=E5=91=98=E7=AE=A1=E7=90=86-?= =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=B8=9A=E7=BB=A9=E8=80=83=E6=A0=B8=E4=B8=AA?= =?UTF-8?q?=E4=BA=BA=E5=A1=AB=E6=8A=A5=E8=AF=A6=E6=83=85=E5=92=8C=E5=8A=A0?= =?UTF-8?q?=E5=88=86=E9=A1=B9=E3=80=81=E5=B0=B1=E4=B8=9A=E6=8C=87=E5=AF=BC?= =?UTF-8?q?=E5=B7=A5=E4=BD=9CAPI?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 新增kpiFillingDetail函数用于获取业绩考核个人填报详情 - 新增加分项相关API:kpiFillingBonusPointsAdd、kpiFillingBonusPointsUpdate、 kpiFillingBonusPointsDetail - 新增就业指导工作相关API:kpiFillingGraduationGuidanceAdd、 kpiFillingGraduationGuidanceUpdate、kpiFillingGraduationGuidanceDetail - 添加TODO注释标记待后端API完成的功能 fix(pages): 解决部门名称存储问题 - 启用被注释掉的部门名称存储功能 - 确保deptName正确存入本地缓存 feat(performance): 支持毕业班和非毕业班不同考核标准 - 为考勤管理组件添加classType参数支持 - 为负面清单组件添加classType参数支持 - 为专业工作组件重构标签显示逻辑,支持根据classType动态显示 - 为奖励绩效加班组件添加classType参数支持 - 为学生突发事件组件添加classType参数支持 - 为学生管理组件添加毕业班/非毕业班差异化显示逻辑 refactor(performance): 优化业绩评估页面结构 - 添加班级类型选择按钮(毕业班/非毕业班) - 在填报时间弹窗中集成班级类型选择功能 - 更新数据加载逻辑以支持classType参数 - 修正各种评分计算中的数值类型转换问题 ``` --- api/instructor/superintendent.js | 62 +++++++ pages.json | 6 + pages/index/index.vue | 2 +- .../components/attendance-management.vue | 12 +- .../components/bonuspoints.vue | 118 ++++++++++++ .../components/graduation-guidance.vue | 116 ++++++++++++ .../components/negative-list.vue | 11 +- .../components/professional-work.vue | 174 ++++++++++++------ .../reward-performance-overwork.vue | 3 +- .../components/student-emergencies.vue | 3 +- .../components/student-management.vue | 149 ++++++++++++--- .../performance-evaluation/index.vue | 163 +++++++++++----- .../personal-reporting.vue | 123 ++++++++++--- 13 files changed, 788 insertions(+), 154 deletions(-) create mode 100644 pages/instructor/performance-appraisal/components/bonuspoints.vue create mode 100644 pages/instructor/performance-appraisal/components/graduation-guidance.vue diff --git a/api/instructor/superintendent.js b/api/instructor/superintendent.js index 58d77b0..ee3d7c4 100644 --- a/api/instructor/superintendent.js +++ b/api/instructor/superintendent.js @@ -34,6 +34,13 @@ export function kpiFillingList(query) { data: query }) } +// 获取业绩考核-个人填报详情 +export function kpiFillingDetail(id) { + return request({ + url: '/teacher/kpiFilling/' + id, + method: 'get' + }) +} //个人填报-学生管理 新增 @@ -137,3 +144,58 @@ export function kpiFillingNegativeListDetail(query) { }) } +// TODO: 个人填报-加分项 待后端API完成后实现 +// export function kpiFillingBonusPointsAdd(data) {} +// export function kpiFillingBonusPointsUpdate(data) {} +// export function kpiFillingBonusPointsDetail(query) {} + +//个人填报-加分项 新增 +export function kpiFillingBonusPointsAdd(data) { + return request({ + url: '/teacher/kpiFillingBonusPoints/add', + method: 'post', + data: data + }) +} +//个人填报-加分项 修改 +export function kpiFillingBonusPointsUpdate(data) { + return request({ + url: '/teacher/kpiFillingBonusPoints/update', + method: 'post', + data: data + }) +} +//个人填报-加分项 详情 +export function kpiFillingBonusPointsDetail(query) { + return request({ + url: '/teacher/kpiFillingBonusPoints/getByFdyNameAndYearAndMonth', + method: 'get', + data: query + }) +} + +//个人填报-就业指导工作 新增 +export function kpiFillingGraduationGuidanceAdd(data) { + return request({ + url: '/teacher/kpiFillingGraduationGuidance/add', + method: 'post', + data: data + }) +} +//个人填报-就业指导工作 修改 +export function kpiFillingGraduationGuidanceUpdate(data) { + return request({ + url: '/teacher/kpiFillingGraduationGuidance/update', + method: 'post', + data: data + }) +} +//个人填报-就业指导工作 详情 +export function kpiFillingGraduationGuidanceDetail(query) { + return request({ + url: '/teacher/kpiFillingGraduationGuidance/getByFdyNameAndYearAndMonth', + method: 'get', + data: query + }) +} + diff --git a/pages.json b/pages.json index 2ad7731..00353cf 100644 --- a/pages.json +++ b/pages.json @@ -1321,6 +1321,12 @@ "navigationBarTitleText": "自治区奖学金申请", "navigationBarTextStyle": "white" } + }, + { + "path": "pages/instructor/performance-appraisal/components/bonuspoints", + "style": { + "navigationBarTitleText": "" + } } ], "globalStyle": { diff --git a/pages/index/index.vue b/pages/index/index.vue index 91e7f4b..b891eec 100644 --- a/pages/index/index.vue +++ b/pages/index/index.vue @@ -304,7 +304,7 @@ uni.setStorageSync('stuName', data.nickName); uni.setStorageSync('stuId', data.userId); uni.setStorageSync("stuNo", data.userName) - //uni.setStorageSync("deptName", data.dept.deptName) + uni.setStorageSync("deptName", data.dept.deptName) uni.setStorageSync("roles", res.roleGroup) this.nickName = data.nickName this.username = data.userName diff --git a/pages/instructor/performance-appraisal/components/attendance-management.vue b/pages/instructor/performance-appraisal/components/attendance-management.vue index 33acf54..a3d1612 100644 --- a/pages/instructor/performance-appraisal/components/attendance-management.vue +++ b/pages/instructor/performance-appraisal/components/attendance-management.vue @@ -8,9 +8,9 @@ - + - {{commitStatus==1?"查看材料":"上传材料"}} @@ -28,7 +28,7 @@ kpiFillingAMgtDetail } from "@/api/instructor/superintendent.js" export default { - props: ["queryDetailParams", "commitStatus"], + props: ["queryDetailParams", "commitStatus", "classType"], data() { return { formData: { @@ -39,7 +39,11 @@ } }, created() { - kpiFillingAMgtDetail(this.queryDetailParams).then(res => { + const params = { + ...this.queryDetailParams, + classType: this.classType + }; + kpiFillingAMgtDetail(params).then(res => { console.log(res); if (res.rows.length > 0) { const { diff --git a/pages/instructor/performance-appraisal/components/bonuspoints.vue b/pages/instructor/performance-appraisal/components/bonuspoints.vue new file mode 100644 index 0000000..84c94d8 --- /dev/null +++ b/pages/instructor/performance-appraisal/components/bonuspoints.vue @@ -0,0 +1,118 @@ + + + + + diff --git a/pages/instructor/performance-appraisal/components/graduation-guidance.vue b/pages/instructor/performance-appraisal/components/graduation-guidance.vue new file mode 100644 index 0000000..51beaf4 --- /dev/null +++ b/pages/instructor/performance-appraisal/components/graduation-guidance.vue @@ -0,0 +1,116 @@ + + + + + diff --git a/pages/instructor/performance-appraisal/components/negative-list.vue b/pages/instructor/performance-appraisal/components/negative-list.vue index a526e7a..c5b9dad 100644 --- a/pages/instructor/performance-appraisal/components/negative-list.vue +++ b/pages/instructor/performance-appraisal/components/negative-list.vue @@ -113,7 +113,7 @@ kpiFillingNegativeListDetail } from "@/api/instructor/superintendent.js" export default { - props: ["queryDetailParams"], + props: ["queryDetailParams", "classType"], data() { return { formData: { @@ -129,7 +129,11 @@ } }, created() { - kpiFillingNegativeListDetail(this.queryDetailParams).then(res => { + const params = { + ...this.queryDetailParams, + classType: this.classType + }; + kpiFillingNegativeListDetail(params).then(res => { console.log(res); if (res.rows.length > 0) { // this.formData = res.rows[0]; @@ -164,9 +168,10 @@ handleRadioChange(e) { const groupName = e.target.dataset.groupName; // 获取data-group-name的值 this.formData[groupName] = e.detail.value; // 更新formData中对应的属性 - // 可以在这里加入其他逻辑,比如数据校验、表单提交等 + console.log('negative-list formData:', this.formData); }, getFormData() { + console.log('getFormData called, returning:', this.formData); return this.formData; } } diff --git a/pages/instructor/performance-appraisal/components/professional-work.vue b/pages/instructor/performance-appraisal/components/professional-work.vue index e672c83..5584f42 100644 --- a/pages/instructor/performance-appraisal/components/professional-work.vue +++ b/pages/instructor/performance-appraisal/components/professional-work.vue @@ -1,38 +1,48 @@