diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/controller/admin/DlDriveSchoolCoachController.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/controller/admin/DlDriveSchoolCoachController.java new file mode 100644 index 00000000..8db4bae1 --- /dev/null +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/controller/admin/DlDriveSchoolCoachController.java @@ -0,0 +1,91 @@ +package cn.iocoder.yudao.module.base.controller.admin; + +import cn.iocoder.yudao.framework.common.pojo.CommonResult; +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; +import cn.iocoder.yudao.module.base.entity.DlDriveSchoolCoach; +import cn.iocoder.yudao.module.base.service.DlDriveSchoolCoachService; +import cn.iocoder.yudao.module.base.vo.DlDriveSchoolCoachPageReqVO; +import cn.iocoder.yudao.module.base.vo.DlDriveSchoolCoachRespVO; +import cn.iocoder.yudao.module.base.vo.DlDriveSchoolCoachSaveReqVO; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.tags.Tag; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.Valid; + +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; + +@Tag(name = "管理后台 - 驾校教练") +@RestController +@RequestMapping("/base/dl-drive-school-coach") +@Validated +public class DlDriveSchoolCoachController { + + @Resource + private DlDriveSchoolCoachService dlDriveSchoolCoachService; + + /** + * 驾校教练、普通员工列表 + * + * @param pageReqVO {@link DlDriveSchoolCoachPageReqVO} + * @param pageNo 分页参数第几页 + * @param pageSize 分页参数每页多少条数据 + * @return cn.iocoder.yudao.framework.common.pojo.CommonResult> + * @author PQZ + * @date 14:58 2025/1/16 + **/ + @GetMapping("/page") + @Operation(summary = "获得驾校教练分页") + public CommonResult> getDlDriveSchoolCoachPage(DlDriveSchoolCoachPageReqVO pageReqVO, + @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize) { + Page page = new Page<>(pageNo, pageSize); + return success(dlDriveSchoolCoachService.queryListPage(pageReqVO, page)); + } + + /** + * 新增驾校教练 + * + * @param createReqVO {@link DlDriveSchoolCoachSaveReqVO} + * @return cn.iocoder.yudao.framework.common.pojo.CommonResult + * @author PQZ + * @date 16:19 2025/1/16 + **/ + @PostMapping("/create") + @Operation(summary = "创建驾校教练") + public CommonResult createDlDriveSchoolCoach(@Valid @RequestBody DlDriveSchoolCoachSaveReqVO createReqVO) { + dlDriveSchoolCoachService.createDlDriveSchoolCoach(createReqVO); + return success(true); + } + + @PutMapping("/update") + @Operation(summary = "更新驾校教练") + public CommonResult updateDlDriveSchoolCoach(@Valid @RequestBody DlDriveSchoolCoachSaveReqVO updateReqVO) { + dlDriveSchoolCoachService.updateDlDriveSchoolCoach(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") + @Operation(summary = "删除驾校教练") + @Parameter(name = "id", description = "编号", required = true) + public CommonResult deleteDlDriveSchoolCoach(@RequestParam("id") String id) { + dlDriveSchoolCoachService.deleteDlDriveSchoolCoach(id); + return success(true); + } + + @GetMapping("/get") + @Operation(summary = "获得驾校教练") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + public CommonResult getDlDriveSchoolCoach(@RequestParam("id") String id) { + DlDriveSchoolCoach dlDriveSchoolCoach = dlDriveSchoolCoachService.getDlDriveSchoolCoach(id); + return success(BeanUtils.toBean(dlDriveSchoolCoach, DlDriveSchoolCoachRespVO.class)); + } + + +} \ No newline at end of file diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/controller/admin/TestController.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/controller/admin/TestController.java deleted file mode 100644 index c86fa884..00000000 --- a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/controller/admin/TestController.java +++ /dev/null @@ -1,4 +0,0 @@ -package cn.iocoder.yudao.module.base.controller.admin; - -public class TestController { -} diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/entity/DlDriveSchoolCoach.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/entity/DlDriveSchoolCoach.java new file mode 100644 index 00000000..63cdfe3a --- /dev/null +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/entity/DlDriveSchoolCoach.java @@ -0,0 +1,98 @@ +package cn.iocoder.yudao.module.base.entity; + +import cn.iocoder.yudao.framework.tenant.core.db.TenantBaseDO; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.*; + +/** + * 驾校教练 DO + * + * @author pqz + */ +@TableName("drive_school_coach") +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class DlDriveSchoolCoach extends TenantBaseDO { + + /** + * 主键id + */ + @TableId(type = IdType.ASSIGN_UUID) + private String id; + /** + * 照片 + */ + private String image; + /** + * 姓名 + */ + private String name; + /** + * 年龄 + */ + private Integer age; + /** + * 性别 + * + */ + private String sex; + /** + * 联系电话 + */ + private String phone; + /** + * 身份证号 + */ + private String idNumber; + /** + * 车牌 + */ + private String carId; + /** + * 户籍地址 + */ + private String regAddress; + /** + * 家庭住址 + */ + private String address; + /** + * 教龄 + */ + private Integer seniority; + /** + * 个人简介 + */ + private String instructorDesc; + /** + * 工作人员类型(教练、工作人员) + */ + private String type; + /** + * 用户id + */ + private Integer userId; + /** + * 身份证 + */ + private String idPhoto; + /** + * 生活照 + */ + private String lifePhoto; + /** + * 驾驶证 + */ + private String drivePhoto; + /** + * 其他证件 + */ + private String otherPhoto; + +} \ No newline at end of file diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/entity/TestEntity.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/entity/TestEntity.java deleted file mode 100644 index 5ff0fe6b..00000000 --- a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/entity/TestEntity.java +++ /dev/null @@ -1,4 +0,0 @@ -package cn.iocoder.yudao.module.base.entity; - -public class TestEntity { -} diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/mapper/DlDriveSchoolCoachMapper.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/mapper/DlDriveSchoolCoachMapper.java new file mode 100644 index 00000000..124b8cbf --- /dev/null +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/mapper/DlDriveSchoolCoachMapper.java @@ -0,0 +1,32 @@ +package cn.iocoder.yudao.module.base.mapper; + +import cn.iocoder.yudao.module.base.entity.DlDriveSchoolCoach; +import cn.iocoder.yudao.module.base.vo.DlDriveSchoolCoachPageReqVO; +import cn.iocoder.yudao.module.base.vo.DlDriveSchoolCoachRespVO; +import cn.iocoder.yudao.module.member.vo.MemberLevelRespVO; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +/** + * 驾校教练 Mapper + * + * @author pqz + */ +@Mapper +public interface DlDriveSchoolCoachMapper extends BaseMapper { + + /** + * 驾校教练、普通员工列表 + * + * @param entity {@link DlDriveSchoolCoachPageReqVO} + * @param page 分页参数 + * @return com.baomidou.mybatisplus.core.metadata.IPage + * @author PQZ + * @date 15:04 2025/1/16 + **/ + IPage queryListPage(@Param("entity") DlDriveSchoolCoachPageReqVO entity, Page page); + +} \ No newline at end of file diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/mapper/TestMapper.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/mapper/TestMapper.java deleted file mode 100644 index d8629f09..00000000 --- a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/mapper/TestMapper.java +++ /dev/null @@ -1,4 +0,0 @@ -package cn.iocoder.yudao.module.base.mapper; - -public class TestMapper { -} diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/DlDriveSchoolCoachService.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/DlDriveSchoolCoachService.java new file mode 100644 index 00000000..ed2a318e --- /dev/null +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/DlDriveSchoolCoachService.java @@ -0,0 +1,63 @@ +package cn.iocoder.yudao.module.base.service; + +import cn.iocoder.yudao.module.base.entity.DlDriveSchoolCoach; +import cn.iocoder.yudao.module.base.vo.DlDriveSchoolCoachPageReqVO; +import cn.iocoder.yudao.module.base.vo.DlDriveSchoolCoachRespVO; +import cn.iocoder.yudao.module.base.vo.DlDriveSchoolCoachSaveReqVO; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.IService; + +import javax.validation.Valid; + +/** + * 驾校教练 Service 接口 + * + * @author pqz + */ +public interface DlDriveSchoolCoachService extends IService { + + /** + * 驾校教练、普通员工列表 + * + * @param pageReqVO {@link DlDriveSchoolCoachPageReqVO} + * @param page 分页参数 + * @return com.baomidou.mybatisplus.core.metadata.IPage + * @author PQZ + * @date 15:02 2025/1/16 + **/ + IPage queryListPage(DlDriveSchoolCoachPageReqVO pageReqVO, Page page); + + /** + * 创建驾校教练 + * + * @param createReqVO {@link DlDriveSchoolCoachSaveReqVO} + * @author PQZ + * @date 2025/1/16 + **/ + void createDlDriveSchoolCoach(@Valid DlDriveSchoolCoachSaveReqVO createReqVO); + + /** + * 更新驾校教练 + * + * @param updateReqVO 更新信息 + */ + void updateDlDriveSchoolCoach(@Valid DlDriveSchoolCoachSaveReqVO updateReqVO); + + /** + * 删除驾校教练 + * + * @param id 编号 + */ + void deleteDlDriveSchoolCoach(String id); + + /** + * 获得驾校教练 + * + * @param id 编号 + * @return 驾校教练 + */ + DlDriveSchoolCoach getDlDriveSchoolCoach(String id); + + +} \ No newline at end of file diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/TestService.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/TestService.java deleted file mode 100644 index d788e8ae..00000000 --- a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/TestService.java +++ /dev/null @@ -1,4 +0,0 @@ -package cn.iocoder.yudao.module.base.service; - -public class TestService { -} diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/impl/DlDriveSchoolCoachServiceImpl.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/impl/DlDriveSchoolCoachServiceImpl.java new file mode 100644 index 00000000..e748884b --- /dev/null +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/impl/DlDriveSchoolCoachServiceImpl.java @@ -0,0 +1,73 @@ +package cn.iocoder.yudao.module.base.service.impl; + +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; +import cn.iocoder.yudao.module.base.entity.DlDriveSchoolCoach; +import cn.iocoder.yudao.module.base.mapper.DlDriveSchoolCoachMapper; +import cn.iocoder.yudao.module.base.service.DlDriveSchoolCoachService; +import cn.iocoder.yudao.module.base.vo.DlDriveSchoolCoachPageReqVO; +import cn.iocoder.yudao.module.base.vo.DlDriveSchoolCoachRespVO; +import cn.iocoder.yudao.module.base.vo.DlDriveSchoolCoachSaveReqVO; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.stereotype.Service; +import org.springframework.validation.annotation.Validated; + +import javax.annotation.Resource; + +/** + * 驾校教练 Service 实现类 + * + * @author pqz + */ +@Service +@Validated +public class DlDriveSchoolCoachServiceImpl extends ServiceImpl implements DlDriveSchoolCoachService { + + @Resource + private DlDriveSchoolCoachMapper dlDriveSchoolCoachMapper; + + /** + * 驾校教练、普通员工列表 + * + * @param pageReqVO {@link DlDriveSchoolCoachPageReqVO} + * @param page 分页参数 + * @return com.baomidou.mybatisplus.core.metadata.IPage + * @author PQZ + * @date 15:02 2025/1/16 + **/ + @Override + public IPage queryListPage(DlDriveSchoolCoachPageReqVO pageReqVO, Page page) { + return dlDriveSchoolCoachMapper.queryListPage(pageReqVO,page); + } + + @Override + public void createDlDriveSchoolCoach(DlDriveSchoolCoachSaveReqVO createReqVO) { + // 插入 + DlDriveSchoolCoach dlDriveSchoolCoach = BeanUtils.toBean(createReqVO, DlDriveSchoolCoach.class); + dlDriveSchoolCoachMapper.insert(dlDriveSchoolCoach); + + } + + @Override + public void updateDlDriveSchoolCoach(DlDriveSchoolCoachSaveReqVO updateReqVO) { + // 校验存在 + DlDriveSchoolCoach updateObj = BeanUtils.toBean(updateReqVO, DlDriveSchoolCoach.class); + dlDriveSchoolCoachMapper.updateById(updateObj); + } + + @Override + public void deleteDlDriveSchoolCoach(String id) { + // 删除 + dlDriveSchoolCoachMapper.deleteById(id); + } + + + + @Override + public DlDriveSchoolCoach getDlDriveSchoolCoach(String id) { + return dlDriveSchoolCoachMapper.selectById(id); + } + + +} \ No newline at end of file diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/impl/TestServiceImpl.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/impl/TestServiceImpl.java deleted file mode 100644 index 39c3b314..00000000 --- a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/service/impl/TestServiceImpl.java +++ /dev/null @@ -1,4 +0,0 @@ -package cn.iocoder.yudao.module.base.service.impl; - -public class TestServiceImpl { -} diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/vo/DlDriveSchoolCoachPageReqVO.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/vo/DlDriveSchoolCoachPageReqVO.java new file mode 100644 index 00000000..5dd63ee5 --- /dev/null +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/vo/DlDriveSchoolCoachPageReqVO.java @@ -0,0 +1,15 @@ +package cn.iocoder.yudao.module.base.vo; + +import cn.iocoder.yudao.module.base.entity.DlDriveSchoolCoach; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.ToString; + +@Schema(description = "管理后台 - 驾校教练分页 Request VO") +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +public class DlDriveSchoolCoachPageReqVO extends DlDriveSchoolCoach { + +} \ No newline at end of file diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/vo/DlDriveSchoolCoachRespVO.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/vo/DlDriveSchoolCoachRespVO.java new file mode 100644 index 00000000..ea17e396 --- /dev/null +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/vo/DlDriveSchoolCoachRespVO.java @@ -0,0 +1,13 @@ +package cn.iocoder.yudao.module.base.vo; + +import cn.iocoder.yudao.module.base.entity.DlDriveSchoolCoach; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +@Schema(description = "管理后台 - 驾校教练 Response VO") +@Data +@ExcelIgnoreUnannotated +public class DlDriveSchoolCoachRespVO extends DlDriveSchoolCoach { + +} \ No newline at end of file diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/vo/DlDriveSchoolCoachSaveReqVO.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/vo/DlDriveSchoolCoachSaveReqVO.java new file mode 100644 index 00000000..6e664df2 --- /dev/null +++ b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/vo/DlDriveSchoolCoachSaveReqVO.java @@ -0,0 +1,11 @@ +package cn.iocoder.yudao.module.base.vo; + +import cn.iocoder.yudao.module.base.entity.DlDriveSchoolCoach; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +@Schema(description = "管理后台 - 驾校教练新增/修改 Request VO") +@Data +public class DlDriveSchoolCoachSaveReqVO extends DlDriveSchoolCoach { + +} \ No newline at end of file diff --git a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/vo/TestVo.java b/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/vo/TestVo.java deleted file mode 100644 index fbecf357..00000000 --- a/dl-module-jx/src/main/java/cn/iocoder/yudao/module/base/vo/TestVo.java +++ /dev/null @@ -1,4 +0,0 @@ -package cn.iocoder.yudao.module.base.vo; - -public class TestVo { -} diff --git a/dl-module-jx/src/main/resources/mapper/base/DlDriveSchoolCoachMapper.xml b/dl-module-jx/src/main/resources/mapper/base/DlDriveSchoolCoachMapper.xml new file mode 100644 index 00000000..e9e8ed70 --- /dev/null +++ b/dl-module-jx/src/main/resources/mapper/base/DlDriveSchoolCoachMapper.xml @@ -0,0 +1,24 @@ + + + + + + + + \ No newline at end of file