فهرست منبع

Merge branch 'master' of http://gogs.gisvg.com/YDM/graduate

47 3 ماه پیش
والد
کامیت
09f69da535

+ 2 - 2
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/controller/admin/studentSelectSupervisorRecord/StudentSelectSupervisorRecordController.java

@@ -214,7 +214,7 @@ public class StudentSelectSupervisorRecordController {
                 }
             }
             createReqVO.setProjectId(project.getId());
-            createReqVO.setSelectType(2);//同意
+            createReqVO.setSelectType(4);//同意
 
             adminUserService.updateUser(saveReqVO);
             studentSelectSupervisorRecordService.createStudentSelectSupervisorRecord(createReqVO);
@@ -283,8 +283,8 @@ public class StudentSelectSupervisorRecordController {
             } else if (record.getSelectType() == 1) {//待处理的
                 record.setStudentSignature(null);//学生签名
                 record.setStudentSignDate(null);
-                record.setSelectType(2);//同意
             }
+            record.setSelectType(4);//同意
             adminUserService.updateUser(saveReqVO);
             studentSelectSupervisorRecordService.updateRecordNull(BeanUtils.toBean(record, StudentSelectSupervisorRecordSaveReqVO.class));
         return success("志愿修改成功");

+ 10 - 10
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/studentSelectSupervisorRecord/studentSelectSupervisorRecordMapper.java

