浏览代码

Merge remote-tracking branch 'origin/dev' into dev

dzx 5 月之前
父节点
当前提交
32d86d0658
共有 23 个文件被更改,包括 416 次插入86 次删除
  1. 0 12
      src/main/java/com/xjrsoft/module/internship/controller/InternshipPlanManageController.java
  2. 100 0
      src/main/java/com/xjrsoft/module/internship/controller/InternshipPlanTeacherController.java
  3. 0 1
      src/main/java/com/xjrsoft/module/internship/dto/AddInternshipPlanManageDto.java
  4. 5 1
      src/main/java/com/xjrsoft/module/internship/dto/AddInternshipPlanTeacherDto.java
  5. 0 1
      src/main/java/com/xjrsoft/module/internship/dto/InternshipPlanManageStatusDto.java
  6. 8 5
      src/main/java/com/xjrsoft/module/internship/dto/InternshipPlanTeacherPageDto.java
  7. 0 3
      src/main/java/com/xjrsoft/module/internship/dto/UpdateInternshipPlanManageDto.java
  8. 24 0
      src/main/java/com/xjrsoft/module/internship/dto/UpdateInternshipPlanTeacherDto.java
  9. 1 1
      src/main/java/com/xjrsoft/module/internship/entity/InternshipPlanTeacher.java
  10. 84 0
      src/main/java/com/xjrsoft/module/internship/entity/InternshipPlanTeacher.java.1750734667637.bak
  11. 4 0
      src/main/java/com/xjrsoft/module/internship/mapper/InternshipPlanClassMapper.java
  12. 0 4
      src/main/java/com/xjrsoft/module/internship/mapper/InternshipPlanManageMapper.java
  13. 5 1
      src/main/java/com/xjrsoft/module/internship/mapper/InternshipPlanTeacherMapper.java
  14. 16 0
      src/main/java/com/xjrsoft/module/internship/mapper/InternshipPlanTeacherMapper.java.1750734667688.bak
  15. 0 3
      src/main/java/com/xjrsoft/module/internship/service/IInternshipPlanManageService.java
  16. 25 0
      src/main/java/com/xjrsoft/module/internship/service/IInternshipPlanTeacherService.java
  17. 0 7
      src/main/java/com/xjrsoft/module/internship/service/impl/InternshipPlanManageServiceImpl.java
  18. 69 0
      src/main/java/com/xjrsoft/module/internship/service/impl/InternshipPlanTeacherServiceImpl.java
  19. 3 6
      src/main/java/com/xjrsoft/module/internship/vo/InternshipPlanTeacherPageVo.java
  20. 1 1
      src/main/java/com/xjrsoft/module/internship/vo/InternshipPlanTeacherVo.java
  21. 0 39
      src/main/resources/mapper/internship/InternshipPlanManageMapper.xml
  22. 45 0
      src/main/resources/mapper/internship/InternshipPlanTeacherMapper.xml
  23. 26 1
      src/test/java/com/xjrsoft/xjrsoftboot/FreeMarkerGeneratorTest.java

+ 0 - 12
src/main/java/com/xjrsoft/module/internship/controller/InternshipPlanManageController.java

@@ -9,13 +9,11 @@ import com.xjrsoft.common.model.result.RT;
 import com.xjrsoft.common.page.ConventPage;
 import com.xjrsoft.common.page.PageOutput;
 import com.xjrsoft.module.internship.dto.AddInternshipPlanManageDto;
-import com.xjrsoft.module.internship.dto.InternshipPlanManageGroupPageDto;
 import com.xjrsoft.module.internship.dto.InternshipPlanManagePageDto;
 import com.xjrsoft.module.internship.dto.InternshipPlanManageStatusDto;
 import com.xjrsoft.module.internship.dto.UpdateInternshipPlanManageDto;
 import com.xjrsoft.module.internship.entity.InternshipPlanManage;
 import com.xjrsoft.module.internship.service.IInternshipPlanManageService;
-import com.xjrsoft.module.internship.vo.InternshipPlanManageGroupPageVo;
 import com.xjrsoft.module.internship.vo.InternshipPlanManagePageVo;
 import com.xjrsoft.module.internship.vo.InternshipPlanManageVo;
 import io.swagger.annotations.Api;
@@ -113,14 +111,4 @@ public class InternshipPlanManageController {
         return RT.ok(true);
     }
 
