Pārlūkot izejas kodu

Merge remote-tracking branch 'origin/master'

Administrator 1 gadu atpakaļ
vecāks
revīzija
a582215f87
27 mainītis faili ar 255 papildinājumiem un 41 dzēšanām
  1. 14 0
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/common/AppletController.java
  2. 2 0
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/formal/FormalParentsStudentController.java
  3. 2 0
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/register/RegisterParentsController.java
  4. 11 0
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/register/RegisterParentsStudentController.java
  5. 1 1
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/register/RegisterTeacherController.java
  6. 3 0
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/FormalParentsStudent.java
  7. 11 9
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/FormalParentsStudentBo.java
  8. 2 0
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/FormalParentsStudentVo.java
  9. 2 2
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/StudentInfoVo.java
  10. 4 0
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/FormalParentsStudentMapper.java
  11. 3 0
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/RegisterParentsStudentMapper.java
  12. 1 0
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/RegisterTeacherClassMapper.java
  13. 3 0
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/RegisterTeacherMapper.java
  14. 2 0
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/IRegisterParentsStudentService.java
  15. 1 1
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/IRegisterTeacherService.java
  16. 77 0
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/Task.java
  17. 7 0
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/FormalParentsStudentServiceImpl.java
  18. 3 0
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/FormalTeacherClassServiceImpl.java
  19. 0 2
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/RegisterParentsServiceImpl.java
  20. 55 17
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/RegisterParentsStudentServiceImpl.java
  21. 3 2
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/RegisterTeacherServiceImpl.java
  22. 28 4
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java
  23. 2 0
      ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/TeacherInfoServiceImpl.java
  24. 7 2
      ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/FormalParentsStudentMapper.xml
  25. 3 0
      ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/RegisterParentsStudentMapper.xml
  26. 7 0
      ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/RegisterTeacherMapper.xml
  27. 1 1
      ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/TeacherInfoMapper.xml

+ 14 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/common/AppletController.java

@@ -1,11 +1,14 @@
 package org.dromara.system.controller.common;
 
 
+import cn.dev33.satoken.annotation.SaIgnore;
 import lombok.RequiredArgsConstructor;
+import lombok.SneakyThrows;
 import org.dromara.common.core.domain.AjaxResult;
 import org.dromara.common.core.domain.R;
 import org.dromara.common.web.core.BaseController;
 import org.dromara.system.domain.FormalTeacherClass;
+import org.dromara.system.service.Task;
 import org.dromara.system.service.common.IAppletService;
 import org.springframework.validation.annotation.Validated;
 import org.springframework.web.bind.annotation.*;
@@ -23,6 +26,8 @@ public class AppletController extends BaseController {
 
     private final IAppletService appletService;
 
+    private final Task task;
+
     /**
      * 准备下课
      */
@@ -60,4 +65,13 @@ public class AppletController extends BaseController {
         return  appletService.pcStatistics();
     }
 
+    @SaIgnore
+    @GetMapping("/pc/afterClass")
+    public AjaxResult afterClass()
+    {
+        task.afterClass();
+        return  AjaxResult.success("成功");
+    }
+
+
 }

+ 2 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/formal/FormalParentsStudentController.java

@@ -112,4 +112,6 @@ public class FormalParentsStudentController extends BaseController {
                           @PathVariable Long[] ids) {
         return toAjax(formalParentsStudentService.deleteWithValidByIds(List.of(ids), true));
     }
+
+
 }

+ 2 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/register/RegisterParentsController.java

@@ -2,6 +2,7 @@ package org.dromara.system.controller.register;
 
 import java.util.List;
 
+import cn.dev33.satoken.annotation.SaIgnore;
 import lombok.RequiredArgsConstructor;
 import jakarta.servlet.http.HttpServletResponse;
 import jakarta.validation.constraints.*;