@@ -53,16 +53,16 @@ public interface studentSelectSupervisorRecordMapper extends BaseMapperX<student
 
         if (roleIds.contains(113L)){//导师看自己的待处理,同意,退回
             queryWrapperX.eqIfPresent(studentSelectSupervisorRecordDO::getSupervisorId,loginUser.getId())
-                    .inIfPresent(studentSelectSupervisorRecordDO::getSelectType,1,2,3)
+                    .inIfPresent(studentSelectSupervisorRecordDO::getSelectType,1,2,3,4)
                     .orderBy(true, true, studentSelectSupervisorRecordDO::getSelectType)
                     .last("ORDER BY FIELD(select_type, 1,2,3)");
         }else if (roleIds.contains(114L)){
             if ( reqVO.getSupervisorId()!=null&&reqVO.getSupervisorId()!=0) {//招生详情学院看对应导师的同意的
-                queryWrapperX.eqIfPresent(studentSelectSupervisorRecordDO::getSelectType, 2);
+                queryWrapperX.inIfPresent(studentSelectSupervisorRecordDO::getSelectType, 2,4);
             }else {//互选记录看所有
-                queryWrapperX.inIfPresent(studentSelectSupervisorRecordDO::getSelectType,0,1,2,3)
+                queryWrapperX.inIfPresent(studentSelectSupervisorRecordDO::getSelectType,0,1,2,3,4)
                         .orderBy(true, true, studentSelectSupervisorRecordDO::getSelectType)
-                        .last("ORDER BY FIELD(select_type,2,1,3,0)");
+                        .last("ORDER BY FIELD(select_type,2,1,3,4,0)");
             }
         }else if (roleIds.contains(112L)){//学生看自己的
             queryWrapperX.eqIfPresent(studentSelectSupervisorRecordDO::getStudentId,loginUser.getId());
@@ -93,16 +93,16 @@ public interface studentSelectSupervisorRecordMapper extends BaseMapperX<student
                 .orderByDesc(studentSelectSupervisorRecordDO::getCreateTime);
         if (roleIds.contains(113L)){//导师看自己的待处理,同意,退回
             queryWrapperX.eqIfPresent(studentSelectSupervisorRecordDO::getSupervisorId,loginUser.getId())
-                    .inIfPresent(studentSelectSupervisorRecordDO::getSelectType,1,2,3)
+                    .inIfPresent(studentSelectSupervisorRecordDO::getSelectType,1,2,3,4)
                     .orderBy(true, true, studentSelectSupervisorRecordDO::getSelectType)
-                    .last("ORDER BY FIELD(select_type, 1,2,3)");
+                    .last("ORDER BY FIELD(select_type, 1,2,3,4)");
         }else if (roleIds.contains(114L)){//
             if ( reqVO.getSupervisorId()!=null&&reqVO.getSupervisorId()!=0) {//招生详情
-                queryWrapperX.eqIfPresent(studentSelectSupervisorRecordDO::getSelectType, 2);
+                queryWrapperX.inIfPresent(studentSelectSupervisorRecordDO::getSelectType, 2,4);
             }else {//互选记录看所有
-                queryWrapperX.inIfPresent(studentSelectSupervisorRecordDO::getSelectType,0,1,2,3)
+                queryWrapperX.inIfPresent(studentSelectSupervisorRecordDO::getSelectType,0,1,2,3,4)
                         .orderBy(true, true, studentSelectSupervisorRecordDO::getSelectType)
-                        .last("ORDER BY FIELD(select_type,2,1,3,0)");
+                        .last("ORDER BY FIELD(select_type,2,1,3,4,0)");
             }
         }else if (roleIds.contains(112L)){//学生看自己的
             queryWrapperX.eqIfPresent(studentSelectSupervisorRecordDO::getStudentId,loginUser.getId());
@@ -171,7 +171,7 @@ public interface studentSelectSupervisorRecordMapper extends BaseMapperX<student
 
         if (roleIds.contains(113L)){//导师看自己的同意和退回
             queryWrapperX.eqIfPresent(studentSelectSupervisorRecordDO::getSupervisorId,loginUser.getId())
-                    .inIfPresent(studentSelectSupervisorRecordDO::getSelectType,2,3);
+                    .inIfPresent(studentSelectSupervisorRecordDO::getSelectType,2,3,4);
         }
         return selectPage(reqVO,queryWrapperX);
     }

+ 2 - 0
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/dal/mysql/user/AdminUserMapper.java

@@ -387,6 +387,7 @@ public interface AdminUserMapper extends BaseMapperX<AdminUserDO> {
         // 使用 select 语句返回计算出来的 selectStatus 字段
         mpjLambdaWrapperX
                 .select("t.*, CASE " +
+                        "    WHEN COALESCE(MAX(t1.select_type), 0) = 4 THEN 4" +
                         "    WHEN COALESCE(MAX(t1.select_type), 0) = 2 THEN 2" +
                         "    WHEN COALESCE(MAX(t1.select_type), 0) = 1 THEN 1 " + // 带处理
                         "    ELSE 0 " + // 未提交
@@ -426,6 +427,7 @@ public interface AdminUserMapper extends BaseMapperX<AdminUserDO> {
 
      //获取用户选择状态
     @Select("SELECT COALESCE(MAX(CASE " +
+            "WHEN r.select_type = 4 THEN 4 " +
             "WHEN r.select_type = 2 THEN 2 " +
             "WHEN r.select_type = 1 THEN 1 " +
             "ELSE 0 " +

+ 1 - 1
yudao-module-system/yudao-module-system-biz/src/main/java/cn/iocoder/yudao/module/system/service/supervisorSelectionSetting/supervisorSelectionSettingServiceImpl.java

@@ -119,6 +119,6 @@ public class supervisorSelectionSettingServiceImpl implements supervisorSelectio
         if (supervisorIds == null || supervisorIds.isEmpty()) {
             return;
         }
-         supervisorSelectionSettingMapper.deleteSettingsBySupervisorIds(projectId,supervisorIds);
+        supervisorSelectionSettingMapper.deleteSettingsBySupervisorIds(projectId,supervisorIds);
     }
 }

+ 1 - 1
yudao-module-system/yudao-module-system-biz/src/main/resources/Mapper/studentSelectSupervisorRecord/studentSelectSupervisorRecordMapper.xml

@@ -107,7 +107,7 @@
 
     </select>
 
-    <update id="updateRecordNull" parameterType="studentSelectSupervisorRecordDO">
+    <update id="updateRecordNull" parameterType="cn.iocoder.yudao.module.system.dal.dataobject.studentSelectSupervisorRecord.studentSelectSupervisorRecordDO">
         UPDATE student_select_supervisor_record
         <set>
             <if test="recordDO.projectId != null">

+ 5 - 2
yudao-module-system/yudao-module-system-biz/src/main/resources/Mapper/user/AdminUserMapper.xml

@@ -428,6 +428,7 @@
         SELECT
         a.*,r.id,r.project_id,r.supervisor_id,
         CASE
+        WHEN COALESCE(MAX(CASE WHEN r.select_type = 4 THEN 1 ELSE 0 END),0) = 1 THEN 4  -- 如果有 4
         WHEN COALESCE(MAX(CASE WHEN r.select_type = 2 THEN 1 ELSE 0 END),0) = 1 THEN 2  -- 如果有 2
         WHEN COALESCE(MAX(CASE WHEN r.select_type = 1 THEN 1 ELSE 0 END),0) = 1 THEN 1  -- 如果没有 2,但有 1
         ELSE 0  -- 其他情况
@@ -499,13 +500,14 @@
         <!-- 合并 HAVING 子句 -->
         HAVING
         CASE
+        WHEN COALESCE(MAX(CASE WHEN r.select_type = 4 THEN 1 ELSE 0 END),0) = 1 THEN 4  -- 如果有 2
         WHEN COALESCE(MAX(CASE WHEN r.select_type = 2 THEN 1 ELSE 0 END),0) = 1 THEN 2  -- 如果有 2
         WHEN COALESCE(MAX(CASE WHEN r.select_type = 1 THEN 1 ELSE 0 END),0) = 1 THEN 1  -- 如果没有 2,但有 1
         ELSE 0
         END
         <choose>
             <when test="isPassed == 0">IN (0, 1)</when>
-            <when test="isPassed == 1">= 2</when>
+            <when test="isPassed == 1">in (2,4)</when>
         </choose>
 
         ORDER BY
@@ -566,13 +568,14 @@
         <!-- 合并 HAVING 条件 -->
         HAVING
         CASE
+        WHEN COALESCE(MAX(CASE WHEN r.select_type = 4 THEN 1 ELSE 0 END),0) = 1 THEN 4  -- 如果有 2
         WHEN COALESCE(MAX(CASE WHEN r.select_type = 2 THEN 1 ELSE 0 END),0) = 1 THEN 2  -- 如果有 2
         WHEN COALESCE(MAX(CASE WHEN r.select_type = 1 THEN 1 ELSE 0 END),0) = 1 THEN 1  -- 如果没有 2,但有 1
         ELSE 0
         END
         <choose>
             <when test="isPassed == 0">IN (0, 1)</when>
-            <when test="isPassed == 1">= 2</when>
+            <when test="isPassed == 1">in (2,4)</when>
         </choose>
         ) AS subquery;
     </select>