-    @GetMapping(value = "/group-page")
-    @ApiOperation(value="实习计划管理分组列表(分页)")
-    @SaCheckPermission("internshipplanmanage:detail")
-    @XjrLog(value = "实习计划管理分组列表(分页)")
-    public RT<PageOutput<InternshipPlanManageGroupPageVo>> groupPage(@Valid InternshipPlanManageGroupPageDto dto){
-        Page<InternshipPlanManageGroupPageVo> page = internshipPlanManageService.getGroupPage(new Page<>(dto.getLimit(), dto.getSize()), dto);
-        PageOutput<InternshipPlanManageGroupPageVo> pageOutput = ConventPage.getPageOutput(page, InternshipPlanManageGroupPageVo.class);
-        return RT.ok(pageOutput);
-    }
-
 }

+ 100 - 0
src/main/java/com/xjrsoft/module/internship/controller/InternshipPlanTeacherController.java

@@ -0,0 +1,100 @@
+package com.xjrsoft.module.internship.controller;
+
+import cn.dev33.satoken.annotation.SaCheckPermission;
+import cn.hutool.core.bean.BeanUtil;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.xjrsoft.common.annotation.XjrLog;
+import com.xjrsoft.common.model.result.RT;
+import com.xjrsoft.common.page.ConventPage;
+import com.xjrsoft.common.page.PageOutput;
+import com.xjrsoft.module.internship.dto.AddInternshipPlanTeacherDto;
+import com.xjrsoft.module.internship.dto.InternshipPlanTeacherPageDto;
+import com.xjrsoft.module.internship.dto.UpdateInternshipPlanTeacherDto;
+import com.xjrsoft.module.internship.entity.InternshipPlanTeacher;
+import com.xjrsoft.module.internship.service.IInternshipPlanTeacherService;
+import com.xjrsoft.module.internship.vo.InternshipPlanTeacherPageVo;
+import com.xjrsoft.module.internship.vo.InternshipPlanTeacherVo;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import lombok.AllArgsConstructor;
+import org.springframework.web.bind.annotation.DeleteMapping;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.PutMapping;
+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 javax.validation.Valid;
+import java.util.List;
+
+/**
+* @title: 实习计划带队老师表
+* @Author dzx
+* @Date: 2025-06-24
+* @Version 1.0
+*/
+@RestController
+@RequestMapping("/internship" + "/internshipPlanTeacher")
+@Api(value = "/internship"  + "/internshipPlanTeacher",tags = "实习计划带队老师表代码")
+@AllArgsConstructor
+public class InternshipPlanTeacherController {
+
+
+    private final IInternshipPlanTeacherService internshipPlanTeacherService;
+
+    @GetMapping(value = "/page")
+    @ApiOperation(value="实习计划带队老师表列表(分页)")
+    @SaCheckPermission("internshipplanteacher:detail")
+    @XjrLog(value = "实习计划带队老师表列表(分页)")
+    public RT<PageOutput<InternshipPlanTeacherPageVo>> page(@Valid InternshipPlanTeacherPageDto dto){
+
+        Page<InternshipPlanTeacherPageVo> page = internshipPlanTeacherService.getPage(new Page<>(dto.getLimit(), dto.getSize()), dto);
+        PageOutput<InternshipPlanTeacherPageVo> pageOutput = ConventPage.getPageOutput(page, InternshipPlanTeacherPageVo.class);
+        return RT.ok(pageOutput);
+    }
+
+    @GetMapping(value = "/info")
+    @ApiOperation(value="根据id查询实习计划带队老师表信息")
+    @SaCheckPermission("internshipplanteacher:detail")
+    @XjrLog(value = "根据id查询实习计划带队老师表信息")
+    public RT<InternshipPlanTeacherVo> info(@RequestParam Long id){
+        InternshipPlanTeacher internshipPlanTeacher = internshipPlanTeacherService.getById(id);
+        if (internshipPlanTeacher == null) {
+           return RT.error("找不到此数据!");
+        }
+        return RT.ok(BeanUtil.toBean(internshipPlanTeacher, InternshipPlanTeacherVo.class));
+    }
+
+
+    @PostMapping
+    @ApiOperation(value = "新增实习计划带队老师表")
+    @SaCheckPermission("internshipplanteacher:add")
+    @XjrLog(value = "新增实习计划带队老师表")
+    public RT<Boolean> add(@Valid @RequestBody AddInternshipPlanTeacherDto dto){
+        InternshipPlanTeacher internshipPlanTeacher = BeanUtil.toBean(dto, InternshipPlanTeacher.class);
+        boolean isSuccess = internshipPlanTeacherService.save(internshipPlanTeacher);
+        return RT.ok(isSuccess);
+    }
+
+    @PutMapping
+    @ApiOperation(value = "修改实习计划带队老师表")
+    @SaCheckPermission("internshipplanteacher:edit")
+    @XjrLog(value = "修改实习计划带队老师表")
+    public RT<Boolean> update(@Valid @RequestBody UpdateInternshipPlanTeacherDto dto){
+
+        InternshipPlanTeacher internshipPlanTeacher = BeanUtil.toBean(dto, InternshipPlanTeacher.class);
+        return RT.ok(internshipPlanTeacherService.updateById(internshipPlanTeacher));
+
+    }
+
+    @DeleteMapping
+    @ApiOperation(value = "删除实习计划带队老师表")
+    @SaCheckPermission("internshipplanteacher:delete")
+    @XjrLog(value = "删除实习计划带队老师表")
+    public RT<Boolean> delete(@Valid @RequestBody List<Long> ids){
+        return RT.ok(internshipPlanTeacherService.removeBatchByIds(ids));
+    }
+
+}