@@ -71,6 +72,7 @@ public class RegisterParentsController extends BaseController {
     /**
      * 新增注册-家长
      */
+    @SaIgnore
     @Log(title = "注册-家长", businessType = BusinessType.INSERT)
     @RepeatSubmit()
     @PostMapping()

+ 11 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/register/RegisterParentsStudentController.java

@@ -102,4 +102,15 @@ public class RegisterParentsStudentController extends BaseController {
                           @PathVariable Long[] ids) {
         return toAjax(registerParentsStudentService.deleteWithValidByIds(List.of(ids), true));
     }
+
+    /**
+     * 删除注册-家长-学生
+     *
+     * @param bo
+     */
+    @SaCheckPermission("register:student:delete")
+    @GetMapping("/put/delete")
+    public R<Void> delete(RegisterParentsStudentBo bo) {
+        return toAjax(registerParentsStudentService.deleteWithValidById(bo, true));
+    }
 }

+ 1 - 1
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/controller/register/RegisterTeacherController.java

@@ -102,6 +102,6 @@ public class RegisterTeacherController extends BaseController {
     @GetMapping("/delete/{ids}")
     public R<Void> remove(@NotEmpty(message = "主键不能为空")
                           @PathVariable Long[] ids) {
-        return toAjax(registerTeacherService.deleteWithValidByIds(List.of(ids), true));
+        return toAjax(registerTeacherService.deleteWithValidByIds(ids, true));
     }
 }

+ 3 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/FormalParentsStudent.java

