From c8a542a40b9333f124a500c4ba1f8511fb6601e5 Mon Sep 17 00:00:00 2001 From: SondonYong Date: Wed, 26 Nov 2025 17:34:40 +0800 Subject: [PATCH] =?UTF-8?q?init:=E6=95=99=E5=B8=88=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E5=88=9D=E5=A7=8B=E5=8C=96=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../edu/web/TeacherCertificateController.java | 85 +++++++++++++++++++ .../com/zcloud/edu/web/TeacherController.java | 83 ++++++++++++++++++ .../com/zcloud/edu/command/TeacherAddExe.java | 40 +++++++++ .../edu/command/TeacherCertificateAddExe.java | 40 +++++++++ .../command/TeacherCertificateRemoveExe.java | 39 +++++++++ .../command/TeacherCertificateUpdateExe.java | 34 ++++++++ .../zcloud/edu/command/TeacherRemoveExe.java | 39 +++++++++ .../zcloud/edu/command/TeacherUpdateExe.java | 34 ++++++++ .../TeacherCertificateCoConvertor.java | 24 ++++++ .../command/convertor/TeacherCoConvertor.java | 24 ++++++ .../query/TeacherCertificateQueryExe.java | 60 +++++++++++++ .../edu/command/query/TeacherQueryExe.java | 60 +++++++++++++ .../TeacherCertificateServiceImpl.java | 70 +++++++++++++++ .../edu/service/TeacherServiceImpl.java | 70 +++++++++++++++ .../edu/api/TeacherCertificateServiceI.java | 34 ++++++++ .../com/zcloud/edu/api/TeacherServiceI.java | 34 ++++++++ .../com/zcloud/edu/dto/TeacherAddCmd.java | 80 +++++++++++++++++ .../edu/dto/TeacherCertificateAddCmd.java | 63 ++++++++++++++ .../edu/dto/TeacherCertificateListQry.java | 28 ++++++ .../edu/dto/TeacherCertificatePageQry.java | 28 ++++++ .../edu/dto/TeacherCertificateRemoveCmd.java | 29 +++++++ .../edu/dto/TeacherCertificateUpdateCmd.java | 61 +++++++++++++ .../com/zcloud/edu/dto/TeacherListQry.java | 28 ++++++ .../com/zcloud/edu/dto/TeacherPageQry.java | 28 ++++++ .../com/zcloud/edu/dto/TeacherRemoveCmd.java | 29 +++++++ .../com/zcloud/edu/dto/TeacherUpdateCmd.java | 73 ++++++++++++++++ .../edu/dto/clientobject/TeacherCO.java | 80 +++++++++++++++++ .../clientobject/TeacherCertificateCO.java | 63 ++++++++++++++ .../gateway/TeacherCertificateGateway.java | 30 +++++++ .../edu/domain/gateway/TeacherGateway.java | 30 +++++++ .../edu/domain/model/TeacherCertificateE.java | 38 +++++++++ .../com/zcloud/edu/domain/model/TeacherE.java | 47 ++++++++++ .../TeacherCertificateGatewayImpl.java | 50 +++++++++++ .../edu/gatewayimpl/TeacherGatewayImpl.java | 50 +++++++++++ .../dataobject/TeacherCertificateDO.java | 59 +++++++++++++ .../edu/persistence/dataobject/TeacherDO.java | 71 ++++++++++++++++ .../mapper/TeacherCertificateMapper.java | 17 ++++ .../edu/persistence/mapper/TeacherMapper.java | 17 ++++ .../TeacherCertificateRepository.java | 25 ++++++ .../repository/TeacherRepository.java | 25 ++++++ .../TeacherCertificateRepositoryImpl.java | 55 ++++++++++++ .../impl/TeacherRepositoryImpl.java | 55 ++++++++++++ .../mapper/TeacherCertificateMapper.xml | 7 ++ .../main/resources/mapper/TeacherMapper.xml | 7 ++ 44 files changed, 1943 insertions(+) create mode 100644 web-adapter/src/main/java/com/zcloud/edu/web/TeacherCertificateController.java create mode 100644 web-adapter/src/main/java/com/zcloud/edu/web/TeacherController.java create mode 100644 web-app/src/main/java/com/zcloud/edu/command/TeacherAddExe.java create mode 100644 web-app/src/main/java/com/zcloud/edu/command/TeacherCertificateAddExe.java create mode 100644 web-app/src/main/java/com/zcloud/edu/command/TeacherCertificateRemoveExe.java create mode 100644 web-app/src/main/java/com/zcloud/edu/command/TeacherCertificateUpdateExe.java create mode 100644 web-app/src/main/java/com/zcloud/edu/command/TeacherRemoveExe.java create mode 100644 web-app/src/main/java/com/zcloud/edu/command/TeacherUpdateExe.java create mode 100644 web-app/src/main/java/com/zcloud/edu/command/convertor/TeacherCertificateCoConvertor.java create mode 100644 web-app/src/main/java/com/zcloud/edu/command/convertor/TeacherCoConvertor.java create mode 100644 web-app/src/main/java/com/zcloud/edu/command/query/TeacherCertificateQueryExe.java create mode 100644 web-app/src/main/java/com/zcloud/edu/command/query/TeacherQueryExe.java create mode 100644 web-app/src/main/java/com/zcloud/edu/service/TeacherCertificateServiceImpl.java create mode 100644 web-app/src/main/java/com/zcloud/edu/service/TeacherServiceImpl.java create mode 100644 web-client/src/main/java/com/zcloud/edu/api/TeacherCertificateServiceI.java create mode 100644 web-client/src/main/java/com/zcloud/edu/api/TeacherServiceI.java create mode 100644 web-client/src/main/java/com/zcloud/edu/dto/TeacherAddCmd.java create mode 100644 web-client/src/main/java/com/zcloud/edu/dto/TeacherCertificateAddCmd.java create mode 100644 web-client/src/main/java/com/zcloud/edu/dto/TeacherCertificateListQry.java create mode 100644 web-client/src/main/java/com/zcloud/edu/dto/TeacherCertificatePageQry.java create mode 100644 web-client/src/main/java/com/zcloud/edu/dto/TeacherCertificateRemoveCmd.java create mode 100644 web-client/src/main/java/com/zcloud/edu/dto/TeacherCertificateUpdateCmd.java create mode 100644 web-client/src/main/java/com/zcloud/edu/dto/TeacherListQry.java create mode 100644 web-client/src/main/java/com/zcloud/edu/dto/TeacherPageQry.java create mode 100644 web-client/src/main/java/com/zcloud/edu/dto/TeacherRemoveCmd.java create mode 100644 web-client/src/main/java/com/zcloud/edu/dto/TeacherUpdateCmd.java create mode 100644 web-client/src/main/java/com/zcloud/edu/dto/clientobject/TeacherCO.java create mode 100644 web-client/src/main/java/com/zcloud/edu/dto/clientobject/TeacherCertificateCO.java create mode 100644 web-domain/src/main/java/com/zcloud/edu/domain/gateway/TeacherCertificateGateway.java create mode 100644 web-domain/src/main/java/com/zcloud/edu/domain/gateway/TeacherGateway.java create mode 100644 web-domain/src/main/java/com/zcloud/edu/domain/model/TeacherCertificateE.java create mode 100644 web-domain/src/main/java/com/zcloud/edu/domain/model/TeacherE.java create mode 100644 web-infrastructure/src/main/java/com/zcloud/edu/gatewayimpl/TeacherCertificateGatewayImpl.java create mode 100644 web-infrastructure/src/main/java/com/zcloud/edu/gatewayimpl/TeacherGatewayImpl.java create mode 100644 web-infrastructure/src/main/java/com/zcloud/edu/persistence/dataobject/TeacherCertificateDO.java create mode 100644 web-infrastructure/src/main/java/com/zcloud/edu/persistence/dataobject/TeacherDO.java create mode 100644 web-infrastructure/src/main/java/com/zcloud/edu/persistence/mapper/TeacherCertificateMapper.java create mode 100644 web-infrastructure/src/main/java/com/zcloud/edu/persistence/mapper/TeacherMapper.java create mode 100644 web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/TeacherCertificateRepository.java create mode 100644 web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/TeacherRepository.java create mode 100644 web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/impl/TeacherCertificateRepositoryImpl.java create mode 100644 web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/impl/TeacherRepositoryImpl.java create mode 100644 web-infrastructure/src/main/resources/mapper/TeacherCertificateMapper.xml create mode 100644 web-infrastructure/src/main/resources/mapper/TeacherMapper.xml diff --git a/web-adapter/src/main/java/com/zcloud/edu/web/TeacherCertificateController.java b/web-adapter/src/main/java/com/zcloud/edu/web/TeacherCertificateController.java new file mode 100644 index 0000000..0e511c6 --- /dev/null +++ b/web-adapter/src/main/java/com/zcloud/edu/web/TeacherCertificateController.java @@ -0,0 +1,85 @@ +package com.zcloud.edu.web; + + +import com.zcloud.edu.api.TeacherCertificateServiceI; +import com.zcloud.edu.dto.TeacherCertificateAddCmd; +import com.zcloud.edu.dto.TeacherCertificatePageQry; +import com.zcloud.edu.dto.TeacherCertificateListQry; +import com.zcloud.edu.dto.TeacherCertificateUpdateCmd; +import com.zcloud.edu.dto.TeacherCertificateRemoveCmd; +import com.zcloud.edu.dto.clientobject.TeacherCertificateCO; +import com.alibaba.cola.dto.MultiResponse; +import com.alibaba.cola.dto.PageResponse; +import com.alibaba.cola.dto.Response; +import com.alibaba.cola.dto.SingleResponse; +import com.jjb.saas.framework.auth.model.SSOUser; +import com.jjb.saas.framework.auth.utils.AuthContext; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.util.ArrayList; + +/** + * web-adapter + * + * @Author SondonYong + * @Date 2025-11-26 17:26:50 + */ +@Api(tags = "教师资质证书信息") +@RequestMapping("/${application.gateway}/teacherCertificate") +@RestController +@AllArgsConstructor +public class TeacherCertificateController { + private final TeacherCertificateServiceI teacherCertificateService; + + @ApiOperation("新增") + @PostMapping("/save") + public SingleResponse add(@Validated @RequestBody TeacherCertificateAddCmd cmd) { + SSOUser ssoUser = AuthContext.getCurrentUser(); + return teacherCertificateService.add(cmd); + } + + @ApiOperation("修改") + @PutMapping("/edit") + public SingleResponse edit(@Validated @RequestBody TeacherCertificateUpdateCmd cmd) { + teacherCertificateService.edit(cmd); + return SingleResponse.buildSuccess(); + } + + @ApiOperation("分页") + @PostMapping("/list") + public PageResponse page(@RequestBody TeacherCertificatePageQry qry) { + return teacherCertificateService.listPage(qry); + } + + @ApiOperation("所有数据") + @PostMapping("/listAll") + public MultiResponse listAll(@RequestBody TeacherCertificateListQry qry) { + return teacherCertificateService.list(qry); + } + + @ApiOperation("详情") + @GetMapping("/getInfoById") + public SingleResponse getInfoById(@RequestParam(value = "id") Long id) { + return teacherCertificateService.getInfoById(id); + } + + @ApiOperation("删除") + @PutMapping("/remove") + public Response remove(@RequestParam(value = "id") Long id) { + teacherCertificateService.remove(id); + return SingleResponse.buildSuccess(); + } + + @ApiOperation("删除多个") + @PutMapping("/removeBatch") + public Response removeBatch(@Validated @RequestBody TeacherCertificateRemoveCmd cmd) { + teacherCertificateService.removeBatch(cmd.getIds()); + return SingleResponse.buildSuccess(); + } + +} + diff --git a/web-adapter/src/main/java/com/zcloud/edu/web/TeacherController.java b/web-adapter/src/main/java/com/zcloud/edu/web/TeacherController.java new file mode 100644 index 0000000..2cb207d --- /dev/null +++ b/web-adapter/src/main/java/com/zcloud/edu/web/TeacherController.java @@ -0,0 +1,83 @@ +package com.zcloud.edu.web; + + +import com.zcloud.edu.api.TeacherServiceI; +import com.zcloud.edu.dto.TeacherAddCmd; +import com.zcloud.edu.dto.TeacherPageQry; +import com.zcloud.edu.dto.TeacherListQry; +import com.zcloud.edu.dto.TeacherUpdateCmd; +import com.zcloud.edu.dto.TeacherRemoveCmd; +import com.alibaba.cola.dto.MultiResponse; +import com.alibaba.cola.dto.PageResponse; +import com.alibaba.cola.dto.Response; +import com.alibaba.cola.dto.SingleResponse; +import com.jjb.saas.framework.auth.model.SSOUser; +import com.jjb.saas.framework.auth.utils.AuthContext; +import com.zcloud.edu.dto.clientobject.TeacherCO; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import lombok.AllArgsConstructor; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +/** + * web-adapter + * + * @Author SondonYong + * @Date 2025-11-26 17:04:44 + */ +@Api(tags = "教师信息") +@RequestMapping("/${application.gateway}/teacher") +@RestController +@AllArgsConstructor +public class TeacherController { + private final TeacherServiceI teacherService; + + @ApiOperation("新增") + @PostMapping("/save") + public SingleResponse add(@Validated @RequestBody TeacherAddCmd cmd) { + SSOUser ssoUser = AuthContext.getCurrentUser(); + return teacherService.add(cmd); + } + + @ApiOperation("修改") + @PutMapping("/edit") + public SingleResponse edit(@Validated @RequestBody TeacherUpdateCmd cmd) { + teacherService.edit(cmd); + return SingleResponse.buildSuccess(); + } + + @ApiOperation("分页") + @PostMapping("/list") + public PageResponse page(@RequestBody TeacherPageQry qry) { + return teacherService.listPage(qry); + } + + @ApiOperation("所有数据") + @PostMapping("/listAll") + public MultiResponse listAll(@RequestBody TeacherListQry qry) { + return teacherService.list(qry); + } + + @ApiOperation("详情") + @GetMapping("/getInfoById") + public SingleResponse getInfoById(@RequestParam(value = "id") Long id) { + return teacherService.getInfoById(id); + } + + @ApiOperation("删除") + @PutMapping("/remove") + public Response remove(@RequestParam(value = "id") Long id) { + teacherService.remove(id); + return SingleResponse.buildSuccess(); + } + + @ApiOperation("删除多个") + @PutMapping("/removeBatch") + public Response removeBatch(@Validated @RequestBody TeacherRemoveCmd cmd) { + teacherService.removeBatch(cmd.getIds()); + return SingleResponse.buildSuccess(); + } + +} + diff --git a/web-app/src/main/java/com/zcloud/edu/command/TeacherAddExe.java b/web-app/src/main/java/com/zcloud/edu/command/TeacherAddExe.java new file mode 100644 index 0000000..de53d4d --- /dev/null +++ b/web-app/src/main/java/com/zcloud/edu/command/TeacherAddExe.java @@ -0,0 +1,40 @@ +package com.zcloud.edu.command; + +import com.zcloud.edu.domain.gateway.TeacherGateway; +import com.zcloud.edu.domain.model.TeacherE; +import com.zcloud.edu.dto.TeacherAddCmd; +import com.alibaba.cola.exception.BizException; +import lombok.AllArgsConstructor; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; + + +/** + * web-app + * + * @Author SondonYong + * @Date 2025-11-26 17:04:44 + */ +@Component +@AllArgsConstructor +public class TeacherAddExe { + private final TeacherGateway teacherGateway; + + @Transactional(rollbackFor = Exception.class) + public boolean execute(TeacherAddCmd cmd) { + TeacherE teacherE = new TeacherE(); + BeanUtils.copyProperties(cmd, teacherE); + boolean res = false; + try { + res = teacherGateway.add(teacherE); + } catch (Exception e) { + throw new RuntimeException(e); + } + if (!res) { + throw new BizException("保存失败"); + } + return true; + } +} + diff --git a/web-app/src/main/java/com/zcloud/edu/command/TeacherCertificateAddExe.java b/web-app/src/main/java/com/zcloud/edu/command/TeacherCertificateAddExe.java new file mode 100644 index 0000000..4665b65 --- /dev/null +++ b/web-app/src/main/java/com/zcloud/edu/command/TeacherCertificateAddExe.java @@ -0,0 +1,40 @@ +package com.zcloud.edu.command; + +import com.zcloud.edu.domain.gateway.TeacherCertificateGateway; +import com.zcloud.edu.domain.model.TeacherCertificateE; +import com.zcloud.edu.dto.TeacherCertificateAddCmd; +import com.alibaba.cola.exception.BizException; +import lombok.AllArgsConstructor; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; + + +/** + * web-app + * + * @Author SondonYong + * @Date 2025-11-26 17:26:50 + */ +@Component +@AllArgsConstructor +public class TeacherCertificateAddExe { + private final TeacherCertificateGateway teacherCertificateGateway; + + @Transactional(rollbackFor = Exception.class) + public boolean execute(TeacherCertificateAddCmd cmd) { + TeacherCertificateE teacherCertificateE = new TeacherCertificateE(); + BeanUtils.copyProperties(cmd, teacherCertificateE); + boolean res = false; + try { + res = teacherCertificateGateway.add(teacherCertificateE); + } catch (Exception e) { + throw new RuntimeException(e); + } + if (!res) { + throw new BizException("保存失败"); + } + return true; + } +} + diff --git a/web-app/src/main/java/com/zcloud/edu/command/TeacherCertificateRemoveExe.java b/web-app/src/main/java/com/zcloud/edu/command/TeacherCertificateRemoveExe.java new file mode 100644 index 0000000..05b62ce --- /dev/null +++ b/web-app/src/main/java/com/zcloud/edu/command/TeacherCertificateRemoveExe.java @@ -0,0 +1,39 @@ +package com.zcloud.edu.command; + +import com.zcloud.edu.domain.gateway.TeacherCertificateGateway; +import com.alibaba.cola.exception.BizException; +import lombok.AllArgsConstructor; +import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; + + +/** + * web-app + * + * @Author SondonYong + * @Date 2025-11-26 17:26:51 + */ +@Component +@AllArgsConstructor +public class TeacherCertificateRemoveExe { + private final TeacherCertificateGateway teacherCertificateGateway; + + @Transactional(rollbackFor = Exception.class) + public boolean execute(Long id) { + boolean res = teacherCertificateGateway.deletedTeacherCertificateById(id); + if (!res) { + throw new BizException("删除失败"); + } + return true; + } + + @Transactional(rollbackFor = Exception.class) + public boolean execute(Long[] ids) { + boolean res = teacherCertificateGateway.deletedTeacherCertificateByIds(ids); + if (!res) { + throw new BizException("删除失败"); + } + return true; + } +} + diff --git a/web-app/src/main/java/com/zcloud/edu/command/TeacherCertificateUpdateExe.java b/web-app/src/main/java/com/zcloud/edu/command/TeacherCertificateUpdateExe.java new file mode 100644 index 0000000..4ebb35d --- /dev/null +++ b/web-app/src/main/java/com/zcloud/edu/command/TeacherCertificateUpdateExe.java @@ -0,0 +1,34 @@ +package com.zcloud.edu.command; + +import com.alibaba.cola.exception.BizException; +import com.zcloud.edu.domain.gateway.TeacherCertificateGateway; +import com.zcloud.edu.domain.model.TeacherCertificateE; +import com.zcloud.edu.dto.TeacherCertificateUpdateCmd; +import lombok.AllArgsConstructor; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; + + +/** + * web-app + * + * @Author SondonYong + * @Date 2025-11-26 17:26:51 + */ +@Component +@AllArgsConstructor +public class TeacherCertificateUpdateExe { + private final TeacherCertificateGateway teacherCertificateGateway; + + @Transactional(rollbackFor = Exception.class) + public void execute(TeacherCertificateUpdateCmd cmd) { + TeacherCertificateE teacherCertificateE = new TeacherCertificateE(); + BeanUtils.copyProperties(cmd, teacherCertificateE); + boolean res = teacherCertificateGateway.update(teacherCertificateE); + if (!res) { + throw new BizException("修改失败"); + } + } +} + diff --git a/web-app/src/main/java/com/zcloud/edu/command/TeacherRemoveExe.java b/web-app/src/main/java/com/zcloud/edu/command/TeacherRemoveExe.java new file mode 100644 index 0000000..2d72bf9 --- /dev/null +++ b/web-app/src/main/java/com/zcloud/edu/command/TeacherRemoveExe.java @@ -0,0 +1,39 @@ +package com.zcloud.edu.command; + +import com.zcloud.edu.domain.gateway.TeacherGateway; +import com.alibaba.cola.exception.BizException; +import lombok.AllArgsConstructor; +import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; + + +/** + * web-app + * + * @Author SondonYong + * @Date 2025-11-26 17:04:44 + */ +@Component +@AllArgsConstructor +public class TeacherRemoveExe { + private final TeacherGateway teacherGateway; + + @Transactional(rollbackFor = Exception.class) + public boolean execute(Long id) { + boolean res = teacherGateway.deletedTeacherById(id); + if (!res) { + throw new BizException("删除失败"); + } + return true; + } + + @Transactional(rollbackFor = Exception.class) + public boolean execute(Long[] ids) { + boolean res = teacherGateway.deletedTeacherByIds(ids); + if (!res) { + throw new BizException("删除失败"); + } + return true; + } +} + diff --git a/web-app/src/main/java/com/zcloud/edu/command/TeacherUpdateExe.java b/web-app/src/main/java/com/zcloud/edu/command/TeacherUpdateExe.java new file mode 100644 index 0000000..067681a --- /dev/null +++ b/web-app/src/main/java/com/zcloud/edu/command/TeacherUpdateExe.java @@ -0,0 +1,34 @@ +package com.zcloud.edu.command; + +import com.alibaba.cola.exception.BizException; +import com.zcloud.edu.domain.gateway.TeacherGateway; +import com.zcloud.edu.domain.model.TeacherE; +import com.zcloud.edu.dto.TeacherUpdateCmd; +import lombok.AllArgsConstructor; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Component; +import org.springframework.transaction.annotation.Transactional; + + +/** + * web-app + * + * @Author SondonYong + * @Date 2025-11-26 17:04:44 + */ +@Component +@AllArgsConstructor +public class TeacherUpdateExe { + private final TeacherGateway teacherGateway; + + @Transactional(rollbackFor = Exception.class) + public void execute(TeacherUpdateCmd cmd) { + TeacherE teacherE = new TeacherE(); + BeanUtils.copyProperties(cmd, teacherE); + boolean res = teacherGateway.update(teacherE); + if (!res) { + throw new BizException("修改失败"); + } + } +} + diff --git a/web-app/src/main/java/com/zcloud/edu/command/convertor/TeacherCertificateCoConvertor.java b/web-app/src/main/java/com/zcloud/edu/command/convertor/TeacherCertificateCoConvertor.java new file mode 100644 index 0000000..522cf3f --- /dev/null +++ b/web-app/src/main/java/com/zcloud/edu/command/convertor/TeacherCertificateCoConvertor.java @@ -0,0 +1,24 @@ +package com.zcloud.edu.command.convertor; + +import com.zcloud.edu.dto.clientobject.TeacherCertificateCO; +import com.zcloud.edu.persistence.dataobject.TeacherCertificateDO; +import org.mapstruct.Mapper; + +import java.util.List; + + +/** + * web-app + * + * @Author SondonYong + * @Date 2025-11-26 17:26:50 + */ +@Mapper(componentModel = "spring") +public interface TeacherCertificateCoConvertor { + /** + * @param teacherCertificateDOs + * @return + */ + List converDOsToCOs(List teacherCertificateDOs); +} + diff --git a/web-app/src/main/java/com/zcloud/edu/command/convertor/TeacherCoConvertor.java b/web-app/src/main/java/com/zcloud/edu/command/convertor/TeacherCoConvertor.java new file mode 100644 index 0000000..e93cc4b --- /dev/null +++ b/web-app/src/main/java/com/zcloud/edu/command/convertor/TeacherCoConvertor.java @@ -0,0 +1,24 @@ +package com.zcloud.edu.command.convertor; + +import com.zcloud.edu.dto.clientobject.TeacherCO; +import com.zcloud.edu.persistence.dataobject.TeacherDO; +import org.mapstruct.Mapper; + +import java.util.List; + + +/** + * web-app + * + * @Author SondonYong + * @Date 2025-11-26 17:04:44 + */ +@Mapper(componentModel = "spring") +public interface TeacherCoConvertor { + /** + * @param teacherDOs + * @return + */ + List converDOsToCOs(List teacherDOs); +} + diff --git a/web-app/src/main/java/com/zcloud/edu/command/query/TeacherCertificateQueryExe.java b/web-app/src/main/java/com/zcloud/edu/command/query/TeacherCertificateQueryExe.java new file mode 100644 index 0000000..0687dce --- /dev/null +++ b/web-app/src/main/java/com/zcloud/edu/command/query/TeacherCertificateQueryExe.java @@ -0,0 +1,60 @@ +package com.zcloud.edu.command.query; + +import com.alibaba.cola.dto.MultiResponse; +import com.zcloud.edu.command.convertor.TeacherCertificateCoConvertor; +import com.zcloud.edu.dto.TeacherCertificateListQry; +import com.zcloud.edu.dto.TeacherCertificatePageQry; +import com.zcloud.edu.dto.clientobject.TeacherCertificateCO; +import com.zcloud.edu.persistence.dataobject.TeacherCertificateDO; +import com.zcloud.edu.persistence.repository.TeacherCertificateRepository; +import com.zcloud.gbscommon.utils.PageQueryHelper; +import com.alibaba.cola.dto.PageResponse; +import com.alibaba.cola.dto.SingleResponse; +import lombok.AllArgsConstructor; +import org.springframework.stereotype.Component; +import org.springframework.beans.BeanUtils; + +import java.util.List; +import java.util.Map; + + +/** + * web-app + * + * @Author SondonYong + * @Date 2025-11-26 17:26:51 + */ +@Component +@AllArgsConstructor +public class TeacherCertificateQueryExe { + private final TeacherCertificateRepository teacherCertificateRepository; + private final TeacherCertificateCoConvertor teacherCertificateCoConvertor; + + /** + * 分页 + * + * @return + */ + public PageResponse execute(TeacherCertificatePageQry qry) { + Map params = PageQueryHelper.toHashMap(qry); + PageResponse pageResponse = teacherCertificateRepository.listPage(params); + List examCenterCOS = teacherCertificateCoConvertor.converDOsToCOs(pageResponse.getData()); + return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex()); + } + + public MultiResponse execute(TeacherCertificateListQry qry) { + Map params = PageQueryHelper.toHashMap(qry); + List list = teacherCertificateRepository.list(params); + List examCenterCOS = teacherCertificateCoConvertor.converDOsToCOs(list); + return MultiResponse.of(examCenterCOS); + } + + public SingleResponse execute(Long id) { + SingleResponse teacherCertificateDO = teacherCertificateRepository.getInfoById(id); + TeacherCertificateCO co = new TeacherCertificateCO(); + BeanUtils.copyProperties(teacherCertificateDO.getData(), co); + return SingleResponse.of(co); + } + +} + diff --git a/web-app/src/main/java/com/zcloud/edu/command/query/TeacherQueryExe.java b/web-app/src/main/java/com/zcloud/edu/command/query/TeacherQueryExe.java new file mode 100644 index 0000000..22307df --- /dev/null +++ b/web-app/src/main/java/com/zcloud/edu/command/query/TeacherQueryExe.java @@ -0,0 +1,60 @@ +package com.zcloud.edu.command.query; + +import com.alibaba.cola.dto.MultiResponse; +import com.zcloud.edu.command.convertor.TeacherCoConvertor; +import com.zcloud.edu.dto.TeacherListQry; +import com.zcloud.edu.dto.TeacherPageQry; +import com.zcloud.edu.dto.clientobject.TeacherCO; +import com.zcloud.edu.persistence.dataobject.TeacherDO; +import com.zcloud.edu.persistence.repository.TeacherRepository; +import com.zcloud.gbscommon.utils.PageQueryHelper; +import com.alibaba.cola.dto.PageResponse; +import com.alibaba.cola.dto.SingleResponse; +import lombok.AllArgsConstructor; +import org.springframework.stereotype.Component; +import org.springframework.beans.BeanUtils; + +import java.util.List; +import java.util.Map; + + +/** + * web-app + * + * @Author SondonYong + * @Date 2025-11-26 17:04:44 + */ +@Component +@AllArgsConstructor +public class TeacherQueryExe { + private final TeacherRepository teacherRepository; + private final TeacherCoConvertor teacherCoConvertor; + + /** + * 分页 + * + * @return + */ + public PageResponse execute(TeacherPageQry qry) { + Map params = PageQueryHelper.toHashMap(qry); + PageResponse pageResponse = teacherRepository.listPage(params); + List examCenterCOS = teacherCoConvertor.converDOsToCOs(pageResponse.getData()); + return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex()); + } + + public MultiResponse execute(TeacherListQry qry) { + Map params = PageQueryHelper.toHashMap(qry); + List list = teacherRepository.list(params); + List examCenterCOS = teacherCoConvertor.converDOsToCOs(list); + return MultiResponse.of(examCenterCOS); + } + + public SingleResponse execute(Long id) { + SingleResponse teacherDO = teacherRepository.getInfoById(id); + TeacherCO co = new TeacherCO(); + BeanUtils.copyProperties(teacherDO.getData(), co); + return SingleResponse.of(co); + } + +} + diff --git a/web-app/src/main/java/com/zcloud/edu/service/TeacherCertificateServiceImpl.java b/web-app/src/main/java/com/zcloud/edu/service/TeacherCertificateServiceImpl.java new file mode 100644 index 0000000..8de355c --- /dev/null +++ b/web-app/src/main/java/com/zcloud/edu/service/TeacherCertificateServiceImpl.java @@ -0,0 +1,70 @@ +package com.zcloud.edu.service; + +import com.alibaba.cola.dto.MultiResponse; +import com.zcloud.edu.api.TeacherCertificateServiceI; +import com.zcloud.edu.command.TeacherCertificateAddExe; +import com.zcloud.edu.command.TeacherCertificateRemoveExe; +import com.zcloud.edu.command.TeacherCertificateUpdateExe; +import com.zcloud.edu.command.query.TeacherCertificateQueryExe; +import com.zcloud.edu.dto.TeacherCertificateAddCmd; +import com.zcloud.edu.dto.TeacherCertificatePageQry; +import com.zcloud.edu.dto.TeacherCertificateListQry; +import com.zcloud.edu.dto.TeacherCertificateUpdateCmd; +import com.zcloud.edu.dto.clientobject.TeacherCertificateCO; + +import com.alibaba.cola.dto.PageResponse; +import com.alibaba.cola.dto.SingleResponse; +import lombok.AllArgsConstructor; +import org.springframework.stereotype.Service; + +/** + * web-app + * + * @Author SondonYong + * @Date 2025-11-26 17:26:51 + */ +@Service +@AllArgsConstructor +public class TeacherCertificateServiceImpl implements TeacherCertificateServiceI { + private final TeacherCertificateAddExe teacherCertificateAddExe; + private final TeacherCertificateUpdateExe teacherCertificateUpdateExe; + private final TeacherCertificateRemoveExe teacherCertificateRemoveExe; + private final TeacherCertificateQueryExe teacherCertificateQueryExe; + + @Override + public PageResponse listPage(TeacherCertificatePageQry qry) { + return teacherCertificateQueryExe.execute(qry); + } + + @Override + public MultiResponse list(TeacherCertificateListQry qry) { + return teacherCertificateQueryExe.execute(qry); + } + + @Override + public SingleResponse getInfoById(Long id) { + return teacherCertificateQueryExe.execute(id); + } + + @Override + public SingleResponse add(TeacherCertificateAddCmd cmd) { + teacherCertificateAddExe.execute(cmd); + return SingleResponse.buildSuccess(); + } + + @Override + public void edit(TeacherCertificateUpdateCmd cmd) { + teacherCertificateUpdateExe.execute(cmd); + } + + @Override + public void remove(Long id) { + teacherCertificateRemoveExe.execute(id); + } + + @Override + public void removeBatch(Long[] ids) { + teacherCertificateRemoveExe.execute(ids); + } +} + diff --git a/web-app/src/main/java/com/zcloud/edu/service/TeacherServiceImpl.java b/web-app/src/main/java/com/zcloud/edu/service/TeacherServiceImpl.java new file mode 100644 index 0000000..b181eb8 --- /dev/null +++ b/web-app/src/main/java/com/zcloud/edu/service/TeacherServiceImpl.java @@ -0,0 +1,70 @@ +package com.zcloud.edu.service; + +import com.alibaba.cola.dto.MultiResponse; +import com.zcloud.edu.api.TeacherServiceI; +import com.zcloud.edu.command.TeacherAddExe; +import com.zcloud.edu.command.TeacherRemoveExe; +import com.zcloud.edu.command.TeacherUpdateExe; +import com.zcloud.edu.command.query.TeacherQueryExe; +import com.zcloud.edu.dto.TeacherAddCmd; +import com.zcloud.edu.dto.TeacherPageQry; +import com.zcloud.edu.dto.TeacherListQry; +import com.zcloud.edu.dto.TeacherUpdateCmd; + +import com.alibaba.cola.dto.PageResponse; +import com.alibaba.cola.dto.SingleResponse; +import com.zcloud.edu.dto.clientobject.TeacherCO; +import lombok.AllArgsConstructor; +import org.springframework.stereotype.Service; + +/** + * web-app + * + * @Author SondonYong + * @Date 2025-11-26 17:04:44 + */ +@Service +@AllArgsConstructor +public class TeacherServiceImpl implements TeacherServiceI { + private final TeacherAddExe teacherAddExe; + private final TeacherUpdateExe teacherUpdateExe; + private final TeacherRemoveExe teacherRemoveExe; + private final TeacherQueryExe teacherQueryExe; + + @Override + public PageResponse listPage(TeacherPageQry qry) { + return teacherQueryExe.execute(qry); + } + + @Override + public MultiResponse list(TeacherListQry qry) { + return teacherQueryExe.execute(qry); + } + + @Override + public SingleResponse getInfoById(Long id) { + return teacherQueryExe.execute(id); + } + + @Override + public SingleResponse add(TeacherAddCmd cmd) { + teacherAddExe.execute(cmd); + return SingleResponse.buildSuccess(); + } + + @Override + public void edit(TeacherUpdateCmd cmd) { + teacherUpdateExe.execute(cmd); + } + + @Override + public void remove(Long id) { + teacherRemoveExe.execute(id); + } + + @Override + public void removeBatch(Long[] ids) { + teacherRemoveExe.execute(ids); + } +} + diff --git a/web-client/src/main/java/com/zcloud/edu/api/TeacherCertificateServiceI.java b/web-client/src/main/java/com/zcloud/edu/api/TeacherCertificateServiceI.java new file mode 100644 index 0000000..d51bb7e --- /dev/null +++ b/web-client/src/main/java/com/zcloud/edu/api/TeacherCertificateServiceI.java @@ -0,0 +1,34 @@ +package com.zcloud.edu.api; + +import com.alibaba.cola.dto.MultiResponse; +import com.zcloud.edu.dto.TeacherCertificateAddCmd; +import com.zcloud.edu.dto.TeacherCertificatePageQry; +import com.zcloud.edu.dto.TeacherCertificateListQry; +import com.zcloud.edu.dto.TeacherCertificateUpdateCmd; +import com.zcloud.edu.dto.clientobject.TeacherCertificateCO; + +import com.alibaba.cola.dto.PageResponse; +import com.alibaba.cola.dto.SingleResponse; + +/** + * web-client + * + * @Author SondonYong + * @Date 2025-11-26 17:26:51 + */ +public interface TeacherCertificateServiceI { + PageResponse listPage(TeacherCertificatePageQry qry); + + MultiResponse list(TeacherCertificateListQry qry); + + SingleResponse getInfoById(Long id); + + SingleResponse add(TeacherCertificateAddCmd cmd); + + void edit(TeacherCertificateUpdateCmd cmd); + + void remove(Long id); + + void removeBatch(Long[] ids); +} + diff --git a/web-client/src/main/java/com/zcloud/edu/api/TeacherServiceI.java b/web-client/src/main/java/com/zcloud/edu/api/TeacherServiceI.java new file mode 100644 index 0000000..99f247c --- /dev/null +++ b/web-client/src/main/java/com/zcloud/edu/api/TeacherServiceI.java @@ -0,0 +1,34 @@ +package com.zcloud.edu.api; + +import com.alibaba.cola.dto.MultiResponse; +import com.zcloud.edu.dto.TeacherAddCmd; +import com.zcloud.edu.dto.TeacherPageQry; +import com.zcloud.edu.dto.TeacherListQry; +import com.zcloud.edu.dto.TeacherUpdateCmd; + +import com.alibaba.cola.dto.PageResponse; +import com.alibaba.cola.dto.SingleResponse; +import com.zcloud.edu.dto.clientobject.TeacherCO; + +/** + * web-client + * + * @Author SondonYong + * @Date 2025-11-26 17:04:44 + */ +public interface TeacherServiceI { + PageResponse listPage(TeacherPageQry qry); + + MultiResponse list(TeacherListQry qry); + + SingleResponse getInfoById(Long id); + + SingleResponse add(TeacherAddCmd cmd); + + void edit(TeacherUpdateCmd cmd); + + void remove(Long id); + + void removeBatch(Long[] ids); +} + diff --git a/web-client/src/main/java/com/zcloud/edu/dto/TeacherAddCmd.java b/web-client/src/main/java/com/zcloud/edu/dto/TeacherAddCmd.java new file mode 100644 index 0000000..5f9ad66 --- /dev/null +++ b/web-client/src/main/java/com/zcloud/edu/dto/TeacherAddCmd.java @@ -0,0 +1,80 @@ +package com.zcloud.edu.dto; + +import com.alibaba.cola.dto.Command; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +import javax.validation.constraints.*; + +import java.util.Date; + +/** + * web-client + * + * @Author SondonYong + * @Date 2025-11-26 17:04:44 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@NoArgsConstructor +@AllArgsConstructor +public class TeacherAddCmd extends Command { + @ApiModelProperty(value = "用户id", name = "userId", required = true) + @NotNull(message = "用户id不能为空") + private Long userId; + + @ApiModelProperty(value = "企业ID", name = "corpinfoId", required = true) + @NotNull(message = "企业ID不能为空") + private Long corpinfoId; + + @ApiModelProperty(value = "教师姓名", name = "teacherName", required = true) + @NotEmpty(message = "教师姓名不能为空") + private String teacherName; + + @ApiModelProperty(value = "手机号", name = "phone", required = true) + @NotEmpty(message = "手机号不能为空") + private String phone; + + @ApiModelProperty(value = "身份证号", name = "identityNumber", required = true) + @NotEmpty(message = "身份证号不能为空") + private String identityNumber; + + @ApiModelProperty(value = "文化程度", name = "educationLevel", required = true) + @NotEmpty(message = "文化程度不能为空") + private String educationLevel; + + @ApiModelProperty(value = "文化程度名称", name = "educationLevelName", required = true) + @NotEmpty(message = "文化程度名称不能为空") + private String educationLevelName; + + @ApiModelProperty(value = "专业", name = "profession", required = true) + @NotEmpty(message = "专业不能为空") + private String profession; + + @ApiModelProperty(value = "工作年限", name = "workyear", required = true) + @NotNull(message = "工作年限不能为空") + private Integer workyear; + + @ApiModelProperty(value = "考核部门", name = "assessmentDepartment", required = true) + @NotEmpty(message = "考核部门不能为空") + private String assessmentDepartment; + + @ApiModelProperty(value = "考核时间", name = "assessmentTime", required = true) + @NotNull(message = "考核时间不能为空") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date assessmentTime; + + @ApiModelProperty(value = "考核结果", name = "assessmentResult", required = true) + @NotEmpty(message = "考核结果不能为空") + private String assessmentResult; + + @ApiModelProperty(value = "状态(0-禁用 1-启用)(老项目0启用,1禁用)", name = "state", required = true) + @NotEmpty(message = "状态(0-禁用 1-启用)(老项目0启用,1禁用)不能为空") + private String state; + +} + diff --git a/web-client/src/main/java/com/zcloud/edu/dto/TeacherCertificateAddCmd.java b/web-client/src/main/java/com/zcloud/edu/dto/TeacherCertificateAddCmd.java new file mode 100644 index 0000000..215b0b9 --- /dev/null +++ b/web-client/src/main/java/com/zcloud/edu/dto/TeacherCertificateAddCmd.java @@ -0,0 +1,63 @@ +package com.zcloud.edu.dto; + +import com.alibaba.cola.dto.Command; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +import javax.validation.constraints.*; +import java.util.Date; + +/** + * web-client + * + * @Author SondonYong + * @Date 2025-11-26 17:26:50 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@NoArgsConstructor +@AllArgsConstructor +public class TeacherCertificateAddCmd extends Command { + @ApiModelProperty(value = "教师ID", name = "teacherId", required = true) + @NotEmpty(message = "教师ID不能为空") + private String teacherId; + + @ApiModelProperty(value = "资质类型", name = "qualificationType", required = true) + @NotEmpty(message = "资质类型不能为空") + private String qualificationType; + + @ApiModelProperty(value = "资质类型名称", name = "qualificationTypeName", required = true) + @NotEmpty(message = "资质类型名称不能为空") + private String qualificationTypeName; + + @ApiModelProperty(value = "职业证书编号", name = "vocationalCertificateNumber", required = true) + @NotEmpty(message = "职业证书编号不能为空") + private String vocationalCertificateNumber; + + @ApiModelProperty(value = "是否永久有效:0-否,1-是", name = "effectiveFlag", required = true) + @NotNull(message = "是否永久有效:0-否,1-是不能为空") + private Integer effectiveFlag; + + @ApiModelProperty(value = "证书有效期(开始)", name = "certificateDateStart", required = true) + @NotNull(message = "证书有效期(开始)不能为空") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date certificateDateStart; + + @ApiModelProperty(value = "证书有效期(结束)", name = "certificateDateEnd", required = true) + @NotNull(message = "证书有效期(结束)不能为空") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date certificateDateEnd; + + @ApiModelProperty(value = "证书照片", name = "certificateFilepath", required = true) + @NotEmpty(message = "证书照片不能为空") + private String certificateFilepath; + + @ApiModelProperty(value = "企业ID", name = "corpinfoId", required = true) + @NotNull(message = "企业ID不能为空") + private Long corpinfoId; +} + diff --git a/web-client/src/main/java/com/zcloud/edu/dto/TeacherCertificateListQry.java b/web-client/src/main/java/com/zcloud/edu/dto/TeacherCertificateListQry.java new file mode 100644 index 0000000..cac5ee8 --- /dev/null +++ b/web-client/src/main/java/com/zcloud/edu/dto/TeacherCertificateListQry.java @@ -0,0 +1,28 @@ +package com.zcloud.edu.dto; + +import com.alibaba.cola.dto.PageQuery; +import lombok.Data; + + +/** + * web-client + * + * @Author SondonYong + * @Date 2025-11-26 17:26:51 + */ +@Data +public class TeacherCertificateListQry extends PageQuery { + + /** + * 查询条件操作前缀,支持以下几种数据库查询操作: + * - `like`: 模糊匹配查询,对应SQL的LIKE操作符 + * - `eq`: 等值查询,对应SQL的=操作符 + * - `gt`: 大于比较查询 + * - `lt`: 小于比较查询 + * - `ge`: 大于等于比较查询 + * - `le`: 小于等于比较查询 + * - `ne`: 不等比较查询,对应SQL的!=操作符 + */ + private String likeTeacherCertificateId; +} + diff --git a/web-client/src/main/java/com/zcloud/edu/dto/TeacherCertificatePageQry.java b/web-client/src/main/java/com/zcloud/edu/dto/TeacherCertificatePageQry.java new file mode 100644 index 0000000..3be3096 --- /dev/null +++ b/web-client/src/main/java/com/zcloud/edu/dto/TeacherCertificatePageQry.java @@ -0,0 +1,28 @@ +package com.zcloud.edu.dto; + +import com.alibaba.cola.dto.PageQuery; +import lombok.Data; + + +/** + * web-client + * + * @Author SondonYong + * @Date 2025-11-26 17:26:51 + */ +@Data +public class TeacherCertificatePageQry extends PageQuery { + + /** + * 查询条件操作前缀,支持以下几种数据库查询操作: + * - `like`: 模糊匹配查询,对应SQL的LIKE操作符 + * - `eq`: 等值查询,对应SQL的=操作符 + * - `gt`: 大于比较查询 + * - `lt`: 小于比较查询 + * - `ge`: 大于等于比较查询 + * - `le`: 小于等于比较查询 + * - `ne`: 不等比较查询,对应SQL的!=操作符 + */ + private String likeTeacherCertificateId; +} + diff --git a/web-client/src/main/java/com/zcloud/edu/dto/TeacherCertificateRemoveCmd.java b/web-client/src/main/java/com/zcloud/edu/dto/TeacherCertificateRemoveCmd.java new file mode 100644 index 0000000..40b8c16 --- /dev/null +++ b/web-client/src/main/java/com/zcloud/edu/dto/TeacherCertificateRemoveCmd.java @@ -0,0 +1,29 @@ +package com.zcloud.edu.dto; + +import com.alibaba.cola.dto.Command; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +import javax.validation.constraints.*; + +/** + * web-client + * + * @Author SondonYong + * @Date 2025-11-26 17:26:51 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@NoArgsConstructor +@AllArgsConstructor +public class TeacherCertificateRemoveCmd extends Command { + + @ApiModelProperty(value = "主键", name = "ids", required = true) + @NotNull(message = "主键不能为空") + private Long[] ids; + +} + diff --git a/web-client/src/main/java/com/zcloud/edu/dto/TeacherCertificateUpdateCmd.java b/web-client/src/main/java/com/zcloud/edu/dto/TeacherCertificateUpdateCmd.java new file mode 100644 index 0000000..813189f --- /dev/null +++ b/web-client/src/main/java/com/zcloud/edu/dto/TeacherCertificateUpdateCmd.java @@ -0,0 +1,61 @@ +package com.zcloud.edu.dto; + +import com.alibaba.cola.dto.Command; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +import javax.validation.constraints.*; +import java.util.Date; + +/** + * web-client + * + * @Author SondonYong + * @Date 2025-11-26 17:26:51 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@NoArgsConstructor +@AllArgsConstructor +public class TeacherCertificateUpdateCmd extends Command { + @ApiModelProperty(value = "${column.comment}", name = "id", required = true) + @NotNull(message = "${column.comment}不能为空") + private Long id; + @ApiModelProperty(value = "业务主键id", name = "teacherCertificateId", required = true) + @NotEmpty(message = "业务主键id不能为空") + private String teacherCertificateId; + @ApiModelProperty(value = "教师ID", name = "teacherId", required = true) + @NotEmpty(message = "教师ID不能为空") + private String teacherId; + @ApiModelProperty(value = "资质类型", name = "qualificationType", required = true) + @NotEmpty(message = "资质类型不能为空") + private String qualificationType; + @ApiModelProperty(value = "资质类型名称", name = "qualificationTypeName", required = true) + @NotEmpty(message = "资质类型名称不能为空") + private String qualificationTypeName; + @ApiModelProperty(value = "职业证书编号", name = "vocationalCertificateNumber", required = true) + @NotEmpty(message = "职业证书编号不能为空") + private String vocationalCertificateNumber; + @ApiModelProperty(value = "是否永久有效:0-否,1-是", name = "effectiveFlag", required = true) + @NotNull(message = "是否永久有效:0-否,1-是不能为空") + private Integer effectiveFlag; + @ApiModelProperty(value = "证书有效期(开始)", name = "certificateDateStart", required = true) + @NotNull(message = "证书有效期(开始)不能为空") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date certificateDateStart; + @ApiModelProperty(value = "证书有效期(结束)", name = "certificateDateEnd", required = true) + @NotNull(message = "证书有效期(结束)不能为空") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date certificateDateEnd; + @ApiModelProperty(value = "证书照片", name = "certificateFilepath", required = true) + @NotEmpty(message = "证书照片不能为空") + private String certificateFilepath; + @ApiModelProperty(value = "企业ID", name = "corpinfoId", required = true) + @NotNull(message = "企业ID不能为空") + private Long corpinfoId; +} + diff --git a/web-client/src/main/java/com/zcloud/edu/dto/TeacherListQry.java b/web-client/src/main/java/com/zcloud/edu/dto/TeacherListQry.java new file mode 100644 index 0000000..56160a2 --- /dev/null +++ b/web-client/src/main/java/com/zcloud/edu/dto/TeacherListQry.java @@ -0,0 +1,28 @@ +package com.zcloud.edu.dto; + +import com.alibaba.cola.dto.PageQuery; +import lombok.Data; + + +/** + * web-client + * + * @Author SondonYong + * @Date 2025-11-26 17:04:44 + */ +@Data +public class TeacherListQry extends PageQuery { + + /** + * 查询条件操作前缀,支持以下几种数据库查询操作: + * - `like`: 模糊匹配查询,对应SQL的LIKE操作符 + * - `eq`: 等值查询,对应SQL的=操作符 + * - `gt`: 大于比较查询 + * - `lt`: 小于比较查询 + * - `ge`: 大于等于比较查询 + * - `le`: 小于等于比较查询 + * - `ne`: 不等比较查询,对应SQL的!=操作符 + */ + private String likeTeacherId; +} + diff --git a/web-client/src/main/java/com/zcloud/edu/dto/TeacherPageQry.java b/web-client/src/main/java/com/zcloud/edu/dto/TeacherPageQry.java new file mode 100644 index 0000000..0b611e8 --- /dev/null +++ b/web-client/src/main/java/com/zcloud/edu/dto/TeacherPageQry.java @@ -0,0 +1,28 @@ +package com.zcloud.edu.dto; + +import com.alibaba.cola.dto.PageQuery; +import lombok.Data; + + +/** + * web-client + * + * @Author SondonYong + * @Date 2025-11-26 17:04:44 + */ +@Data +public class TeacherPageQry extends PageQuery { + + /** + * 查询条件操作前缀,支持以下几种数据库查询操作: + * - `like`: 模糊匹配查询,对应SQL的LIKE操作符 + * - `eq`: 等值查询,对应SQL的=操作符 + * - `gt`: 大于比较查询 + * - `lt`: 小于比较查询 + * - `ge`: 大于等于比较查询 + * - `le`: 小于等于比较查询 + * - `ne`: 不等比较查询,对应SQL的!=操作符 + */ + private String likeTeacherId; +} + diff --git a/web-client/src/main/java/com/zcloud/edu/dto/TeacherRemoveCmd.java b/web-client/src/main/java/com/zcloud/edu/dto/TeacherRemoveCmd.java new file mode 100644 index 0000000..cf24e55 --- /dev/null +++ b/web-client/src/main/java/com/zcloud/edu/dto/TeacherRemoveCmd.java @@ -0,0 +1,29 @@ +package com.zcloud.edu.dto; + +import com.alibaba.cola.dto.Command; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +import javax.validation.constraints.*; + +/** + * web-client + * + * @Author SondonYong + * @Date 2025-11-26 17:04:44 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@NoArgsConstructor +@AllArgsConstructor +public class TeacherRemoveCmd extends Command { + + @ApiModelProperty(value = "主键", name = "ids", required = true) + @NotNull(message = "主键不能为空") + private Long[] ids; + +} + diff --git a/web-client/src/main/java/com/zcloud/edu/dto/TeacherUpdateCmd.java b/web-client/src/main/java/com/zcloud/edu/dto/TeacherUpdateCmd.java new file mode 100644 index 0000000..e07e4bd --- /dev/null +++ b/web-client/src/main/java/com/zcloud/edu/dto/TeacherUpdateCmd.java @@ -0,0 +1,73 @@ +package com.zcloud.edu.dto; + +import com.alibaba.cola.dto.Command; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +import javax.validation.constraints.*; + +import java.util.Date; + +/** + * web-client + * + * @Author SondonYong + * @Date 2025-11-26 17:04:44 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@NoArgsConstructor +@AllArgsConstructor +public class TeacherUpdateCmd extends Command { + @ApiModelProperty(value = "教师id", name = "id", required = true) + @NotNull(message = "教师id不能为空") + private Long id; + @ApiModelProperty(value = "业务主键id", name = "teacherId", required = true) + @NotEmpty(message = "业务主键id不能为空") + private String teacherId; + @ApiModelProperty(value = "用户id", name = "userId", required = true) + @NotNull(message = "用户id不能为空") + private Long userId; + @ApiModelProperty(value = "企业ID", name = "corpinfoId", required = true) + @NotNull(message = "企业ID不能为空") + private Long corpinfoId; + @ApiModelProperty(value = "教师姓名", name = "teacherName", required = true) + @NotEmpty(message = "教师姓名不能为空") + private String teacherName; + @ApiModelProperty(value = "手机号", name = "phone", required = true) + @NotEmpty(message = "手机号不能为空") + private String phone; + @ApiModelProperty(value = "身份证号", name = "identityNumber", required = true) + @NotEmpty(message = "身份证号不能为空") + private String identityNumber; + @ApiModelProperty(value = "文化程度", name = "educationLevel", required = true) + @NotEmpty(message = "文化程度不能为空") + private String educationLevel; + @ApiModelProperty(value = "文化程度名称", name = "educationLevelName", required = true) + @NotEmpty(message = "文化程度名称不能为空") + private String educationLevelName; + @ApiModelProperty(value = "专业", name = "profession", required = true) + @NotEmpty(message = "专业不能为空") + private String profession; + @ApiModelProperty(value = "工作年限", name = "workyear", required = true) + @NotNull(message = "工作年限不能为空") + private Integer workyear; + @ApiModelProperty(value = "考核部门", name = "assessmentDepartment", required = true) + @NotEmpty(message = "考核部门不能为空") + private String assessmentDepartment; + @ApiModelProperty(value = "考核时间", name = "assessmentTime", required = true) + @NotNull(message = "考核时间不能为空") + @JsonFormat(pattern = "yyyy-MM-dd") + private Date assessmentTime; + @ApiModelProperty(value = "考核结果", name = "assessmentResult", required = true) + @NotEmpty(message = "考核结果不能为空") + private String assessmentResult; + @ApiModelProperty(value = "状态(0-禁用 1-启用)(老项目0启用,1禁用)", name = "state", required = true) + @NotEmpty(message = "状态(0-禁用 1-启用)(老项目0启用,1禁用)不能为空") + private String state; +} + diff --git a/web-client/src/main/java/com/zcloud/edu/dto/clientobject/TeacherCO.java b/web-client/src/main/java/com/zcloud/edu/dto/clientobject/TeacherCO.java new file mode 100644 index 0000000..ca9f051 --- /dev/null +++ b/web-client/src/main/java/com/zcloud/edu/dto/clientobject/TeacherCO.java @@ -0,0 +1,80 @@ +package com.zcloud.edu.dto.clientobject; + +import com.alibaba.cola.dto.ClientObject; +import io.swagger.annotations.ApiModelProperty; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.time.LocalDateTime; +import java.time.LocalDate; + +/** + * web-client + * + * @Author SondonYong + * @Date 2025-11-26 17:20:28 + */ +@Data +public class TeacherCO extends ClientObject { + //教师id + @ApiModelProperty(value = "教师id") + + private Long id; + //业务主键id + @ApiModelProperty(value = "业务主键id") + + private String teacherId; + //用户id + @ApiModelProperty(value = "用户id") + + private Long userId; + //企业ID + @ApiModelProperty(value = "企业ID") + + private Long corpinfoId; + //教师姓名 + @ApiModelProperty(value = "教师姓名") + + private String teacherName; + //手机号 + @ApiModelProperty(value = "手机号") + + private String phone; + //身份证号 + @ApiModelProperty(value = "身份证号") + + private String identityNumber; + //文化程度 + @ApiModelProperty(value = "文化程度") + + private String educationLevel; + //文化程度名称 + @ApiModelProperty(value = "文化程度名称") + + private String educationLevelName; + //专业 + @ApiModelProperty(value = "专业") + + private String profession; + //工作年限 + @ApiModelProperty(value = "工作年限") + + private Integer workyear; + //考核部门 + @ApiModelProperty(value = "考核部门") + + private String assessmentDepartment; + //考核时间 + @ApiModelProperty(value = "考核时间") + + @JsonFormat(pattern = "yyyy-MM-dd") + private LocalDate assessmentTime; + //考核结果 + @ApiModelProperty(value = "考核结果") + + private String assessmentResult; + //状态(0-禁用 1-启用)(老项目0启用,1禁用) + @ApiModelProperty(value = "状态(0-禁用 1-启用)(老项目0启用,1禁用)") + + private String state; +} diff --git a/web-client/src/main/java/com/zcloud/edu/dto/clientobject/TeacherCertificateCO.java b/web-client/src/main/java/com/zcloud/edu/dto/clientobject/TeacherCertificateCO.java new file mode 100644 index 0000000..33a1737 --- /dev/null +++ b/web-client/src/main/java/com/zcloud/edu/dto/clientobject/TeacherCertificateCO.java @@ -0,0 +1,63 @@ +package com.zcloud.edu.dto.clientobject; + +import com.alibaba.cola.dto.ClientObject; +import io.swagger.annotations.ApiModelProperty; +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.Data; + +import java.time.LocalDateTime; +import java.time.LocalDate; + +/** + * web-client + * + * @Author SondonYong + * @Date 2025-11-26 17:26:50 + */ +@Data +public class TeacherCertificateCO extends ClientObject { + + private Long id; + //业务主键id + @ApiModelProperty(value = "业务主键id") + + private String teacherCertificateId; + //教师ID + @ApiModelProperty(value = "教师ID") + + private String teacherId; + //资质类型 + @ApiModelProperty(value = "资质类型") + + private String qualificationType; + //资质类型名称 + @ApiModelProperty(value = "资质类型名称") + + private String qualificationTypeName; + //职业证书编号 + @ApiModelProperty(value = "职业证书编号") + + private String vocationalCertificateNumber; + //是否永久有效:0-否,1-是 + @ApiModelProperty(value = "是否永久有效:0-否,1-是") + + private Integer effectiveFlag; + //证书有效期(开始) + @ApiModelProperty(value = "证书有效期(开始)") + + @JsonFormat(pattern = "yyyy-MM-dd") + private LocalDate certificateDateStart; + //证书有效期(结束) + @ApiModelProperty(value = "证书有效期(结束)") + + @JsonFormat(pattern = "yyyy-MM-dd") + private LocalDate certificateDateEnd; + //证书照片 + @ApiModelProperty(value = "证书照片") + + private String certificateFilepath; + //企业ID + @ApiModelProperty(value = "企业ID") + + private Long corpinfoId; +} diff --git a/web-domain/src/main/java/com/zcloud/edu/domain/gateway/TeacherCertificateGateway.java b/web-domain/src/main/java/com/zcloud/edu/domain/gateway/TeacherCertificateGateway.java new file mode 100644 index 0000000..645534a --- /dev/null +++ b/web-domain/src/main/java/com/zcloud/edu/domain/gateway/TeacherCertificateGateway.java @@ -0,0 +1,30 @@ +package com.zcloud.edu.domain.gateway; + +import com.zcloud.edu.domain.model.TeacherCertificateE; + +/** + * web-domain + * + * @Author SondonYong + * @Date 2025-11-26 17:26:50 + */ +public interface TeacherCertificateGateway { + + /** + * 新增 + */ + Boolean add(TeacherCertificateE teacherCertificateE); + + /** + * 修改 + */ + Boolean update(TeacherCertificateE teacherCertificateE); + + /** + * 删除 + */ + Boolean deletedTeacherCertificateById(Long id); + + Boolean deletedTeacherCertificateByIds(Long[] id); +} + diff --git a/web-domain/src/main/java/com/zcloud/edu/domain/gateway/TeacherGateway.java b/web-domain/src/main/java/com/zcloud/edu/domain/gateway/TeacherGateway.java new file mode 100644 index 0000000..d879d83 --- /dev/null +++ b/web-domain/src/main/java/com/zcloud/edu/domain/gateway/TeacherGateway.java @@ -0,0 +1,30 @@ +package com.zcloud.edu.domain.gateway; + +import com.zcloud.edu.domain.model.TeacherE; + +/** + * web-domain + * + * @Author SondonYong + * @Date 2025-11-26 17:04:44 + */ +public interface TeacherGateway { + + /** + * 新增 + */ + Boolean add(TeacherE teacherE); + + /** + * 修改 + */ + Boolean update(TeacherE teacherE); + + /** + * 删除 + */ + Boolean deletedTeacherById(Long id); + + Boolean deletedTeacherByIds(Long[] id); +} + diff --git a/web-domain/src/main/java/com/zcloud/edu/domain/model/TeacherCertificateE.java b/web-domain/src/main/java/com/zcloud/edu/domain/model/TeacherCertificateE.java new file mode 100644 index 0000000..983ee5f --- /dev/null +++ b/web-domain/src/main/java/com/zcloud/edu/domain/model/TeacherCertificateE.java @@ -0,0 +1,38 @@ +package com.zcloud.edu.domain.model; + +import com.jjb.saas.framework.domain.model.BaseE; +import lombok.Data; + +import java.util.Date; + +/** + * web-domain + * + * @Author SondonYong + * @Date 2025-11-26 17:26:50 + */ +@Data +public class TeacherCertificateE extends BaseE { + private Long id; + //业务主键id + private String teacherCertificateId; + //教师ID + private String teacherId; + //资质类型 + private String qualificationType; + //资质类型名称 + private String qualificationTypeName; + //职业证书编号 + private String vocationalCertificateNumber; + //是否永久有效:0-否,1-是 + private Integer effectiveFlag; + //证书有效期(开始) + private Date certificateDateStart; + //证书有效期(结束) + private Date certificateDateEnd; + //证书照片 + private String certificateFilepath; + //企业ID + private Long corpinfoId; +} + diff --git a/web-domain/src/main/java/com/zcloud/edu/domain/model/TeacherE.java b/web-domain/src/main/java/com/zcloud/edu/domain/model/TeacherE.java new file mode 100644 index 0000000..10c9712 --- /dev/null +++ b/web-domain/src/main/java/com/zcloud/edu/domain/model/TeacherE.java @@ -0,0 +1,47 @@ +package com.zcloud.edu.domain.model; + +import com.jjb.saas.framework.domain.model.BaseE; +import lombok.Data; + +import java.util.Date; + +/** + * web-domain + * + * @Author SondonYong + * @Date 2025-11-26 17:04:44 + */ +@Data +public class TeacherE extends BaseE { + //教师id + private Long id; + //业务主键id + private String teacherId; + //用户id + private Long userId; + //企业ID + private Long corpinfoId; + //教师姓名 + private String teacherName; + //手机号 + private String phone; + //身份证号 + private String identityNumber; + //文化程度 + private String educationLevel; + //文化程度名称 + private String educationLevelName; + //专业 + private String profession; + //工作年限 + private Integer workyear; + //考核部门 + private String assessmentDepartment; + //考核时间 + private Date assessmentTime; + //考核结果 + private String assessmentResult; + //状态(0-禁用 1-启用)(老项目0启用,1禁用) + private String state; +} + diff --git a/web-infrastructure/src/main/java/com/zcloud/edu/gatewayimpl/TeacherCertificateGatewayImpl.java b/web-infrastructure/src/main/java/com/zcloud/edu/gatewayimpl/TeacherCertificateGatewayImpl.java new file mode 100644 index 0000000..ead8d30 --- /dev/null +++ b/web-infrastructure/src/main/java/com/zcloud/edu/gatewayimpl/TeacherCertificateGatewayImpl.java @@ -0,0 +1,50 @@ +package com.zcloud.edu.gatewayimpl; + +import com.zcloud.edu.domain.gateway.TeacherCertificateGateway; +import com.zcloud.edu.domain.model.TeacherCertificateE; +import com.zcloud.edu.persistence.dataobject.TeacherCertificateDO; +import com.zcloud.edu.persistence.repository.TeacherCertificateRepository; +import lombok.AllArgsConstructor; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Service; + +import java.util.Collections; + +/** + * web-infrastructure + * + * @Author SondonYong + * @Date 2025-11-26 17:26:50 + */ +@Service +@AllArgsConstructor +public class TeacherCertificateGatewayImpl implements TeacherCertificateGateway { + private final TeacherCertificateRepository teacherCertificateRepository; + + @Override + public Boolean add(TeacherCertificateE teacherCertificateE) { + TeacherCertificateDO d = new TeacherCertificateDO(); + BeanUtils.copyProperties(teacherCertificateE, d); + teacherCertificateRepository.save(d); + return true; + } + + @Override + public Boolean update(TeacherCertificateE teacherCertificateE) { + TeacherCertificateDO d = new TeacherCertificateDO(); + BeanUtils.copyProperties(teacherCertificateE, d); + teacherCertificateRepository.updateById(d); + return true; + } + + @Override + public Boolean deletedTeacherCertificateById(Long id) { + return teacherCertificateRepository.removeById(id); + } + + @Override + public Boolean deletedTeacherCertificateByIds(Long[] ids) { + return teacherCertificateRepository.removeByIds(Collections.singletonList(ids)); + } +} + diff --git a/web-infrastructure/src/main/java/com/zcloud/edu/gatewayimpl/TeacherGatewayImpl.java b/web-infrastructure/src/main/java/com/zcloud/edu/gatewayimpl/TeacherGatewayImpl.java new file mode 100644 index 0000000..2f1ff77 --- /dev/null +++ b/web-infrastructure/src/main/java/com/zcloud/edu/gatewayimpl/TeacherGatewayImpl.java @@ -0,0 +1,50 @@ +package com.zcloud.edu.gatewayimpl; + +import com.zcloud.edu.domain.gateway.TeacherGateway; +import com.zcloud.edu.domain.model.TeacherE; +import com.zcloud.edu.persistence.dataobject.TeacherDO; +import com.zcloud.edu.persistence.repository.TeacherRepository; +import lombok.AllArgsConstructor; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Service; + +import java.util.Collections; + +/** + * web-infrastructure + * + * @Author SondonYong + * @Date 2025-11-26 17:04:44 + */ +@Service +@AllArgsConstructor +public class TeacherGatewayImpl implements TeacherGateway { + private final TeacherRepository teacherRepository; + + @Override + public Boolean add(TeacherE teacherE) { + TeacherDO d = new TeacherDO(); + BeanUtils.copyProperties(teacherE, d); + teacherRepository.save(d); + return true; + } + + @Override + public Boolean update(TeacherE teacherE) { + TeacherDO d = new TeacherDO(); + BeanUtils.copyProperties(teacherE, d); + teacherRepository.updateById(d); + return true; + } + + @Override + public Boolean deletedTeacherById(Long id) { + return teacherRepository.removeById(id); + } + + @Override + public Boolean deletedTeacherByIds(Long[] ids) { + return teacherRepository.removeByIds(Collections.singletonList(ids)); + } +} + diff --git a/web-infrastructure/src/main/java/com/zcloud/edu/persistence/dataobject/TeacherCertificateDO.java b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/dataobject/TeacherCertificateDO.java new file mode 100644 index 0000000..9b83359 --- /dev/null +++ b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/dataobject/TeacherCertificateDO.java @@ -0,0 +1,59 @@ +package com.zcloud.edu.persistence.dataobject; + +import com.baomidou.mybatisplus.annotation.*; +import com.jjb.saas.framework.repository.basedo.BaseDO; +import lombok.Data; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +import java.util.Date; + +/** + * web-infrastructure + * + * @Author SondonYong + * @Date 2025-11-26 17:26:50 + */ +@Data +@TableName("teacher_certificate") +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class TeacherCertificateDO extends BaseDO { + //业务主键id + @ApiModelProperty(value = "业务主键id") + private String teacherCertificateId; + //教师ID + @ApiModelProperty(value = "教师ID") + private String teacherId; + //资质类型 + @ApiModelProperty(value = "资质类型") + private String qualificationType; + //资质类型名称 + @ApiModelProperty(value = "资质类型名称") + private String qualificationTypeName; + //职业证书编号 + @ApiModelProperty(value = "职业证书编号") + private String vocationalCertificateNumber; + //是否永久有效:0-否,1-是 + @ApiModelProperty(value = "是否永久有效:0-否,1-是") + private Integer effectiveFlag; + //证书有效期(开始) + @ApiModelProperty(value = "证书有效期(开始)") + private Date certificateDateStart; + //证书有效期(结束) + @ApiModelProperty(value = "证书有效期(结束)") + private Date certificateDateEnd; + //证书照片 + @ApiModelProperty(value = "证书照片") + private String certificateFilepath; + //企业ID + @ApiModelProperty(value = "企业ID") + private Long corpinfoId; + + public TeacherCertificateDO(String teacherCertificateId) { + this.teacherCertificateId = teacherCertificateId; + } + +} + diff --git a/web-infrastructure/src/main/java/com/zcloud/edu/persistence/dataobject/TeacherDO.java b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/dataobject/TeacherDO.java new file mode 100644 index 0000000..45f8e6c --- /dev/null +++ b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/dataobject/TeacherDO.java @@ -0,0 +1,71 @@ +package com.zcloud.edu.persistence.dataobject; + +import com.baomidou.mybatisplus.annotation.*; +import com.jjb.saas.framework.repository.basedo.BaseDO; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +import java.util.Date; + +/** + * web-infrastructure + * + * @Author SondonYong + * @Date 2025-11-26 17:04:44 + */ +@Data +@TableName("teacher") +@NoArgsConstructor +@EqualsAndHashCode(callSuper = true) +public class TeacherDO extends BaseDO { + //业务主键id + @ApiModelProperty(value = "业务主键id") + private String teacherId; + //用户id + @ApiModelProperty(value = "用户id") + private Long userId; + //企业ID + @ApiModelProperty(value = "企业ID") + private Long corpinfoId; + //教师姓名 + @ApiModelProperty(value = "教师姓名") + private String teacherName; + //手机号 + @ApiModelProperty(value = "手机号") + private String phone; + //身份证号 + @ApiModelProperty(value = "身份证号") + private String identityNumber; + //文化程度 + @ApiModelProperty(value = "文化程度") + private String educationLevel; + //文化程度名称 + @ApiModelProperty(value = "文化程度名称") + private String educationLevelName; + //专业 + @ApiModelProperty(value = "专业") + private String profession; + //工作年限 + @ApiModelProperty(value = "工作年限") + private Integer workyear; + //考核部门 + @ApiModelProperty(value = "考核部门") + private String assessmentDepartment; + //考核时间 + @ApiModelProperty(value = "考核时间") + private Date assessmentTime; + //考核结果 + @ApiModelProperty(value = "考核结果") + private String assessmentResult; + //状态(0-禁用 1-启用)(老项目0启用,1禁用) + @ApiModelProperty(value = "状态(0-禁用 1-启用)(老项目0启用,1禁用)") + private String state; + + public TeacherDO(String teacherId) { + this.teacherId = teacherId; + } + +} + diff --git a/web-infrastructure/src/main/java/com/zcloud/edu/persistence/mapper/TeacherCertificateMapper.java b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/mapper/TeacherCertificateMapper.java new file mode 100644 index 0000000..aca8f40 --- /dev/null +++ b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/mapper/TeacherCertificateMapper.java @@ -0,0 +1,17 @@ +package com.zcloud.edu.persistence.mapper; + +import com.zcloud.edu.persistence.dataobject.TeacherCertificateDO; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +/** + * web-infrastructure + * + * @Author SondonYong + * @Date 2025-11-26 17:26:50 + */ +@Mapper +public interface TeacherCertificateMapper extends BaseMapper { + +} + diff --git a/web-infrastructure/src/main/java/com/zcloud/edu/persistence/mapper/TeacherMapper.java b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/mapper/TeacherMapper.java new file mode 100644 index 0000000..897b197 --- /dev/null +++ b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/mapper/TeacherMapper.java @@ -0,0 +1,17 @@ +package com.zcloud.edu.persistence.mapper; + +import com.zcloud.edu.persistence.dataobject.TeacherDO; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; + +/** + * web-infrastructure + * + * @Author SondonYong + * @Date 2025-11-26 17:04:44 + */ +@Mapper +public interface TeacherMapper extends BaseMapper { + +} + diff --git a/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/TeacherCertificateRepository.java b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/TeacherCertificateRepository.java new file mode 100644 index 0000000..76891f9 --- /dev/null +++ b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/TeacherCertificateRepository.java @@ -0,0 +1,25 @@ +package com.zcloud.edu.persistence.repository; + +import com.zcloud.edu.persistence.dataobject.TeacherCertificateDO; +import com.alibaba.cola.dto.SingleResponse; +import com.alibaba.cola.dto.PageResponse; +import com.jjb.saas.framework.repository.repo.BaseRepository; + +import java.util.Map; +import java.util.List; + +/** + * web-infrastructure + * + * @Author SondonYong + * @Date 2025-11-26 17:26:51 + */ +public interface TeacherCertificateRepository extends BaseRepository { + + PageResponse listPage(Map params); + + List list(Map params); + + SingleResponse getInfoById(Long id); +} + diff --git a/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/TeacherRepository.java b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/TeacherRepository.java new file mode 100644 index 0000000..a7daddb --- /dev/null +++ b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/TeacherRepository.java @@ -0,0 +1,25 @@ +package com.zcloud.edu.persistence.repository; + +import com.zcloud.edu.persistence.dataobject.TeacherDO; +import com.alibaba.cola.dto.SingleResponse; +import com.alibaba.cola.dto.PageResponse; +import com.jjb.saas.framework.repository.repo.BaseRepository; + +import java.util.Map; +import java.util.List; + +/** + * web-infrastructure + * + * @Author SondonYong + * @Date 2025-11-26 17:04:44 + */ +public interface TeacherRepository extends BaseRepository { + + PageResponse listPage(Map params); + + List list(Map params); + + SingleResponse getInfoById(Long id); +} + diff --git a/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/impl/TeacherCertificateRepositoryImpl.java b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/impl/TeacherCertificateRepositoryImpl.java new file mode 100644 index 0000000..27da7c0 --- /dev/null +++ b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/impl/TeacherCertificateRepositoryImpl.java @@ -0,0 +1,55 @@ +package com.zcloud.edu.persistence.repository.impl; + +import com.jjb.saas.framework.repository.common.PageHelper; +import com.zcloud.edu.persistence.dataobject.TeacherCertificateDO; +import com.zcloud.edu.persistence.mapper.TeacherCertificateMapper; +import com.zcloud.edu.persistence.repository.TeacherCertificateRepository; +import com.alibaba.cola.dto.SingleResponse; +import com.alibaba.cola.dto.PageResponse; +import com.zcloud.gbscommon.utils.PageQueryHelper; +import com.zcloud.gbscommon.utils.Query; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; + +import java.util.Map; +import java.util.List; + +/** + * web-infrastructure + * + * @Author SondonYong + * @Date 2025-11-26 17:26:51 + */ +@Service +@RequiredArgsConstructor +public class TeacherCertificateRepositoryImpl extends BaseRepositoryImpl implements TeacherCertificateRepository { + private final TeacherCertificateMapper teacherCertificateMapper; + + @Override + public PageResponse listPage(Map params) { + IPage iPage = new Query().getPage(params); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper = PageQueryHelper.createPageQueryWrapper(queryWrapper, params); + queryWrapper.orderByDesc("create_time"); + IPage result = teacherCertificateMapper.selectPage(iPage, queryWrapper); + return PageHelper.pageToResponse(result, result.getRecords()); + } + + @Override + public List list(Map params) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper = PageQueryHelper.createPageQueryWrapper(queryWrapper, params); + queryWrapper.orderByDesc("create_time"); + List result = teacherCertificateMapper.selectList(queryWrapper); + return result; + } + + @Override + public SingleResponse getInfoById(Long id) { + return SingleResponse.of(teacherCertificateMapper.selectById(id)); + } +} + diff --git a/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/impl/TeacherRepositoryImpl.java b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/impl/TeacherRepositoryImpl.java new file mode 100644 index 0000000..3479be2 --- /dev/null +++ b/web-infrastructure/src/main/java/com/zcloud/edu/persistence/repository/impl/TeacherRepositoryImpl.java @@ -0,0 +1,55 @@ +package com.zcloud.edu.persistence.repository.impl; + +import com.jjb.saas.framework.repository.common.PageHelper; +import com.zcloud.edu.persistence.dataobject.TeacherDO; +import com.zcloud.edu.persistence.mapper.TeacherMapper; +import com.zcloud.edu.persistence.repository.TeacherRepository; +import com.alibaba.cola.dto.SingleResponse; +import com.alibaba.cola.dto.PageResponse; +import com.zcloud.gbscommon.utils.PageQueryHelper; +import com.zcloud.gbscommon.utils.Query; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.jjb.saas.framework.repository.repo.impl.BaseRepositoryImpl; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; + +import java.util.Map; +import java.util.List; + +/** + * web-infrastructure + * + * @Author SondonYong + * @Date 2025-11-26 17:04:44 + */ +@Service +@RequiredArgsConstructor +public class TeacherRepositoryImpl extends BaseRepositoryImpl implements TeacherRepository { + private final TeacherMapper teacherMapper; + + @Override + public PageResponse listPage(Map params) { + IPage iPage = new Query().getPage(params); + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper = PageQueryHelper.createPageQueryWrapper(queryWrapper, params); + queryWrapper.orderByDesc("create_time"); + IPage result = teacherMapper.selectPage(iPage, queryWrapper); + return PageHelper.pageToResponse(result, result.getRecords()); + } + + @Override + public List list(Map params) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper = PageQueryHelper.createPageQueryWrapper(queryWrapper, params); + queryWrapper.orderByDesc("create_time"); + List result = teacherMapper.selectList(queryWrapper); + return result; + } + + @Override + public SingleResponse getInfoById(Long id) { + return SingleResponse.of(teacherMapper.selectById(id)); + } +} + diff --git a/web-infrastructure/src/main/resources/mapper/TeacherCertificateMapper.xml b/web-infrastructure/src/main/resources/mapper/TeacherCertificateMapper.xml new file mode 100644 index 0000000..b7c4ca0 --- /dev/null +++ b/web-infrastructure/src/main/resources/mapper/TeacherCertificateMapper.xml @@ -0,0 +1,7 @@ + + + + + + diff --git a/web-infrastructure/src/main/resources/mapper/TeacherMapper.xml b/web-infrastructure/src/main/resources/mapper/TeacherMapper.xml new file mode 100644 index 0000000..f288984 --- /dev/null +++ b/web-infrastructure/src/main/resources/mapper/TeacherMapper.xml @@ -0,0 +1,7 @@ + + + + + +