+ 0 - 1
src/main/java/com/xjrsoft/module/internship/dto/AddInternshipPlanManageDto.java

@@ -5,7 +5,6 @@ import lombok.Data;
 
 import java.io.Serializable;
 import java.time.LocalDate;
-import java.util.List;
 
 
 

+ 5 - 1
src/main/java/com/xjrsoft/module/internship/dto/AddInternshipPlanTeacherDto.java

@@ -4,13 +4,14 @@ import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.io.Serializable;
+import java.util.List;
 
 
 
 /**
 * @title: 实习计划带队老师表
 * @Author dzx
-* @Date: 2025-06-23
+* @Date: 2025-06-24
 * @Version 1.0
 */
 @Data
@@ -29,4 +30,7 @@ public class AddInternshipPlanTeacherDto implements Serializable {
     @ApiModelProperty("带队老师id(xjr_user)")
     private Long userId;
 
+    @ApiModelProperty("带领班级ids")
+    private List<Long> classIds;
+
 }

+ 0 - 1
src/main/java/com/xjrsoft/module/internship/dto/InternshipPlanManageStatusDto.java

@@ -4,7 +4,6 @@ import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.io.Serializable;
-import java.util.List;
 
 
 /**

+ 8 - 5
src/main/java/com/xjrsoft/module/internship/dto/InternshipPlanManageGroupPageDto.java → src/main/java/com/xjrsoft/module/internship/dto/InternshipPlanTeacherPageDto.java

@@ -5,20 +5,23 @@ import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
-import java.time.LocalDate;
-
 
 /**
-* @title: 实习计划管理表分页查询入参
+* @title: 实习计划带队老师表分页查询入参
 * @Author dzx
-* @Date: 2025-06-23
+* @Date: 2025-06-24
 * @Version 1.0
 */
 @Data
 @EqualsAndHashCode(callSuper = false)