@@ -64,6 +64,9 @@ public class FormalParentsStudent extends BaseEntity {
      */
     private String studentNumber;
 
+    @TableLogic
+    private String isDel;
+
     /**
      * 备注
      */

+ 11 - 9
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/bo/FormalParentsStudentBo.java

@@ -23,55 +23,57 @@ public class FormalParentsStudentBo extends BaseEntity {
     /**
      * ID
      */
-    @NotNull(message = "ID不能为空", groups = { EditGroup.class })
+    ////@NotBlank(message = "ID不能为空", groups = { EditGroup.class })
     private Long id;
 
     /**
      * 家长id
      */
-    @NotNull(message = "家长id不能为空", groups = { AddGroup.class, EditGroup.class })
+    ////@NotBlank(message = "家长id不能为空", groups = { AddGroup.class, EditGroup.class })
     private Long parentsId;
 
     /**
      * 学校id
      */
-    @NotNull(message = "学校id不能为空", groups = { AddGroup.class, EditGroup.class })
+    ////@NotBlank(message = "学校id不能为空", groups = { AddGroup.class, EditGroup.class })
     private Long schoolId;
 
     /**
      * 学校名称
      */
-    @NotBlank(message = "学校名称不能为空", groups = { AddGroup.class, EditGroup.class })
+    //@NotBlank(message = "学校名称不能为空", groups = { AddGroup.class, EditGroup.class })
     private String schoolName;
 
     /**
      * 班级id
      */
-    @NotNull(message = "班级id不能为空", groups = { AddGroup.class, EditGroup.class })
+    ////@NotBlank(message = "班级id不能为空", groups = { AddGroup.class, EditGroup.class })
     private Long classId;
 
     /**
      * 班级名称
      */
-    @NotBlank(message = "班级名称不能为空", groups = { AddGroup.class, EditGroup.class })
+    //@NotBlank(message = "班级名称不能为空", groups = { AddGroup.class, EditGroup.class })
     private String className;
 
     /**
      * 姓名
      */
-    @NotBlank(message = "姓名不能为空", groups = { AddGroup.class, EditGroup.class })
+    //@NotBlank(message = "姓名不能为空", groups = { AddGroup.class, EditGroup.class })
     private String studentName;
 
     /**
      * 学号
      */
-    @NotBlank(message = "学号不能为空", groups = { AddGroup.class, EditGroup.class })
+    //@NotBlank(message = "学号不能为空", groups = { AddGroup.class, EditGroup.class })
     private String studentNumber;
 
+    private String isDel;
+
     /**
      * 备注
      */
-    @NotBlank(message = "备注不能为空", groups = { AddGroup.class, EditGroup.class })
+    //@NotBlank(message = "备注不能为空", groups = { AddGroup.class, EditGroup.class })
     private String remark;
 
 

+ 2 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/FormalParentsStudentVo.java

@@ -81,6 +81,8 @@ public class FormalParentsStudentVo implements Serializable {
     @ExcelProperty(value = "学号")
     private String studentNumber;
 
+    private String isDel;
+
     /**
      * 备注
      */

+ 2 - 2
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/domain/vo/StudentInfoVo.java

@@ -148,13 +148,13 @@ public class StudentInfoVo implements Serializable {
     /**
      * 证件照(地址)
      */
-    @ExcelProperty(value = "证件照(地址)")
+    //@ExcelProperty(value = "证件照(地址)")
     private String identificationPhoto;
 
     /**
      * 门禁照(地址)
      */
-    @ExcelProperty(value = "门禁照(地址)")
+    //@ExcelProperty(value = "门禁照(地址)")
     private String entrancePermit;
 
     /**

+ 4 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/FormalParentsStudentMapper.java

@@ -1,6 +1,7 @@
 package org.dromara.system.mapper;
 
 import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
+import org.apache.ibatis.annotations.Param;
 import org.dromara.system.domain.FormalParentsStudent;
 import org.dromara.system.domain.vo.FormalParentsStudentVo;
 import org.dromara.common.mybatis.core.mapper.BaseMapperPlus;
@@ -66,4 +67,7 @@ public interface FormalParentsStudentMapper extends BaseMapperPlus<FormalParents
 
     @InterceptorIgnore(tenantLine = "true")
     List<FormalParentsStudentVo> getStudentByParentId(String valueOf);
+
+    @InterceptorIgnore(tenantLine = "true")
+    void updateIsDelByStudent(@Param("userId") Long userId, @Param("classId")Long classId, @Param("studentName")String studentName);
 }

+ 3 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/RegisterParentsStudentMapper.java

@@ -37,4 +37,7 @@ public interface RegisterParentsStudentMapper extends BaseMapperPlus<RegisterPar
     Long updateMapperById(RegisterParentsStudent update);
 
     Page<RegisterParentsStudentVo> selectVoMapperPage(@Param("page")Page<Object> build, @Param(Constants.WRAPPER)LambdaQueryWrapper<RegisterParentsStudent> lqw);
+
+    @InterceptorIgnore(tenantLine = "1")
+    int deleteByIdMapper(Long id);
 }

+ 1 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/RegisterTeacherClassMapper.java

@@ -20,6 +20,7 @@ public interface RegisterTeacherClassMapper extends BaseMapperPlus<RegisterTeach
 
     void deleteRegisterTeacherClassByTeacherId(Long teacherId);
 
+    @InterceptorIgnore(tenantLine = "true")
     void deleteRegisterTeacherClassByTeacherIds(Long[] ids);
 
     @InterceptorIgnore(tenantLine = "true")

+ 3 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/mapper/RegisterTeacherMapper.java

@@ -34,4 +34,7 @@ public interface RegisterTeacherMapper extends BaseMapperPlus<RegisterTeacher, R
 
     @InterceptorIgnore(tenantLine = "true")
     Page<RegisterTeacherVo> selectVoMapperPage(@Param("page")Page<Object> build, @Param(Constants.WRAPPER)LambdaQueryWrapper<RegisterTeacher> lqw);
+
+    @InterceptorIgnore(tenantLine = "true")
+    Boolean deleteRegisterTeacherByIds(Long[] ids);
 }

+ 2 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/IRegisterParentsStudentService.java

@@ -46,4 +46,6 @@ public interface IRegisterParentsStudentService {
      * 校验并批量删除注册-家长-学生信息
      */
     Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
+
+    Boolean deleteWithValidById(RegisterParentsStudentBo bo, boolean b);
 }

+ 1 - 1
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/IRegisterTeacherService.java

@@ -46,5 +46,5 @@ public interface IRegisterTeacherService {
     /**
      * 校验并批量删除注册-老师信息
      */
-    Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);
+    Boolean deleteWithValidByIds(Long[] ids, Boolean isValid);
 }

+ 77 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/Task.java

@@ -0,0 +1,77 @@
+package org.dromara.system.service;
+
+
+import lombok.RequiredArgsConstructor;
+import org.dromara.common.redis.utils.RedisUtils;
+import org.dromara.system.domain.bo.SysDeptBo;
+import org.dromara.system.domain.vo.SysDeptVo;
+import org.dromara.system.mapper.SysDeptMapper;
+import org.dromara.system.mapper.SysUserMapper;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.redis.cache.RedisCache;
+import org.springframework.scheduling.annotation.Async;
+import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.stereotype.Component;
+import org.springframework.stereotype.Service;
+
+import java.util.ArrayList;
+import java.util.List;
+
+@RequiredArgsConstructor
+@Service
+@Component
+public class Task {
+
+    private final SysUserMapper userMapper;
+
+    private final SysDeptMapper sysDeptMapper;
+
+    private final ISysUserService sysUserService;
+
+
+
+    /***
+     * 生成班级下课初始信息
+     * */
+    @Async
+    //@Scheduled(cron = "0 0/2 * * * ? ")
+    @Scheduled(cron = "0 1 0 * * ? ")
+    public void afterClass() {
+
+        //获取所有部门
+        List<SysDeptVo> sysDeptList = sysDeptMapper.selectDeptListMapper(new SysDeptBo());
+
+        //学校部门
+        List<SysDeptVo> fSysDeptList = new ArrayList<>();
+        //班级部门
+        List<SysDeptVo> pSysDeptList = new ArrayList<>();
+
+        for (SysDeptVo sysDept : sysDeptList) {
+            if (sysDept.getParentId() == 0) {
+                fSysDeptList.add(sysDept);
+            } else {
+                pSysDeptList.add(sysDept);
+            }
+        }
+
+        for (SysDeptVo sysDept : fSysDeptList) {
+            for (SysDeptVo dept : pSysDeptList) {
+                if (sysDept.getDeptId().equals(dept.getParentId())) {
+                    String key = sysDept.getDeptId() + ":" + dept.getDeptId();
+                    String value = dept.getDeptName() + ":time";
+                    RedisUtils.setCacheObject(key, value);
+                }
+            }
+        }
+    }
+    /***
+     * 生成班级下课初始信息
+     * */
+    /*@Async
+    //@Scheduled(cron = "0 0/2 * * * ? ")
+    @Scheduled(cron = "0 1 0 * * ? ")
+    public void afterClass() throws Exception {
+
+    }*/
+
+}

+ 7 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/FormalParentsStudentServiceImpl.java

@@ -47,6 +47,9 @@ public class FormalParentsStudentServiceImpl implements IFormalParentsStudentSer
      */
     @Override
     public TableDataInfo<FormalParentsStudentVo> queryPageList(FormalParentsStudentBo bo, PageQuery pageQuery) {
+        if(StringUtils.isEmpty(bo.getIsDel())){
+            bo.setIsDel("0");
+        }
         LambdaQueryWrapper<FormalParentsStudent> lqw = buildQueryWrapper(bo);
         Page<FormalParentsStudentVo> result = baseMapper.selectVoPage(pageQuery.build(), lqw);
         return TableDataInfo.build(result);
@@ -57,6 +60,9 @@ public class FormalParentsStudentServiceImpl implements IFormalParentsStudentSer
      */
     @Override
     public List<FormalParentsStudentVo> queryList(FormalParentsStudentBo bo) {
+        if(StringUtils.isEmpty(bo.getIsDel())){
+            bo.setIsDel("0");
+        }
         LambdaQueryWrapper<FormalParentsStudent> lqw = buildQueryWrapper(bo);
         return baseMapper.selectVoList(lqw);
     }
@@ -71,6 +77,7 @@ public class FormalParentsStudentServiceImpl implements IFormalParentsStudentSer
         lqw.like(StringUtils.isNotBlank(bo.getClassName()), FormalParentsStudent::getClassName, bo.getClassName());
         lqw.like(StringUtils.isNotBlank(bo.getStudentName()), FormalParentsStudent::getStudentName, bo.getStudentName());
         lqw.eq(StringUtils.isNotBlank(bo.getStudentNumber()), FormalParentsStudent::getStudentNumber, bo.getStudentNumber());
+        lqw.eq(StringUtils.isNotBlank(bo.getIsDel()), FormalParentsStudent::getIsDel, bo.getIsDel());
         return lqw;
     }
 

+ 3 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/FormalTeacherClassServiceImpl.java

@@ -83,6 +83,9 @@ public class FormalTeacherClassServiceImpl implements IFormalTeacherClassService
      */
     @Override
     public Boolean insertByBo(FormalTeacherClassBo bo) {
+        LoginUser user = LoginHelper.getLoginUser();
+        bo.setTeacherId(user.getUserId());
+        bo.setTeacherName(user.getNickname());
         FormalTeacherClass add = MapstructUtils.convert(bo, FormalTeacherClass.class);
         validEntityBeforeSave(add);
         boolean flag = baseMapper.insert(add) > 0;

+ 0 - 2
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/RegisterParentsServiceImpl.java

@@ -118,7 +118,6 @@ public class RegisterParentsServiceImpl implements IRegisterParentsService {
                 registerParentsStudent.setParentsPhone(bo.getUserPhone());
                 registerParentsStudent.setCreateTime(DateUtils.getNowDate());
                 registerParentsStudent.setUpdateTime(DateUtils.getNowDate());
-
                 RegisterParentsStudentBo registerParentsStudentBo = new RegisterParentsStudentBo();
                 ClassUtils.copyProperties(registerParentsStudent, registerParentsStudentBo);
                 registerParentsStudentService.insertByBo(registerParentsStudentBo);
@@ -150,7 +149,6 @@ public class RegisterParentsServiceImpl implements IRegisterParentsService {
                     registerParentsStudent.setIsPass("1");
                     registerParentsStudent.setCreateTime(DateUtils.getNowDate());
                     registerParentsStudent.setUpdateTime(DateUtils.getNowDate());
-
                     RegisterParentsStudentBo registerParentsStudentBo = MapstructUtils.convert(registerParentsStudent, RegisterParentsStudentBo.class);
                     registerParentsStudentService.insertByBo(registerParentsStudentBo);
                 }

+ 55 - 17
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/RegisterParentsStudentServiceImpl.java

@@ -12,10 +12,17 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import lombok.RequiredArgsConstructor;
 import org.dromara.common.satoken.utils.LoginHelper;
+import org.dromara.system.domain.FormalParentsStudent;
 import org.dromara.system.domain.FormalTeacherClass;
+import org.dromara.system.domain.bo.FormalParentsStudentBo;
 import org.dromara.system.domain.bo.FormalTeacherClassBo;
+import org.dromara.system.domain.vo.FormalParentsStudentVo;
 import org.dromara.system.domain.vo.FormalTeacherClassVo;
+import org.dromara.system.domain.vo.RegisterParentsVo;
+import org.dromara.system.mapper.FormalParentsStudentMapper;
 import org.dromara.system.mapper.FormalTeacherClassMapper;
+import org.dromara.system.mapper.RegisterParentsMapper;
+import org.dromara.system.service.IFormalParentsStudentService;
 import org.dromara.system.service.IFormalTeacherClassService;
 import org.springframework.stereotype.Service;
 import org.dromara.system.domain.bo.RegisterParentsStudentBo;
@@ -23,6 +30,7 @@ import org.dromara.system.domain.vo.RegisterParentsStudentVo;
 import org.dromara.system.domain.RegisterParentsStudent;
 import org.dromara.system.mapper.RegisterParentsStudentMapper;
 import org.dromara.system.service.IRegisterParentsStudentService;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.util.List;
 import java.util.Map;
@@ -41,6 +49,12 @@ public class RegisterParentsStudentServiceImpl implements IRegisterParentsStuden
 
     private final RegisterParentsStudentMapper baseMapper;
 
+    private final RegisterParentsMapper registerParentsMapper;
+
+    private final IFormalParentsStudentService formalParentsStudentService;
+
+    private final FormalParentsStudentMapper formalParentsStudentMapper;
+
     private final IFormalTeacherClassService formalTeacherClassService;
 
     private final FormalTeacherClassMapper formalTeacherClassMapper;
@@ -60,25 +74,32 @@ public class RegisterParentsStudentServiceImpl implements IRegisterParentsStuden
     public TableDataInfo<RegisterParentsStudentVo> queryPageList(RegisterParentsStudentBo bo, PageQuery pageQuery) {
 
         LoginUser loginUser = LoginHelper.getLoginUser();
-        List<RoleDTO> roles = loginUser.getRoles();
-        boolean bl = false;
-        for (RoleDTO role : roles) {
-            if("teacher".equals(role.getRoleKey())){
-                bl = true;
-                break;
-            }
+
+        Map<String, Object> params = bo.getParams();
+        String ro = "";
+        if (params != null && params.size() > 0) {
+            ro = (String) params.get("role");
         }
-        //角色是老师
-        if(bl){
-            //查询老师班级
-            FormalTeacherClassBo formalTeacherClass = new FormalTeacherClassBo();
-            formalTeacherClass.setTeacherId(loginUser.getUserId());
-            List<FormalTeacherClassVo> formalTeacherClassList = formalTeacherClassMapper.queryMapperList(formalTeacherClass);
-            List<Long> classIds = formalTeacherClassList.stream().map(FormalTeacherClassVo::getClassId).collect(Collectors.toList());
-            bo.setClassIds(classIds);
+        if(StringUtils.isEmpty(ro)){
+            List<RoleDTO> roles = loginUser.getRoles();
+            boolean bl = false;
+            for (RoleDTO role : roles) {
+                if("teacher".equals(role.getRoleKey())){
+                    bl = true;
+                    break;
+                }
+            }
+            //角色是老师
+            if(bl){
+                //查询老师班级
+                FormalTeacherClassBo formalTeacherClass = new FormalTeacherClassBo();
+                formalTeacherClass.setTeacherId(loginUser.getUserId());
+                List<FormalTeacherClassVo> formalTeacherClassList = formalTeacherClassMapper.queryMapperList(formalTeacherClass);
+                List<Long> classIds = formalTeacherClassList.stream().map(FormalTeacherClassVo::getClassId).collect(Collectors.toList());
+                bo.setClassIds(classIds);
+            }
         }
 
-
         LambdaQueryWrapper<RegisterParentsStudent> lqw = buildQueryWrapper(bo);
         Page<RegisterParentsStudentVo> result = baseMapper.selectVoMapperPage(pageQuery.build(), lqw);
         return TableDataInfo.build(result);
@@ -118,6 +139,14 @@ public class RegisterParentsStudentServiceImpl implements IRegisterParentsStuden
      */
     @Override
     public Boolean insertByBo(RegisterParentsStudentBo bo) {
+        //查询注册前家长信息
+        LoginUser user = LoginHelper.getLoginUser();
+        RegisterParentsVo registerParentsVo = registerParentsMapper.selectRegisterParentsByPhonenumber(user.getUsername());
+        bo.setParentsId(registerParentsVo.getId());
+        bo.setParentsName(registerParentsVo.getUserName());
+        bo.setParentsPhone(registerParentsVo.getUserPhone());
+        bo.setCreateTime(DateUtils.getNowDate());
+        bo.setUpdateTime(DateUtils.getNowDate());
         bo.setCreateTime(DateUtils.getNowDate());
         RegisterParentsStudent add = MapstructUtils.convert(bo, RegisterParentsStudent.class);
         validEntityBeforeSave(add);
@@ -132,10 +161,11 @@ public class RegisterParentsStudentServiceImpl implements IRegisterParentsStuden
      * 修改注册-家长-学生
      */
     @Override
+    @Transactional
     public Boolean updateByBo(RegisterParentsStudentBo bo) {
+        //删除学生
         bo.setUpdateTime(DateUtils.getNowDate());
         bo.setIsPass("1");
-
         RegisterParentsStudent update = MapstructUtils.convert(bo, RegisterParentsStudent.class);
         validEntityBeforeSave(update);
         return baseMapper.updateMapperById(update) > 0;
@@ -158,4 +188,12 @@ public class RegisterParentsStudentServiceImpl implements IRegisterParentsStuden
         }
         return baseMapper.deleteBatchIds(ids) > 0;
     }
+
+    @Override
+    public Boolean deleteWithValidById(RegisterParentsStudentBo bo, boolean b) {
+        //
+        LoginUser user = LoginHelper.getLoginUser();
+        formalParentsStudentMapper.updateIsDelByStudent(user.getUserId(),bo.getClassId(),bo.getStudentName());
+        return baseMapper.deleteByIdMapper(bo.getId())>0;
+    }
 }

+ 3 - 2
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/RegisterTeacherServiceImpl.java

@@ -273,10 +273,11 @@ public class RegisterTeacherServiceImpl implements IRegisterTeacherService {
      * 批量删除注册-老师
      */
     @Override
-    public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
+    public Boolean deleteWithValidByIds(Long[] ids, Boolean isValid) {
         if (isValid) {
             //TODO 做一些业务上的校验,判断是否需要校验
         }
-        return baseMapper.deleteBatchIds(ids) > 0;
+        registerTeacherClassMapper.deleteRegisterTeacherClassByTeacherIds(ids);
+        return baseMapper.deleteRegisterTeacherByIds(ids);
     }
 }

+ 28 - 4
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysDeptServiceImpl.java

@@ -13,10 +13,7 @@ import org.dromara.common.core.domain.dto.RoleDTO;
 import org.dromara.common.core.domain.model.LoginUser;
 import org.dromara.common.core.exception.ServiceException;
 import org.dromara.common.core.service.DeptService;
-import org.dromara.common.core.utils.MapstructUtils;
-import org.dromara.common.core.utils.SpringUtils;
-import org.dromara.common.core.utils.StringUtils;
-import org.dromara.common.core.utils.TreeBuildUtils;
+import org.dromara.common.core.utils.*;
 import org.dromara.common.mybatis.helper.DataBaseHelper;
 import org.dromara.common.redis.utils.CacheUtils;
 import org.dromara.common.satoken.utils.LoginHelper;
@@ -27,16 +24,19 @@ import org.dromara.system.domain.bo.FormalTeacherClassBo;
 import org.dromara.system.domain.bo.SysDeptBo;
 import org.dromara.system.domain.vo.FormalTeacherClassVo;
 import org.dromara.system.domain.vo.SysDeptVo;
+import org.dromara.system.domain.xiake.XiakeConfig;
 import org.dromara.system.mapper.FormalTeacherClassMapper;
 import org.dromara.system.mapper.SysDeptMapper;
 import org.dromara.system.mapper.SysRoleMapper;
 import org.dromara.system.mapper.SysUserMapper;
+import org.dromara.system.mapper.xiake.XiakeConfigMapper;
 import org.dromara.system.service.IFormalTeacherClassService;
 import org.dromara.system.service.ISysDeptService;
 import lombok.RequiredArgsConstructor;
 import org.springframework.cache.annotation.CacheEvict;
 import org.springframework.cache.annotation.Cacheable;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -60,6 +60,8 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService {
     private final IFormalTeacherClassService formalTeacherClassService;
     private final FormalTeacherClassMapper formalTeacherClassMapper;
 
+    private final XiakeConfigMapper configMapper;
+
     /**
      * 查询部门管理数据
      *
@@ -245,6 +247,7 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService {
      * @return 结果
      */
     @Override
+    @Transactional
     public int insertDept(SysDeptBo bo) {
         SysDept info = baseMapper.selectById(bo.getParentId());
         // 如果父节点不为正常状态,则不允许新增子节点
@@ -253,6 +256,27 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService {
         }
         SysDept dept = MapstructUtils.convert(bo, SysDept.class);
         dept.setAncestors(info.getAncestors() + StringUtils.SEPARATOR + dept.getParentId());
+
+        if(info!=null){
+            //往xiake_config插入数据
+            XiakeConfig config = new XiakeConfig();
+            config.setConfigName("下课时间");
+            config.setConfigKey(dept.getDeptId()+":1");
+            config.setConfigValue("5");
+            config.setConfigType("1");
+            config.setCreateTime(DateUtils.getNowDate());
+            config.setUpdateTime(DateUtils.getNowDate());
+            configMapper.insert(config);
+            XiakeConfig config1 = new XiakeConfig();
+            config1.setConfigName("延迟下课");
+            config1.setConfigKey(dept.getDeptId()+":2");
+            config1.setConfigValue("5");
+            config.setConfigType("2");
+            config1.setCreateTime(DateUtils.getNowDate());
+            config1.setUpdateTime(DateUtils.getNowDate());
+            configMapper.insert(config1);
+        }
+
         return baseMapper.insert(dept);
     }
 

+ 2 - 0
ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/TeacherInfoServiceImpl.java

@@ -79,6 +79,8 @@ public class TeacherInfoServiceImpl implements ITeacherInfoService {
         lqw.eq(StringUtils.isNotBlank((CharSequence) bo.getOnBoardTime()), "t.on_board_time", bo.getOnBoardTime());
         lqw.eq(StringUtils.isNotBlank((CharSequence) bo.getJobTime()), "t.job_time", bo.getJobTime());
         lqw.eq(bo.getSchoolId() != null && bo.getSchoolId() !=0L, "f.school_id", bo.getJobTime());
+        lqw.groupBy("t.teacher_id");
+        lqw.orderByDesc("ANY_VALUE (t.create_time)");
         return lqw;
     }
 

+ 7 - 2
ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/FormalParentsStudentMapper.xml

@@ -12,11 +12,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <result property="className"    column="class_name"    />
         <result property="studentName"    column="student_name"    />
         <result property="studentNumber"    column="student_number"    />
+        <result property="isDel"    column="is_del"    />
         <result property="remark"    column="remark"    />
     </resultMap>
 
     <sql id="selectFormalParentsStudentVo">
-        select id, parents_id, school_id, school_name, class_id, class_name, student_name, student_number, create_by, create_time, update_by, update_time, remark from formal_parents_student
+        select id, parents_id, school_id, school_name, class_id, class_name, student_name, student_number,is_del, create_by, create_time, update_by, update_time, remark from formal_parents_student
     </sql>
 
     <select id="selectFormalParentsStudentList" parameterType="org.dromara.system.domain.FormalParentsStudent" resultMap="FormalParentsStudentResult">
@@ -29,6 +30,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
             <if test="className != null  and className != ''"> and class_name like concat('%', #{className}, '%')</if>
             <if test="studentName != null  and studentName != ''"> and student_name like concat('%', #{studentName}, '%')</if>
             <if test="studentNumber != null  and studentNumber != ''"> and student_number = #{studentNumber}</if>
+            <if test="isDel != null  and isDel != ''"> and is_del = #{isDel}</if>
         </where>
     </select>
 
@@ -39,7 +41,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 
     <select id="getStudentByParentId" resultMap="FormalParentsStudentResult">
         <include refid="selectFormalParentsStudentVo"/>
-        where parents_id =  #{parentsId}
+        where parents_id =  #{parentsId} and is_del = '0'
     </select>
 
     <insert id="insertFormalParentsStudent" parameterType="org.dromara.system.domain.FormalParentsStudent" useGeneratedKeys="true" keyProperty="id">
@@ -92,6 +94,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         </trim>
         where id = #{id}
     </update>
+    <update id="updateIsDelByStudent">
+        update formal_parents_student set is_del = '1' where class_id = #{classId} and student_name = #{studentName} and parents_id = #{userId}
+    </update>
 
     <delete id="deleteFormalParentsStudentById" parameterType="Long">
         delete from formal_parents_student where id = #{id}

+ 3 - 0
ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/RegisterParentsStudentMapper.xml

@@ -58,6 +58,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     <delete id="deleteRegisterParentsStudentByParentsId" parameterType="java.lang.Long">
         delete from register_parents_student where parents_id = #{parentsId} and is_pass = '3';
     </delete>
+    <delete id="deleteByIdMapper">
+        delete from register_parents_student where id = #{id}
+    </delete>
 
     <select id="selectRegisterParentsStudentListByTime" resultMap="RegisterParentsStudentResult">
         <include refid="selectRegisterParentsStudentVo"/>

+ 7 - 0
ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/RegisterTeacherMapper.xml

@@ -73,4 +73,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         ${ew.getCustomSqlSegment}
     </select>
 
+    <delete id="deleteRegisterTeacherByIds" parameterType="String">
+        delete from register_teacher where id in
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+
 </mapper>

+ 1 - 1
ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/TeacherInfoMapper.xml

@@ -52,7 +52,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
                ANY_VALUE(t.create_by) as create_by, ANY_VALUE(t.create_time) as create_time,
                ANY_VALUE(t.update_by) as update_by, ANY_VALUE(t.update_time) as update_time, ANY_VALUE(t.remark) as remark
         from teacher_info t
-                 left join formal_teacher_class f on t.teacher_id = f.teacher_id
+        left join formal_teacher_class f on t.teacher_id = f.teacher_id
             ${ew.getCustomSqlSegment}
     </select>
     <select id="selectVoMapperList" resultMap="TeacherInfoResult">