diff --git a/backend/roomroot-admin/src/main/java/com/roomroot/web/controller/jwgl/ClassSemesterController.java b/backend/roomroot-admin/src/main/java/com/roomroot/web/controller/jwgl/ClassSemesterController.java
deleted file mode 100644
index 6a8bde6d8..000000000
--- a/backend/roomroot-admin/src/main/java/com/roomroot/web/controller/jwgl/ClassSemesterController.java
+++ /dev/null
@@ -1,172 +0,0 @@
-package com.roomroot.web.controller.jwgl;
-
-import com.roomroot.jwgl.entity.XYDNDXQJBXXB;
-import com.roomroot.jwgl.service.ClassSemesterService;
-import com.roomroot.jwgl.unit.PageQuery;
-import com.roomroot.jwgl.unit.PageResult;
-import com.roomroot.jwgl.unit.Result;
-import org.springframework.web.bind.annotation.*;
-
-import jakarta.annotation.Resource;
-import java.time.LocalDateTime;
-import java.util.List;
-import java.util.Map;
-
-/**
- * 班次学期控制器
- */
-@RestController
-@RequestMapping("/classSemester")
-public class ClassSemesterController {
-
- @Resource
- private ClassSemesterService classSemesterService;
-
- /**
- * 新增
- */
- @PostMapping("/add")
- public Result add(@RequestBody XYDNDXQJBXXB xydndxqjbxxb) {
- classSemesterService.add(xydndxqjbxxb);
- return Result.success();
- }
-
- /**
- * 删除
- */
- @PostMapping("/delete")
- public Result delete(@RequestParam("bh") String bh) {
- classSemesterService.delete(bh);
- return Result.success();
- }
-
- /**
- * 批量删除
- */
- @PostMapping("/batchDelete")
- public Result batchDelete(@RequestBody List bhList) {
- classSemesterService.batchDelete(bhList);
- return Result.success();
- }
-
- /**
- * 批量修改日期范围
- *
- * 更新班次学期的日期范围,并同步更新班次学期日历:
- * 1. 删除日期范围之外的日历记录
- * 2. 补充新日期范围内缺少的日历记录
- *
- * @return 更新数量
- */
- @PostMapping("/batchUpdateDateRange")
- public Result batchUpdateDateRange(@RequestBody Map params) {
- List bhList = (List) params.get("bhList");//编号列表
- String xqkssj = (String) params.get("xqkssj");//学期开始时间
- String xqjssj = (String) params.get("xqjssj");//学期结束时间
- int count = classSemesterService.batchUpdateDateRange(bhList, xqkssj, xqjssj);
- return Result.success(count);
- }
-
- /**
- * 批量修改开放教员排课状态
- *
- * @param bhList XYDNDXQJBXXB编号列表
- * @param kfjypk 开放教员排课(0-否,1-是)
- * @return 更新数量
- */
- @PostMapping("/batchUpdateKfjypk")
- public Result batchUpdateKfjypk(@RequestBody Map params) {
- List bhList = (List) params.get("bhList");
- Integer kfjypk = (Integer) params.get("kfjypk");
- int count = classSemesterService.batchUpdateKfjypk(bhList, kfjypk);
- return Result.success(count);
- }
-
- /**
- * 批量修改学期第次
- *
- * @param bhList XYDNDXQJBXXB编号列表
- * @param xqdc 学期第次
- * @return 更新数量
- */
- @PostMapping("/batchUpdateXqdc")
- public Result batchUpdateXqdc(@RequestBody Map params) {
- List bhList = (List) params.get("bhList");
- Integer xqdc = (Integer) params.get("xqdc");
- int count = classSemesterService.batchUpdateXqdc(bhList, xqdc);
- return Result.success(count);
- }
-
- /**
- * 批量修改教学任务编号
- *
- * @return 更新数量
- */
- @PostMapping("/batchUpdateJxrwbh")
- public Result batchUpdateJxrwbh(@RequestBody Map params) {
- List bhList = (List) params.get("bhList");
- String jxrwbh = (String) params.get("jxrwbh");//教学任务编号
- int count = classSemesterService.batchUpdateJxrwbh(bhList, jxrwbh);
- return Result.success(count);
- }
-
- /**
- * 更新
- */
- @PostMapping("/update")
- public Result update(@RequestBody XYDNDXQJBXXB xydndxqjbxxb) {
- classSemesterService.update(xydndxqjbxxb);
- return Result.success();
- }
-
- /**
- * 根据编号查询
- */
- @GetMapping("/get")
- public Result getByBh(@RequestParam("bh") String bh) {
- return Result.success(classSemesterService.getByBh(bh));
- }
-
- /**
- * 分页查询列表
- */
- @GetMapping("/list")
- public Result> list(PageQuery query, XYDNDXQJBXXB xydndxqjbxxb) {
- return Result.success(classSemesterService.pageList(query, xydndxqjbxxb));
- }
-
- /**
- * 查询所有有效数据(DEL_FLAG = 0)
- */
- @GetMapping("/all")
- public Result> all() {
- return Result.success(classSemesterService.listAllValid());
- }
-
- /**
- * 根据选修班次列表批量添加班次学期
- *
- * 根据时间范围过滤学员队表,批量添加班次学期信息,并生成对应的班次学期日历
- * 筛选条件:入学日期 <= startTime 且 毕业日期 >= endTime
- *
- *
- * @param startTime 时间范围开始
- * @param endTime 时间范围结束
- * @param nd 年度
- * @param xqdc 学期第次
- * @return 添加数量
- */
- @PostMapping("/batchAddFromElective")
- public Result batchAddFromElective(
- @RequestParam("startTime") String startTime,
- @RequestParam("endTime") String endTime,
- @RequestParam("nd") String nd,
- @RequestParam("xqdc") String xqdc) {
-
- LocalDateTime start = LocalDateTime.parse(startTime + "T00:00:00");
- LocalDateTime end = LocalDateTime.parse(endTime + "T23:59:59");
-
- int count = classSemesterService.batchAddFromElective(start, end, nd, xqdc, startTime, endTime);
- return Result.success(count);
- }
-}
\ No newline at end of file
diff --git a/backend/roomroot-admin/src/main/java/com/roomroot/web/controller/jwgl/DisciplineManagementController.java b/backend/roomroot-admin/src/main/java/com/roomroot/web/controller/jwgl/DisciplineManagementController.java
index 82c8adeb8..225d9ba16 100644
--- a/backend/roomroot-admin/src/main/java/com/roomroot/web/controller/jwgl/DisciplineManagementController.java
+++ b/backend/roomroot-admin/src/main/java/com/roomroot/web/controller/jwgl/DisciplineManagementController.java
@@ -1,19 +1,24 @@
package com.roomroot.web.controller.jwgl;
import com.roomroot.jwgl.entity.XKZYXX;
+import com.roomroot.jwgl.entity.ZYB;
import com.roomroot.jwgl.service.DisciplineService;
import com.roomroot.jwgl.unit.PageQuery;
import com.roomroot.jwgl.unit.PageResult;
import com.roomroot.jwgl.unit.Result;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
import jakarta.annotation.Resource;
/**
* 学科专业管理控制器
*
- * 提供学科、专业的增加、删除(逻辑删除)、更新、查询等功能管理接口。
- * 对应数据表:学科专业信息
+ * 学科目录对应表:学科专业信息;专业对应表:专业表。
*
*
* 接口规范:仅使用 GET 和 POST 两种方法,参数通过请求体或查询参数传递,不拼接在路径中。
@@ -28,6 +33,8 @@ public class DisciplineManagementController {
@Resource
private DisciplineService disciplineService;
+ // ======================== 学科专业信息 ========================
+
/**
* 新增学科专业
*
@@ -79,21 +86,17 @@ public class DisciplineManagementController {
/**
* 分页条件查询学科专业列表
- *
- * 支持模糊查询参数:
- *
- * - zYMC — 专业名称(模糊匹配)
- * - zYFX — 专业方向(模糊匹配)
- *
- *
*
- * @param pageNum 页码(默认1)
+ * @param pageNum 页码(默认1)
* @param pageSize 每页条数(默认20)
- * @param zymc 专业名称(可选)
- * @param zyfx 专业方向(可选)
+ * @param zymc 专业名称(可选)
+ * @param zyfx 专业方向(可选)
+ * @param zydm 专业代码(可选)
+ * @param ty 停用(可选)
+ * @param pxlx2 培训类型2(可选)
+ * @param xnz 学年制(可选)
* @return 分页结果
*/
-
@GetMapping("/list")
public Result> list(
@RequestParam(defaultValue = "1") Integer pageNum,
@@ -117,4 +120,96 @@ public class DisciplineManagementController {
PageResult pageResult = disciplineService.pageList(query, cond);
return Result.success(pageResult);
}
+
+ // ======================== 专业表 ========================
+
+ /**
+ * 新增专业。
+ * 对应表:专业表。专业代号为空时由服务端生成 UUID;序号标识由数据库自增。
+ *
+ * @param entity 专业表实体
+ * @return 操作结果
+ */
+ @PostMapping("/major/add")
+ public Result addMajor(@RequestBody ZYB entity) {
+ disciplineService.addMajor(entity);
+ return Result.success();
+ }
+
+ /**
+ * 删除专业(逻辑删除,将停用置为 true)。
+ *
+ * @param zydh 专业代号
+ * @return 操作结果
+ */
+ @PostMapping("/major/delete")
+ public Result deleteMajor(@RequestParam("zydh") String zydh) {
+ disciplineService.deleteMajor(zydh);
+ return Result.success();
+ }
+
+ /**
+ * 更新专业。
+ *
+ * @param entity 专业表实体(须含专业代号)
+ * @return 操作结果
+ */
+ @PostMapping("/major/update")
+ public Result updateMajor(@RequestBody ZYB entity) {
+ disciplineService.updateMajor(entity);
+ return Result.success();
+ }
+
+ /**
+ * 按专业代号查询专业。
+ *
+ * @param zydh 专业代号
+ * @return 专业详情
+ */
+ @GetMapping("/major/get")
+ public Result getMajor(@RequestParam("zydh") String zydh) {
+ return Result.success(disciplineService.getMajorById(zydh));
+ }
+
+ /**
+ * 分页查询专业。
+ *
+ * @param pageNum 页码(默认 1)
+ * @param pageSize 每页条数(默认 20)
+ * @param zymc 专业名称(模糊,可选)
+ * @param zyfx 专业方向(模糊,可选)
+ * @param zydm 专业代码(模糊,可选)
+ * @param pxlx 培训类型(可选)
+ * @param pxcc 培训层次(可选)
+ * @param pxlx2 培训类型2(可选)
+ * @param xnz 学年制(可选)
+ * @param xkzyxxbsh 学科专业信息标识号(可选)
+ * @param ty 停用(可选)
+ * @return 分页结果
+ */
+ @GetMapping("/major/list")
+ public Result> listMajor(
+ @RequestParam(defaultValue = "1") Integer pageNum,
+ @RequestParam(defaultValue = "20") Integer pageSize,
+ @RequestParam(required = false) String zymc,
+ @RequestParam(required = false) String zyfx,
+ @RequestParam(required = false) String zydm,
+ @RequestParam(required = false) String pxlx,
+ @RequestParam(required = false) String pxcc,
+ @RequestParam(required = false) String pxlx2,
+ @RequestParam(required = false) String xnz,
+ @RequestParam(required = false) String xkzyxxbsh,
+ @RequestParam(required = false) Boolean ty) {
+ ZYB cond = new ZYB();
+ cond.setZymc(zymc);
+ cond.setZyfx(zyfx);
+ cond.setZydm(zydm);
+ cond.setPxlx(pxlx);
+ cond.setPxcc(pxcc);
+ cond.setPxlx2(pxlx2);
+ cond.setXnz(xnz);
+ cond.setXkzyxxbsh(xkzyxxbsh);
+ cond.setTy(ty);
+ return Result.success(disciplineService.pageMajor(new PageQuery(pageNum, pageSize), cond));
+ }
}
diff --git a/backend/roomroot-admin/src/main/java/com/roomroot/web/controller/jwgl/JYSController.java b/backend/roomroot-admin/src/main/java/com/roomroot/web/controller/jwgl/JYSController.java
index ff3503c9c..bc1d1148f 100644
--- a/backend/roomroot-admin/src/main/java/com/roomroot/web/controller/jwgl/JYSController.java
+++ b/backend/roomroot-admin/src/main/java/com/roomroot/web/controller/jwgl/JYSController.java
@@ -4,7 +4,9 @@ import com.roomroot.jwgl.dto.faculty.AddTeacherDTO;
import com.roomroot.jwgl.entity.JYB;
import com.roomroot.jwgl.entity.JYSB;
import com.roomroot.jwgl.entity.JYSX;
+import com.roomroot.jwgl.entity.KB;
import com.roomroot.jwgl.service.FacultyService;
+import com.roomroot.jwgl.service.KBService;
import com.roomroot.jwgl.unit.PageQuery;
import com.roomroot.jwgl.unit.PageResult;
import com.roomroot.jwgl.unit.Result;
@@ -27,6 +29,9 @@ public class JYSController {
@Resource
private FacultyService facultyService;
+
+ @Resource
+ private KBService kbService;
// ======================== 教研室管理 ========================
/**
@@ -212,4 +217,90 @@ public class JYSController {
return Result.success();
}
+ // ======================== 课表(课程科目) ========================
+
+ /**
+ * 新增课表科目。
+ * 对应表:课表。课编号为空时由服务端生成 UUID。
+ *
+ * @param entity 课表实体
+ * @return 操作结果
+ */
+ @PostMapping("/kb/add")
+ public Result addKb(@RequestBody KB entity) {
+ kbService.add(entity);
+ return Result.success();
+ }
+
+ /**
+ * 删除课表科目。
+ * 已被课程标准、学员队任务或专业教学计划引用时不允许删除。
+ *
+ * @param kbh 课编号
+ * @return 操作结果
+ */
+ @PostMapping("/kb/delete")
+ public Result deleteKb(@RequestParam("kbh") String kbh) {
+ kbService.delete(kbh);
+ return Result.success();
+ }
+
+ /**
+ * 更新课表科目。
+ *
+ * @param entity 课表实体(须含课编号)
+ * @return 操作结果
+ */
+ @PostMapping("/kb/update")
+ public Result updateKb(@RequestBody KB entity) {
+ kbService.update(entity);
+ return Result.success();
+ }
+
+ /**
+ * 按课编号查询课表科目。
+ *
+ * @param kbh 课编号
+ * @return 课表详情
+ */
+ @GetMapping("/kb/get")
+ public Result getKb(@RequestParam("kbh") String kbh) {
+ return Result.success(kbService.getByKbh(kbh));
+ }
+
+ /**
+ * 分页查询课表科目。
+ *
+ * @param pageNum 页码(默认 1)
+ * @param pageSize 每页条数(默认 20)
+ * @param kmc 课名称(模糊,可选)
+ * @param jysdh 教研室代号(可选)
+ * @param kclx 课程类型(可选)
+ * @param pxlx 培训类型(可选)
+ * @param pxcc 培训层次(可选)
+ * @param kmdm 科目代码(模糊,可选)
+ * @param jc 简称(模糊,可选)
+ * @return 分页结果
+ */
+ @GetMapping("/kb/list")
+ public Result> listKb(
+ @RequestParam(defaultValue = "1") Integer pageNum,
+ @RequestParam(defaultValue = "20") Integer pageSize,
+ @RequestParam(required = false) String kmc,
+ @RequestParam(required = false) String jysdh,
+ @RequestParam(required = false) String kclx,
+ @RequestParam(required = false) String pxlx,
+ @RequestParam(required = false) String pxcc,
+ @RequestParam(required = false) String kmdm,
+ @RequestParam(required = false) String jc) {
+ KB cond = new KB();
+ cond.setKmc(kmc);
+ cond.setJysdh(jysdh);
+ cond.setKclx(kclx);
+ cond.setPxlx(pxlx);
+ cond.setPxcc(pxcc);
+ cond.setKmdm(kmdm);
+ cond.setJc(jc);
+ return Result.success(kbService.pageList(new PageQuery(pageNum, pageSize), cond));
+ }
}
diff --git a/backend/roomroot-admin/src/main/java/com/roomroot/web/controller/jwgl/KSController.java b/backend/roomroot-admin/src/main/java/com/roomroot/web/controller/jwgl/KSController.java
new file mode 100644
index 000000000..96c631599
--- /dev/null
+++ b/backend/roomroot-admin/src/main/java/com/roomroot/web/controller/jwgl/KSController.java
@@ -0,0 +1,262 @@
+package com.roomroot.web.controller.jwgl;
+
+import com.roomroot.jwgl.dto.ks.HourStatisticsQuery;
+import com.roomroot.jwgl.entity.KSFBZ;
+import com.roomroot.jwgl.entity.KSXSFA;
+import com.roomroot.jwgl.service.KJService;
+import com.roomroot.jwgl.service.KSService;
+import com.roomroot.jwgl.service.LogService;
+import com.roomroot.jwgl.unit.PageQuery;
+import com.roomroot.jwgl.unit.PageResult;
+import com.roomroot.jwgl.unit.Result;
+import com.roomroot.jwgl.vo.ks.HourStatisticsVO;
+import jakarta.servlet.http.HttpServletResponse;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import jakarta.annotation.Resource;
+
+/**
+ * 课时管理
+ *
+ * 课时标准方案【补助-核算】
+ * 课时补助核算
+ * 联教联训管理
+ *
+ * 接口规范:仅使用 GET 和 POST,参数通过请求体或查询参数传递。
+ */
+@RestController
+@RequestMapping("/ks")
+public class KSController {
+
+ @Resource
+ private KJService kjService;
+ @Resource
+ private LogService logService;
+ @Resource
+ private KSService ksService;
+ // ======================== 课时费标准方案 ========================
+
+ /**
+ * 新增课时费标准方案。
+ *
+ * 对应表:课时费标准。定义默认课时量、课时费及各绩效档补助。
+ * 编号为空时由服务端生成 36 位 UUID。
+ *
+ *
+ * @param entity 课时费标准
+ * @return 操作结果
+ */
+ @PostMapping("/fee-standard/add")
+ public Result addFeeStandard(@RequestBody KSFBZ entity) {
+ kjService.addFeeStandard(entity);
+ return Result.success();
+ }
+
+ /**
+ * 删除课时费标准方案。
+ *
+ * @param bh 编号
+ * @return 操作结果
+ */
+ @PostMapping("/fee-standard/delete")
+ public Result deleteFeeStandard(@RequestParam("bh") String bh) {
+ kjService.deleteFeeStandard(bh);
+ return Result.success();
+ }
+
+ /**
+ * 更新课时费标准方案。
+ *
+ * @param entity 课时费标准(须含编号)
+ * @return 操作结果
+ */
+ @PostMapping("/fee-standard/update")
+ public Result updateFeeStandard(@RequestBody KSFBZ entity) {
+ kjService.updateFeeStandard(entity);
+ return Result.success();
+ }
+
+ /**
+ * 按编号查询课时费标准方案。
+ *
+ * @param bh 编号
+ * @return 课时费标准
+ */
+ @GetMapping("/fee-standard/get")
+ public Result getFeeStandard(@RequestParam("bh") String bh) {
+ return Result.success(kjService.getFeeStandardById(bh));
+ }
+
+ /**
+ * 分页查询课时费标准方案。
+ *
+ * @param pageNum 页码(默认 1)
+ * @param pageSize 每页条数(默认 20)
+ * @param mc 名称(模糊匹配,可选)
+ * @return 分页结果
+ */
+ @GetMapping("/fee-standard/list")
+ public Result> listFeeStandard(
+ @RequestParam(defaultValue = "1") Integer pageNum,
+ @RequestParam(defaultValue = "20") Integer pageSize,
+ @RequestParam(required = false) String mc) {
+ KSFBZ cond = new KSFBZ();
+ cond.setMc(mc);
+ return Result.success(kjService.pageFeeStandard(new PageQuery(pageNum, pageSize), cond));
+ }
+ // ======================== 课时系数方案 ========================
+
+ /**
+ * 新增课时系数方案
+ * 定义主讲/辅讲课时系数、班级系数、合班系数、各时段课时量等核算参数。
+ *
+ * @param entity 课时系数方案实体
+ * @return 操作结果
+ */
+ @PostMapping("/coefficient-plan/add")
+ public Result addCoefficientPlan(@RequestBody KSXSFA entity) {
+ logService.addCoefficientPlan(entity);
+ return Result.success();
+ }
+
+ /**
+ * 更新课时系数方案
+ *
+ * @param entity 课时系数方案实体(需含编号)
+ * @return 操作结果
+ */
+ @PostMapping("/coefficient-plan/update")
+ public Result updateCoefficientPlan(@RequestBody KSXSFA entity) {
+ logService.updateCoefficientPlan(entity);
+ return Result.success();
+ }
+
+ /**
+ * 根据编号查询课时系数方案详情
+ *
+ * @param bh 编号
+ * @return 课时系数方案
+ */
+ @GetMapping("/coefficient-plan/get")
+ public Result getCoefficientPlan(@RequestParam("bh") String bh) {
+ return Result.success(logService.getCoefficientPlanById(bh));
+ }
+
+ /**
+ * 分页查询课时系数方案列表
+ *
+ * @param pageNum 页码(默认1)
+ * @param pageSize 每页条数(默认20)
+ * @param mc 名称(模糊匹配,可选)
+ * @return 分页结果
+ */
+ @GetMapping("/coefficient-plan/list")
+ public Result> listCoefficientPlan(
+ @RequestParam(defaultValue = "1") Integer pageNum,
+ @RequestParam(defaultValue = "20") Integer pageSize,
+ @RequestParam(required = false) String mc) {
+ KSXSFA cond = new KSXSFA(); cond.setMc(mc);
+ return Result.success(logService.pageCoefficientPlan(new PageQuery(pageNum, pageSize), cond));
+ }
+
+ // ======================== 课时统计 ========================
+
+ /**
+ * 分页查询课时统计。
+ *
+ * 联查教研室表、教员表、课时统计表。标准课时量 180,超课时及按职称计算过程和结果。
+ * 未传 nd 时默认当前学期。管理员看全部教员,教员只看本人。
+ *
+ *
+ * @param pageNum 页码
+ * @param pageSize 每页条数
+ * @param nd 学期年度(可选,默认本学期)
+ * @param xq 学期序号(可选)
+ * @param jyxm 教员姓名(模糊,可选)
+ */
+ @GetMapping("/hour-stat/list")
+ public Result> listHourStatistics(
+ @RequestParam(defaultValue = "1") Integer pageNum,
+ @RequestParam(defaultValue = "20") Integer pageSize,
+ @RequestParam(required = false) Integer nd,
+ @RequestParam(required = false) Integer xq,
+ @RequestParam(required = false) String jyxm) {
+ HourStatisticsQuery cond = new HourStatisticsQuery();
+ cond.setNd(nd);
+ cond.setXq(xq);
+ cond.setJyxm(jyxm);
+ return Result.success(ksService.pageHourStatistics(new PageQuery(pageNum, pageSize), cond));
+ }
+
+ /**
+ * 导出课时统计 Excel。
+ */
+ @GetMapping("/hour-stat/export")
+ public void exportHourStatistics(
+ @RequestParam(required = false) Integer nd,
+ @RequestParam(required = false) Integer xq,
+ @RequestParam(required = false) String jyxm,
+ HttpServletResponse response) {
+ HourStatisticsQuery cond = new HourStatisticsQuery();
+ cond.setNd(nd);
+ cond.setXq(xq);
+ cond.setJyxm(jyxm);
+ ksService.exportHourStatistics(cond, response);
+ }
+
+ // ======================== 课时费统计 ========================
+
+ /**
+ * 分页查询课时费统计。
+ *
+ * 课时量同源,单价取课时费标准(ksfbzbh 为空则用最新方案的默认标准课时量、默认课时费、默认超量课时费)。
+ * 未传 nd 时默认当前学期。管理员看全部教员,教员只看本人。
+ *
+ *
+ * @param pageNum 页码
+ * @param pageSize 每页条数
+ * @param nd 学期年度(可选,默认本学期)
+ * @param xq 学期序号(可选)
+ * @param jyxm 教员姓名(模糊,可选)
+ * @param ksfbzbh 课时费标准编号(可选)
+ */
+ @GetMapping("/fee-stat/list")
+ public Result> listFeeStatistics(
+ @RequestParam(defaultValue = "1") Integer pageNum,
+ @RequestParam(defaultValue = "20") Integer pageSize,
+ @RequestParam(required = false) Integer nd,
+ @RequestParam(required = false) Integer xq,
+ @RequestParam(required = false) String jyxm,
+ @RequestParam(required = false) String ksfbzbh) {
+ HourStatisticsQuery cond = new HourStatisticsQuery();
+ cond.setNd(nd);
+ cond.setXq(xq);
+ cond.setJyxm(jyxm);
+ cond.setKsfbzbh(ksfbzbh);
+ return Result.success(ksService.pageFeeStatistics(new PageQuery(pageNum, pageSize), cond));
+ }
+
+ /**
+ * 导出课时费统计 Excel。
+ */
+ @GetMapping("/fee-stat/export")
+ public void exportFeeStatistics(
+ @RequestParam(required = false) Integer nd,
+ @RequestParam(required = false) Integer xq,
+ @RequestParam(required = false) String jyxm,
+ @RequestParam(required = false) String ksfbzbh,
+ HttpServletResponse response) {
+ HourStatisticsQuery cond = new HourStatisticsQuery();
+ cond.setNd(nd);
+ cond.setXq(xq);
+ cond.setJyxm(jyxm);
+ cond.setKsfbzbh(ksfbzbh);
+ ksService.exportFeeStatistics(cond, response);
+ }
+
+}
diff --git a/backend/roomroot-admin/src/main/java/com/roomroot/web/controller/jwgl/LogController.java b/backend/roomroot-admin/src/main/java/com/roomroot/web/controller/jwgl/LogController.java
index 102189501..969bca247 100644
--- a/backend/roomroot-admin/src/main/java/com/roomroot/web/controller/jwgl/LogController.java
+++ b/backend/roomroot-admin/src/main/java/com/roomroot/web/controller/jwgl/LogController.java
@@ -336,60 +336,6 @@ public class LogController {
return Result.success(logService.pageCalculationStandard(new PageQuery(pageNum, pageSize), cond));
}
- // ======================== 课时系数方案 ========================
-
- /**
- * 新增课时系数方案
- * 定义主讲/辅讲课时系数、班级系数、合班系数、各时段课时量等核算参数。
- *
- * @param entity 课时系数方案实体
- * @return 操作结果
- */
- @PostMapping("/coefficient-plan/add")
- public Result addCoefficientPlan(@RequestBody KSXSFA entity) {
- logService.addCoefficientPlan(entity);
- return Result.success();
- }
-
- /**
- * 更新课时系数方案
- *
- * @param entity 课时系数方案实体(需含编号)
- * @return 操作结果
- */
- @PostMapping("/coefficient-plan/update")
- public Result updateCoefficientPlan(@RequestBody KSXSFA entity) {
- logService.updateCoefficientPlan(entity);
- return Result.success();
- }
-
- /**
- * 根据编号查询课时系数方案详情
- *
- * @param bh 编号
- * @return 课时系数方案
- */
- @GetMapping("/coefficient-plan/get")
- public Result getCoefficientPlan(@RequestParam("bh") String bh) {
- return Result.success(logService.getCoefficientPlanById(bh));
- }
-
- /**
- * 分页查询课时系数方案列表
- *
- * @param pageNum 页码(默认1)
- * @param pageSize 每页条数(默认20)
- * @param mc 名称(模糊匹配,可选)
- * @return 分页结果
- */
- @GetMapping("/coefficient-plan/list")
- public Result> listCoefficientPlan(
- @RequestParam(defaultValue = "1") Integer pageNum,
- @RequestParam(defaultValue = "20") Integer pageSize,
- @RequestParam(required = false) String mc) {
- KSXSFA cond = new KSXSFA(); cond.setMc(mc);
- return Result.success(logService.pageCoefficientPlan(new PageQuery(pageNum, pageSize), cond));
- }
// ======================== 课时费标准 ========================
diff --git a/backend/roomroot-admin/src/main/java/com/roomroot/web/controller/jwgl/StudentRecordsController.java b/backend/roomroot-admin/src/main/java/com/roomroot/web/controller/jwgl/StudentRecordsController.java
index 80e5df2a5..ef3ae0604 100644
--- a/backend/roomroot-admin/src/main/java/com/roomroot/web/controller/jwgl/StudentRecordsController.java
+++ b/backend/roomroot-admin/src/main/java/com/roomroot/web/controller/jwgl/StudentRecordsController.java
@@ -1,23 +1,37 @@
package com.roomroot.web.controller.jwgl;
import com.roomroot.jwgl.entity.XYXX;
+import com.roomroot.jwgl.entity.XYDNDXQJBXXB;
+import com.roomroot.jwgl.entity.XYDB;
+import com.roomroot.jwgl.entity.XYXJYDSQB;
+import com.roomroot.jwgl.entity.XYXJYJJGB;
+import com.roomroot.jwgl.entity.XYXJYJTJB;
import com.roomroot.jwgl.entity.XYKCCJ;
import com.roomroot.jwgl.entity.XYKCGCCJ;
import com.roomroot.jwgl.service.StudentRecordsService;
+import com.roomroot.jwgl.service.ClassSemesterService;
import com.roomroot.jwgl.unit.PageQuery;
import com.roomroot.jwgl.unit.PageResult;
import com.roomroot.jwgl.unit.Result;
import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
import jakarta.annotation.Resource;
import jakarta.servlet.http.HttpServletResponse;
+import java.time.LocalDateTime;
import java.util.List;
+import java.util.Map;
/**
- * 学员档案管理控制器
+ * 学员管理
*
- * 提供学员信息的增删改查、学籍异动管理,
- * 以及学员课程成绩查询、课程过程成绩查询、课程表查询和 Excel 导出功能。
+ * 学员信息维护
+ * 学员学籍异动申请
+ * 学院学籍预警管理
+ * 学员学籍预警结果
+ * 班次管理
+ * 班次学期管理
+ * 学员标签管理。
*
*/
@RestController
@@ -27,7 +41,10 @@ public class StudentRecordsController {
@Resource
private StudentRecordsService studentRecordsService;
- // ======================== 学员 CRUD ========================
+ @Resource
+ private ClassSemesterService classSemesterService;
+
+ // ======================== 学员信息维护 ========================
@PostMapping("/add")
public Result add(@RequestBody XYXX xyxx) {
@@ -57,26 +74,313 @@ public class StudentRecordsController {
return Result.success(studentRecordsService.pageList(query, xyxx));
}
- // ======================== 学籍异动 ========================
+ // ======================== 学员信息批量导入 ========================
- @PostMapping("/retain-grade")
- public Result retainGrade(@RequestParam("bh") String bh) {
- studentRecordsService.retainGrade(bh);
+ /**
+ * 批量导入学员信息(支持 .xls / .xlsx)
+ * 模板列:编号, 学号, 姓名, 学员队期编号, 证件号码, 政治面貌, 性别,
+ * 出生日期, 名族, 籍贯, 身份证号, 联系电话, 通信地址, 学员类别, 曾用名
+ *
+ * @param file 上传的学员信息 Excel 文件
+ * @return 导入条数
+ */
+ @PostMapping("/import-students")
+ public Result importStudents(@RequestParam("file") MultipartFile file) throws Exception {
+ int count = studentRecordsService.importStudents(file);
+ return Result.success("导入成功,共" + count + "条", count);
+ }
+
+ // ======================== 班次管理(学员队表) ========================
+
+ /** 新增班次(学员队) */
+ @PostMapping("/team/add")
+ public Result addTeam(@RequestBody XYDB entity) {
+ studentRecordsService.addTeam(entity);
return Result.success();
}
- @PostMapping("/downgrade")
- public Result downgrade(@RequestParam("bh") String bh) {
- studentRecordsService.downgrade(bh);
+ /** 删除班次(学员队),按学员队编号 */
+ @PostMapping("/team/delete")
+ public Result deleteTeam(@RequestParam("xydbh") String xydbh) {
+ studentRecordsService.deleteTeam(xydbh);
return Result.success();
}
- @PostMapping("/drop-out")
- public Result dropOut(@RequestParam("bh") String bh) {
- studentRecordsService.dropOut(bh);
+ /** 修改班次(学员队) */
+ @PostMapping("/team/update")
+ public Result updateTeam(@RequestBody XYDB entity) {
+ studentRecordsService.updateTeam(entity);
return Result.success();
}
+ /** 根据学员队编号查询班次详情 */
+ @GetMapping("/team/get")
+ public Result getTeam(@RequestParam("xydbh") String xydbh) {
+ return Result.success(studentRecordsService.getTeamById(xydbh));
+ }
+
+ /** 分页条件查询班次列表(支持学员队名称、年级、专业代号、任务类别、学员队类型筛选) */
+ @GetMapping("/team/list")
+ public Result> listTeam(PageQuery query, XYDB cond) {
+ return Result.success(studentRecordsService.pageTeam(query, cond));
+ }
+
+ /** 从 Excel(.xls/.xlsx) 导入班次数据(模板列与学员队表字段一致,共 21 列) */
+ @PostMapping("/team/import")
+ public Result importTeam(@RequestParam("file") MultipartFile file) throws Exception {
+ int count = studentRecordsService.importTeam(file);
+ return Result.success("导入成功,共" + count + "条", count);
+ }
+
+ /** 导出班次数据到 Excel(.xls),可按条件筛选导出 */
+ @GetMapping("/team/export")
+ public void exportTeam(XYDB cond, HttpServletResponse response) throws Exception {
+ studentRecordsService.exportTeam(cond, response);
+ }
+
+ // ======================== 学员学籍异动申请 ========================
+
+ /**
+ * 新增学员学籍异动申请
+ * 后台自动写入创建时间和修改时间;状态为空时默认 0(待审核)。
+ */
+ @PostMapping("/application/add")
+ public Result addApplication(@RequestBody XYXJYDSQB entity) {
+ studentRecordsService.addApplication(entity);
+ return Result.success();
+ }
+
+ /**
+ * 删除学员学籍异动申请
+ *
+ * @param bh 异动申请编号
+ */
+ @PostMapping("/application/delete")
+ public Result deleteApplication(@RequestParam("bh") String bh) {
+ studentRecordsService.deleteApplication(bh);
+ return Result.success();
+ }
+
+ /**
+ * 修改学员学籍异动申请
+ * 后台自动刷新修改时间,创建时间保持不变。
+ */
+ @PostMapping("/application/update")
+ public Result updateApplication(@RequestBody XYXJYDSQB entity) {
+ studentRecordsService.updateApplication(entity);
+ return Result.success();
+ }
+
+ /**
+ * 根据编号查询学员学籍异动申请详情
+ *
+ * @param bh 异动申请编号
+ */
+ @GetMapping("/application/get")
+ public Result getApplication(@RequestParam("bh") String bh) {
+ return Result.success(studentRecordsService.getApplicationById(bh));
+ }
+
+ /**
+ * 分页查询学员学籍异动申请列表
+ * 支持按编号、学员编号、申请类型、状态等条件筛选。
+ */
+ @GetMapping("/application/list")
+ public Result> listApplication(PageQuery query, XYXJYDSQB cond) {
+ return Result.success(studentRecordsService.pageApplication(query, cond));
+ }
+
+ // ======================== 学员学籍预警条件 ========================
+
+ /**
+ * 新增学员学籍预警条件
+ * 后台自动写入修改时间。
+ */
+ @PostMapping("/warning-condition/add")
+ public Result addWarningCondition(@RequestBody XYXJYJTJB entity) {
+ studentRecordsService.addWarningCondition(entity);
+ return Result.success();
+ }
+
+ /**
+ * 修改学员学籍预警条件
+ * 后台自动刷新修改时间。
+ */
+ @PostMapping("/warning-condition/update")
+ public Result updateWarningCondition(@RequestBody XYXJYJTJB entity) {
+ studentRecordsService.updateWarningCondition(entity);
+ return Result.success();
+ }
+
+ /**
+ * 根据编号查询学员学籍预警条件
+ *
+ * @param bh 预警条件编号
+ */
+ @GetMapping("/warning-condition/get")
+ public Result getWarningCondition(@RequestParam("bh") String bh) {
+ return Result.success(studentRecordsService.getWarningConditionById(bh));
+ }
+
+ /**
+ * 分页查询学员学籍预警条件列表
+ * 支持按编号、名称、培训类型、培训层次、停用等条件筛选。
+ */
+ @GetMapping("/warning-condition/list")
+ public Result> listWarningCondition(PageQuery query, XYXJYJTJB cond) {
+ return Result.success(studentRecordsService.pageWarningCondition(query, cond));
+ }
+
+ // ======================== 学员学籍预警结果 ========================
+
+ /**
+ * 根据编号查询学员学籍预警结果
+ *
+ * @param bh 预警结果编号
+ */
+ @GetMapping("/warning-result/get")
+ public Result getWarningResult(@RequestParam("bh") String bh) {
+ return Result.success(studentRecordsService.getWarningResultById(bh));
+ }
+
+ /**
+ * 分页查询学员学籍预警结果列表
+ * 用于查看是否有学员触发预警条件,从而展示预警结果。
+ * 支持按编号、年度、预警条件编号、学员编号、发布等条件筛选。
+ */
+ @GetMapping("/warning-result/list")
+ public Result> listWarningResult(PageQuery query, XYXJYJJGB cond) {
+ return Result.success(studentRecordsService.pageWarningResult(query, cond));
+ }
+
+ // ======================== 班次学期管理 ========================
+
+ /** 新增班次学期(写入班次学期表 XYDNDXQJBXXB) */
+ @PostMapping("/semester/add")
+ public Result semesterAdd(@RequestBody XYDNDXQJBXXB xydndxqjbxxb) {
+ classSemesterService.add(xydndxqjbxxb);
+ return Result.success();
+ }
+
+ /** 删除班次学期(逻辑删除,按编号) */
+ @PostMapping("/semester/delete")
+ public Result semesterDelete(@RequestParam("bh") String bh) {
+ classSemesterService.delete(bh);
+ return Result.success();
+ }
+
+ /** 批量删除班次学期(按编号列表) */
+ @PostMapping("/semester/batchDelete")
+ public Result semesterBatchDelete(@RequestBody List bhList) {
+ classSemesterService.batchDelete(bhList);
+ return Result.success();
+ }
+
+ /**
+ * 批量修改班次学期的日期范围,并同步更新班次学期日历:
+ * 删除日期范围之外的日历记录、补充新日期范围内缺少的日历记录。
+ *
+ * @param params 包含 bhList(编号列表)、xqkssj(学期开始时间)、xqjssj(学期结束时间)
+ * @return 更新数量
+ */
+ @PostMapping("/semester/batchUpdateDateRange")
+ public Result semesterBatchUpdateDateRange(@RequestBody Map params) {
+ List bhList = (List) params.get("bhList");
+ String xqkssj = (String) params.get("xqkssj");
+ String xqjssj = (String) params.get("xqjssj");
+ int count = classSemesterService.batchUpdateDateRange(bhList, xqkssj, xqjssj);
+ return Result.success(count);
+ }
+
+ /**
+ * 批量修改开放教员排课状态。
+ *
+ * @param params 包含 bhList(编号列表)、kfjypk(0-否,1-是)
+ * @return 更新数量
+ */
+ @PostMapping("/semester/batchUpdateKfjypk")
+ public Result semesterBatchUpdateKfjypk(@RequestBody Map params) {
+ List bhList = (List) params.get("bhList");
+ Integer kfjypk = (Integer) params.get("kfjypk");
+ int count = classSemesterService.batchUpdateKfjypk(bhList, kfjypk);
+ return Result.success(count);
+ }
+
+ /**
+ * 批量修改班次学期的学期第次。
+ *
+ * @param params 包含 bhList(编号列表)、xqdc(学期第次)
+ * @return 更新数量
+ */
+ @PostMapping("/semester/batchUpdateXqdc")
+ public Result semesterBatchUpdateXqdc(@RequestBody Map params) {
+ List bhList = (List) params.get("bhList");
+ Integer xqdc = (Integer) params.get("xqdc");
+ int count = classSemesterService.batchUpdateXqdc(bhList, xqdc);
+ return Result.success(count);
+ }
+
+ /**
+ * 批量修改班次学期的教学任务编号。
+ *
+ * @param params 包含 bhList(编号列表)、jxrwbh(教学任务编号)
+ * @return 更新数量
+ */
+ @PostMapping("/semester/batchUpdateJxrwbh")
+ public Result semesterBatchUpdateJxrwbh(@RequestBody Map params) {
+ List bhList = (List) params.get("bhList");
+ String jxrwbh = (String) params.get("jxrwbh");
+ int count = classSemesterService.batchUpdateJxrwbh(bhList, jxrwbh);
+ return Result.success(count);
+ }
+
+ /** 更新班次学期 */
+ @PostMapping("/semester/update")
+ public Result semesterUpdate(@RequestBody XYDNDXQJBXXB xydndxqjbxxb) {
+ classSemesterService.update(xydndxqjbxxb);
+ return Result.success();
+ }
+
+ /** 根据编号查询班次学期详情 */
+ @GetMapping("/semester/get")
+ public Result semesterGet(@RequestParam("bh") String bh) {
+ return Result.success(classSemesterService.getByBh(bh));
+ }
+
+ /** 分页条件查询班次学期列表 */
+ @GetMapping("/semester/list")
+ public Result> semesterList(PageQuery query, XYDNDXQJBXXB cond) {
+ return Result.success(classSemesterService.pageList(query, cond));
+ }
+
+ /** 查询所有有效的班次学期数据(DEL_FLAG = 0) */
+ @GetMapping("/semester/all")
+ public Result> semesterAll() {
+ return Result.success(classSemesterService.listAllValid());
+ }
+
+ /**
+ * 根据选修班次列表批量添加班次学期,并生成对应的班次学期日历。
+ * 筛选条件:学员队入学日期 <= startTime 且 毕业日期 >= endTime。
+ *
+ * @param startTime 时间范围开始(起始日,格式 yyyy-MM-dd)
+ * @param endTime 时间范围结束(截止日,格式 yyyy-MM-dd)
+ * @param nd 年度
+ * @param xqdc 学期第次
+ * @return 添加数量
+ */
+ @PostMapping("/semester/batchAddFromElective")
+ public Result semesterBatchAddFromElective(
+ @RequestParam("startTime") String startTime,
+ @RequestParam("endTime") String endTime,
+ @RequestParam("nd") String nd,
+ @RequestParam("xqdc") String xqdc) {
+ LocalDateTime start = LocalDateTime.parse(startTime + "T00:00:00");
+ LocalDateTime end = LocalDateTime.parse(endTime + "T23:59:59");
+ int count = classSemesterService.batchAddFromElective(start, end, nd, xqdc, startTime, endTime);
+ return Result.success(count);
+ }
+
// ======================== 课程成绩查询 ========================
/**
@@ -99,8 +403,6 @@ public class StudentRecordsController {
return Result.success(studentRecordsService.getCourseProcessGrades(xybh));
}
- // ======================== Excel 导出 ========================
-
/**
* 导出学员课程成绩 Excel
*
@@ -111,4 +413,15 @@ public class StudentRecordsController {
public void exportGrades(@RequestParam("xybh") String xybh, HttpServletResponse response) {
studentRecordsService.exportGradesExcel(xybh, response);
}
+
+ /**
+ * 导出学员课程过程成绩 Excel(对应 /student-records/process-grades 的导出)
+ *
+ * @param xybh 学员编号
+ * @param response HTTP 响应
+ */
+ @GetMapping("/export-process-grades")
+ public void exportProcessGrades(@RequestParam("xybh") String xybh, HttpServletResponse response) {
+ studentRecordsService.exportProcessGradesExcel(xybh, response);
+ }
}
diff --git a/backend/roomroot-admin/src/main/resources/application-druid.yml b/backend/roomroot-admin/src/main/resources/application-druid.yml
index 52ea2b73b..742526c8c 100644
--- a/backend/roomroot-admin/src/main/resources/application-druid.yml
+++ b/backend/roomroot-admin/src/main/resources/application-druid.yml
@@ -3,7 +3,7 @@ spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource
# 达梦连接串:ip:端口,schema指定默认模式
- url: jdbc:dm://192.168.1.27:5236?schema=JIAOWU&useUnicode=true&characterEncoding=utf-8
+ url: jdbc:dm://10.1.1.17:5236?schema=JIAOWU&useUnicode=true&characterEncoding=utf-8
username: JIAOWU
password: Jiaowu123
driver-class-name: dm.jdbc.driver.DmDriver
diff --git a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/KB.java b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/KB.java
index c28f50590..ee261b23d 100644
--- a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/KB.java
+++ b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/KB.java
@@ -1,218 +1,181 @@
package com.roomroot.jwgl.entity;
+import com.baomidou.mybatisplus.annotation.FieldStrategy;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
-import com.roomroot.jwgl.unit.BaseEntity;
import lombok.Data;
-import lombok.EqualsAndHashCode;
import java.time.LocalDateTime;
/**
* 课表
+ *
+ * 课程科目目录,对应数据表:课表。主键为课编号。
+ *
*/
@Data
-@EqualsAndHashCode(callSuper = true)
@TableName("课表")
-public class KB extends BaseEntity {
+public class KB {
- /**
- * 课编号
- */
+ /** 课编号 */
+ @TableId(value = "课编号", type = IdType.INPUT)
private String kbh;
- /**
- * 课名称
- */
+ /** 课名称 */
+ @TableField("课名称")
private String kmc;
- /**
- * 教研室代号
- */
+ /** 教研室代号 */
+ @TableField("教研室代号")
private String jysdh;
- /**
- * 备注
- */
+ /** 备注 */
+ @TableField("备注")
private String bz;
- /**
- * 序号
- */
+ /** 序号 */
+ @TableField("序号")
private String xh;
- /**
- * 学分
- */
+ /** 学分 */
+ @TableField("学分")
private Float xf;
- /**
- * 简称
- */
+ /** 简称 */
+ @TableField("简称")
private String jc;
- /**
- * 学时
- */
+ /** 学时 */
+ @TableField("学时")
private Integer xs;
- /**
- * 培训层次
- */
+ /** 培训层次 */
+ @TableField("培训层次")
private String pxcc;
- /**
- * 培训类型
- */
+ /** 培训类型 */
+ @TableField("培训类型")
private String pxlx;
- /**
- * 课程类型
- */
+ /** 课程类型 */
+ @TableField("课程类型")
private String kclx;
- /**
- * 考试课时
- */
+ /** 考试课时 */
+ @TableField("考试课时")
private Integer ksks;
- /**
- * 拼音
- */
+ /** 拼音 */
+ @TableField("拼音")
private String py;
- /**
- * 规范名称
- */
+ /** 规范名称 */
+ @TableField("规范名称")
private String gfmc;
- /**
- * 成绩分制
- */
+ /** 成绩分制 */
+ @TableField("成绩分制")
private String cjfz;
- /**
- * 不计入学员平均分
- */
+ /** 不计入学员平均分 */
+ @TableField("不计入学员平均分")
private Integer bjrxypjf;
- /**
- * 教学管理部门编号
- */
+ /** 教学管理部门编号 */
+ @TableField("教学管理部门编号")
private String jxglbmbh;
- /**
- * 理论学时
- */
+ /** 理论学时 */
+ @TableField("理论学时")
private Integer llxs;
- /**
- * 实践学时
- */
+ /** 实践学时 */
+ @TableField("实践学时")
private Integer sjxs;
- /**
- * 科目代码
- */
+ /** 科目代码 */
+ @TableField("科目代码")
private String kmdm;
- /**
- * 周课时
- */
+ /** 周课时 */
+ @TableField("周课时")
private Integer zks;
- /**
- * 课类型
- */
+ /** 课类型 */
+ @TableField("课类型")
private String klx;
- /**
- * 考试课时不显示
- */
+ /** 考试课时不显示 */
+ @TableField("考试课时不显示")
private Integer ksksbxs;
- /**
- * 课程统一编号
- */
+ /** 课程统一编号 */
+ @TableField("课程统一编号")
private String kctybh;
- /**
- * 适用对象
- */
+ /** 适用对象 */
+ @TableField("适用对象")
private String sydx;
- /**
- * 辅导答疑课时
- */
+ /** 辅导答疑课时 */
+ @TableField("辅导答疑课时")
private Integer fddyks;
- /**
- * 自修课时
- */
+ /** 自修课时 */
+ @TableField("自修课时")
private Integer zxks;
- /**
- * 版本
- */
+ /** 版本 */
+ @TableField("版本")
private String bb;
- /**
- * 修订日期
- */
+ /** 修订日期 */
+ @TableField("修订日期")
private LocalDateTime xdrq;
- /**
- * 序号标识
- */
+ /** 序号标识 */
+ @TableField(value = "序号标识", insertStrategy = FieldStrategy.NEVER, updateStrategy = FieldStrategy.NEVER)
private Integer xhbs;
- /**
- * 节次优选级
- */
+ /** 节次优选级 */
+ @TableField("节次优选级")
private Integer jcyxj;
- /**
- * 课程支持方式
- */
+ /** 课程支持方式 */
+ @TableField("课程支持方式")
private String kczcfs;
- /**
- * 课程建设方式
- */
+ /** 课程建设方式 */
+ @TableField("课程建设方式")
private String kcjsfs;
- /**
- * json字典
- */
+ /** json字典 */
+ @TableField("json字典")
private String jsonzd;
- /**
- * 政治类课程
- */
+ /** 政治类课程 */
+ @TableField("政治类课程")
private Integer zzlkc;
- /**
- * 考核方式
- */
+ /** 考核方式 */
+ @TableField("考核方式")
private String khfs;
- /**
- * 形成性成绩分值
- */
+ /** 形成性成绩分值 */
+ @TableField("形成性成绩分值")
private Float xcxcjfz;
- /**
- * 终结性成绩分值
- */
+ /** 终结性成绩分值 */
+ @TableField("终结性成绩分值")
private Float zjxcjfz;
- /**
- * 密级
- */
+ /** 密级 */
+ @TableField("密级")
private String mj;
- /**
- * 评选情况
- */
+ /** 评选情况 */
+ @TableField("评选情况")
private String pxqk;
-
}
diff --git a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/KSFBZ.java b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/KSFBZ.java
index 5918fe013..7d7a272a5 100644
--- a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/KSFBZ.java
+++ b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/KSFBZ.java
@@ -8,69 +8,72 @@ import lombok.EqualsAndHashCode;
import java.time.LocalDateTime;
/**
- * 课时费标准(课时核算标准)
+ * 课时费标准(课时核算标准方案)
*
- * 定义课时费核算的基准参数,包括各种绩效等级对应的补助标准。
+ * 对应表:课时费标准。定义课时费核算的基准参数,包括各绩效等级补助。
*
*/
@Data
-@EqualsAndHashCode(callSuper = true)
@TableName("课时费标准")
-public class KSFBZ extends BaseEntity {
+public class KSFBZ {
+ /** 编号 CHAR(36) */
@TableId(value = "编号", type = IdType.INPUT)
private String bh;
+ /** 名称 VARCHAR(50) */
@TableField("名称")
private String mc;
+ /** 默认标准课时量 */
@TableField("默认标准课时量")
private Double mrbzksl;
+ /** 默认课时费标准 */
@TableField("默认课时费标准")
private Double mrksfbz;
+ /** 默认超量课时费标准 */
@TableField("默认超量课时费标准")
private Double mrclksfbz;
+ /** 相关教学补助课时费标准 */
@TableField("相关教学补助课时费标准")
private Double xgjxbzksfbz;
+ /** 绩效优秀补助 */
@TableField("绩效优秀补助")
private Double jxyxbz;
+ /** 绩效良好补助 */
@TableField("绩效良好补助")
private Double jxlhbz;
+ /** 绩效中等补助 */
@TableField("绩效中等补助")
private Double jxzdbz;
+ /** 绩效及格补助 */
@TableField("绩效及格补助")
private Double jxjgbz;
+ /** 绩效不及格补助 */
@TableField("绩效不及格补助")
private Double jxbjgbz;
+ /** 说明 VARCHAR(500) */
@TableField("说明")
private String sm;
+ /** 备注 VARCHAR(500) */
@TableField("备注")
private String bz;
+ /** 创建时间 */
@TableField("创建时间")
private LocalDateTime cjsj;
+ /** 修改时间 */
@TableField("修改时间")
private LocalDateTime xgsj;
-
- @TableField(exist = false)
- private LocalDateTime createTime;
- @TableField(exist = false)
- private LocalDateTime updateTime;
- @TableField(exist = false)
- private String createBy;
- @TableField(exist = false)
- private String updateBy;
- @TableField(exist = false)
- private Integer delFlag;
}
diff --git a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/KSTJB.java b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/KSTJB.java
index 254350686..56e88cd79 100644
--- a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/KSTJB.java
+++ b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/KSTJB.java
@@ -1,44 +1,35 @@
package com.roomroot.jwgl.entity;
-import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
-import com.roomroot.jwgl.unit.BaseEntity;
+import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
-import lombok.EqualsAndHashCode;
/**
* 课时统计表
*/
@Data
-@EqualsAndHashCode(callSuper = true)
@TableName("课时统计表")
-public class KSTJB extends BaseEntity {
+public class KSTJB {
- /**
- * 年份
- */
- private Integer nF;
+ /** 年份 */
+ @TableField("年份")
+ private Integer nf;
- /**
- * 教员编号
- */
+ /** 教员编号 */
@TableId(value = "教员编号", type = IdType.INPUT)
- private String jYBH;
+ private String jybh;
- /**
- * 上半年
- */
- private Double sBN;
+ /** 上半年 */
+ @TableField("上半年")
+ private Double sbn;
- /**
- * 下半年
- */
- private Double xBN;
-
- /**
- * 职称
- */
- private String zC;
+ /** 下半年 */
+ @TableField("下半年")
+ private Double xbn;
+ /** 职称 */
+ @TableField("职称")
+ private String zc;
}
diff --git a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/XYXJYDSQB.java b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/XYXJYDSQB.java
index 97c76d1b8..b06a955fe 100644
--- a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/XYXJYDSQB.java
+++ b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/XYXJYDSQB.java
@@ -2,10 +2,9 @@ package com.roomroot.jwgl.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
-import com.roomroot.jwgl.unit.BaseEntity;
import lombok.Data;
-import lombok.EqualsAndHashCode;
import java.time.LocalDateTime;
@@ -13,84 +12,67 @@ import java.time.LocalDateTime;
* 学员学籍异动申请表
*/
@Data
-@EqualsAndHashCode(callSuper = true)
@TableName("学员学籍异动申请表")
-public class XYXJYDSQB extends BaseEntity {
+public class XYXJYDSQB {
- /**
- * 编号
- */
+ /** 编号 */
@TableId(value = "编号", type = IdType.INPUT)
private String bh;
- /**
- * 学员编号
- */
+ /** 学员编号 */
+ @TableField("学员编号")
private String xybh;
- /**
- * 申请类型
- */
+ /** 申请类型 */
+ @TableField("申请类型")
private String sqlx;
- /**
- * 事由
- */
+ /** 事由 */
+ @TableField("事由")
private String sy;
- /**
- * 备注
- */
+ /** 备注 */
+ @TableField("备注")
private String bz;
- /**
- * 状态
- */
+ /** 状态:0-待审核 1-已审核 2-驳回等 */
+ @TableField("状态")
private String zt;
- /**
- * 创建时间
- */
+ /** 创建时间 */
+ @TableField("创建时间")
private LocalDateTime cjsj;
- /**
- * 修改时间
- */
+ /** 修改时间 */
+ @TableField("修改时间")
private LocalDateTime xgsj;
- /**
- * 提交时间
- */
+ /** 提交时间 */
+ @TableField("提交时间")
private LocalDateTime tjsj;
- /**
- * 学员队审核意见
- */
+ /** 学员队审核意见 */
+ @TableField("学员队审核意见")
private String xydshyj;
- /**
- * 学员队干部编号
- */
+ /** 学员队干部编号 */
+ @TableField("学员队干部编号")
private String xydgbbh;
- /**
- * 学员队审核时间
- */
+ /** 学员队干部审核时间 */
+ @TableField("学员队干部审核时间")
private LocalDateTime xydshsj;
- /**
- * 管理员审核时间
- */
+ /** 管理员审核时间 */
+ @TableField("管理员审核时间")
private LocalDateTime glyshsj;
- /**
- * 管理员审核意见
- */
+ /** 管理员审核意见 */
+ @TableField("管理员审核意见")
private String glyshyj;
- /**
- * 管理员账户编号
- */
+ /** 管理员账户编号 */
+ @TableField("管理员账户编号")
private String glyzhbh;
}
diff --git a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/XYXJYJJGB.java b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/XYXJYJJGB.java
index e6e9a75d5..a91ebd0f5 100644
--- a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/XYXJYJJGB.java
+++ b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/XYXJYJJGB.java
@@ -2,55 +2,48 @@ package com.roomroot.jwgl.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
-import com.roomroot.jwgl.unit.BaseEntity;
import lombok.Data;
-import lombok.EqualsAndHashCode;
import java.time.LocalDateTime;
/**
* 学员学籍预警结果表
+ *
+ * 字段与数据库表“学员学籍预警结果表”逐列对应。
+ *
*/
@Data
-@EqualsAndHashCode(callSuper = true)
@TableName("学员学籍预警结果表")
-public class XYXJYJJGB extends BaseEntity {
+public class XYXJYJJGB {
- /**
- * 编号
- */
+ /** 编号 */
@TableId(value = "编号", type = IdType.INPUT)
private String bh;
- /**
- * 年度
- */
+ /** 年度 */
+ @TableField("年度")
private Integer nd;
- /**
- * 预警条件编号
- */
+ /** 预警条件编号 */
+ @TableField("预警条件编号")
private String yjtjbh;
- /**
- * 学员编号
- */
+ /** 学员编号 */
+ @TableField("学员编号")
private String xybh;
- /**
- * 创建时间
- */
+ /** 创建时间 */
+ @TableField("创建时间")
private LocalDateTime cjsj;
- /**
- * 发布
- */
+ /** 发布 */
+ @TableField("发布")
private Integer fb;
- /**
- * 发布时间
- */
+ /** 发布时间 */
+ @TableField("发布时间")
private LocalDateTime fbsj;
}
diff --git a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/XYXJYJTJB.java b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/XYXJYJTJB.java
index 58ac514b7..a7fda1394 100644
--- a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/XYXJYJTJB.java
+++ b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/XYXJYJTJB.java
@@ -2,115 +2,96 @@ package com.roomroot.jwgl.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
-import com.roomroot.jwgl.unit.BaseEntity;
import lombok.Data;
-import lombok.EqualsAndHashCode;
import java.time.LocalDateTime;
/**
* 学员学籍预警条件表
+ *
+ * 字段与数据库表“学员学籍预警条件表”逐列对应。
+ *
*/
@Data
-@EqualsAndHashCode(callSuper = true)
@TableName("学员学籍预警条件表")
-public class XYXJYJTJB extends BaseEntity {
+public class XYXJYJTJB {
- /**
- * 编号
- */
+ /** 编号 */
@TableId(value = "编号", type = IdType.INPUT)
- private String bH;
+ private String bh;
- /**
- * 名称
- */
- private String mC;
+ /** 名称 */
+ @TableField("名称")
+ private String mc;
- /**
- * 培训类型
- */
- private String pXLX;
+ /** 培训类型 */
+ @TableField("培训类型")
+ private String pxlx;
- /**
- * 培训层次
- */
- private String pXCC;
+ /** 培训层次 */
+ @TableField("培训层次")
+ private String pxcc;
- /**
- * 当前学期考试不及格门数上限
- */
- private Integer dQXQKSBJGMSSX;
+ /** 当前学期考试不及格门数上限 */
+ @TableField("当前学期考试不及格门数上限")
+ private Integer dqxqksbjgmssx;
- /**
- * 当前学期考试不及格门数下限
- */
- private Integer dQXQKSBJGMSXX;
+ /** 当前学期考试不及格门数下限 */
+ @TableField("当前学期考试不及格门数下限")
+ private Integer dqxqksbjgmsxx;
- /**
- * 当前学期考查不及格门数上限
- */
- private Integer dQXQKCBJGMSSX;
+ /** 当前学期考查不及格门数上限 */
+ @TableField("当前学期考查不及格门数上限")
+ private Integer dqxqkcbjgmssx;
- /**
- * 当前学期考查不及格门数下限
- */
- private Integer dQXQKCBJGMSXX;
+ /** 当前学期考查不及格门数下限 */
+ @TableField("当前学期考查不及格门数下限")
+ private Integer dqxqkcbjgmsxx;
- /**
- * 当前学期不及格门数上限
- */
- private Integer dQXQBJGMSSX;
+ /** 当前学期不及格门数上限 */
+ @TableField("当前学期不及格门数上限")
+ private Integer dqxqbjgmssx;
- /**
- * 当前学期不及格门数下限
- */
- private Integer dQXQBJGMSXX;
+ /** 当前学期不及格门数下限 */
+ @TableField("当前学期不及格门数下限")
+ private Integer dqxqbjgmsxx;
- /**
- * 全部考试不及格门数上限
- */
- private Integer qBKSBJGMSSX;
+ /** 全部考试不及格门数上限 */
+ @TableField("全部考试不及格门数上限")
+ private Integer qbksbjgmssx;
- /**
- * 全部考试不及格门数下限
- */
- private Integer qBKSBJGMSXX;
+ /** 全部考试不及格门数下限 */
+ @TableField("全部考试不及格门数下限")
+ private Integer qbksbjgmsxx;
- /**
- * 全部考查不及格门数上限
- */
- private Integer qBKCBJGMSSX;
+ /** 全部考查不及格门数上限 */
+ @TableField("全部考查不及格门数上限")
+ private Integer qbkcbjgmssx;
- /**
- * 全部考查不及格门数下限
- */
- private Integer qBKCBJGMSXX;
+ /** 全部考查不及格门数下限 */
+ @TableField("全部考查不及格门数下限")
+ private Integer qbkcbjgmsxx;
- /**
- * 全部不及格门数上限
- */
- private Integer qBBJGMSSX;
+ /** 全部不及格门数上限 */
+ @TableField("全部不及格门数上限")
+ private Integer qbbjgmssx;
- /**
- * 全部不及格门数下限
- */
- private Integer qBBJGMSXX;
+ /** 全部不及格门数下限 */
+ @TableField("全部不及格门数下限")
+ private Integer qbbjgmsxx;
- /**
- * 停用
- */
- private Boolean tY;
+ /** 停用 */
+ @TableField("停用")
+ private Integer ty;
- /**
- * 版本
- */
- private String bB;
+ /** 版本 */
+ @TableField("版本")
+ private String bb;
- /**
- * 修改时间
- */
- private LocalDateTime xGSJ;
+ /** 修改时间 */
+ @TableField("修改时间")
+ private LocalDateTime xgsj;
}
diff --git a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/XYXX.java b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/XYXX.java
index 2fc711164..4091d676a 100644
--- a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/XYXX.java
+++ b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/XYXX.java
@@ -117,17 +117,17 @@ public class XYXX {
@TableField("身份证号")
private String sfzh;
- /** 退学状态 */
+ /** 退学状态 0在读 1退学 */
@TableField("退学状态")
- private String txzt;
+ private Integer txzt;
/** 留级状态 */
- @TableField("留级状态")
- private String ljzt;
+ @TableField("留级状态 0 1留级")
+ private Integer ljzt;
/** 分班状态 */
@TableField("分班状态")
- private String fbzt;
+ private Integer fbzt;
/** 论文编号 */
@TableField("论文编号")
diff --git a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/ZYB.java b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/ZYB.java
index 2e982227e..7fb0cc80e 100644
--- a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/ZYB.java
+++ b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/entity/ZYB.java
@@ -1,5 +1,6 @@
package com.roomroot.jwgl.entity;
+import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
@@ -20,8 +21,8 @@ import java.time.LocalDateTime;
@TableName("专业表")
public class ZYB {
- /** 专业代号(主键) */
- @TableId(value = "专业代号", type = IdType.AUTO)
+ /** 专业代号 VARCHAR(50),主键,非自增 */
+ @TableId(value = "专业代号", type = IdType.INPUT)
private String zydh;
/** 专业名称 */
@@ -100,8 +101,8 @@ public class ZYB {
@TableField("专业标识号")
private String zybsh;
- /** 序号标识 */
- @TableField("序号标识")
+ /** 序号标识 IDENTITY(1000,1),插入/更新时由数据库生成 */
+ @TableField(value = "序号标识", insertStrategy = FieldStrategy.NEVER, updateStrategy = FieldStrategy.NEVER)
private Integer xhbs;
/** 简称 */
@@ -116,8 +117,8 @@ public class ZYB {
@TableField("系统模式")
private String xtms;
- /** json字典 */
- @TableField("JSONZD")
+ /** json字典 NVARCHAR(4000) */
+ @TableField("json字典")
private String jsonzd;
/** 主干专业 */
diff --git a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/FZQZBZMapper.xml b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/FZQZBZMapper.xml
deleted file mode 100644
index 7833f374c..000000000
--- a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/FZQZBZMapper.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-编号, 序号, 名称, 创建时间, 停用状态, 备注, 停用时间, 说明
-
-
-
diff --git a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/FZQZBZQZGZMapper.xml b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/FZQZBZQZGZMapper.xml
deleted file mode 100644
index fe777c1a9..000000000
--- a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/FZQZBZQZGZMapper.xml
+++ /dev/null
@@ -1,90 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-编号, 序号, 分值权重标准编号, 名称, 详细信息, 权值, 备注
-
-
-
-
-
-
-
-
-
-
-
- INSERT INTO 分值权重标准_权重规则 (编号, 序号, 分值权重标准编号, 名称, 详细信息, 权值, 备注)
- SELECT #{rule.bh}, #{rule.xh}, #{rule.fzqzbzbh}, #{rule.mc}, #{rule.xxxx}, #{rule.qz}, #{rule.bz}
- FROM DUAL
- WHERE NOT EXISTS (
- SELECT 1 FROM 分值权重标准_权重规则
- WHERE 编号 = #{rule.bh}
- )
-
-
-
- UPDATE 分值权重标准_权重规则
- SET 序号 = #{rule.xh},
- 分值权重标准编号 = #{rule.fzqzbzbh},
- 名称 = #{rule.mc},
- 详细信息 = #{rule.xxxx},
- 权值 = #{rule.qz},
- 备注 = #{rule.bz}
- WHERE 编号 = #{rule.bh}
-
-
-
-
-
-
-
- DELETE FROM 分值权重标准_权重规则
- WHERE 分值权重标准编号 = #{standardId}
-
-
-
- DELETE FROM 分值权重标准_权重规则
- WHERE 编号 = #{id}
-
-
-
\ No newline at end of file
diff --git a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/FZZHGZBZCPJGYSMapper.xml b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/FZZHGZBZCPJGYSMapper.xml
deleted file mode 100644
index f77b6f195..000000000
--- a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/FZZHGZBZCPJGYSMapper.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-编号, 名称, 备注, 序号
-
-
-
diff --git a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/JCSJBMapper.xml b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/JCSJBMapper.xml
deleted file mode 100644
index 649c839cc..000000000
--- a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/JCSJBMapper.xml
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-编号, 双节次, 节次索引, 开始时间, 结束时间, 备注, 名称, 简称, 时段
-
-
-
diff --git a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/JSZWMapper.xml b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/JSZWMapper.xml
deleted file mode 100644
index 5a48cf602..000000000
--- a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/JSZWMapper.xml
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-编号, 代码, 名称, 备注
-
-
-
diff --git a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/KSBMapper.java b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/KSBMapper.java
deleted file mode 100644
index d1dd12a9a..000000000
--- a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/KSBMapper.java
+++ /dev/null
@@ -1,12 +0,0 @@
-package com.roomroot.jwgl.mapper;
-
-import com.baomidou.mybatisplus.core.mapper.BaseMapper;
-import com.roomroot.jwgl.entity.KSB;
-import org.apache.ibatis.annotations.Mapper;
-
-/**
- * 考试表 Mapper
- */
-@Mapper
-public interface KSBMapper extends BaseMapper {
-}
diff --git a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/KSTJBMapper.java b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/KSTJBMapper.java
index 10eea5f50..a52b50c50 100644
--- a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/KSTJBMapper.java
+++ b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/KSTJBMapper.java
@@ -1,12 +1,33 @@
package com.roomroot.jwgl.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.roomroot.jwgl.dto.ks.HourStatisticsQuery;
import com.roomroot.jwgl.entity.KSTJB;
+import com.roomroot.jwgl.vo.ks.HourStatisticsVO;
import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
/**
* 课时统计表 Mapper
*/
@Mapper
public interface KSTJBMapper extends BaseMapper {
+
+ /**
+ * 按教研室、教员、课时统计表联查课时数据。
+ *
+ * @param page 分页
+ * @param cond 年份、教员姓名、教员编号
+ * @return 分页结果
+ */
+ Page selectHourStatistics(Page page,
+ @Param("cond") HourStatisticsQuery cond);
+
+ /**
+ * 导出用:不分页查询课时统计联查结果。
+ */
+ List selectHourStatisticsList(@Param("cond") HourStatisticsQuery cond);
}
diff --git a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/KSTJBMapper.xml b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/KSTJBMapper.xml
index e91175f25..476e7d3ce 100644
--- a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/KSTJBMapper.xml
+++ b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/KSTJBMapper.xml
@@ -3,15 +3,64 @@
-
-
-
-
-
+
+
+
+
+
-
-年份, 教员编号, 上半年, 下半年, 职称
+
+
+
+
+
+
+
+
+
+
+
+
+ FROM "教研室表" jys
+ INNER JOIN "教员表" j ON jys."教研室代号" = j."教研室代号"
+ INNER JOIN "课时统计表" c ON j."教员编号" = c."教员编号"
+
+
+ AND c."年份" = #{cond.nd}
+
+
+ AND j."教员姓名" LIKE CONCAT('%', #{cond.jyxm}, '%')
+
+
+ AND j."教员编号" = #{cond.jybh}
+
+
+
+ jys."教研室代号" AS jysdh,
+ jys."教研室名称" AS jysmc,
+ j."教员编号" AS jybh,
+ j."教员姓名" AS jyxm,
+ COALESCE(c."职称", j."职称") AS zc,
+ c."年份" AS nf,
+ COALESCE(c."上半年", 0) AS sbn,
+ COALESCE(c."下半年", 0) AS xbn
+
+
+
+
+
+
diff --git a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/KTJXFFMapper.xml b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/KTJXFFMapper.xml
deleted file mode 100644
index 19bf2717a..000000000
--- a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/KTJXFFMapper.xml
+++ /dev/null
@@ -1,106 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-名称, 日课表序号, 显示颜色, 背景颜色, 考核, 讲授方式, 需审批
-
-
-
-
-
-
-
-
-
- INSERT INTO 课堂教学方法 (
- 名称, 日课表序号, 显示颜色, 背景颜色,
- 考核, 讲授方式, 需审批
- )
- SELECT
- #{teachingMethod.mC}, #{teachingMethod.rKBXH},
- #{teachingMethod.xSYS}, #{teachingMethod.bJYS},
- #{teachingMethod.kH}, #{teachingMethod.jSFS},
- #{teachingMethod.xSP}
- FROM DUAL
- WHERE NOT EXISTS (
- SELECT 1
- FROM 课堂教学方法
- WHERE 名称 = #{teachingMethod.mC}
- )
-
-
-
- UPDATE 课堂教学方法
- SET 名称 = #{teachingMethod.mC},
- 日课表序号 = #{teachingMethod.rKBXH},
- 显示颜色 = #{teachingMethod.xSYS},
- 背景颜色 = #{teachingMethod.bJYS},
- 考核 = #{teachingMethod.kH},
- 讲授方式 = #{teachingMethod.jSFS},
- 需审批 = #{teachingMethod.xSP}
- WHERE 名称 = #{originalName}
-
-
-
-
-
- DELETE FROM 课堂教学方法
- WHERE 名称 = #{name}
-
-
-
diff --git a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/SSKCB_RZMapper.xml b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/SSKCB_RZMapper.xml
index 3f1841194..6b82c18d5 100644
--- a/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/SSKCB_RZMapper.xml
+++ b/backend/roomroot-jwgl/src/main/java/com/roomroot/jwgl/mapper/SSKCB_RZMapper.xml
@@ -67,7 +67,6 @@