-public class InternshipPlanManageGroupPageDto extends PageInput {
+public class InternshipPlanTeacherPageDto extends PageInput {
 
     @ApiModelProperty("实习计划id")
     private Long internshipPlanManageId;
 
+    @ApiModelProperty("教师姓名")
+    private String name;
+
+    @ApiModelProperty("班级名称")
+    private String className;
 }

+ 0 - 3
src/main/java/com/xjrsoft/module/internship/dto/UpdateInternshipPlanManageDto.java

@@ -3,9 +3,6 @@ package com.xjrsoft.module.internship.dto;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
-import java.io.Serializable;
-import java.time.LocalDate;
-
 
 /**
 * @title: 实习计划管理表

+ 24 - 0
src/main/java/com/xjrsoft/module/internship/dto/UpdateInternshipPlanTeacherDto.java

@@ -0,0 +1,24 @@
+package com.xjrsoft.module.internship.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+
+
+/**
+* @title: 实习计划带队老师表
+* @Author dzx
+* @Date: 2025-06-24
+* @Version 1.0
+*/
+@Data
+public class UpdateInternshipPlanTeacherDto extends AddInternshipPlanTeacherDto {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+    * 主键编号
+    */
+    @ApiModelProperty("主键编号")
+    private Long id;
+}

+ 1 - 1
src/main/java/com/xjrsoft/module/internship/entity/InternshipPlanTeacher.java

@@ -16,7 +16,7 @@ import java.time.LocalDateTime;
 /**
 * @title: 实习计划带队老师表
 * @Author dzx
-* @Date: 2025-06-23
+* @Date: 2025-06-24
 * @Version 1.0
 */
 @Data

+ 84 - 0
src/main/java/com/xjrsoft/module/internship/entity/InternshipPlanTeacher.java.1750734667637.bak

@@ -0,0 +1,84 @@
+package com.xjrsoft.module.internship.entity;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableLogic;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+
+/**
+* @title: 实习计划带队老师表
+* @Author dzx
+* @Date: 2025-06-23
+* @Version 1.0
+*/
+@Data
+@TableName("internship_plan_teacher")
+@ApiModel(value = "internship_plan_teacher", description = "实习计划带队老师表")
+public class InternshipPlanTeacher implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    /**
+    * 主键编号
+    */
+    @ApiModelProperty("主键编号")
+    @TableId
+    private Long id;
+    /**
+    * 创建时间
+    */
+    @ApiModelProperty("创建时间")
+    @TableField(fill = FieldFill.INSERT)
+    private LocalDateTime createDate;
+    /**
+    * 修改时间
+    */
+    @ApiModelProperty("修改时间")
+    @TableField(fill = FieldFill.UPDATE)
+    private LocalDateTime modifyDate;
+    /**
+    * 删除标记
+    */
+    @ApiModelProperty("删除标记")
+    @TableField(fill = FieldFill.INSERT)
+    @TableLogic
+    private Integer deleteMark;
+    /**
+    * 有效标志
+    */
+    @ApiModelProperty("有效标志")
+    @TableField(fill = FieldFill.INSERT)
+    private Integer enabledMark;
+    /**
+    * 
+    */
+    @ApiModelProperty("")
+    @TableField(fill = FieldFill.UPDATE)
+    private Long modifyUserId;
+    /**
+    * 
+    */
+    @ApiModelProperty("")
+    @TableField(fill = FieldFill.INSERT)
+    private Long createUserId;
+    /**
+    * 所属实习计划id(internship_plan)
+    */
+    @ApiModelProperty("所属实习计划id(internship_plan)")
+    private Long internshipPlanManageId;
+    /**
+    * 带队老师id(xjr_user)
+    */
+    @ApiModelProperty("带队老师id(xjr_user)")
+    private Long userId;
+
+
+}

+ 4 - 0
src/main/java/com/xjrsoft/module/internship/mapper/InternshipPlanClassMapper.java

@@ -3,6 +3,8 @@ package com.xjrsoft.module.internship.mapper;
 import com.github.yulichang.base.MPJBaseMapper;
 import com.xjrsoft.module.internship.entity.InternshipPlanClass;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Update;
 
 /**
 * @title: 实习计划班级表
@@ -13,4 +15,6 @@ import org.apache.ibatis.annotations.Mapper;
 @Mapper
 public interface InternshipPlanClassMapper extends MPJBaseMapper<InternshipPlanClass> {
 
+    @Update("update internship_plan_class set delete_mark = 1 where internship_plan_teacher_id = #{internshipPlanTeacherId}")
+    Boolean deleteByInternshipPlanTeacherId(@Param("internshipPlanTeacherId") Long internshipPlanTeacherId);
 }

+ 0 - 4
src/main/java/com/xjrsoft/module/internship/mapper/InternshipPlanManageMapper.java

@@ -2,10 +2,8 @@ package com.xjrsoft.module.internship.mapper;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.github.yulichang.base.MPJBaseMapper;
-import com.xjrsoft.module.internship.dto.InternshipPlanManageGroupPageDto;
 import com.xjrsoft.module.internship.dto.InternshipPlanManagePageDto;
 import com.xjrsoft.module.internship.entity.InternshipPlanManage;
-import com.xjrsoft.module.internship.vo.InternshipPlanManageGroupPageVo;
 import com.xjrsoft.module.internship.vo.InternshipPlanManagePageVo;
 import org.apache.ibatis.annotations.Mapper;
 
@@ -19,6 +17,4 @@ import org.apache.ibatis.annotations.Mapper;
 public interface InternshipPlanManageMapper extends MPJBaseMapper<InternshipPlanManage> {
 
     Page<InternshipPlanManagePageVo> getPage(Page<InternshipPlanManagePageVo> page, InternshipPlanManagePageDto dto);
-
-    Page<InternshipPlanManageGroupPageVo> getGroupPage(Page<InternshipPlanManageGroupPageVo> page, InternshipPlanManageGroupPageDto dto);
 }

+ 5 - 1
src/main/java/com/xjrsoft/module/internship/mapper/InternshipPlanTeacherMapper.java

@@ -1,16 +1,20 @@
 package com.xjrsoft.module.internship.mapper;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.github.yulichang.base.MPJBaseMapper;
+import com.xjrsoft.module.internship.dto.InternshipPlanTeacherPageDto;
 import com.xjrsoft.module.internship.entity.InternshipPlanTeacher;
+import com.xjrsoft.module.internship.vo.InternshipPlanTeacherPageVo;
 import org.apache.ibatis.annotations.Mapper;
 
 /**
 * @title: 实习计划带队老师表
 * @Author dzx
-* @Date: 2025-06-23
+* @Date: 2025-06-24
 * @Version 1.0
 */
 @Mapper
 public interface InternshipPlanTeacherMapper extends MPJBaseMapper<InternshipPlanTeacher> {
 
+    Page<InternshipPlanTeacherPageVo> getPage(Page<InternshipPlanTeacherPageVo> page, InternshipPlanTeacherPageDto dto);
 }

+ 16 - 0
src/main/java/com/xjrsoft/module/internship/mapper/InternshipPlanTeacherMapper.java.1750734667688.bak

@@ -0,0 +1,16 @@
+package com.xjrsoft.module.internship.mapper;
+
+import com.github.yulichang.base.MPJBaseMapper;
+import com.xjrsoft.module.internship.entity.InternshipPlanTeacher;
+import org.apache.ibatis.annotations.Mapper;
+
+/**
+* @title: 实习计划带队老师表
+* @Author dzx
+* @Date: 2025-06-23
+* @Version 1.0
+*/
+@Mapper
+public interface InternshipPlanTeacherMapper extends MPJBaseMapper<InternshipPlanTeacher> {
+
+}

+ 0 - 3
src/main/java/com/xjrsoft/module/internship/service/IInternshipPlanManageService.java

@@ -3,10 +3,8 @@ package com.xjrsoft.module.internship.service;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.github.yulichang.base.MPJBaseService;
 import com.xjrsoft.module.internship.dto.AddInternshipPlanManageDto;
-import com.xjrsoft.module.internship.dto.InternshipPlanManageGroupPageDto;
 import com.xjrsoft.module.internship.dto.InternshipPlanManagePageDto;
 import com.xjrsoft.module.internship.entity.InternshipPlanManage;
-import com.xjrsoft.module.internship.vo.InternshipPlanManageGroupPageVo;
 import com.xjrsoft.module.internship.vo.InternshipPlanManagePageVo;
 
 import java.util.List;
@@ -47,5 +45,4 @@ public interface IInternshipPlanManageService extends MPJBaseService<InternshipP
 
     Page<InternshipPlanManagePageVo> getPage(Page<InternshipPlanManagePageVo> page, InternshipPlanManagePageDto dto);
 
-    Page<InternshipPlanManageGroupPageVo> getGroupPage(Page<InternshipPlanManageGroupPageVo> page, InternshipPlanManageGroupPageDto dto);
 }

+ 25 - 0
src/main/java/com/xjrsoft/module/internship/service/IInternshipPlanTeacherService.java

@@ -0,0 +1,25 @@
+package com.xjrsoft.module.internship.service;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.github.yulichang.base.MPJBaseService;
+import com.xjrsoft.module.internship.dto.AddInternshipPlanTeacherDto;
+import com.xjrsoft.module.internship.dto.InternshipPlanTeacherPageDto;
+import com.xjrsoft.module.internship.dto.UpdateInternshipPlanTeacherDto;
+import com.xjrsoft.module.internship.entity.InternshipPlanTeacher;
+import com.xjrsoft.module.internship.vo.InternshipPlanTeacherPageVo;
+
+/**
+* @title: 实习计划带队老师表
+* @Author dzx
+* @Date: 2025-06-24
+* @Version 1.0
+*/
+
+public interface IInternshipPlanTeacherService extends MPJBaseService<InternshipPlanTeacher> {
+
+    Page<InternshipPlanTeacherPageVo> getPage(Page<InternshipPlanTeacherPageVo> page, InternshipPlanTeacherPageDto dto);
+
+    Boolean add(AddInternshipPlanTeacherDto dto);
+
+    Boolean update(UpdateInternshipPlanTeacherDto dto);
+}

+ 0 - 7
src/main/java/com/xjrsoft/module/internship/service/impl/InternshipPlanManageServiceImpl.java

@@ -7,7 +7,6 @@ import com.github.yulichang.base.MPJBaseServiceImpl;
 import com.xjrsoft.module.base.entity.BaseSemester;
 import com.xjrsoft.module.base.mapper.BaseSemesterMapper;
 import com.xjrsoft.module.internship.dto.AddInternshipPlanManageDto;
-import com.xjrsoft.module.internship.dto.InternshipPlanManageGroupPageDto;
 import com.xjrsoft.module.internship.dto.InternshipPlanManagePageDto;
 import com.xjrsoft.module.internship.entity.InternshipPlanClass;
 import com.xjrsoft.module.internship.entity.InternshipPlanManage;
@@ -16,7 +15,6 @@ import com.xjrsoft.module.internship.mapper.InternshipPlanClassMapper;
 import com.xjrsoft.module.internship.mapper.InternshipPlanManageMapper;
 import com.xjrsoft.module.internship.mapper.InternshipPlanTeacherMapper;
 import com.xjrsoft.module.internship.service.IInternshipPlanManageService;
-import com.xjrsoft.module.internship.vo.InternshipPlanManageGroupPageVo;
 import com.xjrsoft.module.internship.vo.InternshipPlanManagePageVo;
 import com.xjrsoft.module.veb.entity.TrainingOutside;
 import com.xjrsoft.module.veb.entity.TrainingSchool;
@@ -168,9 +166,4 @@ public class InternshipPlanManageServiceImpl extends MPJBaseServiceImpl<Internsh
     public Page<InternshipPlanManagePageVo> getPage(Page<InternshipPlanManagePageVo> page, InternshipPlanManagePageDto dto) {
         return internshipPlanManageMapper.getPage(page, dto);
     }
-
-    @Override
-    public Page<InternshipPlanManageGroupPageVo> getGroupPage(Page<InternshipPlanManageGroupPageVo> page, InternshipPlanManageGroupPageDto dto) {
-        return internshipPlanManageMapper.getGroupPage(page, dto);
-    }
 }

+ 69 - 0
src/main/java/com/xjrsoft/module/internship/service/impl/InternshipPlanTeacherServiceImpl.java

@@ -0,0 +1,69 @@
+package com.xjrsoft.module.internship.service.impl;
+
+import cn.hutool.core.bean.BeanUtil;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.github.yulichang.base.MPJBaseServiceImpl;
+import com.xjrsoft.module.internship.dto.AddInternshipPlanTeacherDto;
+import com.xjrsoft.module.internship.dto.InternshipPlanTeacherPageDto;
+import com.xjrsoft.module.internship.dto.UpdateInternshipPlanTeacherDto;
+import com.xjrsoft.module.internship.entity.InternshipPlanClass;
+import com.xjrsoft.module.internship.entity.InternshipPlanTeacher;
+import com.xjrsoft.module.internship.mapper.InternshipPlanClassMapper;
+import com.xjrsoft.module.internship.mapper.InternshipPlanTeacherMapper;
+import com.xjrsoft.module.internship.service.IInternshipPlanTeacherService;
+import com.xjrsoft.module.internship.vo.InternshipPlanTeacherPageVo;
+import lombok.AllArgsConstructor;
+import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+
+/**
+* @title: 实习计划带队老师表
+* @Author dzx
+* @Date: 2025-06-24
+* @Version 1.0
+*/
+@Service
+@AllArgsConstructor
+public class InternshipPlanTeacherServiceImpl extends MPJBaseServiceImpl<InternshipPlanTeacherMapper, InternshipPlanTeacher> implements IInternshipPlanTeacherService {
+
+    private final InternshipPlanClassMapper internshipPlanClassMapper;
+
+    @Override
+    public Page<InternshipPlanTeacherPageVo> getPage(Page<InternshipPlanTeacherPageVo> page, InternshipPlanTeacherPageDto dto) {
+        return this.baseMapper.getPage(page, dto);
+    }
+
+    @Override
+    @Transactional
+    public Boolean add(AddInternshipPlanTeacherDto dto) {
+        InternshipPlanTeacher internshipPlanTeacher = BeanUtil.toBean(dto, InternshipPlanTeacher.class);
+        this.baseMapper.insert(internshipPlanTeacher);
+
+        for (Long classId : dto.getClassIds()) {
+            InternshipPlanClass internshipPlanClass = new InternshipPlanClass();
+            internshipPlanClass.setInternshipPlanManageId(dto.getInternshipPlanManageId());
+            internshipPlanClass.setClassId(classId);
+            internshipPlanClass.setInternshipPlanTeacherId(internshipPlanTeacher.getId());
+            internshipPlanClassMapper.insert(internshipPlanClass);
+        }
+        return true;
+    }
+
+    @Override
+    @Transactional
+    public Boolean update(UpdateInternshipPlanTeacherDto dto) {
+        InternshipPlanTeacher internshipPlanTeacher = BeanUtil.toBean(dto, InternshipPlanTeacher.class);
+        this.baseMapper.updateById(internshipPlanTeacher);
+        internshipPlanClassMapper.deleteByInternshipPlanTeacherId(internshipPlanTeacher.getId());
+
+        for (Long classId : dto.getClassIds()) {
+            InternshipPlanClass internshipPlanClass = new InternshipPlanClass();
+            internshipPlanClass.setInternshipPlanManageId(dto.getInternshipPlanManageId());
+            internshipPlanClass.setClassId(classId);
+            internshipPlanClass.setInternshipPlanTeacherId(internshipPlanTeacher.getId());
+            internshipPlanClassMapper.insert(internshipPlanClass);
+        }
+
+        return true;
+    }
+}

+ 3 - 6
src/main/java/com/xjrsoft/module/internship/vo/InternshipPlanManageGroupPageVo.java → src/main/java/com/xjrsoft/module/internship/vo/InternshipPlanTeacherPageVo.java

@@ -3,17 +3,14 @@ package com.xjrsoft.module.internship.vo;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
-import java.time.LocalDate;
-
 /**
-* @title: 实习计划管理表分组分页列表出参
+* @title: 实习计划带队老师表分页列表出参
 * @Author dzx
-* @Date: 2025-06-23
+* @Date: 2025-06-24
 * @Version 1.0
 */
 @Data
-public class InternshipPlanManageGroupPageVo {
-
+public class InternshipPlanTeacherPageVo {
 
     @ApiModelProperty("主键编号")
     private String id;

+ 1 - 1
src/main/java/com/xjrsoft/module/internship/vo/InternshipPlanTeacherVo.java

@@ -6,7 +6,7 @@ import lombok.Data;
 /**
 * @title: 实习计划带队老师表表单出参
 * @Author dzx
-* @Date: 2025-06-23
+* @Date: 2025-06-24
 * @Version 1.0
 */
 @Data

+ 0 - 39
src/main/resources/mapper/internship/InternshipPlanManageMapper.xml

@@ -48,43 +48,4 @@
             and t1.base_semester_id = #{dto.baseSemesterId}
         </if>
     </select>
-    <select id="getGroupPage" parameterType="com.xjrsoft.module.internship.dto.InternshipPlanManageGroupPageDto" resultType="com.xjrsoft.module.internship.vo.InternshipPlanManageGroupPageVo">
-        SELECT t1.id, t2.name,
-        (
-        SELECT GROUP_CONCAT(a1.name) FROM base_class a1
-        INNER JOIN internship_plan_class a2 ON a1.id = a2.class_id
-        WHERE a1.delete_mark = 0 AND a2.delete_mark = 0
-        AND a2.internship_plan_teacher_id = t1.id
-        ) AS class_name FROM internship_plan_teacher t1
-        INNER JOIN xjr_user t2 ON t1.user_id = t2.id
-        WHERE t1.delete_mark = 0 AND t2.delete_mark = 0
-        and t1.internship_plan_manage_id = #{dto.internshipPlanManageId}
-        <if test="dto.internshipPlanName != null and dto.internshipPlanName != ''">
-            and t1.internship_plan_name like concat('%', #{dto.internshipPlanName}, '%')
-        </if>
-        <if test="dto.internshipPlanType != null and dto.internshipPlanType != ''">
-            and t1.internship_plan_type = #{dto.internshipPlanType}
-        </if>
-        <if test="dto.internshipUnitSource != null and dto.internshipUnitSource != ''">
-            and t1.internship_unit_source = #{dto.internshipUnitSource}
-        </if>
-        <if test="dto.internshipSiteType != null and dto.internshipSiteType != ''">
-            and t1.internship_site_type = #{dto.internshipSiteType}
-        </if>
-        <if test="dto.internshipUnitName != null and dto.internshipUnitName != ''">
-            and t1.internship_unit_name like concat('%', #{dto.internshipUnitName}, '%')
-        </if>
-        <if test="dto.startTimeStart != null and dto.startTimeEnd != null">
-            and t1.start_time between #{dto.startTimeStart} and #{dto.startTimeEnd}
-        </if>
-        <if test="dto.endTimeStart != null and dto.endTimeEnd != null">
-            and t1.start_time between #{dto.endTimeStart} and #{dto.endTimeEnd}
-        </if>
-        <if test="dto.internshipWhereabouts != null and dto.internshipWhereabouts != ''">
-            and t1.internship_whereabouts like concat('%', #{dto.internshipWhereabouts}, '%')
-        </if>
-        <if test="dto.baseSemesterId != null">
-            and t1.base_semester_id = #{dto.baseSemesterId}
-        </if>
-    </select>
 </mapper>

+ 45 - 0
src/main/resources/mapper/internship/InternshipPlanTeacherMapper.xml

@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.xjrsoft.module.internship.mapper.InternshipPlanManageMapper">
+    <select id="getPage" parameterType="com.xjrsoft.module.internship.dto.InternshipPlanTeacherPageDto" resultType="com.xjrsoft.module.internship.vo.InternshipPlanTeacherPageVo">
+        SELECT t1.id, t2.name,
+        (
+        SELECT GROUP_CONCAT(a1.name) FROM base_class a1
+        INNER JOIN internship_plan_class a2 ON a1.id = a2.class_id
+        WHERE a1.delete_mark = 0 AND a2.delete_mark = 0
+        AND a2.internship_plan_teacher_id = t1.id
+        ) AS class_name FROM internship_plan_teacher t1
+        INNER JOIN xjr_user t2 ON t1.user_id = t2.id
+        WHERE t1.delete_mark = 0 AND t2.delete_mark = 0
+        and t1.internship_plan_manage_id = #{dto.internshipPlanManageId}
+        <if test="dto.internshipPlanName != null and dto.internshipPlanName != ''">
+            and t1.internship_plan_name like concat('%', #{dto.internshipPlanName}, '%')
+        </if>
+        <if test="dto.internshipPlanType != null and dto.internshipPlanType != ''">
+            and t1.internship_plan_type = #{dto.internshipPlanType}
+        </if>
+        <if test="dto.internshipUnitSource != null and dto.internshipUnitSource != ''">
+            and t1.internship_unit_source = #{dto.internshipUnitSource}
+        </if>
+        <if test="dto.internshipSiteType != null and dto.internshipSiteType != ''">
+            and t1.internship_site_type = #{dto.internshipSiteType}
+        </if>
+        <if test="dto.internshipUnitName != null and dto.internshipUnitName != ''">
+            and t1.internship_unit_name like concat('%', #{dto.internshipUnitName}, '%')
+        </if>
+        <if test="dto.startTimeStart != null and dto.startTimeEnd != null">
+            and t1.start_time between #{dto.startTimeStart} and #{dto.startTimeEnd}
+        </if>
+        <if test="dto.endTimeStart != null and dto.endTimeEnd != null">
+            and t1.start_time between #{dto.endTimeStart} and #{dto.endTimeEnd}
+        </if>
+        <if test="dto.internshipWhereabouts != null and dto.internshipWhereabouts != ''">
+            and t1.internship_whereabouts like concat('%', #{dto.internshipWhereabouts}, '%')
+        </if>
+        <if test="dto.baseSemesterId != null">
+            and t1.base_semester_id = #{dto.baseSemesterId}
+        </if>
+    </select>
+</mapper>

+ 26 - 1
src/test/java/com/xjrsoft/xjrsoftboot/FreeMarkerGeneratorTest.java

@@ -5104,6 +5104,31 @@ public class FreeMarkerGeneratorTest {
         apiGeneratorService.generateCodes(params);
     }
 
+    @Test
+    public void gcinternshipteacher() throws IOException {
+        List<TableConfig> tableConfigs = new ArrayList<>();
+        TableConfig mainTable = new TableConfig();
+        mainTable.setTableName("internship_plan_teacher");//init_sql中的表名
+        mainTable.setIsMain(true);//是否是主表,一般默认为true
+        mainTable.setPkField(GlobalConstant.DEFAULT_PK);//设置主键
+        mainTable.setPkType(GlobalConstant.DEFAULT_PK_TYPE);//设置主键类型
+        tableConfigs.add(mainTable);
+
+        ApiGenerateCodesDto params = new ApiGenerateCodesDto();
+        params.setAuthor("dzx");//作者名称
+        params.setPackageName("internship");//包名
+        params.setTableConfigs(tableConfigs);
+        params.setPage(true);//是否生成分页接口
+        params.setImport(false);//是否生成导入接口
+        params.setExport(false);//是否生成导出接口
+        params.setOutMainDir(true);//是否生成在主目录,前期测试可设置成false
+        params.setDs(ds);
+
+        IApiGeneratorService apiGeneratorService = new ApiGeneratorServiceImpl();
+
+        apiGeneratorService.generateCodes(params);
+    }
+
     @Test
     public void gcClassInternshipDynamicRead() throws IOException {
         List<TableConfig> tableConfigs = new ArrayList<>();
@@ -5115,7 +5140,7 @@ public class FreeMarkerGeneratorTest {
         tableConfigs.add(mainTable);
 
         ApiGenerateCodesDto params = new ApiGenerateCodesDto();
-        params.setAuthor("szs");//作者名称
+        params.setAuthor("dzx");//作者名称
         params.setPackageName("teacher");//包名
         params.setTableConfigs(tableConfigs);
         params.setPage(true);//是否生成分页接口