培训资源管理
parent
35edc5633c
commit
44f82ebddb
|
|
@ -2,10 +2,10 @@ nacos:
|
|||
url: 192.168.20.100:30290
|
||||
namespace: jjb-dragon
|
||||
application:
|
||||
name: jjb-saas-zcloud-risk
|
||||
name: jjb-saas-zcloud-edu
|
||||
version:
|
||||
gateway: risk
|
||||
cn-name: 风险中心
|
||||
gateway: edu
|
||||
cn-name: 教育中心
|
||||
spring:
|
||||
application:
|
||||
name: ${application.name}${application.version}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,82 @@
|
|||
package com.zcloud.edu.web.resource;
|
||||
|
||||
|
||||
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.api.resource.CurriculumChapterServiceI;
|
||||
import com.zcloud.edu.dto.resource.CurriculumChapterAddCmd;
|
||||
import com.zcloud.edu.dto.resource.CurriculumChapterPageQry;
|
||||
import com.zcloud.edu.dto.resource.CurriculumChapterUpdateCmd;
|
||||
import com.zcloud.edu.dto.clientobject.resource.CurriculumChapterCO;
|
||||
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 zhaokai
|
||||
* @Date 2026-01-09 13:50:13
|
||||
*/
|
||||
@Api(tags = "课程章节信息",hidden = true)
|
||||
@RequestMapping("/${application.gateway}/curriculumChapter")
|
||||
@RestController
|
||||
@AllArgsConstructor
|
||||
public class CurriculumChapterController {
|
||||
private final CurriculumChapterServiceI curriculumChapterService;
|
||||
|
||||
@ApiOperation("新增")
|
||||
@PostMapping("/save")
|
||||
public SingleResponse<CurriculumChapterCO> add(@Validated @RequestBody CurriculumChapterAddCmd cmd) {
|
||||
SSOUser ssoUser = AuthContext.getCurrentUser();
|
||||
return curriculumChapterService.add(cmd);
|
||||
}
|
||||
|
||||
@ApiOperation("分页")
|
||||
@PostMapping("/list")
|
||||
public PageResponse<CurriculumChapterCO> page(@RequestBody CurriculumChapterPageQry qry) {
|
||||
return curriculumChapterService.listPage(qry);
|
||||
}
|
||||
|
||||
@ApiOperation("所有数据")
|
||||
@PostMapping("/listAll")
|
||||
public MultiResponse<CurriculumChapterCO> listAll() {
|
||||
return MultiResponse.of(new ArrayList<CurriculumChapterCO>());
|
||||
}
|
||||
|
||||
@ApiOperation("详情")
|
||||
@PostMapping("/getInfoById")
|
||||
public SingleResponse<CurriculumChapterCO> getInfoById(@RequestParam("id") Long id) {
|
||||
return SingleResponse.of(new CurriculumChapterCO());
|
||||
}
|
||||
|
||||
@ApiOperation("删除")
|
||||
@PostMapping("/remove/")
|
||||
public Response remove(@RequestParam("id") Long id) {
|
||||
curriculumChapterService.remove(id);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
|
||||
@ApiOperation("删除多个")
|
||||
@PostMapping("/ids")
|
||||
public Response removeBatch(@RequestParam Long[] ids) {
|
||||
curriculumChapterService.removeBatch(ids);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
|
||||
@ApiOperation("修改")
|
||||
@PostMapping("/edit")
|
||||
public SingleResponse edit(@Validated @RequestBody CurriculumChapterUpdateCmd curriculumChapterUpdateCmd) {
|
||||
curriculumChapterService.edit(curriculumChapterUpdateCmd);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,84 @@
|
|||
package com.zcloud.edu.web.resource;
|
||||
|
||||
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.alibaba.cola.dto.Response;
|
||||
import com.alibaba.cola.dto.SingleResponse;
|
||||
import com.zcloud.edu.api.resource.CurriculumServiceI;
|
||||
import com.zcloud.edu.dto.clientobject.resource.CurriculumCO;
|
||||
import com.zcloud.edu.dto.resource.CurriculumAddCmd;
|
||||
import com.zcloud.edu.dto.resource.CurriculumPageQry;
|
||||
import com.zcloud.edu.dto.resource.CurriculumUpdateCmd;
|
||||
import com.zcloud.edu.dto.resource.CurriculumUpdateStateCmd;
|
||||
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 zhaokai
|
||||
* @Date 2026-01-09 13:45:38
|
||||
*/
|
||||
@Api(tags = "课程信息")
|
||||
@RequestMapping("/${application.gateway}/curriculum")
|
||||
@RestController
|
||||
@AllArgsConstructor
|
||||
public class CurriculumController {
|
||||
private final CurriculumServiceI curriculumService;
|
||||
|
||||
@ApiOperation("新增课程")
|
||||
@PostMapping("/save")
|
||||
public SingleResponse<CurriculumCO> add(@Validated @RequestBody CurriculumAddCmd cmd) {
|
||||
return curriculumService.add(cmd);
|
||||
}
|
||||
|
||||
@ApiOperation("分页")
|
||||
@PostMapping("/list")
|
||||
public PageResponse<CurriculumCO> page(@RequestBody CurriculumPageQry qry) {
|
||||
return curriculumService.listPage(qry);
|
||||
}
|
||||
|
||||
/* @ApiOperation("所有数据")
|
||||
@GetMapping("/listAll")
|
||||
public MultiResponse<CurriculumCO> listAll() {
|
||||
return MultiResponse.of(new ArrayList<CurriculumCO>());
|
||||
}*/
|
||||
@ApiOperation("修改")
|
||||
@PostMapping("/edit")
|
||||
public SingleResponse edit(@Validated @RequestBody CurriculumUpdateCmd curriculumUpdateCmd) {
|
||||
curriculumService.edit(curriculumUpdateCmd);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
@ApiOperation("课程详情")
|
||||
@PostMapping("/getInfoById")
|
||||
public SingleResponse<CurriculumCO> getInfoById(@RequestParam("id") Long id) {
|
||||
return SingleResponse.of(curriculumService.getInfoById(id));
|
||||
}
|
||||
@ApiOperation("上架/下架")
|
||||
@PostMapping("/editState")
|
||||
public SingleResponse editState(@Validated @RequestBody CurriculumUpdateStateCmd cmd) {
|
||||
curriculumService.editState(cmd);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
|
||||
|
||||
@ApiOperation("删除")
|
||||
@PostMapping("/{id}")
|
||||
public Response remove(@PathVariable("id") Long id) {
|
||||
curriculumService.remove(id);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
|
||||
@ApiOperation("删除多个")
|
||||
@PostMapping("/ids")
|
||||
public Response removeBatch(@RequestParam Long[] ids) {
|
||||
curriculumService.removeBatch(ids);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,87 @@
|
|||
package com.zcloud.edu.web.resource;
|
||||
|
||||
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.alibaba.cola.dto.Response;
|
||||
import com.alibaba.cola.dto.SingleResponse;
|
||||
import com.zcloud.edu.api.resource.ExamPaperServiceI;
|
||||
import com.zcloud.edu.dto.resource.ExamPaperAddCmd;
|
||||
import com.zcloud.edu.dto.resource.ExamPaperPageQry;
|
||||
import com.zcloud.edu.dto.resource.ExamPaperRemoveCmd;
|
||||
import com.zcloud.edu.dto.resource.ExamPaperUpdateCmd;
|
||||
import com.zcloud.edu.dto.clientobject.resource.ExamPaperCO;
|
||||
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 org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
/**
|
||||
* web-adapter
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 17:04:42
|
||||
*/
|
||||
@Api(tags = "试卷信息")
|
||||
@RequestMapping("/${application.gateway}/examPaper")
|
||||
@RestController
|
||||
@AllArgsConstructor
|
||||
public class ExamPaperController {
|
||||
private final ExamPaperServiceI examPaperService;
|
||||
|
||||
@ApiOperation("新增试卷")
|
||||
@PostMapping("/save")
|
||||
public SingleResponse<ExamPaperCO> add(@Validated @RequestParam ExamPaperAddCmd cmd) {
|
||||
return examPaperService.add(cmd);
|
||||
}
|
||||
|
||||
@ApiOperation("试卷分页")
|
||||
@PostMapping("/list")
|
||||
public PageResponse<ExamPaperCO> page(@RequestBody ExamPaperPageQry qry) {
|
||||
return examPaperService.listPage(qry);
|
||||
}
|
||||
|
||||
/* @ApiOperation("所有数据")
|
||||
@GetMapping("/listAll")
|
||||
public MultiResponse<ExamPaperCO> listAll() {
|
||||
return MultiResponse.of(new ArrayList<ExamPaperCO>());
|
||||
}*/
|
||||
|
||||
@ApiOperation("试卷详情")
|
||||
@PostMapping("/getInfoById")
|
||||
public SingleResponse<ExamPaperCO> getInfoById(@RequestParam("id") Long id) {
|
||||
return SingleResponse.of(examPaperService.getInfoById(id));
|
||||
}
|
||||
|
||||
@ApiOperation("上架,下架")
|
||||
@PostMapping("/editSellFlag")
|
||||
public SingleResponse editSellFlag(@Validated @RequestBody ExamPaperUpdateCmd examPaperUpdateCmd) {
|
||||
examPaperService.editSellFlag(examPaperUpdateCmd);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
|
||||
@ApiOperation("修改")
|
||||
@PostMapping("/edit")
|
||||
public SingleResponse edit(@Validated @RequestPart(value = "file") MultipartFile file, @RequestParam(value = "examPaperUpdateCmd") ExamPaperUpdateCmd examPaperUpdateCmd) {
|
||||
examPaperService.edit(file,examPaperUpdateCmd);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
|
||||
|
||||
@ApiOperation("删除试卷")
|
||||
@PostMapping("/delete/{id}")
|
||||
public Response remove(@PathVariable("id") Long id) {
|
||||
examPaperService.remove(id);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
|
||||
@ApiOperation("删除多个")
|
||||
@PostMapping("/ids")
|
||||
public Response removeBatch(@RequestBody ExamPaperRemoveCmd examPaperRemoveCmd) {
|
||||
examPaperService.removeBatch(examPaperRemoveCmd);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -1,19 +1,18 @@
|
|||
package com.zcloud.edu.web;
|
||||
package com.zcloud.edu.web.resource;
|
||||
|
||||
|
||||
import com.zcloud.edu.api.QuestionServiceI;
|
||||
import com.zcloud.edu.dto.QuestionAddCmd;
|
||||
import com.zcloud.edu.dto.QuestionPageQry;
|
||||
import com.zcloud.edu.dto.QuestionListQry;
|
||||
import com.zcloud.edu.dto.QuestionUpdateCmd;
|
||||
import com.zcloud.edu.dto.QuestionRemoveCmd;
|
||||
import com.zcloud.edu.dto.clientobject.QuestionCO;
|
||||
import com.zcloud.edu.api.resource.QuestionServiceI;
|
||||
import com.zcloud.edu.dto.resource.QuestionAddCmd;
|
||||
import com.zcloud.edu.dto.resource.QuestionPageQry;
|
||||
import com.zcloud.edu.dto.resource.QuestionListQry;
|
||||
import com.zcloud.edu.dto.resource.QuestionUpdateCmd;
|
||||
import com.zcloud.edu.dto.resource.QuestionRemoveCmd;
|
||||
import com.zcloud.edu.dto.clientobject.resource.ExamPaperCO;
|
||||
import com.zcloud.edu.dto.clientobject.resource.QuestionCO;
|
||||
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;
|
||||
|
|
@ -34,15 +33,20 @@ import org.springframework.web.multipart.MultipartFile;
|
|||
public class QuestionController {
|
||||
private final QuestionServiceI questionService;
|
||||
|
||||
@ApiOperation("新增")
|
||||
@ApiOperation("新增习题")
|
||||
@PostMapping("/save")
|
||||
public SingleResponse<QuestionCO> add(@Validated @RequestBody QuestionAddCmd cmd) {
|
||||
SSOUser ssoUser = AuthContext.getCurrentUser();
|
||||
return questionService.add(cmd);
|
||||
}
|
||||
|
||||
@ApiOperation("修改")
|
||||
@PutMapping("/edit")
|
||||
@ApiOperation("修改试卷习题")
|
||||
@PostMapping("/editPaper")
|
||||
public SingleResponse<ExamPaperCO> editPaper(@Validated @RequestBody QuestionUpdateCmd cmd) {
|
||||
ExamPaperCO examPaperCO =questionService.editPaper(cmd);
|
||||
return SingleResponse.of(examPaperCO);
|
||||
}
|
||||
@ApiOperation("修改课件习题")
|
||||
@PostMapping("/edit")
|
||||
public SingleResponse edit(@Validated @RequestBody QuestionUpdateCmd cmd) {
|
||||
questionService.edit(cmd);
|
||||
return SingleResponse.buildSuccess();
|
||||
|
|
@ -61,20 +65,20 @@ public class QuestionController {
|
|||
}
|
||||
|
||||
@ApiOperation("详情")
|
||||
@GetMapping("/getInfoById")
|
||||
@PostMapping("/getInfoById")
|
||||
public SingleResponse<QuestionCO> getInfoById(@RequestParam(value = "id") Long id) {
|
||||
return questionService.getInfoById(id);
|
||||
}
|
||||
|
||||
@ApiOperation("删除")
|
||||
@PutMapping("/remove")
|
||||
@PostMapping("/remove")
|
||||
public Response remove(@RequestParam(value = "id") Long id) {
|
||||
questionService.remove(id);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
|
||||
@ApiOperation("删除多个")
|
||||
@PutMapping("/removeBatch")
|
||||
@PostMapping("/removeBatch")
|
||||
public Response removeBatch(@Validated @RequestBody QuestionRemoveCmd cmd) {
|
||||
questionService.removeBatch(cmd.getIds());
|
||||
return SingleResponse.buildSuccess();
|
||||
|
|
@ -1,13 +1,13 @@
|
|||
package com.zcloud.edu.web;
|
||||
package com.zcloud.edu.web.resource;
|
||||
|
||||
|
||||
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.zcloud.edu.api.resource.TeacherCertificateServiceI;
|
||||
import com.zcloud.edu.dto.resource.TeacherCertificateAddCmd;
|
||||
import com.zcloud.edu.dto.resource.TeacherCertificatePageQry;
|
||||
import com.zcloud.edu.dto.resource.TeacherCertificateListQry;
|
||||
import com.zcloud.edu.dto.resource.TeacherCertificateUpdateCmd;
|
||||
import com.zcloud.edu.dto.resource.TeacherCertificateRemoveCmd;
|
||||
import com.zcloud.edu.dto.clientobject.resource.TeacherCertificateCO;
|
||||
import com.alibaba.cola.dto.MultiResponse;
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.alibaba.cola.dto.Response;
|
||||
|
|
@ -20,8 +20,6 @@ import lombok.AllArgsConstructor;
|
|||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
/**
|
||||
* web-adapter
|
||||
*
|
||||
|
|
@ -43,7 +41,7 @@ public class TeacherCertificateController {
|
|||
}
|
||||
|
||||
@ApiOperation("修改")
|
||||
@PutMapping("/edit")
|
||||
@PostMapping("/edit")
|
||||
public SingleResponse edit(@Validated @RequestBody TeacherCertificateUpdateCmd cmd) {
|
||||
teacherCertificateService.edit(cmd);
|
||||
return SingleResponse.buildSuccess();
|
||||
|
|
@ -62,20 +60,20 @@ public class TeacherCertificateController {
|
|||
}
|
||||
|
||||
@ApiOperation("详情")
|
||||
@GetMapping("/getInfoById")
|
||||
@PostMapping("/getInfoById")
|
||||
public SingleResponse<TeacherCertificateCO> getInfoById(@RequestParam(value = "id") Long id) {
|
||||
return teacherCertificateService.getInfoById(id);
|
||||
}
|
||||
|
||||
@ApiOperation("删除")
|
||||
@PutMapping("/remove")
|
||||
@PostMapping("/remove")
|
||||
public Response remove(@RequestParam(value = "id") Long id) {
|
||||
teacherCertificateService.remove(id);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
|
||||
@ApiOperation("删除多个")
|
||||
@PutMapping("/removeBatch")
|
||||
@PostMapping("/removeBatch")
|
||||
public Response removeBatch(@Validated @RequestBody TeacherCertificateRemoveCmd cmd) {
|
||||
teacherCertificateService.removeBatch(cmd.getIds());
|
||||
return SingleResponse.buildSuccess();
|
||||
|
|
@ -1,15 +1,13 @@
|
|||
package com.zcloud.edu.web;
|
||||
package com.zcloud.edu.web.resource;
|
||||
|
||||
|
||||
import com.zcloud.edu.api.TeacherServiceI;
|
||||
import com.zcloud.edu.dto.*;
|
||||
import com.zcloud.edu.api.resource.TeacherServiceI;
|
||||
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 com.zcloud.edu.dto.clientobject.resource.TeacherCO;
|
||||
import com.zcloud.edu.dto.resource.*;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.AllArgsConstructor;
|
||||
|
|
@ -32,19 +30,18 @@ public class TeacherController {
|
|||
@ApiOperation("新增(从人员列表选择)")
|
||||
@PostMapping("/save")
|
||||
public SingleResponse<TeacherCO> add(@Validated @RequestBody TeacherAddCmd cmd) {
|
||||
SSOUser ssoUser = AuthContext.getCurrentUser();
|
||||
return teacherService.add(cmd);
|
||||
}
|
||||
|
||||
@ApiOperation("修改")
|
||||
@PutMapping("/edit")
|
||||
@PostMapping("/edit")
|
||||
public SingleResponse edit(@Validated @RequestBody TeacherUpdateCmd cmd) {
|
||||
teacherService.edit(cmd);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
|
||||
@ApiOperation("启用/禁用")
|
||||
@PutMapping("/editState")
|
||||
@PostMapping("/editState")
|
||||
public SingleResponse editState(@Validated @RequestBody TeacherUpdateStateCmd cmd) {
|
||||
teacherService.editState(cmd);
|
||||
return SingleResponse.buildSuccess();
|
||||
|
|
@ -63,20 +60,20 @@ public class TeacherController {
|
|||
}
|
||||
|
||||
@ApiOperation("详情")
|
||||
@GetMapping("/getInfoById")
|
||||
@PostMapping("/getInfoById")
|
||||
public SingleResponse<TeacherCO> getInfoById(@RequestParam(value = "id") Long id) {
|
||||
return teacherService.getInfoById(id);
|
||||
}
|
||||
|
||||
@ApiOperation("删除")
|
||||
@PutMapping("/remove")
|
||||
@PostMapping("/remove")
|
||||
public Response remove(@RequestParam(value = "id") Long id) {
|
||||
teacherService.remove(id);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
|
||||
@ApiOperation("删除多个")
|
||||
@PutMapping("/removeBatch")
|
||||
@PostMapping("/removeBatch")
|
||||
public Response removeBatch(@Validated @RequestBody TeacherRemoveCmd cmd) {
|
||||
teacherService.removeBatch(cmd.getIds());
|
||||
return SingleResponse.buildSuccess();
|
||||
|
|
@ -1,27 +1,25 @@
|
|||
package com.zcloud.edu.web;
|
||||
package com.zcloud.edu.web.resource;
|
||||
|
||||
|
||||
import com.zcloud.edu.api.TrainingTypeServiceI;
|
||||
import com.zcloud.edu.dto.*;
|
||||
import com.zcloud.edu.api.resource.TrainingTypeServiceI;
|
||||
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.TrainingTypeCO;
|
||||
import com.zcloud.edu.dto.clientobject.resource.TrainingTypeCO;
|
||||
import com.zcloud.edu.dto.resource.*;
|
||||
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 15:04:06
|
||||
*/
|
||||
* web-adapter
|
||||
*
|
||||
* @Author SondonYong
|
||||
* @Date 2025-11-26 15:04:06
|
||||
*/
|
||||
@Api(tags = "培训类型信息")
|
||||
@RequestMapping("/${application.gateway}/trainingType")
|
||||
@RestController
|
||||
|
|
@ -36,7 +34,7 @@ public class TrainingTypeController {
|
|||
}
|
||||
|
||||
@ApiOperation("修改")
|
||||
@PutMapping("/edit")
|
||||
@PostMapping("/edit")
|
||||
public SingleResponse edit(@Validated @RequestBody TrainingTypeUpdateCmd cmd) {
|
||||
trainingTypeService.edit(cmd);
|
||||
return SingleResponse.buildSuccess();
|
||||
|
|
@ -55,21 +53,21 @@ public class TrainingTypeController {
|
|||
}
|
||||
|
||||
@ApiOperation("详情")
|
||||
@GetMapping("/getInfoById")
|
||||
@PostMapping("/getInfoById")
|
||||
public SingleResponse<TrainingTypeCO> getInfoById(@RequestParam(value = "id") Long id) {
|
||||
return trainingTypeService.getInfoById(id);
|
||||
}
|
||||
|
||||
@ApiOperation("删除")
|
||||
@PutMapping("/remove")
|
||||
@PostMapping("/remove")
|
||||
public Response remove(@RequestParam(value = "id") Long id) {
|
||||
trainingTypeService.remove(id);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
|
||||
@ApiOperation("删除多个")
|
||||
@PutMapping("/removeBatch")
|
||||
public Response removeBatch(@Validated @RequestBody TrainingTypeRemoveCmd cmd) {
|
||||
@PostMapping("/removeBatch")
|
||||
public Response removeBatch(@Validated @RequestBody TrainingTypeRemoveCmd cmd) {
|
||||
trainingTypeService.removeBatch(cmd.getIds());
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
|
|
@ -1,23 +1,19 @@
|
|||
package com.zcloud.edu.web;
|
||||
package com.zcloud.edu.web.resource;
|
||||
|
||||
|
||||
import com.zcloud.edu.api.VideoCoursewareServiceI;
|
||||
import com.zcloud.edu.dto.*;
|
||||
import com.zcloud.edu.dto.clientobject.VideoCoursewareCO;
|
||||
import com.zcloud.edu.api.resource.VideoCoursewareServiceI;
|
||||
import com.zcloud.edu.dto.clientobject.resource.VideoCoursewareCO;
|
||||
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.resource.*;
|
||||
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
|
||||
*
|
||||
|
|
@ -34,19 +30,18 @@ public class VideoCoursewareController {
|
|||
@ApiOperation("新增")
|
||||
@PostMapping("/save")
|
||||
public SingleResponse<VideoCoursewareCO> add(@Validated @RequestBody VideoCoursewareAddCmd cmd) {
|
||||
SSOUser ssoUser = AuthContext.getCurrentUser();
|
||||
return videoCoursewareService.add(cmd);
|
||||
}
|
||||
|
||||
@ApiOperation("修改")
|
||||
@PutMapping("/edit")
|
||||
@PostMapping("/edit")
|
||||
public SingleResponse edit(@Validated @RequestBody VideoCoursewareUpdateCmd cmd) {
|
||||
videoCoursewareService.edit(cmd);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
|
||||
@ApiOperation("启用/禁用")
|
||||
@PutMapping("/editState")
|
||||
@PostMapping("/editState")
|
||||
public SingleResponse editState(@Validated @RequestBody VideoCoursewareUpdateStateCmd cmd) {
|
||||
videoCoursewareService.editState(cmd);
|
||||
return SingleResponse.buildSuccess();
|
||||
|
|
@ -65,20 +60,20 @@ public class VideoCoursewareController {
|
|||
}
|
||||
|
||||
@ApiOperation("详情")
|
||||
@GetMapping("/getInfoById")
|
||||
@PostMapping("/getInfoById")
|
||||
public SingleResponse<VideoCoursewareCO> getInfoById(@RequestParam(value = "id") Long id) {
|
||||
return videoCoursewareService.getInfoById(id);
|
||||
}
|
||||
|
||||
@ApiOperation("删除")
|
||||
@PutMapping("/remove")
|
||||
@PostMapping("/remove")
|
||||
public Response remove(@RequestParam(value = "id") Long id) {
|
||||
videoCoursewareService.remove(id);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
|
||||
@ApiOperation("删除多个")
|
||||
@PutMapping("/removeBatch")
|
||||
@PostMapping("/removeBatch")
|
||||
public Response removeBatch(@Validated @RequestBody VideoCoursewareRemoveCmd cmd) {
|
||||
videoCoursewareService.removeBatch(cmd.getIds());
|
||||
return SingleResponse.buildSuccess();
|
||||
|
|
@ -1,35 +0,0 @@
|
|||
package com.zcloud.edu.command;
|
||||
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import com.zcloud.edu.domain.gateway.QuestionGateway;
|
||||
import com.zcloud.edu.domain.model.QuestionE;
|
||||
import com.zcloud.edu.dto.QuestionUpdateCmd;
|
||||
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-27 14:06:11
|
||||
*/
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
public class QuestionUpdateExe {
|
||||
private final QuestionGateway questionGateway;
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void execute(QuestionUpdateCmd cmd) {
|
||||
QuestionE questionE = new QuestionE();
|
||||
BeanUtils.copyProperties(cmd, questionE);
|
||||
questionE.checkQuestion(questionE);
|
||||
boolean res = questionGateway.update(questionE);
|
||||
if (!res) {
|
||||
throw new BizException("修改失败");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1,44 +0,0 @@
|
|||
package com.zcloud.edu.command;
|
||||
|
||||
import com.zcloud.edu.domain.gateway.TrainingTypeGateway;
|
||||
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 15:04:07
|
||||
*/
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
public class TrainingTypeRemoveExe {
|
||||
private final TrainingTypeGateway trainingTypeGateway;
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean execute(Long id) {
|
||||
// todo 校验是否有其他业务调用
|
||||
|
||||
boolean res = trainingTypeGateway.deletedTrainingTypeById(id);
|
||||
if(!res){
|
||||
throw new BizException("删除失败");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean execute(Long[] ids) {
|
||||
// todo 校验是否有其他业务调用
|
||||
|
||||
boolean res = trainingTypeGateway.deletedTrainingTypeByIds(ids);
|
||||
if(!res){
|
||||
throw new BizException("删除失败");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1,45 +0,0 @@
|
|||
package com.zcloud.edu.command;
|
||||
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import com.zcloud.edu.domain.gateway.VideoCoursewareGateway;
|
||||
import com.zcloud.edu.domain.model.VideoCoursewareE;
|
||||
import com.zcloud.edu.dto.VideoCoursewareUpdateCmd;
|
||||
import com.zcloud.edu.dto.VideoCoursewareUpdateStateCmd;
|
||||
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-27 14:05:33
|
||||
*/
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
public class VideoCoursewareUpdateExe {
|
||||
private final VideoCoursewareGateway videoCoursewareGateway;
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void execute(VideoCoursewareUpdateCmd cmd) {
|
||||
VideoCoursewareE videoCoursewareE = new VideoCoursewareE();
|
||||
BeanUtils.copyProperties(cmd, videoCoursewareE);
|
||||
boolean res = videoCoursewareGateway.update(videoCoursewareE);
|
||||
if (!res) {
|
||||
throw new BizException("修改失败");
|
||||
}
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void execute(VideoCoursewareUpdateStateCmd cmd) {
|
||||
VideoCoursewareE videoCoursewareE = new VideoCoursewareE();
|
||||
BeanUtils.copyProperties(cmd, videoCoursewareE);
|
||||
boolean res = videoCoursewareGateway.update(videoCoursewareE);
|
||||
if (!res) {
|
||||
throw new BizException("修改失败");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,32 @@
|
|||
package com.zcloud.edu.command.convertor.resource;
|
||||
|
||||
import com.zcloud.edu.domain.model.resource.CurriculumChapterE;
|
||||
import com.zcloud.edu.dto.resource.CurriculumChapterAddCmd;
|
||||
import com.zcloud.edu.dto.clientobject.resource.CurriculumChapterCO;
|
||||
import com.zcloud.edu.persistence.dataobject.CurriculumChapterDO;
|
||||
import org.mapstruct.Mapper;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* web-app
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 13:50:13
|
||||
*/
|
||||
@Mapper(componentModel = "spring")
|
||||
public interface CurriculumChapterCoConvertor {
|
||||
/**
|
||||
* @param curriculumChapterDOs
|
||||
* @return
|
||||
*/
|
||||
List<CurriculumChapterCO> converDOsToCOs(List<CurriculumChapterDO> curriculumChapterDOs);
|
||||
|
||||
|
||||
List<CurriculumChapterE> converCmdsToEs(List<CurriculumChapterAddCmd> curriculumChapterAddCmdList1);
|
||||
|
||||
Collection<CurriculumChapterDO> converEsToDOs(List<CurriculumChapterE> curriculumChapterES);
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,26 @@
|
|||
package com.zcloud.edu.command.convertor.resource;
|
||||
|
||||
import com.zcloud.edu.dto.clientobject.resource.CurriculumCO;
|
||||
import com.zcloud.edu.persistence.dataobject.CurriculumDO;
|
||||
import org.mapstruct.Mapper;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* web-app
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 13:45:38
|
||||
*/
|
||||
@Mapper(componentModel = "spring")
|
||||
public interface CurriculumCoConvertor {
|
||||
/**
|
||||
* @param curriculumDOs
|
||||
* @return
|
||||
*/
|
||||
List<CurriculumCO> converDOsToCOs(List<CurriculumDO> curriculumDOs);
|
||||
|
||||
CurriculumCO converDOToCO(CurriculumDO curriculumDO);
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,24 @@
|
|||
package com.zcloud.edu.command.convertor.resource;
|
||||
|
||||
import com.zcloud.edu.dto.clientobject.resource.ExamPaperCO;
|
||||
import com.zcloud.edu.persistence.dataobject.ExamPaperDO;
|
||||
import org.mapstruct.Mapper;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* web-app
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 17:04:42
|
||||
*/
|
||||
@Mapper(componentModel = "spring")
|
||||
public interface ExamPaperCoConvertor {
|
||||
/**
|
||||
* @param examPaperDOs
|
||||
* @return
|
||||
*/
|
||||
List<ExamPaperCO> converDOsToCOs(List<ExamPaperDO> examPaperDOs);
|
||||
}
|
||||
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
package com.zcloud.edu.command.convertor;
|
||||
package com.zcloud.edu.command.convertor.resource;
|
||||
|
||||
import com.zcloud.edu.dto.clientobject.QuestionCO;
|
||||
import com.zcloud.edu.dto.clientobject.resource.QuestionCO;
|
||||
import com.zcloud.edu.persistence.dataobject.QuestionDO;
|
||||
import org.mapstruct.Mapper;
|
||||
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
package com.zcloud.edu.command.convertor;
|
||||
package com.zcloud.edu.command.convertor.resource;
|
||||
|
||||
import com.zcloud.edu.dto.clientobject.TeacherCertificateCO;
|
||||
import com.zcloud.edu.dto.clientobject.resource.TeacherCertificateCO;
|
||||
import com.zcloud.edu.persistence.dataobject.TeacherCertificateDO;
|
||||
import org.mapstruct.Mapper;
|
||||
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
package com.zcloud.edu.command.convertor;
|
||||
package com.zcloud.edu.command.convertor.resource;
|
||||
|
||||
import com.zcloud.edu.dto.clientobject.TeacherCO;
|
||||
import com.zcloud.edu.dto.clientobject.resource.TeacherCO;
|
||||
import com.zcloud.edu.persistence.dataobject.TeacherDO;
|
||||
import org.mapstruct.Mapper;
|
||||
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
package com.zcloud.edu.command.convertor;
|
||||
package com.zcloud.edu.command.convertor.resource;
|
||||
|
||||
import com.zcloud.edu.dto.clientobject.TrainingTypeCO;
|
||||
import com.zcloud.edu.dto.clientobject.resource.TrainingTypeCO;
|
||||
import com.zcloud.edu.persistence.dataobject.TrainingTypeDO;
|
||||
import org.mapstruct.Mapper;
|
||||
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
package com.zcloud.edu.command.convertor;
|
||||
package com.zcloud.edu.command.convertor.resource;
|
||||
|
||||
import com.zcloud.edu.dto.clientobject.VideoCoursewareCO;
|
||||
import com.zcloud.edu.dto.clientobject.resource.VideoCoursewareCO;
|
||||
import com.zcloud.edu.persistence.dataobject.VideoCoursewareDO;
|
||||
import org.mapstruct.Mapper;
|
||||
|
||||
|
|
@ -1,60 +0,0 @@
|
|||
package com.zcloud.edu.command.query;
|
||||
|
||||
import com.alibaba.cola.dto.MultiResponse;
|
||||
import com.zcloud.edu.command.convertor.VideoCoursewareCoConvertor;
|
||||
import com.zcloud.edu.dto.VideoCoursewarePageQry;
|
||||
import com.zcloud.edu.dto.VideoCoursewareListQry;
|
||||
import com.zcloud.edu.dto.clientobject.VideoCoursewareCO;
|
||||
import com.zcloud.edu.persistence.dataobject.VideoCoursewareDO;
|
||||
import com.zcloud.edu.persistence.repository.VideoCoursewareRepository;
|
||||
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-27 14:05:32
|
||||
*/
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
public class VideoCoursewareQueryExe {
|
||||
private final VideoCoursewareRepository videoCoursewareRepository;
|
||||
private final VideoCoursewareCoConvertor videoCoursewareCoConvertor;
|
||||
|
||||
/**
|
||||
* 分页
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public PageResponse<VideoCoursewareCO> execute(VideoCoursewarePageQry qry) {
|
||||
Map<String, Object> params = PageQueryHelper.toHashMap(qry);
|
||||
PageResponse<VideoCoursewareDO> pageResponse = videoCoursewareRepository.listPage(params);
|
||||
List<VideoCoursewareCO> examCenterCOS = videoCoursewareCoConvertor.converDOsToCOs(pageResponse.getData());
|
||||
return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
|
||||
}
|
||||
|
||||
public MultiResponse<VideoCoursewareCO> execute(VideoCoursewareListQry qry) {
|
||||
Map<String, Object> params = PageQueryHelper.toHashMap(qry);
|
||||
List<VideoCoursewareDO> list = videoCoursewareRepository.list(params);
|
||||
List<VideoCoursewareCO> examCenterCOS = videoCoursewareCoConvertor.converDOsToCOs(list);
|
||||
return MultiResponse.of(examCenterCOS);
|
||||
}
|
||||
|
||||
public SingleResponse<VideoCoursewareCO> execute(Long id) {
|
||||
SingleResponse<VideoCoursewareDO> videoCoursewareDO = videoCoursewareRepository.getInfoById(id);
|
||||
VideoCoursewareCO co = new VideoCoursewareCO();
|
||||
BeanUtils.copyProperties(videoCoursewareDO.getData(), co);
|
||||
return SingleResponse.of(co);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,42 @@
|
|||
package com.zcloud.edu.command.query.resource;
|
||||
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.zcloud.edu.command.convertor.resource.CurriculumChapterCoConvertor;
|
||||
import com.zcloud.edu.dto.resource.CurriculumChapterPageQry;
|
||||
import com.zcloud.edu.dto.clientobject.resource.CurriculumChapterCO;
|
||||
import com.zcloud.edu.persistence.dataobject.CurriculumChapterDO;
|
||||
import com.zcloud.edu.persistence.repository.resource.CurriculumChapterRepository;
|
||||
import com.zcloud.gbscommon.utils.PageQueryHelper;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
|
||||
/**
|
||||
* web-app
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 13:50:13
|
||||
*/
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
public class CurriculumChapterQueryExe {
|
||||
private final CurriculumChapterRepository curriculumChapterRepository;
|
||||
private final CurriculumChapterCoConvertor curriculumChapterCoConvertor;
|
||||
|
||||
/**
|
||||
* 分页
|
||||
*
|
||||
* @param curriculumChapterPageQry
|
||||
* @return
|
||||
*/
|
||||
public PageResponse<CurriculumChapterCO> execute(CurriculumChapterPageQry curriculumChapterPageQry) {
|
||||
Map<String, Object> params = PageQueryHelper.toHashMap(curriculumChapterPageQry);
|
||||
PageResponse<CurriculumChapterDO> pageResponse = curriculumChapterRepository.listPage(params);
|
||||
List<CurriculumChapterCO> examCenterCOS = curriculumChapterCoConvertor.converDOsToCOs(pageResponse.getData());
|
||||
return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,92 @@
|
|||
package com.zcloud.edu.command.query.resource;
|
||||
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.jjb.saas.framework.auth.utils.AuthContext;
|
||||
import com.zcloud.edu.command.convertor.resource.CurriculumChapterCoConvertor;
|
||||
import com.zcloud.edu.command.convertor.resource.CurriculumCoConvertor;
|
||||
import com.zcloud.edu.domain.enums.CorpTypeEnum;
|
||||
import com.zcloud.edu.dto.resource.CurriculumPageQry;
|
||||
import com.zcloud.edu.dto.clientobject.resource.CurriculumCO;
|
||||
import com.zcloud.edu.dto.clientobject.resource.CurriculumChapterCO;
|
||||
import com.zcloud.edu.persistence.dataobject.CorpInfoDO;
|
||||
import com.zcloud.edu.persistence.dataobject.CurriculumChapterDO;
|
||||
import com.zcloud.edu.persistence.dataobject.CurriculumDO;
|
||||
import com.zcloud.edu.persistence.repository.resource.CorpInfoRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.CurriculumChapterRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.CurriculumRepository;
|
||||
import com.zcloud.gbscommon.utils.PageQueryHelper;
|
||||
import com.zcloud.gbscommon.utils.Tools;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
|
||||
/**
|
||||
* web-app
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 13:45:38
|
||||
*/
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
public class CurriculumQueryExe {
|
||||
private final CurriculumRepository curriculumRepository;
|
||||
private final CurriculumCoConvertor curriculumCoConvertor;
|
||||
private final CurriculumChapterRepository curriculumChapterRepository;
|
||||
private final CurriculumChapterCoConvertor curriculumChapterCoConvertor;
|
||||
private final CorpInfoRepository corpInfoRepository;
|
||||
|
||||
/**
|
||||
* 分页
|
||||
*
|
||||
* @param curriculumPageQry
|
||||
* @return
|
||||
*/
|
||||
public PageResponse<CurriculumCO> execute(CurriculumPageQry curriculumPageQry) {
|
||||
Map<String, Object> params = PageQueryHelper.toHashMap(curriculumPageQry);
|
||||
//判断企业是股份端还是企业端
|
||||
boolean supper = corpInfoRepository.isSupper();
|
||||
//股份端展示股份端创建的和各企业创建的,
|
||||
//企业端展示本企业创建的和股份端创建的
|
||||
if(!supper){
|
||||
//不是股份端,显示
|
||||
List<Integer> typeList = Arrays.asList(CorpTypeEnum.share.getCode());
|
||||
List<CorpInfoDO> corpInfoDOS = corpInfoRepository.listByCorpType(typeList);
|
||||
List<Long> inCorpinfoId = corpInfoDOS.stream().map(CorpInfoDO::getId).collect(Collectors.toList());
|
||||
inCorpinfoId.add(AuthContext.getTenantId());
|
||||
params.put("inCorpinfoId", inCorpinfoId);
|
||||
}
|
||||
PageResponse<CurriculumDO> pageResponse = curriculumRepository.listPage(params);
|
||||
if(pageResponse.getData() == null){
|
||||
return PageResponse.of(null, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
|
||||
}
|
||||
List<CurriculumCO> examCenterCOS = curriculumCoConvertor.converDOsToCOs(pageResponse.getData());
|
||||
examCenterCOS.forEach(examCenterCO -> {
|
||||
if(AuthContext.getUserId().equals(examCenterCO.getCreateId())){
|
||||
//是本人
|
||||
examCenterCO.setIsUserCreate(true);
|
||||
}
|
||||
});
|
||||
return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
|
||||
}
|
||||
|
||||
public CurriculumCO getInfoById(Long id) {
|
||||
CurriculumDO curriculumDO = curriculumRepository.getById(id);
|
||||
if(curriculumDO == null){
|
||||
return null;
|
||||
}
|
||||
CurriculumCO curriculumCO = curriculumCoConvertor.converDOToCO(curriculumDO);
|
||||
//查询出所有的课程章节信息
|
||||
|
||||
List<CurriculumChapterDO> curriculumChapterDOList = curriculumChapterRepository.getListByCurriculumId(curriculumCO.getCurriculumId());
|
||||
List<CurriculumChapterCO> curriculumChapterCOList = curriculumChapterCoConvertor.converDOsToCOs(curriculumChapterDOList);
|
||||
List<CurriculumChapterCO> treeList = Tools.buildEntityTree(curriculumChapterCOList, "curriculumChapterId", "parentId", "childCurriculumChapterCOList", "0");
|
||||
curriculumCO.setCurriculumChapterCOList(treeList);
|
||||
return curriculumCO;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,88 @@
|
|||
package com.zcloud.edu.command.query.resource;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.jjb.saas.framework.auth.utils.AuthContext;
|
||||
import com.zcloud.edu.command.convertor.resource.ExamPaperCoConvertor;
|
||||
import com.zcloud.edu.command.convertor.resource.QuestionCoConvertor;
|
||||
import com.zcloud.edu.domain.enums.CorpTypeEnum;
|
||||
import com.zcloud.edu.dto.resource.ExamPaperPageQry;
|
||||
import com.zcloud.edu.dto.clientobject.resource.ExamPaperCO;
|
||||
import com.zcloud.edu.dto.clientobject.resource.QuestionCO;
|
||||
import com.zcloud.edu.persistence.dataobject.CorpInfoDO;
|
||||
import com.zcloud.edu.persistence.dataobject.ExamPaperDO;
|
||||
import com.zcloud.edu.persistence.dataobject.QuestionDO;
|
||||
import com.zcloud.edu.persistence.repository.resource.CorpInfoRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.ExamPaperRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.QuestionRepository;
|
||||
import com.zcloud.gbscommon.utils.PageQueryHelper;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
|
||||
/**
|
||||
* web-app
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 17:04:42
|
||||
*/
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
public class ExamPaperQueryExe {
|
||||
private final ExamPaperRepository examPaperRepository;
|
||||
private final ExamPaperCoConvertor examPaperCoConvertor;
|
||||
private final CorpInfoRepository corpInfoRepository;
|
||||
private final QuestionRepository questionRepository;
|
||||
private final QuestionCoConvertor questionCoConvertor;
|
||||
|
||||
/**
|
||||
* 分页
|
||||
*
|
||||
* @param examPaperPageQry
|
||||
* @return
|
||||
*/
|
||||
public PageResponse<ExamPaperCO> execute(ExamPaperPageQry examPaperPageQry) {
|
||||
Map<String, Object> params = PageQueryHelper.toHashMap(examPaperPageQry);
|
||||
//判断企业是股份端还是企业端
|
||||
boolean supper = corpInfoRepository.isSupper();
|
||||
//股份端展示股份端创建的和各企业创建的,
|
||||
//企业端展示本企业创建的和股份端创建的
|
||||
if(!supper){
|
||||
//不是股份端,显示
|
||||
List<Integer> typeList = Arrays.asList(CorpTypeEnum.share.getCode());
|
||||
List<CorpInfoDO> corpInfoDOS = corpInfoRepository.listByCorpType(typeList);
|
||||
List<Long> inCorpinfoId = corpInfoDOS.stream().map(CorpInfoDO::getId).collect(Collectors.toList());
|
||||
inCorpinfoId.add(AuthContext.getTenantId());
|
||||
params.put("inCorpinfoId", inCorpinfoId);
|
||||
}
|
||||
PageResponse<ExamPaperDO> pageResponse = examPaperRepository.listPage(params);
|
||||
List<ExamPaperCO> examCenterCOS = examPaperCoConvertor.converDOsToCOs(pageResponse.getData());
|
||||
examCenterCOS.forEach(examCenterCO -> {
|
||||
if(examCenterCO.getCreateId().equals(AuthContext.getUserId())){
|
||||
//是本人
|
||||
examCenterCO.setIsUserCreate(true);
|
||||
}
|
||||
});
|
||||
return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
|
||||
}
|
||||
|
||||
public ExamPaperCO getInfoById(Long id) {
|
||||
ExamPaperDO examPaperDO =examPaperRepository.getInfoById(id);
|
||||
if(examPaperDO==null){
|
||||
throw new RuntimeException("试卷不存在");
|
||||
}
|
||||
ExamPaperCO examPaperCO =new ExamPaperCO();
|
||||
BeanUtil.copyProperties(examPaperDO,examPaperCO);
|
||||
//查找课题
|
||||
List<QuestionDO> questionDOList = questionRepository.getListByExamPaperId(examPaperDO.getExamPaperId());
|
||||
List<QuestionCO> questionCOS = questionCoConvertor.converDOsToCOs(questionDOList);
|
||||
examPaperCO.setQuestionCOList(questionCOS);
|
||||
return examPaperCO;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1,12 +1,12 @@
|
|||
package com.zcloud.edu.command.query;
|
||||
package com.zcloud.edu.command.query.resource;
|
||||
|
||||
import com.alibaba.cola.dto.MultiResponse;
|
||||
import com.zcloud.edu.command.convertor.QuestionCoConvertor;
|
||||
import com.zcloud.edu.dto.QuestionPageQry;
|
||||
import com.zcloud.edu.dto.QuestionListQry;
|
||||
import com.zcloud.edu.dto.clientobject.QuestionCO;
|
||||
import com.zcloud.edu.command.convertor.resource.QuestionCoConvertor;
|
||||
import com.zcloud.edu.dto.resource.QuestionPageQry;
|
||||
import com.zcloud.edu.dto.resource.QuestionListQry;
|
||||
import com.zcloud.edu.dto.clientobject.resource.QuestionCO;
|
||||
import com.zcloud.edu.persistence.dataobject.QuestionDO;
|
||||
import com.zcloud.edu.persistence.repository.QuestionRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.QuestionRepository;
|
||||
import com.zcloud.gbscommon.utils.PageQueryHelper;
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.alibaba.cola.dto.SingleResponse;
|
||||
|
|
@ -1,12 +1,12 @@
|
|||
package com.zcloud.edu.command.query;
|
||||
package com.zcloud.edu.command.query.resource;
|
||||
|
||||
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.command.convertor.resource.TeacherCertificateCoConvertor;
|
||||
import com.zcloud.edu.dto.resource.TeacherCertificateListQry;
|
||||
import com.zcloud.edu.dto.resource.TeacherCertificatePageQry;
|
||||
import com.zcloud.edu.dto.clientobject.resource.TeacherCertificateCO;
|
||||
import com.zcloud.edu.persistence.dataobject.TeacherCertificateDO;
|
||||
import com.zcloud.edu.persistence.repository.TeacherCertificateRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.TeacherCertificateRepository;
|
||||
import com.zcloud.gbscommon.utils.PageQueryHelper;
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.alibaba.cola.dto.SingleResponse;
|
||||
|
|
@ -1,16 +1,16 @@
|
|||
package com.zcloud.edu.command.query;
|
||||
package com.zcloud.edu.command.query.resource;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
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.dto.clientobject.TeacherCertificateCO;
|
||||
import com.zcloud.edu.command.convertor.resource.TeacherCoConvertor;
|
||||
import com.zcloud.edu.dto.resource.TeacherListQry;
|
||||
import com.zcloud.edu.dto.resource.TeacherPageQry;
|
||||
import com.zcloud.edu.dto.clientobject.resource.TeacherCO;
|
||||
import com.zcloud.edu.dto.clientobject.resource.TeacherCertificateCO;
|
||||
import com.zcloud.edu.persistence.dataobject.TeacherCertificateDO;
|
||||
import com.zcloud.edu.persistence.dataobject.TeacherDO;
|
||||
import com.zcloud.edu.persistence.repository.TeacherCertificateRepository;
|
||||
import com.zcloud.edu.persistence.repository.TeacherRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.TeacherCertificateRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.TeacherRepository;
|
||||
import com.zcloud.gbscommon.utils.PageQueryHelper;
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.alibaba.cola.dto.SingleResponse;
|
||||
|
|
@ -54,15 +54,17 @@ public class TeacherQueryExe {
|
|||
return MultiResponse.of(examCenterCOS);
|
||||
}
|
||||
|
||||
public SingleResponse<TeacherCO> execute(Long id) {
|
||||
public SingleResponse<TeacherCO> getInfoById(Long id) {
|
||||
SingleResponse<TeacherDO> teacherDO = teacherRepository.getInfoById(id);
|
||||
if(teacherDO.getData() == null){
|
||||
return SingleResponse.of(null);
|
||||
}
|
||||
TeacherCO co = new TeacherCO();
|
||||
BeanUtils.copyProperties(teacherDO.getData(), co);
|
||||
|
||||
if(co != null){
|
||||
List<TeacherCertificateDO> teacherCertificateDOS = teacherCertificateRepository.listByTeacherId(co.getTeacherId());
|
||||
co.setTeacherCertificateList(BeanUtil.copyToList(teacherCertificateDOS, TeacherCertificateCO.class));
|
||||
}
|
||||
|
||||
|
||||
return SingleResponse.of(co);
|
||||
}
|
||||
|
|
@ -1,12 +1,12 @@
|
|||
package com.zcloud.edu.command.query;
|
||||
package com.zcloud.edu.command.query.resource;
|
||||
|
||||
import com.alibaba.cola.dto.MultiResponse;
|
||||
import com.zcloud.edu.command.convertor.TrainingTypeCoConvertor;
|
||||
import com.zcloud.edu.dto.TrainingTypeListQry;
|
||||
import com.zcloud.edu.dto.TrainingTypePageQry;
|
||||
import com.zcloud.edu.dto.clientobject.TrainingTypeCO;
|
||||
import com.zcloud.edu.command.convertor.resource.TrainingTypeCoConvertor;
|
||||
import com.zcloud.edu.dto.resource.TrainingTypeListQry;
|
||||
import com.zcloud.edu.dto.resource.TrainingTypePageQry;
|
||||
import com.zcloud.edu.dto.clientobject.resource.TrainingTypeCO;
|
||||
import com.zcloud.edu.persistence.dataobject.TrainingTypeDO;
|
||||
import com.zcloud.edu.persistence.repository.TrainingTypeRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.TrainingTypeRepository;
|
||||
import com.zcloud.gbscommon.utils.PageQueryHelper;
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.alibaba.cola.dto.SingleResponse;
|
||||
|
|
@ -0,0 +1,95 @@
|
|||
package com.zcloud.edu.command.query.resource;
|
||||
|
||||
import com.alibaba.cola.dto.MultiResponse;
|
||||
import com.jjb.saas.framework.auth.utils.AuthContext;
|
||||
import com.zcloud.edu.command.convertor.resource.VideoCoursewareCoConvertor;
|
||||
import com.zcloud.edu.domain.enums.CorpTypeEnum;
|
||||
import com.zcloud.edu.dto.resource.VideoCoursewarePageQry;
|
||||
import com.zcloud.edu.dto.resource.VideoCoursewareListQry;
|
||||
import com.zcloud.edu.dto.clientobject.resource.VideoCoursewareCO;
|
||||
import com.zcloud.edu.persistence.dataobject.CorpInfoDO;
|
||||
import com.zcloud.edu.persistence.dataobject.VideoCoursewareDO;
|
||||
import com.zcloud.edu.persistence.repository.resource.CorpInfoRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.VideoCoursewareRepository;
|
||||
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.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
|
||||
/**
|
||||
* web-app
|
||||
*
|
||||
* @Author SondonYong
|
||||
* @Date 2025-11-27 14:05:32
|
||||
*/
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
public class VideoCoursewareQueryExe {
|
||||
private final VideoCoursewareRepository videoCoursewareRepository;
|
||||
private final VideoCoursewareCoConvertor videoCoursewareCoConvertor;
|
||||
private final CorpInfoRepository corpInfoRepository;
|
||||
|
||||
/**
|
||||
* 分页
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public PageResponse<VideoCoursewareCO> execute(VideoCoursewarePageQry qry) {
|
||||
Map<String, Object> params = PageQueryHelper.toHashMap(qry);
|
||||
//判断企业是股份端还是企业端
|
||||
boolean supper = corpInfoRepository.isSupper();
|
||||
//股份端展示股份端创建的和各企业创建的,
|
||||
//企业端展示本企业创建的和股份端创建的
|
||||
if(!supper){
|
||||
//不是股份端,显示
|
||||
List<Integer> typeList = Arrays.asList(CorpTypeEnum.share.getCode());
|
||||
List<CorpInfoDO> corpInfoDOS = corpInfoRepository.listByCorpType(typeList);
|
||||
List<Long> inCorpinfoId = corpInfoDOS.stream().map(CorpInfoDO::getId).collect(Collectors.toList());
|
||||
inCorpinfoId.add(AuthContext.getTenantId());
|
||||
params.put("inCorpinfoId", inCorpinfoId);
|
||||
}
|
||||
|
||||
PageResponse<VideoCoursewareDO> pageResponse = videoCoursewareRepository.listPage(params);
|
||||
if(pageResponse.getData() == null){
|
||||
return PageResponse.of(null, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
|
||||
}
|
||||
List<VideoCoursewareCO> examCenterCOS = videoCoursewareCoConvertor.converDOsToCOs(pageResponse.getData());
|
||||
examCenterCOS.forEach(examCenterCO -> {
|
||||
if(examCenterCO.getCreateId().equals(AuthContext.getUserId())){
|
||||
//是本人
|
||||
examCenterCO.setIsUserCreate(true);
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
|
||||
return PageResponse.of(examCenterCOS, pageResponse.getTotalCount(), pageResponse.getPageSize(), pageResponse.getPageIndex());
|
||||
}
|
||||
|
||||
public MultiResponse<VideoCoursewareCO> execute(VideoCoursewareListQry qry) {
|
||||
Map<String, Object> params = PageQueryHelper.toHashMap(qry);
|
||||
List<VideoCoursewareDO> list = videoCoursewareRepository.list(params);
|
||||
List<VideoCoursewareCO> examCenterCOS = videoCoursewareCoConvertor.converDOsToCOs(list);
|
||||
return MultiResponse.of(examCenterCOS);
|
||||
}
|
||||
|
||||
public SingleResponse<VideoCoursewareCO> getInfoById(Long id) {
|
||||
SingleResponse<VideoCoursewareDO> videoCoursewareDO = videoCoursewareRepository.getInfoById(id);
|
||||
if(videoCoursewareDO.getData() == null){
|
||||
return SingleResponse.of(null);
|
||||
}
|
||||
VideoCoursewareCO co = new VideoCoursewareCO();
|
||||
BeanUtils.copyProperties(videoCoursewareDO.getData(), co);
|
||||
return SingleResponse.of(co);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,103 @@
|
|||
package com.zcloud.edu.command.resource;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import com.zcloud.edu.command.convertor.resource.CurriculumChapterCoConvertor;
|
||||
import com.zcloud.edu.domain.enums.CatalogueLevelEnum;
|
||||
import com.zcloud.edu.domain.gateway.resource.CurriculumChapterGateway;
|
||||
import com.zcloud.edu.domain.gateway.resource.CurriculumGateway;
|
||||
import com.zcloud.edu.domain.model.resource.CurriculumChapterE;
|
||||
import com.zcloud.edu.domain.model.resource.CurriculumE;
|
||||
import com.zcloud.edu.dto.resource.CurriculumAddCmd;
|
||||
import com.zcloud.edu.dto.resource.CurriculumChapterAddCmd;
|
||||
import com.zcloud.edu.persistence.repository.resource.CurriculumChapterRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.QuestionRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.VideoCoursewareRepository;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
|
||||
/**
|
||||
* web-app
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 13:45:38
|
||||
*/
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
public class CurriculumAddExe {
|
||||
private final CurriculumGateway curriculumGateway;
|
||||
private final CurriculumChapterGateway curriculumChapterGateway;
|
||||
private final CurriculumChapterCoConvertor curriculumChapterCoConvertor;
|
||||
private final CurriculumChapterRepository curriculumChapterRepository;
|
||||
private final VideoCoursewareRepository videoCoursewareRepository;
|
||||
private final QuestionRepository questionRepository;
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean execute(CurriculumAddCmd cmd) {
|
||||
|
||||
CurriculumE curriculumE = new CurriculumE();
|
||||
BeanUtils.copyProperties(cmd, curriculumE);
|
||||
boolean res = false;
|
||||
try {
|
||||
res = curriculumGateway.add(curriculumE);
|
||||
} catch (Exception e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
if (!res) {
|
||||
throw new BizException("课程保存失败");
|
||||
}
|
||||
List<String> videoCoursewareIds =new ArrayList<>();
|
||||
//判断课程习题数量大于5
|
||||
if(CatalogueLevelEnum.FIRST_LEVEL.getCode().equals(cmd.getCatalogueLevel())){
|
||||
//一级目录
|
||||
videoCoursewareIds = cmd.getCurriculumChapterAddCmdList().stream()
|
||||
.filter(curriculumChapterAddCmd -> curriculumChapterAddCmd.getVideoCoursewareId() != null)
|
||||
.map(CurriculumChapterAddCmd::getVideoCoursewareId).collect(Collectors.toList());
|
||||
}else{
|
||||
//二级目录
|
||||
List<CurriculumChapterAddCmd> curriculumChapterAddCmdList = cmd.getCurriculumChapterAddCmdList();
|
||||
//curriculumChapterAddCmdList过滤掉"0".equals(curriculumChapterAddCmd.getParentId()) 的数据,拿到videoCoursewareIds
|
||||
// curriculumChapterAddCmdList.stream()
|
||||
//curriculumChapterAddCmdList中curriculumChapterAddCmdList.get().getCurriculumChapterAddCmdList() 下所有的getVideoCoursewareId
|
||||
List<String> finalVideoCoursewareIds = videoCoursewareIds;
|
||||
curriculumChapterAddCmdList.forEach(info->{
|
||||
List<String> collect = info.getCurriculumChapterAddCmdList().stream().filter(curriculumChapterAddCmd -> curriculumChapterAddCmd.getVideoCoursewareId() != null)
|
||||
.map(CurriculumChapterAddCmd::getVideoCoursewareId).collect(Collectors.toList());
|
||||
finalVideoCoursewareIds.addAll(collect);
|
||||
});
|
||||
}
|
||||
if(CollUtil.isEmpty(videoCoursewareIds)){
|
||||
throw new BizException("请选择课程");
|
||||
}
|
||||
Long videoCoursewareCount = questionRepository.getCountByVideoCoursewareList(videoCoursewareIds);
|
||||
if(videoCoursewareCount<5){
|
||||
throw new BizException("课程习题数量不能小于5");
|
||||
}
|
||||
//处理课程章节
|
||||
List<CurriculumChapterAddCmd> curriculumChapterAddCmdList = cmd.getCurriculumChapterAddCmdList();
|
||||
curriculumChapterAddCmdList.forEach(curriculumChapterAddCmd -> {
|
||||
CurriculumChapterE curriculumChapterE = new CurriculumChapterE();
|
||||
BeanUtils.copyProperties(curriculumChapterAddCmd, curriculumChapterE);
|
||||
curriculumChapterE.setCurriculumId(curriculumE.getCurriculumId());
|
||||
curriculumChapterE.setParentId("0");
|
||||
curriculumChapterGateway.add(curriculumChapterE);
|
||||
if( CatalogueLevelEnum.SECOND_LEVEL.getCode().equals(cmd.getCatalogueLevel())){
|
||||
|
||||
//二级目录
|
||||
List<CurriculumChapterAddCmd> curriculumChapterAddCmdList1 = curriculumChapterAddCmd.getCurriculumChapterAddCmdList();
|
||||
List<CurriculumChapterE> curriculumChapterES = curriculumChapterCoConvertor.converCmdsToEs(curriculumChapterAddCmdList1);
|
||||
CurriculumChapterE.initBath(curriculumChapterES,curriculumChapterE.getCurriculumChapterId(),curriculumChapterE.getCurriculumId());
|
||||
curriculumChapterRepository.saveBatch( curriculumChapterCoConvertor.converEsToDOs(curriculumChapterES));
|
||||
}
|
||||
});
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,40 @@
|
|||
package com.zcloud.edu.command.resource;
|
||||
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import com.zcloud.edu.domain.gateway.resource.CurriculumChapterGateway;
|
||||
import com.zcloud.edu.domain.model.resource.CurriculumChapterE;
|
||||
import com.zcloud.edu.dto.resource.CurriculumChapterAddCmd;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
|
||||
/**
|
||||
* web-app
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 13:50:13
|
||||
*/
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
public class CurriculumChapterAddExe {
|
||||
private final CurriculumChapterGateway curriculumChapterGateway;
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean execute(CurriculumChapterAddCmd cmd) {
|
||||
CurriculumChapterE curriculumChapterE = new CurriculumChapterE();
|
||||
BeanUtils.copyProperties(cmd, curriculumChapterE);
|
||||
boolean res = false;
|
||||
try {
|
||||
res = curriculumChapterGateway.add(curriculumChapterE);
|
||||
} catch (Exception e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
if (!res) {
|
||||
throw new BizException("保存失败");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
package com.zcloud.edu.command;
|
||||
package com.zcloud.edu.command.resource;
|
||||
|
||||
import com.zcloud.edu.domain.gateway.VideoCoursewareGateway;
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import com.zcloud.edu.domain.gateway.resource.CurriculumChapterGateway;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
|
@ -10,17 +10,17 @@ import org.springframework.transaction.annotation.Transactional;
|
|||
/**
|
||||
* web-app
|
||||
*
|
||||
* @Author SondonYong
|
||||
* @Date 2025-11-27 14:05:32
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 13:50:13
|
||||
*/
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
public class VideoCoursewareRemoveExe {
|
||||
private final VideoCoursewareGateway videoCoursewareGateway;
|
||||
public class CurriculumChapterRemoveExe {
|
||||
private final CurriculumChapterGateway curriculumChapterGateway;
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean execute(Long id) {
|
||||
boolean res = videoCoursewareGateway.deletedVideoCoursewareById(id);
|
||||
boolean res = curriculumChapterGateway.deletedCurriculumChapterById(id);
|
||||
if (!res) {
|
||||
throw new BizException("删除失败");
|
||||
}
|
||||
|
|
@ -29,7 +29,7 @@ public class VideoCoursewareRemoveExe {
|
|||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean execute(Long[] ids) {
|
||||
boolean res = videoCoursewareGateway.deletedVideoCoursewareByIds(ids);
|
||||
boolean res = curriculumChapterGateway.deletedCurriculumChapterByIds(ids);
|
||||
if (!res) {
|
||||
throw new BizException("删除失败");
|
||||
}
|
||||
|
|
@ -0,0 +1,34 @@
|
|||
package com.zcloud.edu.command.resource;
|
||||
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import com.zcloud.edu.domain.gateway.resource.CurriculumChapterGateway;
|
||||
import com.zcloud.edu.domain.model.resource.CurriculumChapterE;
|
||||
import com.zcloud.edu.dto.resource.CurriculumChapterUpdateCmd;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
|
||||
/**
|
||||
* web-app
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 13:50:13
|
||||
*/
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
public class CurriculumChapterUpdateExe {
|
||||
private final CurriculumChapterGateway curriculumChapterGateway;
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void execute(CurriculumChapterUpdateCmd curriculumChapterUpdateCmd) {
|
||||
CurriculumChapterE curriculumChapterE = new CurriculumChapterE();
|
||||
BeanUtils.copyProperties(curriculumChapterUpdateCmd, curriculumChapterE);
|
||||
boolean res = curriculumChapterGateway.update(curriculumChapterE);
|
||||
if (!res) {
|
||||
throw new BizException("修改失败");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,71 @@
|
|||
package com.zcloud.edu.command.resource;
|
||||
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import com.zcloud.edu.domain.gateway.resource.CurriculumGateway;
|
||||
import com.zcloud.edu.persistence.dataobject.CurriculumDO;
|
||||
import com.zcloud.edu.persistence.repository.resource.CorpInfoRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.CurriculumRepository;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
|
||||
/**
|
||||
* web-app
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 13:45:38
|
||||
*/
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
public class CurriculumRemoveExe {
|
||||
private final CurriculumGateway curriculumGateway;
|
||||
private final CorpInfoRepository corpInfoRepository;
|
||||
private final CurriculumRepository curriculumRepository;
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean execute(Long id) {
|
||||
CurriculumDO curriculumDO = curriculumRepository.getById(id);
|
||||
//企业端禁用:所属单位为股份的不能禁用
|
||||
//股份端禁用:所属单位为各企业的不能禁用
|
||||
Boolean b = corpInfoRepository.checkSupper(curriculumDO.getCorpinfoId());
|
||||
if(corpInfoRepository.isSupper() && !b){
|
||||
throw new BizException("企业端数据不能删除");
|
||||
}
|
||||
if(!corpInfoRepository.isSupper() && b){
|
||||
throw new BizException("股份端数据不能删除");
|
||||
}
|
||||
//TODO 校验是否被使用
|
||||
|
||||
boolean res = curriculumGateway.deletedCurriculumById(id);
|
||||
if (!res) {
|
||||
throw new BizException("删除失败");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean execute(Long[] ids) {
|
||||
for (Long id : ids) {
|
||||
CurriculumDO curriculumDO = curriculumRepository.getById(id);
|
||||
//企业端禁用:所属单位为股份的不能禁用
|
||||
//股份端禁用:所属单位为各企业的不能禁用
|
||||
Boolean b = corpInfoRepository.checkSupper(curriculumDO.getCorpinfoId());
|
||||
if(corpInfoRepository.isSupper() && !b){
|
||||
throw new BizException("企业端数据不能删除");
|
||||
}
|
||||
if(!corpInfoRepository.isSupper() && b){
|
||||
throw new BizException("股份端数据不能删除");
|
||||
}
|
||||
//TODO 校验是否被使用
|
||||
|
||||
}
|
||||
|
||||
boolean res = curriculumGateway.deletedCurriculumByIds(ids);
|
||||
if (!res) {
|
||||
throw new BizException("删除失败");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,109 @@
|
|||
package com.zcloud.edu.command.resource;
|
||||
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import com.zcloud.edu.command.convertor.resource.CurriculumChapterCoConvertor;
|
||||
import com.zcloud.edu.domain.enums.CatalogueLevelEnum;
|
||||
import com.zcloud.edu.domain.enums.CurriculumSellFlagEnum;
|
||||
import com.zcloud.edu.domain.gateway.resource.CurriculumChapterGateway;
|
||||
import com.zcloud.edu.domain.gateway.resource.CurriculumGateway;
|
||||
import com.zcloud.edu.domain.model.resource.CurriculumChapterE;
|
||||
import com.zcloud.edu.domain.model.resource.CurriculumE;
|
||||
import com.zcloud.edu.dto.resource.CurriculumChapterAddCmd;
|
||||
import com.zcloud.edu.dto.resource.CurriculumUpdateCmd;
|
||||
import com.zcloud.edu.dto.resource.CurriculumUpdateStateCmd;
|
||||
import com.zcloud.edu.persistence.dataobject.CurriculumDO;
|
||||
import com.zcloud.edu.persistence.repository.resource.CorpInfoRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.CurriculumChapterRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.CurriculumRepository;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* web-app
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 13:45:39
|
||||
*/
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
public class CurriculumUpdateExe {
|
||||
private final CurriculumGateway curriculumGateway;
|
||||
private final CurriculumRepository curriculumRepository;
|
||||
private final CurriculumChapterRepository curriculumChapterRepository;
|
||||
private final CurriculumChapterCoConvertor curriculumChapterCoConvertor;
|
||||
private final CurriculumChapterGateway curriculumChapterGateway;
|
||||
private final CorpInfoRepository corpInfoRepository;
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void execute(CurriculumUpdateCmd curriculumUpdateCmd) {
|
||||
CurriculumDO curriculumDO = curriculumRepository.getById(curriculumUpdateCmd.getId());
|
||||
if (curriculumDO == null) {
|
||||
throw new BizException("课程不存在");
|
||||
}
|
||||
|
||||
//企业端禁用:所属单位为股份的不能禁用
|
||||
//股份端禁用:所属单位为各企业的不能禁用
|
||||
Boolean b = corpInfoRepository.checkSupper(curriculumDO.getCorpinfoId());
|
||||
if(corpInfoRepository.isSupper() && !b){
|
||||
throw new BizException("企业端数据不能编辑");
|
||||
}
|
||||
if(!corpInfoRepository.isSupper() && b){
|
||||
throw new BizException("股份端数据不能编辑");
|
||||
}
|
||||
//TODo 校验是否 被使用
|
||||
|
||||
CurriculumE curriculumE = new CurriculumE();
|
||||
BeanUtils.copyProperties(curriculumUpdateCmd, curriculumE);
|
||||
boolean res = curriculumGateway.update(curriculumE);
|
||||
if (!res) {
|
||||
throw new BizException("修改失败");
|
||||
}
|
||||
|
||||
//删除课程章节信息,添加新的课程章节信息
|
||||
curriculumChapterRepository.deleteByCurriculumId(curriculumDO.getCurriculumId());
|
||||
List<CurriculumChapterAddCmd> curriculumChapterAddCmdList = curriculumUpdateCmd.getCurriculumChapterAddCmdList();
|
||||
curriculumChapterAddCmdList.forEach(curriculumChapterAddCmd -> {
|
||||
CurriculumChapterE curriculumChapterE = new CurriculumChapterE();
|
||||
BeanUtils.copyProperties(curriculumChapterAddCmd, curriculumChapterE);
|
||||
curriculumChapterE.setCurriculumId(curriculumE.getCurriculumId());
|
||||
curriculumChapterGateway.add(curriculumChapterE);
|
||||
if("0".equals(curriculumChapterAddCmd.getParentId())&& CatalogueLevelEnum.SECOND_LEVEL.getCode().equals(curriculumUpdateCmd.getCatalogueLevel())){
|
||||
//二级目录
|
||||
List<CurriculumChapterAddCmd> curriculumChapterAddCmdList1 = curriculumChapterAddCmd.getCurriculumChapterAddCmdList();
|
||||
List<CurriculumChapterE> curriculumChapterES = curriculumChapterCoConvertor.converCmdsToEs(curriculumChapterAddCmdList1);
|
||||
CurriculumChapterE.initBath(curriculumChapterES,curriculumChapterE.getCurriculumChapterId(),curriculumChapterE.getCurriculumId());
|
||||
curriculumChapterRepository.saveBatch( curriculumChapterCoConvertor.converEsToDOs(curriculumChapterES));
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
}
|
||||
|
||||
public void editState(CurriculumUpdateStateCmd cmd) {
|
||||
for (Long id : cmd.getId()) {
|
||||
CurriculumDO curriculumDO = curriculumRepository.getById(id);
|
||||
//企业端禁用:所属单位为股份的不能禁用
|
||||
//股份端禁用:所属单位为各企业的不能禁用
|
||||
Boolean b = corpInfoRepository.checkSupper(curriculumDO.getCorpinfoId());
|
||||
if(corpInfoRepository.isSupper() && !b){
|
||||
throw new BizException("企业端数据不能修改状态");
|
||||
}
|
||||
if(!corpInfoRepository.isSupper() && b){
|
||||
throw new BizException("股份端数据不能修改状态");
|
||||
}
|
||||
//TODO 校验是否被使用,如果是下架判断是否被使用
|
||||
if(CurriculumSellFlagEnum.UNENABLED.getCode().equals(cmd.getSellFlag())){
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
curriculumRepository.updateState(cmd.getId(), cmd.getSellFlag());
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,69 @@
|
|||
package com.zcloud.edu.command.resource;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import com.zcloud.edu.domain.enums.CoursewareTypeEnum;
|
||||
import com.zcloud.edu.domain.gateway.resource.ExamPaperGateway;
|
||||
import com.zcloud.edu.domain.model.resource.ExamPaperE;
|
||||
import com.zcloud.edu.domain.model.resource.QuestionE;
|
||||
import com.zcloud.edu.dto.resource.ExamPaperAddCmd;
|
||||
import com.zcloud.edu.persistence.dataobject.QuestionDO;
|
||||
import com.zcloud.edu.persistence.repository.resource.QuestionRepository;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* web-app
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 17:04:42
|
||||
*/
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
public class ExamPaperAddExe {
|
||||
private final ExamPaperGateway examPaperGateway;
|
||||
private final QuestionRepository questionRepository;
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean execute(ExamPaperAddCmd cmd) {
|
||||
ExamPaperE examPaperE = new ExamPaperE();
|
||||
BeanUtils.copyProperties(cmd, examPaperE);
|
||||
boolean res = false;
|
||||
try {
|
||||
res = examPaperGateway.add(examPaperE);
|
||||
} catch (Exception e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
if (!res) {
|
||||
throw new BizException("保存失败");
|
||||
}
|
||||
|
||||
QuestionE questionE = new QuestionE();
|
||||
List<QuestionE> questionES = questionE.parseImportTemplateData(cmd.getFile(),null, examPaperE.getExamPaperId(), CoursewareTypeEnum.EXAM_QUESTION.getCode());
|
||||
|
||||
BigDecimal examScore = questionES.stream().map(QuestionE::getScore).reduce(BigDecimal.ZERO, BigDecimal::add);
|
||||
//判断总分数量是否一致
|
||||
if (examScore.compareTo(examPaperE.getExamScore())!=0) {
|
||||
throw new BizException("总分数和试题分数不一致");
|
||||
}
|
||||
|
||||
// 批量插入
|
||||
boolean questionRes = false;
|
||||
try {
|
||||
questionRes = questionRepository.saveBatch(BeanUtil.copyToList(questionES, QuestionDO.class));
|
||||
} catch (Exception e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
if (!questionRes) {
|
||||
throw new BizException("试题导入失败");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,95 @@
|
|||
package com.zcloud.edu.command.resource;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import com.zcloud.edu.domain.gateway.resource.ExamPaperGateway;
|
||||
import com.zcloud.edu.dto.resource.ExamPaperRemoveCmd;
|
||||
import com.zcloud.edu.persistence.dataobject.ExamPaperDO;
|
||||
import com.zcloud.edu.persistence.repository.resource.CorpInfoRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.ExamPaperRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.QuestionRepository;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
|
||||
/**
|
||||
* web-app
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 17:04:43
|
||||
*/
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
public class ExamPaperRemoveExe {
|
||||
private final ExamPaperGateway examPaperGateway;
|
||||
private final ExamPaperRepository examPaperRepository;
|
||||
private final QuestionRepository questionRepository;
|
||||
private final CorpInfoRepository corpInfoRepository;
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean execute(Long id) {
|
||||
ExamPaperDO examPaperDO = examPaperRepository.getById(id);
|
||||
if(examPaperDO==null){
|
||||
throw new RuntimeException("试卷不存在");
|
||||
}
|
||||
//企业端禁用:所属单位为股份的不能禁用
|
||||
//股份端禁用:所属单位为各企业的不能禁用
|
||||
Boolean b = corpInfoRepository.checkSupper(examPaperDO.getCorpinfoId());
|
||||
if (corpInfoRepository.isSupper() && !b) {
|
||||
throw new BizException("企业端数据不能修改状态");
|
||||
}
|
||||
if (!corpInfoRepository.isSupper() && b) {
|
||||
throw new BizException("股份端数据不能修改状态");
|
||||
}
|
||||
|
||||
//TODO 是否被使用
|
||||
|
||||
|
||||
boolean res = examPaperGateway.deletedExamPaperById(id);
|
||||
if (!res) {
|
||||
throw new BizException("删除失败");
|
||||
}
|
||||
//删除对应试题
|
||||
questionRepository.removeByExampaperId(examPaperDO.getExamPaperId());
|
||||
return true;
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean execute(ExamPaperRemoveCmd examPaperRemoveCmd) {
|
||||
|
||||
List<ExamPaperDO> examPaperDOList =examPaperRepository.getListByIdList(examPaperRemoveCmd.getId());
|
||||
if(CollUtil.isEmpty(examPaperDOList)){
|
||||
throw new RuntimeException("试卷不存在");
|
||||
}
|
||||
//获取试卷idlist
|
||||
List<String> examPaperIdList = examPaperDOList.stream().map(ExamPaperDO::getExamPaperId).collect(Collectors.toList());
|
||||
//判断是否被使用
|
||||
for (ExamPaperDO examPaperDO : examPaperDOList) {
|
||||
Boolean b = corpInfoRepository.checkSupper(examPaperDO.getCorpinfoId());
|
||||
if (corpInfoRepository.isSupper() && !b) {
|
||||
throw new BizException("企业端数据不能修改状态");
|
||||
}
|
||||
if (!corpInfoRepository.isSupper() && b) {
|
||||
throw new BizException("股份端数据不能修改状态");
|
||||
}
|
||||
|
||||
//TODO 判断是否被使用
|
||||
|
||||
}
|
||||
|
||||
|
||||
boolean res = examPaperGateway.deletedExamPaperByIds(examPaperRemoveCmd.getId());
|
||||
if (!res) {
|
||||
throw new BizException("删除失败");
|
||||
}
|
||||
//删除对应试题
|
||||
questionRepository.removeByExampaperIdList(examPaperIdList);
|
||||
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,98 @@
|
|||
package com.zcloud.edu.command.resource;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import com.zcloud.edu.domain.enums.CoursewareTypeEnum;
|
||||
import com.zcloud.edu.domain.gateway.resource.ExamPaperGateway;
|
||||
import com.zcloud.edu.domain.model.resource.ExamPaperE;
|
||||
import com.zcloud.edu.domain.model.resource.QuestionE;
|
||||
import com.zcloud.edu.dto.resource.ExamPaperUpdateCmd;
|
||||
import com.zcloud.edu.persistence.dataobject.ExamPaperDO;
|
||||
import com.zcloud.edu.persistence.dataobject.QuestionDO;
|
||||
import com.zcloud.edu.persistence.repository.resource.CorpInfoRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.ExamPaperRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.QuestionRepository;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* web-app
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 17:04:43
|
||||
*/
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
public class ExamPaperUpdateExe {
|
||||
private final ExamPaperGateway examPaperGateway;
|
||||
private final ExamPaperRepository examPaperRepository;
|
||||
private final CorpInfoRepository corpInfoRepository;
|
||||
private final QuestionRepository questionRepository;
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void execute(MultipartFile file, ExamPaperUpdateCmd examPaperUpdateCmd) {
|
||||
ExamPaperDO examPaperDO = examPaperRepository.getById(examPaperUpdateCmd.getId());
|
||||
if( examPaperDO == null){
|
||||
throw new BizException("试卷不存在");
|
||||
}
|
||||
ExamPaperE examPaperE = new ExamPaperE();
|
||||
BeanUtils.copyProperties(examPaperUpdateCmd, examPaperE);
|
||||
boolean res = examPaperGateway.update(examPaperE);
|
||||
if (!res) {
|
||||
throw new BizException("修改失败");
|
||||
}
|
||||
if (!file.isEmpty()) {
|
||||
//删除之前的试题
|
||||
questionRepository.removeByExampaperId( examPaperDO.getExamPaperId());
|
||||
|
||||
QuestionE questionE = new QuestionE();
|
||||
List<QuestionE> questionES = questionE.parseImportTemplateData(file, null, examPaperE.getExamPaperId(), CoursewareTypeEnum.EXAM_QUESTION.getCode());
|
||||
|
||||
BigDecimal examScore = questionES.stream().map(QuestionE::getScore).reduce(BigDecimal.ZERO, BigDecimal::add);
|
||||
//判断总分数量是否一致
|
||||
if (examScore.compareTo(examPaperE.getExamScore()) != 0) {
|
||||
throw new BizException("总分数和试题分数不一致");
|
||||
}
|
||||
|
||||
// 批量插入
|
||||
boolean questionRes = false;
|
||||
try {
|
||||
questionRes = questionRepository.saveBatch(BeanUtil.copyToList(questionES, QuestionDO.class));
|
||||
} catch (Exception e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
if (!questionRes) {
|
||||
throw new BizException("试题导入失败");
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
public void editSellFlag(ExamPaperUpdateCmd examPaperUpdateCmd) {
|
||||
ExamPaperDO examPaperDO = examPaperRepository.getById(examPaperUpdateCmd.getId());
|
||||
//企业端禁用:所属单位为股份的不能禁用
|
||||
//股份端禁用:所属单位为各企业的不能禁用
|
||||
Boolean b = corpInfoRepository.checkSupper(examPaperDO.getCorpinfoId());
|
||||
if (corpInfoRepository.isSupper() && !b) {
|
||||
throw new BizException("企业端数据不能修改状态");
|
||||
}
|
||||
if (!corpInfoRepository.isSupper() && b) {
|
||||
throw new BizException("股份端数据不能修改状态");
|
||||
}
|
||||
//TODO 是否被使用
|
||||
|
||||
|
||||
ExamPaperE examPaperE = new ExamPaperE();
|
||||
BeanUtils.copyProperties(examPaperUpdateCmd, examPaperE);
|
||||
boolean res = examPaperGateway.update(examPaperE);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1,12 +1,13 @@
|
|||
package com.zcloud.edu.command;
|
||||
package com.zcloud.edu.command.resource;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.zcloud.edu.domain.gateway.QuestionGateway;
|
||||
import com.zcloud.edu.domain.model.QuestionE;
|
||||
import com.zcloud.edu.dto.QuestionAddCmd;
|
||||
import com.zcloud.edu.domain.enums.CoursewareTypeEnum;
|
||||
import com.zcloud.edu.domain.gateway.resource.QuestionGateway;
|
||||
import com.zcloud.edu.domain.model.resource.QuestionE;
|
||||
import com.zcloud.edu.dto.resource.QuestionAddCmd;
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import com.zcloud.edu.persistence.dataobject.QuestionDO;
|
||||
import com.zcloud.edu.persistence.repository.QuestionRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.QuestionRepository;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
|
@ -49,8 +50,8 @@ public class QuestionAddExe {
|
|||
@Transactional(rollbackFor = Exception.class)
|
||||
public void importQuestionVideoTable(MultipartFile file, String videoCoursewareId){
|
||||
QuestionE questionE = new QuestionE();
|
||||
Integer maxQuestionNumber = questionRepository.getMaxQuestionNumber(videoCoursewareId);
|
||||
List<QuestionE> questionES = questionE.parseImportTemplateData(file, videoCoursewareId, maxQuestionNumber);
|
||||
// Integer maxQuestionNumber = questionRepository.getMaxQuestionNumber(videoCoursewareId);
|
||||
List<QuestionE> questionES = questionE.parseImportTemplateData(file, videoCoursewareId,null, CoursewareTypeEnum.VIDEO_COURSEWARE.getCode());
|
||||
|
||||
// 批量插入
|
||||
boolean res = false;
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
package com.zcloud.edu.command;
|
||||
package com.zcloud.edu.command.resource;
|
||||
|
||||
import com.zcloud.edu.domain.gateway.QuestionGateway;
|
||||
import com.zcloud.edu.domain.gateway.resource.QuestionGateway;
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
|
@ -29,6 +29,7 @@ public class QuestionRemoveExe {
|
|||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean execute(Long[] ids) {
|
||||
|
||||
boolean res = questionGateway.deletedQuestionByIds(ids);
|
||||
if (!res) {
|
||||
throw new BizException("删除失败");
|
||||
|
|
@ -0,0 +1,80 @@
|
|||
package com.zcloud.edu.command.resource;
|
||||
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import com.zcloud.edu.domain.enums.CoursewareTypeEnum;
|
||||
import com.zcloud.edu.domain.gateway.resource.QuestionGateway;
|
||||
import com.zcloud.edu.domain.model.resource.QuestionE;
|
||||
import com.zcloud.edu.dto.resource.QuestionUpdateCmd;
|
||||
import com.zcloud.edu.dto.clientobject.resource.ExamPaperCO;
|
||||
import com.zcloud.edu.persistence.dataobject.ExamPaperDO;
|
||||
import com.zcloud.edu.persistence.dataobject.QuestionDO;
|
||||
import com.zcloud.edu.persistence.repository.resource.ExamPaperRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.QuestionRepository;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
|
||||
/**
|
||||
* web-app
|
||||
*
|
||||
* @Author SondonYong
|
||||
* @Date 2025-11-27 14:06:11
|
||||
*/
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
public class QuestionUpdateExe {
|
||||
private final QuestionGateway questionGateway;
|
||||
private final QuestionRepository questionRepository;
|
||||
private final ExamPaperRepository examPaperRepository;
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void execute(QuestionUpdateCmd cmd) {
|
||||
QuestionDO questionDO = questionRepository.getById(cmd.getId());
|
||||
if (questionDO == null) {
|
||||
throw new BizException("试题不存在");
|
||||
}
|
||||
QuestionE questionE = new QuestionE();
|
||||
BeanUtils.copyProperties(cmd, questionE);
|
||||
questionE.checkQuestion(questionE);
|
||||
boolean res = questionGateway.update(questionE);
|
||||
if (!res) {
|
||||
throw new BizException("修改失败");
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public ExamPaperCO editPaper(QuestionUpdateCmd cmd) {
|
||||
QuestionDO questionDO = questionRepository.getById(cmd.getId());
|
||||
if (questionDO == null) {
|
||||
throw new BizException("试题不存在");
|
||||
}
|
||||
QuestionE questionE = new QuestionE();
|
||||
BeanUtils.copyProperties(cmd, questionE);
|
||||
questionE.checkQuestion(questionE);
|
||||
boolean res = questionGateway.update(questionE);
|
||||
if (!res) {
|
||||
throw new BizException("修改失败");
|
||||
}
|
||||
ExamPaperCO examPaperCO = new ExamPaperCO();
|
||||
//如果是试卷习题,需要修改试卷对应的总分
|
||||
if(CoursewareTypeEnum.EXAM_QUESTION.getCode().equals(questionDO.getCoursewareType())){
|
||||
//修改试卷对应总分
|
||||
BigDecimal bigDecimal = cmd.getScore().subtract(questionDO.getScore()).setScale(2, BigDecimal.ROUND_HALF_UP);
|
||||
String examPaperId = questionDO.getExamPaperId();
|
||||
ExamPaperDO examPaperDO = examPaperRepository.getInfoByUUid(examPaperId);
|
||||
if(examPaperDO == null){
|
||||
throw new BizException("试卷不存在");
|
||||
}
|
||||
BigDecimal add = examPaperDO.getExamScore().add(bigDecimal);
|
||||
examPaperDO.setExamScore(add);
|
||||
examPaperRepository.updateById(examPaperDO);
|
||||
BeanUtils.copyProperties(examPaperDO, examPaperCO);
|
||||
}
|
||||
return examPaperCO;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1,16 +1,15 @@
|
|||
package com.zcloud.edu.command;
|
||||
package com.zcloud.edu.command.resource;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import com.zcloud.edu.domain.gateway.TeacherGateway;
|
||||
import com.zcloud.edu.domain.model.TeacherE;
|
||||
import com.zcloud.edu.domain.model.UserAddE;
|
||||
import com.zcloud.edu.dto.TeacherAddCmd;
|
||||
import com.zcloud.edu.domain.gateway.resource.TeacherGateway;
|
||||
import com.zcloud.edu.domain.model.resource.TeacherE;
|
||||
import com.zcloud.edu.domain.model.resource.UserAddE;
|
||||
import com.zcloud.edu.dto.resource.TeacherAddCmd;
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import com.zcloud.edu.persistence.dataobject.TeacherDO;
|
||||
import com.zcloud.edu.persistence.repository.TeacherRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.TeacherRepository;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
|
|
@ -1,14 +1,19 @@
|
|||
package com.zcloud.edu.command;
|
||||
package com.zcloud.edu.command.resource;
|
||||
|
||||
import com.zcloud.edu.domain.gateway.TeacherCertificateGateway;
|
||||
import com.zcloud.edu.domain.model.TeacherCertificateE;
|
||||
import com.zcloud.edu.dto.TeacherCertificateAddCmd;
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import com.zcloud.edu.domain.gateway.resource.TeacherCertificateGateway;
|
||||
import com.zcloud.edu.domain.model.resource.TeacherCertificateE;
|
||||
import com.zcloud.edu.dto.resource.TeacherCertificateAddCmd;
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import com.zcloud.edu.persistence.dataobject.TeacherCertificateDO;
|
||||
import com.zcloud.edu.persistence.repository.resource.TeacherCertificateRepository;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* web-app
|
||||
|
|
@ -20,11 +25,18 @@ import org.springframework.transaction.annotation.Transactional;
|
|||
@AllArgsConstructor
|
||||
public class TeacherCertificateAddExe {
|
||||
private final TeacherCertificateGateway teacherCertificateGateway;
|
||||
private final TeacherCertificateRepository teacherCertificateRepository;
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean execute(TeacherCertificateAddCmd cmd) {
|
||||
TeacherCertificateE teacherCertificateE = new TeacherCertificateE();
|
||||
BeanUtils.copyProperties(cmd, teacherCertificateE);
|
||||
//证书编号全局验证重复
|
||||
|
||||
List<TeacherCertificateDO> list = teacherCertificateRepository.getListByNumber(cmd.getVocationalCertificateNumber());
|
||||
if(CollUtil.isNotEmpty( list)){
|
||||
throw new BizException("该职业证书编号已存在");
|
||||
}
|
||||
boolean res = false;
|
||||
try {
|
||||
res = teacherCertificateGateway.add(teacherCertificateE);
|
||||
|
|
@ -1,6 +1,6 @@
|
|||
package com.zcloud.edu.command;
|
||||
package com.zcloud.edu.command.resource;
|
||||
|
||||
import com.zcloud.edu.domain.gateway.TeacherCertificateGateway;
|
||||
import com.zcloud.edu.domain.gateway.resource.TeacherCertificateGateway;
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
|
@ -1,9 +1,9 @@
|
|||
package com.zcloud.edu.command;
|
||||
package com.zcloud.edu.command.resource;
|
||||
|
||||
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 com.zcloud.edu.domain.gateway.resource.TeacherCertificateGateway;
|
||||
import com.zcloud.edu.domain.model.resource.TeacherCertificateE;
|
||||
import com.zcloud.edu.dto.resource.TeacherCertificateUpdateCmd;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
|
@ -1,15 +1,15 @@
|
|||
package com.zcloud.edu.command;
|
||||
package com.zcloud.edu.command.resource;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import com.alibaba.cola.dto.SingleResponse;
|
||||
import com.zcloud.edu.domain.gateway.TeacherGateway;
|
||||
import com.zcloud.edu.domain.gateway.resource.TeacherGateway;
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import com.zcloud.edu.domain.model.TeacherE;
|
||||
import com.zcloud.edu.domain.model.resource.TeacherE;
|
||||
import com.zcloud.edu.persistence.dataobject.TeacherDO;
|
||||
import com.zcloud.edu.persistence.dataobject.VideoCoursewareDO;
|
||||
import com.zcloud.edu.persistence.repository.TeacherCertificateRepository;
|
||||
import com.zcloud.edu.persistence.repository.TeacherRepository;
|
||||
import com.zcloud.edu.persistence.repository.VideoCoursewareRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.TeacherCertificateRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.TeacherRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.VideoCoursewareRepository;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
|
@ -1,10 +1,10 @@
|
|||
package com.zcloud.edu.command;
|
||||
package com.zcloud.edu.command.resource;
|
||||
|
||||
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 com.zcloud.edu.dto.TeacherUpdateStateCmd;
|
||||
import com.zcloud.edu.domain.gateway.resource.TeacherGateway;
|
||||
import com.zcloud.edu.domain.model.resource.TeacherE;
|
||||
import com.zcloud.edu.dto.resource.TeacherUpdateCmd;
|
||||
import com.zcloud.edu.dto.resource.TeacherUpdateStateCmd;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
|
@ -1,11 +1,11 @@
|
|||
package com.zcloud.edu.command;
|
||||
package com.zcloud.edu.command.resource;
|
||||
|
||||
import com.zcloud.edu.domain.gateway.TrainingTypeGateway;
|
||||
import com.zcloud.edu.domain.model.TrainingTypeE;
|
||||
import com.zcloud.edu.dto.TrainingTypeAddCmd;
|
||||
import com.zcloud.edu.domain.gateway.resource.TrainingTypeGateway;
|
||||
import com.zcloud.edu.domain.model.resource.TrainingTypeE;
|
||||
import com.zcloud.edu.dto.resource.TrainingTypeAddCmd;
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import com.zcloud.edu.persistence.dataobject.TrainingTypeDO;
|
||||
import com.zcloud.edu.persistence.repository.TrainingTypeRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.TrainingTypeRepository;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
|
@ -0,0 +1,62 @@
|
|||
package com.zcloud.edu.command.resource;
|
||||
|
||||
import com.zcloud.edu.domain.gateway.resource.TrainingTypeGateway;
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import com.zcloud.edu.persistence.dataobject.TrainingTypeDO;
|
||||
import com.zcloud.edu.persistence.repository.resource.CurriculumRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.TrainingTypeRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.VideoCoursewareRepository;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* web-app
|
||||
* @Author SondonYong
|
||||
* @Date 2025-11-26 15:04:07
|
||||
*/
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
public class TrainingTypeRemoveExe {
|
||||
private final TrainingTypeGateway trainingTypeGateway;
|
||||
private final VideoCoursewareRepository videoCoursewareRepository;
|
||||
private final TrainingTypeRepository trainingTypeRepository;
|
||||
private final CurriculumRepository curriculumRepository;
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean execute(Long id) {
|
||||
// todo 校验是否有其他业务调用
|
||||
TrainingTypeDO trainingTypeDO = trainingTypeRepository.getById(id);
|
||||
if(trainingTypeDO==null){
|
||||
return true;
|
||||
}
|
||||
Long count = videoCoursewareRepository.getListByTraingId(trainingTypeDO.getTrainingTypeId());
|
||||
if(count>0){
|
||||
throw new BizException("请先删除该培训类型下所有课件");
|
||||
}
|
||||
Long countCurriculu =curriculumRepository.getListByTraingId(trainingTypeDO.getTrainingTypeId());
|
||||
if(countCurriculu>0){
|
||||
throw new BizException("请先删除该培训类型下所有课程");
|
||||
}
|
||||
boolean res = trainingTypeGateway.deletedTrainingTypeById(id);
|
||||
if(!res){
|
||||
throw new BizException("删除失败");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean execute(Long[] ids) {
|
||||
// todo 校验是否有其他业务调用
|
||||
|
||||
boolean res = trainingTypeGateway.deletedTrainingTypeByIds(ids);
|
||||
if(!res){
|
||||
throw new BizException("删除失败");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1,11 +1,11 @@
|
|||
package com.zcloud.edu.command;
|
||||
package com.zcloud.edu.command.resource;
|
||||
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import com.zcloud.edu.domain.gateway.TrainingTypeGateway;
|
||||
import com.zcloud.edu.domain.model.TrainingTypeE;
|
||||
import com.zcloud.edu.dto.TrainingTypeUpdateCmd;
|
||||
import com.zcloud.edu.domain.gateway.resource.TrainingTypeGateway;
|
||||
import com.zcloud.edu.domain.model.resource.TrainingTypeE;
|
||||
import com.zcloud.edu.dto.resource.TrainingTypeUpdateCmd;
|
||||
import com.zcloud.edu.persistence.dataobject.TrainingTypeDO;
|
||||
import com.zcloud.edu.persistence.repository.TrainingTypeRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.TrainingTypeRepository;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
|
@ -1,8 +1,8 @@
|
|||
package com.zcloud.edu.command;
|
||||
package com.zcloud.edu.command.resource;
|
||||
|
||||
import com.zcloud.edu.domain.gateway.VideoCoursewareGateway;
|
||||
import com.zcloud.edu.domain.model.VideoCoursewareE;
|
||||
import com.zcloud.edu.dto.VideoCoursewareAddCmd;
|
||||
import com.zcloud.edu.domain.gateway.resource.VideoCoursewareGateway;
|
||||
import com.zcloud.edu.domain.model.resource.VideoCoursewareE;
|
||||
import com.zcloud.edu.dto.resource.VideoCoursewareAddCmd;
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
|
|
@ -21,8 +21,10 @@ import org.springframework.transaction.annotation.Transactional;
|
|||
public class VideoCoursewareAddExe {
|
||||
private final VideoCoursewareGateway videoCoursewareGateway;
|
||||
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean execute(VideoCoursewareAddCmd cmd) {
|
||||
|
||||
VideoCoursewareE videoCoursewareE = new VideoCoursewareE();
|
||||
BeanUtils.copyProperties(cmd, videoCoursewareE);
|
||||
boolean res = false;
|
||||
|
|
@ -0,0 +1,78 @@
|
|||
package com.zcloud.edu.command.resource;
|
||||
|
||||
import com.zcloud.edu.domain.gateway.resource.VideoCoursewareGateway;
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import com.zcloud.edu.persistence.dataobject.VideoCoursewareDO;
|
||||
import com.zcloud.edu.persistence.repository.resource.CorpInfoRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.CurriculumChapterRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.VideoCoursewareRepository;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
|
||||
/**
|
||||
* web-app
|
||||
*
|
||||
* @Author SondonYong
|
||||
* @Date 2025-11-27 14:05:32
|
||||
*/
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
public class VideoCoursewareRemoveExe {
|
||||
private final VideoCoursewareGateway videoCoursewareGateway;
|
||||
private final VideoCoursewareRepository videoCoursewareRepository;
|
||||
private final CorpInfoRepository corpInfoRepository;
|
||||
private final CurriculumChapterRepository curriculumChapterRepository;
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean execute(Long id) {
|
||||
VideoCoursewareDO videoCoursewareDOInfo = videoCoursewareRepository.getById(id);
|
||||
//企业端禁用:所属单位为股份的不能禁用
|
||||
//股份端禁用:所属单位为各企业的不能禁用
|
||||
Boolean b = corpInfoRepository.checkSupper(videoCoursewareDOInfo.getCorpinfoId());
|
||||
if(corpInfoRepository.isSupper() && !b){
|
||||
throw new BizException("企业端数据不能删除");
|
||||
}
|
||||
if(!corpInfoRepository.isSupper() && b){
|
||||
throw new BizException("股份端数据不能删除");
|
||||
}
|
||||
// 被使用的课件不能删除
|
||||
Long count = curriculumChapterRepository.getListByVideoCoursewareId(videoCoursewareDOInfo.getVideoCoursewareId());
|
||||
if(count>0){
|
||||
throw new BizException("被使用的课件不能删除");
|
||||
}
|
||||
boolean res = videoCoursewareGateway.deletedVideoCoursewareById(id);
|
||||
if (!res) {
|
||||
throw new BizException("删除失败");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public boolean execute(Long[] ids) {
|
||||
for (Long id : ids) {
|
||||
VideoCoursewareDO videoCoursewareDOInfo = videoCoursewareRepository.getById(id);
|
||||
//企业端禁用:所属单位为股份的不能禁用
|
||||
//股份端禁用:所属单位为各企业的不能禁用
|
||||
Boolean b = corpInfoRepository.checkSupper(videoCoursewareDOInfo.getCorpinfoId());
|
||||
if(corpInfoRepository.isSupper() && !b){
|
||||
throw new BizException("企业端数据不能删除");
|
||||
}
|
||||
if(!corpInfoRepository.isSupper() && b){
|
||||
throw new BizException("股份端数据不能删除");
|
||||
}
|
||||
// 被使用的课件不能删除
|
||||
Long count = curriculumChapterRepository.getListByVideoCoursewareId(videoCoursewareDOInfo.getVideoCoursewareId());
|
||||
if(count>0){
|
||||
throw new BizException("被使用的课件不能删除");
|
||||
}
|
||||
}
|
||||
boolean res = videoCoursewareGateway.deletedVideoCoursewareByIds(ids);
|
||||
if (!res) {
|
||||
throw new BizException("删除失败");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,93 @@
|
|||
package com.zcloud.edu.command.resource;
|
||||
|
||||
import com.alibaba.cola.exception.BizException;
|
||||
import com.zcloud.edu.domain.enums.VideoCoursewareState;
|
||||
import com.zcloud.edu.domain.gateway.resource.VideoCoursewareGateway;
|
||||
import com.zcloud.edu.domain.model.resource.VideoCoursewareE;
|
||||
import com.zcloud.edu.dto.resource.VideoCoursewareUpdateCmd;
|
||||
import com.zcloud.edu.dto.resource.VideoCoursewareUpdateStateCmd;
|
||||
import com.zcloud.edu.persistence.dataobject.VideoCoursewareDO;
|
||||
import com.zcloud.edu.persistence.repository.resource.CorpInfoRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.CurriculumChapterRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.QuestionRepository;
|
||||
import com.zcloud.edu.persistence.repository.resource.VideoCoursewareRepository;
|
||||
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-27 14:05:33
|
||||
*/
|
||||
@Component
|
||||
@AllArgsConstructor
|
||||
public class VideoCoursewareUpdateExe {
|
||||
private final VideoCoursewareGateway videoCoursewareGateway;
|
||||
private final QuestionRepository questionRepository;
|
||||
private final VideoCoursewareRepository videoCoursewareRepository;
|
||||
private final CorpInfoRepository corpInfoRepository;
|
||||
private final CurriculumChapterRepository curriculumChapterRepository;
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void execute(VideoCoursewareUpdateCmd cmd) {
|
||||
VideoCoursewareDO videoCoursewareDOInfo = videoCoursewareRepository.getById(cmd.getId());
|
||||
//企业端禁用:所属单位为股份的不能禁用
|
||||
//股份端禁用:所属单位为各企业的不能禁用
|
||||
Boolean b = corpInfoRepository.checkSupper(videoCoursewareDOInfo.getCorpinfoId());
|
||||
if(corpInfoRepository.isSupper() && !b){
|
||||
throw new BizException("企业端数据不能编辑");
|
||||
}
|
||||
if(!corpInfoRepository.isSupper() && b){
|
||||
throw new BizException("股份端数据不能编辑");
|
||||
}
|
||||
// 课件是否被使用
|
||||
Long count = curriculumChapterRepository.getListByVideoCoursewareId(videoCoursewareDOInfo.getVideoCoursewareId());
|
||||
if(count>0){
|
||||
throw new BizException("被使用的课件不能修改");
|
||||
}
|
||||
|
||||
VideoCoursewareE videoCoursewareE = new VideoCoursewareE();
|
||||
BeanUtils.copyProperties(cmd, videoCoursewareE);
|
||||
boolean res = videoCoursewareGateway.update(videoCoursewareE);
|
||||
if (!res) {
|
||||
throw new BizException("修改失败");
|
||||
}
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void execute(VideoCoursewareUpdateStateCmd cmd) {
|
||||
|
||||
VideoCoursewareDO videoCoursewareDOInfo = videoCoursewareRepository.getById(cmd.getId());
|
||||
if(videoCoursewareDOInfo==null){
|
||||
throw new BizException("课件信息不存在");
|
||||
}
|
||||
if(VideoCoursewareState.UNENABLED.getCode().equals(cmd.getState())){
|
||||
//如果是启用,判断习题数量小于5
|
||||
Long count = questionRepository.getCountByVideoCourseware(videoCoursewareDOInfo.getVideoCoursewareId());
|
||||
if(count<5){
|
||||
throw new BizException("请添加5个以上习题");
|
||||
}
|
||||
}else{
|
||||
//企业端禁用:所属单位为股份的不能禁用
|
||||
//股份端禁用:所属单位为各企业的不能禁用
|
||||
Boolean b = corpInfoRepository.checkSupper(videoCoursewareDOInfo.getCorpinfoId());
|
||||
if(corpInfoRepository.isSupper() && !b){
|
||||
throw new BizException("企业端数据不能禁用");
|
||||
}
|
||||
if(!corpInfoRepository.isSupper() && b){
|
||||
throw new BizException("股份端数据不能禁用");
|
||||
}
|
||||
}
|
||||
|
||||
VideoCoursewareE videoCoursewareE = new VideoCoursewareE();
|
||||
BeanUtils.copyProperties(cmd, videoCoursewareE);
|
||||
boolean res = videoCoursewareGateway.update(videoCoursewareE);
|
||||
if (!res) {
|
||||
throw new BizException("修改失败");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,59 @@
|
|||
package com.zcloud.edu.service.resource;
|
||||
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.alibaba.cola.dto.SingleResponse;
|
||||
import com.zcloud.edu.api.resource.CurriculumChapterServiceI;
|
||||
import com.zcloud.edu.command.resource.CurriculumChapterAddExe;
|
||||
import com.zcloud.edu.command.resource.CurriculumChapterRemoveExe;
|
||||
import com.zcloud.edu.command.resource.CurriculumChapterUpdateExe;
|
||||
import com.zcloud.edu.command.query.resource.CurriculumChapterQueryExe;
|
||||
import com.zcloud.edu.dto.resource.CurriculumChapterAddCmd;
|
||||
import com.zcloud.edu.dto.resource.CurriculumChapterPageQry;
|
||||
import com.zcloud.edu.dto.resource.CurriculumChapterUpdateCmd;
|
||||
import com.zcloud.edu.dto.clientobject.resource.CurriculumChapterCO;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* web-app
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 13:50:13
|
||||
*/
|
||||
@Service
|
||||
@AllArgsConstructor
|
||||
public class CurriculumChapterServiceImpl implements CurriculumChapterServiceI {
|
||||
private final CurriculumChapterAddExe curriculumChapterAddExe;
|
||||
private final CurriculumChapterUpdateExe curriculumChapterUpdateExe;
|
||||
private final CurriculumChapterRemoveExe curriculumChapterRemoveExe;
|
||||
private final CurriculumChapterQueryExe curriculumChapterQueryExe;
|
||||
|
||||
@Override
|
||||
public PageResponse<CurriculumChapterCO> listPage(CurriculumChapterPageQry qry) {
|
||||
|
||||
return curriculumChapterQueryExe.execute(qry);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SingleResponse add(CurriculumChapterAddCmd cmd) {
|
||||
|
||||
curriculumChapterAddExe.execute(cmd);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void edit(CurriculumChapterUpdateCmd curriculumChapterUpdateCmd) {
|
||||
curriculumChapterUpdateExe.execute(curriculumChapterUpdateCmd);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void remove(Long id) {
|
||||
curriculumChapterRemoveExe.execute(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void removeBatch(Long[] ids) {
|
||||
curriculumChapterRemoveExe.execute(ids);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,70 @@
|
|||
package com.zcloud.edu.service.resource;
|
||||
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.alibaba.cola.dto.SingleResponse;
|
||||
import com.zcloud.edu.api.resource.CurriculumServiceI;
|
||||
import com.zcloud.edu.command.resource.CurriculumAddExe;
|
||||
import com.zcloud.edu.command.resource.CurriculumRemoveExe;
|
||||
import com.zcloud.edu.command.resource.CurriculumUpdateExe;
|
||||
import com.zcloud.edu.command.query.resource.CurriculumQueryExe;
|
||||
import com.zcloud.edu.dto.resource.CurriculumAddCmd;
|
||||
import com.zcloud.edu.dto.resource.CurriculumPageQry;
|
||||
import com.zcloud.edu.dto.resource.CurriculumUpdateCmd;
|
||||
import com.zcloud.edu.dto.resource.CurriculumUpdateStateCmd;
|
||||
import com.zcloud.edu.dto.clientobject.resource.CurriculumCO;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* web-app
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 13:45:39
|
||||
*/
|
||||
@Service
|
||||
@AllArgsConstructor
|
||||
public class CurriculumServiceImpl implements CurriculumServiceI {
|
||||
private final CurriculumAddExe curriculumAddExe;
|
||||
private final CurriculumUpdateExe curriculumUpdateExe;
|
||||
private final CurriculumRemoveExe curriculumRemoveExe;
|
||||
private final CurriculumQueryExe curriculumQueryExe;
|
||||
|
||||
@Override
|
||||
public PageResponse<CurriculumCO> listPage(CurriculumPageQry qry) {
|
||||
|
||||
return curriculumQueryExe.execute(qry);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SingleResponse add(CurriculumAddCmd cmd) {
|
||||
|
||||
curriculumAddExe.execute(cmd);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void edit(CurriculumUpdateCmd curriculumUpdateCmd) {
|
||||
curriculumUpdateExe.execute(curriculumUpdateCmd);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void remove(Long id) {
|
||||
curriculumRemoveExe.execute(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void removeBatch(Long[] ids) {
|
||||
curriculumRemoveExe.execute(ids);
|
||||
}
|
||||
|
||||
@Override
|
||||
public CurriculumCO getInfoById(Long id) {
|
||||
return curriculumQueryExe.getInfoById(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void editState(CurriculumUpdateStateCmd cmd) {
|
||||
curriculumUpdateExe.editState(cmd);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,71 @@
|
|||
package com.zcloud.edu.service.resource;
|
||||
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.alibaba.cola.dto.SingleResponse;
|
||||
import com.zcloud.edu.api.resource.ExamPaperServiceI;
|
||||
import com.zcloud.edu.command.resource.ExamPaperAddExe;
|
||||
import com.zcloud.edu.command.resource.ExamPaperRemoveExe;
|
||||
import com.zcloud.edu.command.resource.ExamPaperUpdateExe;
|
||||
import com.zcloud.edu.command.query.resource.ExamPaperQueryExe;
|
||||
import com.zcloud.edu.dto.resource.ExamPaperAddCmd;
|
||||
import com.zcloud.edu.dto.resource.ExamPaperPageQry;
|
||||
import com.zcloud.edu.dto.resource.ExamPaperRemoveCmd;
|
||||
import com.zcloud.edu.dto.resource.ExamPaperUpdateCmd;
|
||||
import com.zcloud.edu.dto.clientobject.resource.ExamPaperCO;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
/**
|
||||
* web-app
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 17:04:43
|
||||
*/
|
||||
@Service
|
||||
@AllArgsConstructor
|
||||
public class ExamPaperServiceImpl implements ExamPaperServiceI {
|
||||
private final ExamPaperAddExe examPaperAddExe;
|
||||
private final ExamPaperUpdateExe examPaperUpdateExe;
|
||||
private final ExamPaperRemoveExe examPaperRemoveExe;
|
||||
private final ExamPaperQueryExe examPaperQueryExe;
|
||||
|
||||
@Override
|
||||
public PageResponse<ExamPaperCO> listPage(ExamPaperPageQry qry) {
|
||||
|
||||
return examPaperQueryExe.execute(qry);
|
||||
}
|
||||
|
||||
@Override
|
||||
public SingleResponse add(ExamPaperAddCmd cmd) {
|
||||
|
||||
examPaperAddExe.execute(cmd);
|
||||
return SingleResponse.buildSuccess();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void edit(MultipartFile file,ExamPaperUpdateCmd examPaperUpdateCmd) {
|
||||
examPaperUpdateExe.execute(file,examPaperUpdateCmd);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void remove(Long id) {
|
||||
examPaperRemoveExe.execute(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void removeBatch(ExamPaperRemoveCmd examPaperRemoveCmd) {
|
||||
examPaperRemoveExe.execute(examPaperRemoveCmd);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ExamPaperCO getInfoById(Long id) {
|
||||
return examPaperQueryExe.getInfoById(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void editSellFlag(ExamPaperUpdateCmd examPaperUpdateCmd) {
|
||||
examPaperUpdateExe.editSellFlag(examPaperUpdateCmd);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1,16 +1,17 @@
|
|||
package com.zcloud.edu.service;
|
||||
package com.zcloud.edu.service.resource;
|
||||
|
||||
import com.alibaba.cola.dto.MultiResponse;
|
||||
import com.zcloud.edu.api.QuestionServiceI;
|
||||
import com.zcloud.edu.command.QuestionAddExe;
|
||||
import com.zcloud.edu.command.QuestionRemoveExe;
|
||||
import com.zcloud.edu.command.QuestionUpdateExe;
|
||||
import com.zcloud.edu.command.query.QuestionQueryExe;
|
||||
import com.zcloud.edu.dto.QuestionAddCmd;
|
||||
import com.zcloud.edu.dto.QuestionPageQry;
|
||||
import com.zcloud.edu.dto.QuestionListQry;
|
||||
import com.zcloud.edu.dto.QuestionUpdateCmd;
|
||||
import com.zcloud.edu.dto.clientobject.QuestionCO;
|
||||
import com.zcloud.edu.api.resource.QuestionServiceI;
|
||||
import com.zcloud.edu.command.resource.QuestionAddExe;
|
||||
import com.zcloud.edu.command.resource.QuestionRemoveExe;
|
||||
import com.zcloud.edu.command.resource.QuestionUpdateExe;
|
||||
import com.zcloud.edu.command.query.resource.QuestionQueryExe;
|
||||
import com.zcloud.edu.dto.resource.QuestionAddCmd;
|
||||
import com.zcloud.edu.dto.resource.QuestionPageQry;
|
||||
import com.zcloud.edu.dto.resource.QuestionListQry;
|
||||
import com.zcloud.edu.dto.resource.QuestionUpdateCmd;
|
||||
import com.zcloud.edu.dto.clientobject.resource.ExamPaperCO;
|
||||
import com.zcloud.edu.dto.clientobject.resource.QuestionCO;
|
||||
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.alibaba.cola.dto.SingleResponse;
|
||||
|
|
@ -72,5 +73,10 @@ public class QuestionServiceImpl implements QuestionServiceI {
|
|||
public void importQuestionVideoTable(MultipartFile file, String videoCoursewareId) {
|
||||
questionAddExe.importQuestionVideoTable(file, videoCoursewareId);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ExamPaperCO editPaper(QuestionUpdateCmd cmd) {
|
||||
return questionUpdateExe.editPaper(cmd);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1,16 +1,16 @@
|
|||
package com.zcloud.edu.service;
|
||||
package com.zcloud.edu.service.resource;
|
||||
|
||||
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.zcloud.edu.api.resource.TeacherCertificateServiceI;
|
||||
import com.zcloud.edu.command.resource.TeacherCertificateAddExe;
|
||||
import com.zcloud.edu.command.resource.TeacherCertificateRemoveExe;
|
||||
import com.zcloud.edu.command.resource.TeacherCertificateUpdateExe;
|
||||
import com.zcloud.edu.command.query.resource.TeacherCertificateQueryExe;
|
||||
import com.zcloud.edu.dto.resource.TeacherCertificateAddCmd;
|
||||
import com.zcloud.edu.dto.resource.TeacherCertificatePageQry;
|
||||
import com.zcloud.edu.dto.resource.TeacherCertificateListQry;
|
||||
import com.zcloud.edu.dto.resource.TeacherCertificateUpdateCmd;
|
||||
import com.zcloud.edu.dto.clientobject.resource.TeacherCertificateCO;
|
||||
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.alibaba.cola.dto.SingleResponse;
|
||||
|
|
@ -1,16 +1,16 @@
|
|||
package com.zcloud.edu.service;
|
||||
package com.zcloud.edu.service.resource;
|
||||
|
||||
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.*;
|
||||
import com.zcloud.edu.api.resource.TeacherServiceI;
|
||||
import com.zcloud.edu.command.resource.TeacherAddExe;
|
||||
import com.zcloud.edu.command.resource.TeacherRemoveExe;
|
||||
import com.zcloud.edu.command.resource.TeacherUpdateExe;
|
||||
import com.zcloud.edu.command.query.resource.TeacherQueryExe;
|
||||
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.alibaba.cola.dto.SingleResponse;
|
||||
import com.zcloud.edu.dto.clientobject.TeacherCO;
|
||||
import com.zcloud.edu.dto.clientobject.resource.TeacherCO;
|
||||
import com.zcloud.edu.dto.resource.*;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
|
|
@ -40,7 +40,7 @@ public class TeacherServiceImpl implements TeacherServiceI {
|
|||
|
||||
@Override
|
||||
public SingleResponse<TeacherCO> getInfoById(Long id) {
|
||||
return teacherQueryExe.execute(id);
|
||||
return teacherQueryExe.getInfoById(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -1,19 +1,19 @@
|
|||
package com.zcloud.edu.service;
|
||||
package com.zcloud.edu.service.resource;
|
||||
|
||||
import com.alibaba.cola.dto.MultiResponse;
|
||||
import com.zcloud.edu.api.TrainingTypeServiceI;
|
||||
import com.zcloud.edu.command.TrainingTypeAddExe;
|
||||
import com.zcloud.edu.command.TrainingTypeRemoveExe;
|
||||
import com.zcloud.edu.command.TrainingTypeUpdateExe;
|
||||
import com.zcloud.edu.command.query.TrainingTypeQueryExe;
|
||||
import com.zcloud.edu.dto.TrainingTypeAddCmd;
|
||||
import com.zcloud.edu.dto.TrainingTypeListQry;
|
||||
import com.zcloud.edu.dto.TrainingTypePageQry;
|
||||
import com.zcloud.edu.dto.TrainingTypeUpdateCmd;
|
||||
import com.zcloud.edu.api.resource.TrainingTypeServiceI;
|
||||
import com.zcloud.edu.command.resource.TrainingTypeAddExe;
|
||||
import com.zcloud.edu.command.resource.TrainingTypeRemoveExe;
|
||||
import com.zcloud.edu.command.resource.TrainingTypeUpdateExe;
|
||||
import com.zcloud.edu.command.query.resource.TrainingTypeQueryExe;
|
||||
import com.zcloud.edu.dto.resource.TrainingTypeAddCmd;
|
||||
import com.zcloud.edu.dto.resource.TrainingTypeListQry;
|
||||
import com.zcloud.edu.dto.resource.TrainingTypePageQry;
|
||||
import com.zcloud.edu.dto.resource.TrainingTypeUpdateCmd;
|
||||
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.alibaba.cola.dto.SingleResponse;
|
||||
import com.zcloud.edu.dto.clientobject.TrainingTypeCO;
|
||||
import com.zcloud.edu.dto.clientobject.resource.TrainingTypeCO;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
|
|
@ -1,16 +1,16 @@
|
|||
package com.zcloud.edu.service;
|
||||
package com.zcloud.edu.service.resource;
|
||||
|
||||
import com.alibaba.cola.dto.MultiResponse;
|
||||
import com.zcloud.edu.api.VideoCoursewareServiceI;
|
||||
import com.zcloud.edu.command.VideoCoursewareAddExe;
|
||||
import com.zcloud.edu.command.VideoCoursewareRemoveExe;
|
||||
import com.zcloud.edu.command.VideoCoursewareUpdateExe;
|
||||
import com.zcloud.edu.command.query.VideoCoursewareQueryExe;
|
||||
import com.zcloud.edu.dto.*;
|
||||
import com.zcloud.edu.dto.clientobject.VideoCoursewareCO;
|
||||
import com.zcloud.edu.api.resource.VideoCoursewareServiceI;
|
||||
import com.zcloud.edu.command.resource.VideoCoursewareAddExe;
|
||||
import com.zcloud.edu.command.resource.VideoCoursewareRemoveExe;
|
||||
import com.zcloud.edu.command.resource.VideoCoursewareUpdateExe;
|
||||
import com.zcloud.edu.command.query.resource.VideoCoursewareQueryExe;
|
||||
import com.zcloud.edu.dto.clientobject.resource.VideoCoursewareCO;
|
||||
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.alibaba.cola.dto.SingleResponse;
|
||||
import com.zcloud.edu.dto.resource.*;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
|
|
@ -40,7 +40,7 @@ public class VideoCoursewareServiceImpl implements VideoCoursewareServiceI {
|
|||
|
||||
@Override
|
||||
public SingleResponse<VideoCoursewareCO> getInfoById(Long id) {
|
||||
return videoCoursewareQueryExe.execute(id);
|
||||
return videoCoursewareQueryExe.getInfoById(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
@ -0,0 +1,27 @@
|
|||
package com.zcloud.edu.api.resource;
|
||||
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.alibaba.cola.dto.SingleResponse;
|
||||
import com.zcloud.edu.dto.resource.CurriculumChapterAddCmd;
|
||||
import com.zcloud.edu.dto.resource.CurriculumChapterPageQry;
|
||||
import com.zcloud.edu.dto.resource.CurriculumChapterUpdateCmd;
|
||||
import com.zcloud.edu.dto.clientobject.resource.CurriculumChapterCO;
|
||||
|
||||
/**
|
||||
* web-client
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 13:50:13
|
||||
*/
|
||||
public interface CurriculumChapterServiceI {
|
||||
PageResponse<CurriculumChapterCO> listPage(CurriculumChapterPageQry qry);
|
||||
|
||||
SingleResponse<CurriculumChapterCO> add(CurriculumChapterAddCmd cmd);
|
||||
|
||||
void edit(CurriculumChapterUpdateCmd cmd);
|
||||
|
||||
void remove(Long id);
|
||||
|
||||
void removeBatch(Long[] ids);
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,32 @@
|
|||
package com.zcloud.edu.api.resource;
|
||||
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.alibaba.cola.dto.SingleResponse;
|
||||
import com.zcloud.edu.dto.resource.CurriculumAddCmd;
|
||||
import com.zcloud.edu.dto.resource.CurriculumPageQry;
|
||||
import com.zcloud.edu.dto.resource.CurriculumUpdateCmd;
|
||||
import com.zcloud.edu.dto.resource.CurriculumUpdateStateCmd;
|
||||
import com.zcloud.edu.dto.clientobject.resource.CurriculumCO;
|
||||
|
||||
/**
|
||||
* web-client
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 13:45:39
|
||||
*/
|
||||
public interface CurriculumServiceI {
|
||||
PageResponse<CurriculumCO> listPage(CurriculumPageQry qry);
|
||||
|
||||
SingleResponse<CurriculumCO> add(CurriculumAddCmd cmd);
|
||||
|
||||
void edit(CurriculumUpdateCmd cmd);
|
||||
|
||||
void remove(Long id);
|
||||
|
||||
void removeBatch(Long[] ids);
|
||||
|
||||
CurriculumCO getInfoById(Long id);
|
||||
|
||||
void editState(CurriculumUpdateStateCmd cmd);
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,33 @@
|
|||
package com.zcloud.edu.api.resource;
|
||||
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.alibaba.cola.dto.SingleResponse;
|
||||
import com.zcloud.edu.dto.resource.ExamPaperAddCmd;
|
||||
import com.zcloud.edu.dto.resource.ExamPaperPageQry;
|
||||
import com.zcloud.edu.dto.resource.ExamPaperRemoveCmd;
|
||||
import com.zcloud.edu.dto.resource.ExamPaperUpdateCmd;
|
||||
import com.zcloud.edu.dto.clientobject.resource.ExamPaperCO;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
/**
|
||||
* web-client
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 17:04:43
|
||||
*/
|
||||
public interface ExamPaperServiceI {
|
||||
PageResponse<ExamPaperCO> listPage(ExamPaperPageQry qry);
|
||||
|
||||
SingleResponse<ExamPaperCO> add(ExamPaperAddCmd cmd);
|
||||
|
||||
void edit(MultipartFile file,ExamPaperUpdateCmd cmd);
|
||||
|
||||
void remove(Long id);
|
||||
|
||||
void removeBatch(ExamPaperRemoveCmd cmd);
|
||||
|
||||
ExamPaperCO getInfoById(Long id);
|
||||
|
||||
void editSellFlag(ExamPaperUpdateCmd examPaperUpdateCmd);
|
||||
}
|
||||
|
||||
|
|
@ -1,11 +1,12 @@
|
|||
package com.zcloud.edu.api;
|
||||
package com.zcloud.edu.api.resource;
|
||||
|
||||
import com.alibaba.cola.dto.MultiResponse;
|
||||
import com.zcloud.edu.dto.QuestionAddCmd;
|
||||
import com.zcloud.edu.dto.QuestionPageQry;
|
||||
import com.zcloud.edu.dto.QuestionListQry;
|
||||
import com.zcloud.edu.dto.QuestionUpdateCmd;
|
||||
import com.zcloud.edu.dto.clientobject.QuestionCO;
|
||||
import com.zcloud.edu.dto.resource.QuestionAddCmd;
|
||||
import com.zcloud.edu.dto.resource.QuestionPageQry;
|
||||
import com.zcloud.edu.dto.resource.QuestionListQry;
|
||||
import com.zcloud.edu.dto.resource.QuestionUpdateCmd;
|
||||
import com.zcloud.edu.dto.clientobject.resource.ExamPaperCO;
|
||||
import com.zcloud.edu.dto.clientobject.resource.QuestionCO;
|
||||
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.alibaba.cola.dto.SingleResponse;
|
||||
|
|
@ -33,5 +34,7 @@ public interface QuestionServiceI {
|
|||
void removeBatch(Long[] ids);
|
||||
|
||||
void importQuestionVideoTable(MultipartFile file, String videoCoursewareId);
|
||||
|
||||
ExamPaperCO editPaper(QuestionUpdateCmd cmd);
|
||||
}
|
||||
|
||||
|
|
@ -1,11 +1,11 @@
|
|||
package com.zcloud.edu.api;
|
||||
package com.zcloud.edu.api.resource;
|
||||
|
||||
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.zcloud.edu.dto.resource.TeacherCertificateAddCmd;
|
||||
import com.zcloud.edu.dto.resource.TeacherCertificatePageQry;
|
||||
import com.zcloud.edu.dto.resource.TeacherCertificateListQry;
|
||||
import com.zcloud.edu.dto.resource.TeacherCertificateUpdateCmd;
|
||||
import com.zcloud.edu.dto.clientobject.resource.TeacherCertificateCO;
|
||||
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.alibaba.cola.dto.SingleResponse;
|
||||
|
|
@ -1,11 +1,11 @@
|
|||
package com.zcloud.edu.api;
|
||||
package com.zcloud.edu.api.resource;
|
||||
|
||||
import com.alibaba.cola.dto.MultiResponse;
|
||||
import com.zcloud.edu.dto.*;
|
||||
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.alibaba.cola.dto.SingleResponse;
|
||||
import com.zcloud.edu.dto.clientobject.TeacherCO;
|
||||
import com.zcloud.edu.dto.clientobject.resource.TeacherCO;
|
||||
import com.zcloud.edu.dto.resource.*;
|
||||
|
||||
/**
|
||||
* web-client
|
||||
|
|
@ -1,14 +1,14 @@
|
|||
package com.zcloud.edu.api;
|
||||
package com.zcloud.edu.api.resource;
|
||||
|
||||
import com.alibaba.cola.dto.MultiResponse;
|
||||
import com.zcloud.edu.dto.TrainingTypeAddCmd;
|
||||
import com.zcloud.edu.dto.TrainingTypeListQry;
|
||||
import com.zcloud.edu.dto.TrainingTypePageQry;
|
||||
import com.zcloud.edu.dto.TrainingTypeUpdateCmd;
|
||||
import com.zcloud.edu.dto.resource.TrainingTypeAddCmd;
|
||||
import com.zcloud.edu.dto.resource.TrainingTypeListQry;
|
||||
import com.zcloud.edu.dto.resource.TrainingTypePageQry;
|
||||
import com.zcloud.edu.dto.resource.TrainingTypeUpdateCmd;
|
||||
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.alibaba.cola.dto.SingleResponse;
|
||||
import com.zcloud.edu.dto.clientobject.TrainingTypeCO;
|
||||
import com.zcloud.edu.dto.clientobject.resource.TrainingTypeCO;
|
||||
|
||||
/**
|
||||
* web-client
|
||||
|
|
@ -1,11 +1,11 @@
|
|||
package com.zcloud.edu.api;
|
||||
package com.zcloud.edu.api.resource;
|
||||
|
||||
import com.alibaba.cola.dto.MultiResponse;
|
||||
import com.zcloud.edu.dto.*;
|
||||
import com.zcloud.edu.dto.clientobject.VideoCoursewareCO;
|
||||
import com.zcloud.edu.dto.clientobject.resource.VideoCoursewareCO;
|
||||
|
||||
import com.alibaba.cola.dto.PageResponse;
|
||||
import com.alibaba.cola.dto.SingleResponse;
|
||||
import com.zcloud.edu.dto.resource.*;
|
||||
|
||||
/**
|
||||
* web-client
|
||||
|
|
@ -1,43 +0,0 @@
|
|||
package com.zcloud.edu.dto;
|
||||
|
||||
import com.alibaba.cola.dto.PageQuery;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
|
||||
/**
|
||||
* 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的!=操作符
|
||||
*/
|
||||
@ApiModelProperty(name = "likeTeacherName", value = "教师名称")
|
||||
private String likeTeacherName;
|
||||
|
||||
@ApiModelProperty(name = "eqCorpinfoId", value = "企业ID")
|
||||
private Long eqCorpinfoId;
|
||||
|
||||
@ApiModelProperty(name = "qualificationType", value = "资格类型")
|
||||
private String qualificationType;
|
||||
|
||||
@ApiModelProperty(name = "corpFlag 监管端1,企业端2", value = "corpFlag", required = true)
|
||||
@NotNull(message = "监管/企业标识不能为空")
|
||||
private Integer corpFlag;
|
||||
}
|
||||
|
||||
|
|
@ -1,181 +0,0 @@
|
|||
package com.zcloud.edu.dto;
|
||||
|
||||
import com.alibaba.cola.dto.ClientObject;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.zcloud.gbscommon.translateaop.TranslateEunm;
|
||||
import com.zcloud.gbscommon.translateaop.ZCloudTranslate;
|
||||
import com.zcloud.gbscommon.translateaop.ZCloudTranslates;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
|
||||
/**
|
||||
* web-client
|
||||
*
|
||||
* @Author zhangyue
|
||||
* @Date 2025-11-04 14:07:33
|
||||
*/
|
||||
@Data
|
||||
public class UserAddCmd extends ClientObject {
|
||||
|
||||
//GBS用户id
|
||||
@ApiModelProperty(value = "GBS用户id")
|
||||
private Long id;
|
||||
//业务主键id老系统id
|
||||
@ApiModelProperty(value = "业务主键id老系统id")
|
||||
private String userId;
|
||||
//登录账号
|
||||
@ApiModelProperty(value = "登录账号")
|
||||
private String username;
|
||||
//姓名
|
||||
@ApiModelProperty(value = "姓名")
|
||||
private String name;
|
||||
//企业id
|
||||
@ApiModelProperty(value = "企业id")
|
||||
private Long corpinfoId;
|
||||
@ApiModelProperty(value = "企业名称")
|
||||
private String corpinfoName;
|
||||
//是否主账号1是0否
|
||||
@ApiModelProperty(value = "是否主账号1是0否")
|
||||
private Integer mainCorpFlag;
|
||||
//用户类型,1监管2企业3相关方
|
||||
@ApiModelProperty(value = "用户类型,1监管2企业3相关方")
|
||||
private Integer userType;
|
||||
//部门id
|
||||
@ApiModelProperty(value = "部门id")
|
||||
private Long departmentId;
|
||||
//部门id
|
||||
@ApiModelProperty(value = "部门名称")
|
||||
private String departmentName;
|
||||
//岗位id
|
||||
@ApiModelProperty(value = "岗位id")
|
||||
private Long postId;
|
||||
//岗位id
|
||||
@ApiModelProperty(value = "岗位名称")
|
||||
private String postName;
|
||||
//角色id
|
||||
@ApiModelProperty(value = "角色id")
|
||||
private Long roleId;
|
||||
//邮箱
|
||||
@ApiModelProperty(value = "邮箱")
|
||||
private String email;
|
||||
//人员类型编码(主要负责人等)
|
||||
@ApiModelProperty(value = "人员类型编码(主要负责人等)")
|
||||
private String personnelType;
|
||||
//人员类型翻译
|
||||
@ApiModelProperty(value = "人员类型翻译")
|
||||
private String personnelTypeName;
|
||||
//民族编码问一下有没有组件
|
||||
@ApiModelProperty(value = "民族编码问一下有没有组件")
|
||||
private String nation;
|
||||
//民族名称
|
||||
@ApiModelProperty(value = "民族名称")
|
||||
private String nationName;
|
||||
//身份证号
|
||||
@ApiModelProperty(value = "身份证号")
|
||||
private String userIdCard;
|
||||
//人脸头像url
|
||||
@ApiModelProperty(value = "人脸头像url")
|
||||
private String userAvatarUrl;
|
||||
//现住址
|
||||
@ApiModelProperty(value = "现住址")
|
||||
private String currentAddress;
|
||||
//户口所在地
|
||||
@ApiModelProperty(value = "户口所在地")
|
||||
private String locationAddress;
|
||||
|
||||
@ApiModelProperty(value = "职级")
|
||||
private String rankLevel;
|
||||
@ApiModelProperty(value = "职级名称")
|
||||
private String rankLevelName;
|
||||
@ApiModelProperty(value = "手机号")
|
||||
private String phone;
|
||||
//人员在部门中的排序
|
||||
@ApiModelProperty(value = "人员在部门中的排序")
|
||||
private Integer sort;
|
||||
//乐观锁
|
||||
@ApiModelProperty(value = "乐观锁")
|
||||
private Integer version;
|
||||
//创建人
|
||||
@ApiModelProperty(value = "创建人")
|
||||
private Long createId;
|
||||
//创建人姓名
|
||||
@ApiModelProperty(value = "创建人姓名")
|
||||
private String createName;
|
||||
//创建时间
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private Date createTime;
|
||||
//更新人
|
||||
@ApiModelProperty(value = "更新人")
|
||||
private Long updateId;
|
||||
//修改人名称
|
||||
@ApiModelProperty(value = "修改人名称")
|
||||
private String updateName;
|
||||
//更新时间
|
||||
@ApiModelProperty(value = "更新时间")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private Date updateTime;
|
||||
//描述
|
||||
@ApiModelProperty(value = "描述")
|
||||
private String remarks;
|
||||
//是否删除
|
||||
@ApiModelProperty(value = "是否删除")
|
||||
private String deleteEnum;
|
||||
//租户ID
|
||||
@ApiModelProperty(value = "租户ID")
|
||||
private Long tenantId;
|
||||
//机构ID
|
||||
@ApiModelProperty(value = "机构ID")
|
||||
private Long orgId;
|
||||
//环境
|
||||
@ApiModelProperty(value = "环境")
|
||||
private String env;
|
||||
//是否部门领导0否1是
|
||||
@ApiModelProperty(value = "是否部门领导0否1是")
|
||||
private Integer departmentLeaderFlag;
|
||||
//是否分管领导0否1是
|
||||
@ApiModelProperty(value = "是否分管领导0否1是")
|
||||
private Integer deputyLeaderFlag;
|
||||
//文化程度 数据字典
|
||||
@ApiModelProperty(value = "文化程度 数据字典")
|
||||
private String culturalLevel;
|
||||
//文化程度名称
|
||||
@ApiModelProperty(value = "文化程度名称")
|
||||
private String culturalLevelName;
|
||||
//婚姻状态
|
||||
@ApiModelProperty(value = "婚姻状态")
|
||||
private String maritalStatus;
|
||||
//婚姻状态名称
|
||||
@ApiModelProperty(value = "婚姻状态名称")
|
||||
private String maritalStatusName;
|
||||
//政治面貌
|
||||
@ApiModelProperty(value = "政治面貌")
|
||||
private String politicalAffiliation;
|
||||
//政治面貌名称
|
||||
@ApiModelProperty(value = "政治面貌名称")
|
||||
private String politicalAffiliationName;
|
||||
private String mappingName;
|
||||
private String mappingUserName;
|
||||
private String mappingPostName;
|
||||
private String mappingDeptName;
|
||||
// 入职状态
|
||||
@ApiModelProperty(value = "入职状态")
|
||||
private Integer employmentFlag;
|
||||
|
||||
|
||||
// 年龄
|
||||
@ApiModelProperty(value = "年龄")
|
||||
private Integer age;
|
||||
|
||||
//生日
|
||||
@ApiModelProperty(value = "生日")
|
||||
private String birthday;
|
||||
|
||||
// 性别
|
||||
@ApiModelProperty(value = "性别")
|
||||
private String sex;
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,64 @@
|
|||
package com.zcloud.edu.dto.clientobject.resource;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* web-client
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 13:45:38
|
||||
*/
|
||||
@Data
|
||||
public class CurriculumCO {
|
||||
private Long id;
|
||||
//业务主键id
|
||||
@ApiModelProperty(value = "业务主键id")
|
||||
private String curriculumId;
|
||||
//企业ID
|
||||
@ApiModelProperty(value = "企业ID")
|
||||
private Long corpinfoId;
|
||||
//课程名称
|
||||
@ApiModelProperty(value = "课程名称")
|
||||
private String curriculumName;
|
||||
//培训类型id
|
||||
@ApiModelProperty(value = "培训类型id")
|
||||
private String trainingTypeId;
|
||||
//课程描述
|
||||
@ApiModelProperty(value = "课程描述")
|
||||
private String curriculumIntroduce;
|
||||
//封面路径url
|
||||
@ApiModelProperty(value = "封面路径url")
|
||||
private String coverPath;
|
||||
|
||||
//课程状态 1-上架 0-下架
|
||||
@ApiModelProperty(value = "课程状态 1-上架 0-下架")
|
||||
private Integer sellFlag;
|
||||
//目录级别 1-一级目录 2-二级目录
|
||||
@ApiModelProperty(value = "目录级别 1-一级目录 2-二级目录")
|
||||
private Integer catalogueLevel;
|
||||
@ApiModelProperty(value = "创建人id")
|
||||
private Long createId;
|
||||
|
||||
@ApiModelProperty(value = "企业名称")
|
||||
private String corpName;
|
||||
|
||||
@ApiModelProperty(value = "培训类型名称")
|
||||
private String trainingTypeName;
|
||||
|
||||
@ApiModelProperty(value = "课件数量")
|
||||
private Integer chapterCount;
|
||||
//总视频时长
|
||||
@ApiModelProperty(value = "总视频时长")
|
||||
private Integer videoTime;
|
||||
|
||||
@ApiModelProperty(value = "是否是当前用户创建的数据")
|
||||
private Boolean isUserCreate = false;
|
||||
|
||||
@ApiModelProperty(value = "课程目录")
|
||||
private List<CurriculumChapterCO> curriculumChapterCOList;
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,42 @@
|
|||
package com.zcloud.edu.dto.clientobject.resource;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* web-client
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 13:50:13
|
||||
*/
|
||||
@Data
|
||||
public class CurriculumChapterCO {
|
||||
//主键
|
||||
@ApiModelProperty(value = "主键")
|
||||
private Long id;
|
||||
//业务主键id
|
||||
@ApiModelProperty(value = "业务主键id")
|
||||
private String curriculumChapterId;
|
||||
//企业ID
|
||||
@ApiModelProperty(value = "企业ID")
|
||||
private Long corpinfoId;
|
||||
//课程id
|
||||
@ApiModelProperty(value = "课程id")
|
||||
private String curriculumId;
|
||||
//章节名字
|
||||
@ApiModelProperty(value = "章节名字")
|
||||
private String name;
|
||||
//视频课件id
|
||||
@ApiModelProperty(value = "视频课件id")
|
||||
private String videoCoursewareId;
|
||||
//上级ID
|
||||
@ApiModelProperty(value = "上级ID")
|
||||
private String parentId;
|
||||
|
||||
@ApiModelProperty(value = "子课程目录")
|
||||
private List<CurriculumChapterCO> childCurriculumChapterCOList;
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,71 @@
|
|||
package com.zcloud.edu.dto.clientobject.resource;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* web-client
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 17:04:42
|
||||
*/
|
||||
@Data
|
||||
public class ExamPaperCO {
|
||||
private Long id;
|
||||
//业务主键id
|
||||
@ApiModelProperty(value = "业务主键id")
|
||||
private String examPaperId;
|
||||
//企业ID
|
||||
@ApiModelProperty(value = "企业ID")
|
||||
private Long corpinfoId;
|
||||
//试卷名称
|
||||
@ApiModelProperty(value = "试卷名称")
|
||||
private String examName;
|
||||
//试卷总分数
|
||||
@ApiModelProperty(value = "试卷总分数")
|
||||
private BigDecimal examScore;
|
||||
//合格分数
|
||||
@ApiModelProperty(value = "合格分数")
|
||||
private BigDecimal passScore;
|
||||
//是否上架(0否 1是)
|
||||
@ApiModelProperty(value = "是否上架(0否 1是)")
|
||||
private Integer sellFlag;
|
||||
//考试时长(分钟)
|
||||
@ApiModelProperty(value = "考试时长(分钟)")
|
||||
private String examTime;
|
||||
//试卷类型 1-自建试卷 2-班级中自动生成试卷
|
||||
@ApiModelProperty(value = "试卷类型 1-自建试卷 2-班级中自动生成试卷")
|
||||
private Integer type;
|
||||
|
||||
//备注
|
||||
@ApiModelProperty(value = "备注")
|
||||
private String remarks;
|
||||
//创建人姓名
|
||||
@ApiModelProperty(value = "创建人姓名")
|
||||
private String createName;
|
||||
|
||||
//创建时间
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
private LocalDateTime createTime;
|
||||
|
||||
|
||||
|
||||
@ApiModelProperty(value = "企业名称")
|
||||
private String corpName;
|
||||
@ApiModelProperty(value = "企业类型(0-普通企业,1-集团单位,2-股份单位,3-相关方企业,4-货主单位,5-驻港单位, 6-物资中心)")
|
||||
private Integer corpType;
|
||||
|
||||
@ApiModelProperty(value = "创建人id")
|
||||
private Long createId;
|
||||
|
||||
@ApiModelProperty(value = "是否是当前用户创建的数据")
|
||||
private Boolean isUserCreate = false;
|
||||
|
||||
private List<QuestionCO> questionCOList;
|
||||
}
|
||||
|
||||
|
|
@ -1,12 +1,10 @@
|
|||
package com.zcloud.edu.dto.clientobject;
|
||||
package com.zcloud.edu.dto.clientobject.resource;
|
||||
|
||||
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;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* web-client
|
||||
|
|
@ -31,9 +29,8 @@ public class QuestionCO extends ClientObject {
|
|||
|
||||
private String examPaperId;
|
||||
//题号
|
||||
@ApiModelProperty(value = "题号")
|
||||
|
||||
private Integer questionNumber;
|
||||
// @ApiModelProperty(value = "题号")
|
||||
// private Integer questionNumber;
|
||||
//试题类型(单选题、多选题、判断题、填空题)
|
||||
@ApiModelProperty(value = "试题类型(1单选题、2多选题、3判断题)")
|
||||
|
||||
|
|
@ -73,5 +70,5 @@ public class QuestionCO extends ClientObject {
|
|||
//分值
|
||||
@ApiModelProperty(value = "分值")
|
||||
|
||||
private String score;
|
||||
private BigDecimal score;
|
||||
}
|
||||
|
|
@ -1,13 +1,11 @@
|
|||
package com.zcloud.edu.dto.clientobject;
|
||||
package com.zcloud.edu.dto.clientobject.resource;
|
||||
|
||||
import com.alibaba.cola.dto.ClientObject;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.LocalDate;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
|
|
@ -20,72 +18,44 @@ import java.util.List;
|
|||
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;
|
||||
private LocalDateTime assessmentTime;
|
||||
//考核结果
|
||||
@ApiModelProperty(value = "考核结果")
|
||||
|
||||
private String assessmentResult;
|
||||
//状态(0-禁用 1-启用)(老项目0启用,1禁用)
|
||||
@ApiModelProperty(value = "状态(0-禁用 1-启用)")
|
||||
|
||||
@ApiModelProperty(value = "状态(0-禁用 1-启用)(老项目0启用,1禁用)")
|
||||
private Integer state;
|
||||
|
||||
@ApiModelProperty(value = "创建时间")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime createTime;
|
||||
|
||||
@ApiModelProperty(value = "资质类型名称")
|
||||
private String qualificationTypeNames;
|
||||
@ApiModelProperty(value = "证书数量")
|
||||
private Integer certificateCount;
|
||||
|
||||
@ApiModelProperty(value = "单位名称")
|
||||
private String corpinfoName;
|
||||
|
|
@ -1,11 +1,10 @@
|
|||
package com.zcloud.edu.dto.clientobject;
|
||||
package com.zcloud.edu.dto.clientobject.resource;
|
||||
|
||||
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;
|
||||
|
||||
/**
|
||||
|
|
@ -52,10 +51,7 @@ public class TeacherCertificateCO extends ClientObject {
|
|||
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private LocalDate certificateDateEnd;
|
||||
//证书照片
|
||||
@ApiModelProperty(value = "证书照片")
|
||||
|
||||
private String certificateFilepath;
|
||||
//企业ID
|
||||
@ApiModelProperty(value = "企业ID")
|
||||
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package com.zcloud.edu.dto.clientobject;
|
||||
package com.zcloud.edu.dto.clientobject.resource;
|
||||
|
||||
import com.alibaba.cola.dto.ClientObject;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
|
|
@ -1,73 +1,66 @@
|
|||
package com.zcloud.edu.dto.clientobject;
|
||||
package com.zcloud.edu.dto.clientobject.resource;
|
||||
|
||||
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-27 14:05:31
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-08 14:36:21
|
||||
*/
|
||||
@Data
|
||||
public class VideoCoursewareCO extends ClientObject {
|
||||
//id
|
||||
@ApiModelProperty(value = "id")
|
||||
private Long id;
|
||||
|
||||
//业务主键id
|
||||
@ApiModelProperty(value = "业务主键id")
|
||||
private String videoCoursewareId;
|
||||
|
||||
//企业ID
|
||||
@ApiModelProperty(value = "企业ID")
|
||||
private Long corpinfoId;
|
||||
|
||||
@ApiModelProperty(value = "企业名称")
|
||||
private String corpName;
|
||||
|
||||
//课件名称
|
||||
@ApiModelProperty(value = "课件名称")
|
||||
private String coursewareName;
|
||||
|
||||
//培训类型id
|
||||
@ApiModelProperty(value = "培训类型id")
|
||||
private String trainingTypeId;
|
||||
|
||||
//培训类型名称
|
||||
@ApiModelProperty(value = "培训类型名称")
|
||||
private String trainingTypeName;
|
||||
|
||||
//教师id
|
||||
@ApiModelProperty(value = "教师id")
|
||||
private String teacherId;
|
||||
|
||||
@ApiModelProperty(value = "教师名称")
|
||||
private String teacherName;
|
||||
|
||||
//课件文件路径
|
||||
@ApiModelProperty(value = "课件文件路径")
|
||||
private String videoFiles;
|
||||
|
||||
//课件描述
|
||||
@ApiModelProperty(value = "课件描述")
|
||||
private String coursewareIntroduce;
|
||||
|
||||
//课件状态 0未启用, 1-启用
|
||||
@ApiModelProperty(value = "课件状态 0未启用, 1-启用")
|
||||
private Integer state;
|
||||
//课件时长(视频时间)-秒
|
||||
@ApiModelProperty(value = "课件时长(视频时间)-秒")
|
||||
private Integer videoTime;
|
||||
@ApiModelProperty(value = "课件截图url")
|
||||
private String screenshotUrl;
|
||||
|
||||
//学时,单位分钟
|
||||
@ApiModelProperty(value = "学时,单位分钟")
|
||||
private String classHour;
|
||||
//备注
|
||||
@ApiModelProperty(value = "备注")
|
||||
private String remarks;
|
||||
@ApiModelProperty(value = "创建人id")
|
||||
private Long createId;
|
||||
|
||||
//课件时长(视频时间)-分钟
|
||||
@ApiModelProperty(value = "课件时长(视频时间)-分钟")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime videoTime;
|
||||
@ApiModelProperty(value = "企业名称")
|
||||
private String corpName;
|
||||
@ApiModelProperty(value = "教师名称")
|
||||
private String teacherName;
|
||||
@ApiModelProperty(value = "培训类型名称")
|
||||
private String trainingTypeName;
|
||||
@ApiModelProperty(value = "企业类型")
|
||||
private Integer corpType;
|
||||
@ApiModelProperty(value = "是否是当前用户创建的数据")
|
||||
private Boolean isUserCreate = false;
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,53 @@
|
|||
package com.zcloud.edu.dto.resource;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* web-client
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 13:45:38
|
||||
*/
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class CurriculumAddCmd {
|
||||
|
||||
|
||||
@ApiModelProperty(value = "课程名称", name = "curriculumName", required = true)
|
||||
@NotEmpty(message = "课程名称不能为空")
|
||||
private String curriculumName;
|
||||
|
||||
@ApiModelProperty(value = "培训类型id", name = "trainingTypeId", required = true)
|
||||
@NotEmpty(message = "培训类型不能为空")
|
||||
private String trainingTypeId;
|
||||
|
||||
@ApiModelProperty(value = "课程描述", name = "curriculumIntroduce", required = true)
|
||||
@NotEmpty(message = "课程描述不能为空")
|
||||
private String curriculumIntroduce;
|
||||
|
||||
@ApiModelProperty(value = "封面路径url", name = "coverPath", required = true)
|
||||
@NotEmpty(message = "封面路径url不能为空")
|
||||
private String coverPath;
|
||||
|
||||
|
||||
@ApiModelProperty(value = "课程状态 1-上架 0-下架", name = "sellFlag", required = true)
|
||||
@NotNull(message = "课程状态不能为空")
|
||||
private Integer sellFlag;
|
||||
|
||||
@ApiModelProperty(value = "目录级别 1-一级目录 2-二级目录", name = "catalogueLevel", required = true)
|
||||
@NotNull(message = "目录级别不能为空")
|
||||
private Integer catalogueLevel;
|
||||
|
||||
@ApiModelProperty(value = "目录课件", name = "catalogueLevel", required = true)
|
||||
private List<CurriculumChapterAddCmd> curriculumChapterAddCmdList;
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,39 @@
|
|||
package com.zcloud.edu.dto.resource;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* web-client
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 13:50:13
|
||||
*/
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class CurriculumChapterAddCmd {
|
||||
|
||||
|
||||
@ApiModelProperty(value = "章节名字", name = "name", required = true)
|
||||
@NotEmpty(message = "章节名字不能为空")
|
||||
private String name;
|
||||
|
||||
@ApiModelProperty(value = "视频课件id", name = "videoCoursewareId", required = true)
|
||||
private String videoCoursewareId;
|
||||
|
||||
@ApiModelProperty(value = "排序", name = "sort", required = true)
|
||||
private Integer sort;
|
||||
|
||||
@ApiModelProperty(value = "上级ID", name = "parentId", required = true)
|
||||
private String parentId;
|
||||
|
||||
@ApiModelProperty(value = "目录课件", name = "catalogueLevel", required = true)
|
||||
private List<CurriculumChapterAddCmd> curriculumChapterAddCmdList;
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,28 @@
|
|||
package com.zcloud.edu.dto.resource;
|
||||
|
||||
import com.alibaba.cola.dto.PageQuery;
|
||||
import lombok.Data;
|
||||
|
||||
|
||||
/**
|
||||
* web-client
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 13:50:13
|
||||
*/
|
||||
@Data
|
||||
public class CurriculumChapterPageQry extends PageQuery {
|
||||
|
||||
/**
|
||||
* 查询条件操作前缀,支持以下几种数据库查询操作:
|
||||
* - `like`: 模糊匹配查询,对应SQL的LIKE操作符
|
||||
* - `eq`: 等值查询,对应SQL的=操作符
|
||||
* - `gt`: 大于比较查询
|
||||
* - `lt`: 小于比较查询
|
||||
* - `ge`: 大于等于比较查询
|
||||
* - `le`: 小于等于比较查询
|
||||
* - `ne`: 不等比较查询,对应SQL的!=操作符
|
||||
*/
|
||||
private String likeCurriculumChapterId;
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,49 @@
|
|||
package com.zcloud.edu.dto.resource;
|
||||
|
||||
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.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
/**
|
||||
* web-client
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 13:50:13
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class CurriculumChapterUpdateCmd extends Command {
|
||||
@ApiModelProperty(value = "主键", name = "id", required = true)
|
||||
@NotNull(message = "主键不能为空")
|
||||
private Long id;
|
||||
@ApiModelProperty(value = "业务主键id", name = "curriculumChapterId", required = true)
|
||||
@NotEmpty(message = "业务主键id不能为空")
|
||||
private String curriculumChapterId;
|
||||
@ApiModelProperty(value = "企业ID", name = "corpinfoId", required = true)
|
||||
@NotNull(message = "企业ID不能为空")
|
||||
private Long corpinfoId;
|
||||
@ApiModelProperty(value = "课程id", name = "curriculumId", required = true)
|
||||
@NotEmpty(message = "课程id不能为空")
|
||||
private String curriculumId;
|
||||
@ApiModelProperty(value = "章节名字", name = "name", required = true)
|
||||
@NotEmpty(message = "章节名字不能为空")
|
||||
private String name;
|
||||
@ApiModelProperty(value = "视频课件id", name = "videoCoursewareId", required = true)
|
||||
@NotEmpty(message = "视频课件id不能为空")
|
||||
private String videoCoursewareId;
|
||||
@ApiModelProperty(value = "排序", name = "sort", required = true)
|
||||
@NotNull(message = "排序不能为空")
|
||||
private Integer sort;
|
||||
@ApiModelProperty(value = "上级ID", name = "parentId", required = true)
|
||||
@NotEmpty(message = "上级ID不能为空")
|
||||
private String parentId;
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,44 @@
|
|||
package com.zcloud.edu.dto.resource;
|
||||
|
||||
import com.alibaba.cola.dto.PageQuery;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
|
||||
/**
|
||||
* web-client
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 13:45:38
|
||||
*/
|
||||
@Data
|
||||
public class CurriculumPageQry extends PageQuery {
|
||||
|
||||
/**
|
||||
* 查询条件操作前缀,支持以下几种数据库查询操作:
|
||||
* - `like`: 模糊匹配查询,对应SQL的LIKE操作符
|
||||
* - `eq`: 等值查询,对应SQL的=操作符
|
||||
* - `gt`: 大于比较查询
|
||||
* - `lt`: 小于比较查询
|
||||
* - `ge`: 大于等于比较查询
|
||||
* - `le`: 小于等于比较查询
|
||||
* - `ne`: 不等比较查询,对应SQL的!=操作符
|
||||
*/
|
||||
@ApiModelProperty(value = "企业id", name = "corpinfoId")
|
||||
private Long corpinfoId;
|
||||
//课程名称
|
||||
@ApiModelProperty(value = "课程名称", name = "curriculumName")
|
||||
private String curriculumName;
|
||||
//培训id
|
||||
@ApiModelProperty(value = "培训类型id", name = "trainingTypeId")
|
||||
private String trainingTypeId;
|
||||
//课程状态 1-上架 0-下架
|
||||
@ApiModelProperty(value = "课程状态 1-上架 0-下架", name = "sellFlag")
|
||||
private Integer sellFlag;
|
||||
//上传开始时间,结束时间
|
||||
@ApiModelProperty(value = "上传开始时间", name = "uploadStartTime")
|
||||
private String uploadStartTime;
|
||||
@ApiModelProperty(value = "上传结束时间", name = "uploadEndTime")
|
||||
private String uploadEndTime;
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,49 @@
|
|||
package com.zcloud.edu.dto.resource;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* web-client
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 13:45:39
|
||||
*/
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class CurriculumUpdateCmd {
|
||||
@ApiModelProperty(value = "id", name = "id", required = true)
|
||||
@NotNull(message = "id不能为空")
|
||||
private Long id;
|
||||
@ApiModelProperty(value = "业务主键id", name = "curriculumId", required = true)
|
||||
private String curriculumId;
|
||||
@ApiModelProperty(value = "课程名称", name = "curriculumName", required = true)
|
||||
@NotEmpty(message = "课程名称不能为空")
|
||||
private String curriculumName;
|
||||
@ApiModelProperty(value = "培训类型id", name = "trainingTypeId", required = true)
|
||||
@NotEmpty(message = "培训类型id不能为空")
|
||||
private String trainingTypeId;
|
||||
@ApiModelProperty(value = "课程描述", name = "curriculumIntroduce", required = true)
|
||||
@NotEmpty(message = "课程描述不能为空")
|
||||
private String curriculumIntroduce;
|
||||
@ApiModelProperty(value = "封面路径url", name = "coverPath", required = true)
|
||||
@NotEmpty(message = "封面路径url不能为空")
|
||||
private String coverPath;
|
||||
|
||||
@ApiModelProperty(value = "课程状态 1-上架 0-下架", name = "sellFlag", required = true)
|
||||
@NotNull(message = "课程状态 1-上架 0-下架不能为空")
|
||||
private Integer sellFlag;
|
||||
@ApiModelProperty(value = "目录级别 1-一级目录 2-二级目录", name = "catalogueLevel", required = true)
|
||||
@NotNull(message = "目录级别 1-一级目录 2-二级目录不能为空")
|
||||
private Integer catalogueLevel;
|
||||
@ApiModelProperty(value = "目录课件", name = "catalogueLevel", required = true)
|
||||
private List<CurriculumChapterAddCmd> curriculumChapterAddCmdList;
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,31 @@
|
|||
package com.zcloud.edu.dto.resource;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* web-client
|
||||
*
|
||||
* @Author SondonYong
|
||||
* @Date 2025-11-27 14:05:32
|
||||
*/
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class CurriculumUpdateStateCmd {
|
||||
|
||||
@ApiModelProperty(value = "id", name = "id", required = true)
|
||||
@NotNull(message = "id不能为空")
|
||||
private List<Long> id;
|
||||
|
||||
@ApiModelProperty(value = "课程状态 1-上架 0-下架", name = "state", required = true)
|
||||
@NotNull(message = "课程状态不能为空")
|
||||
private Integer sellFlag;
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,53 @@
|
|||
package com.zcloud.edu.dto.resource;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* web-client
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 17:04:42
|
||||
*/
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class ExamPaperAddCmd {
|
||||
|
||||
|
||||
@ApiModelProperty(value = "试卷名称", name = "examName", required = true)
|
||||
@NotEmpty(message = "试卷名称不能为空")
|
||||
private String examName;
|
||||
|
||||
@ApiModelProperty(value = "试卷总分数", name = "examScore", required = true)
|
||||
@NotEmpty(message = "试卷总分数不能为空")
|
||||
private BigDecimal examScore;
|
||||
|
||||
@ApiModelProperty(value = "合格分数", name = "passScore", required = true)
|
||||
@NotEmpty(message = "合格分数不能为空")
|
||||
private BigDecimal passScore;
|
||||
|
||||
@ApiModelProperty(value = "是否上架(0否 1是)", name = "sellFlag", required = true)
|
||||
@NotNull(message = "是否上架(0否 1是)不能为空")
|
||||
private Integer sellFlag;
|
||||
|
||||
@ApiModelProperty(value = "考试时长(分钟)", name = "examTime", required = true)
|
||||
@NotEmpty(message = "考试时长(分钟)不能为空")
|
||||
private String examTime;
|
||||
|
||||
@ApiModelProperty(value = "试卷类型 1-自建试卷 2-班级中自动生成试卷", name = "type", required = true)
|
||||
@NotNull(message = "试卷类型 1-自建试卷 2-班级中自动生成试卷不能为空")
|
||||
private Integer type;
|
||||
@ApiModelProperty(value = "试题文件", name = "file", required = true)
|
||||
@NotNull(message = "试题文件不能为空")
|
||||
private MultipartFile file;
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,42 @@
|
|||
package com.zcloud.edu.dto.resource;
|
||||
|
||||
import com.alibaba.cola.dto.PageQuery;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
|
||||
/**
|
||||
* web-client
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 17:04:42
|
||||
*/
|
||||
@Data
|
||||
public class ExamPaperPageQry extends PageQuery {
|
||||
|
||||
/**
|
||||
* 查询条件操作前缀,支持以下几种数据库查询操作:
|
||||
* - `like`: 模糊匹配查询,对应SQL的LIKE操作符
|
||||
* - `eq`: 等值查询,对应SQL的=操作符
|
||||
* - `gt`: 大于比较查询
|
||||
* - `lt`: 小于比较查询
|
||||
* - `ge`: 大于等于比较查询
|
||||
* - `le`: 小于等于比较查询
|
||||
* - `ne`: 不等比较查询,对应SQL的!=操作符
|
||||
*/
|
||||
@ApiModelProperty(value = "试卷名称")
|
||||
private String examPaperName;
|
||||
@ApiModelProperty(value = "试卷总分数")
|
||||
private String examScore;
|
||||
@ApiModelProperty(value = "及格分数")
|
||||
private String passScore;
|
||||
@ApiModelProperty(value = "是否上架(0否 1是)")
|
||||
private Integer sellFlag;
|
||||
//上传开始时间
|
||||
@ApiModelProperty(value = "上传开始时间")
|
||||
private String uploadStartTime;
|
||||
//上传结束时间
|
||||
@ApiModelProperty(value = "上传结束时间")
|
||||
private String uploadEndTime;
|
||||
}
|
||||
|
||||
|
|
@ -1,18 +1,19 @@
|
|||
package com.zcloud.edu.dto;
|
||||
package com.zcloud.edu.dto.resource;
|
||||
|
||||
import com.alibaba.cola.dto.PageQuery;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
||||
/**
|
||||
* web-client
|
||||
*
|
||||
* @Author SondonYong
|
||||
* @Date 2025-11-27 14:05:32
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 17:04:42
|
||||
*/
|
||||
@Data
|
||||
public class VideoCoursewarePageQry extends PageQuery {
|
||||
public class ExamPaperRemoveCmd {
|
||||
|
||||
/**
|
||||
* 查询条件操作前缀,支持以下几种数据库查询操作:
|
||||
|
|
@ -24,14 +25,8 @@ public class VideoCoursewarePageQry extends PageQuery {
|
|||
* - `le`: 小于等于比较查询
|
||||
* - `ne`: 不等比较查询,对应SQL的!=操作符
|
||||
*/
|
||||
@ApiModelProperty(value = "试卷id list")
|
||||
private List<Long> id;
|
||||
|
||||
@ApiModelProperty(value = "课件名称")
|
||||
private String likeCoursewareName;
|
||||
|
||||
@ApiModelProperty(value = "培训类型")
|
||||
private String eqTrainingTypeId;
|
||||
|
||||
@ApiModelProperty(value = "启用:1, 禁用:0")
|
||||
private Integer eqState;
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,50 @@
|
|||
package com.zcloud.edu.dto.resource;
|
||||
|
||||
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.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* web-client
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 17:04:43
|
||||
*/
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class ExamPaperUpdateCmd extends Command {
|
||||
@ApiModelProperty(value = "主键", name = "id", required = true)
|
||||
@NotNull(message = "主键不能为空")
|
||||
private Long id;
|
||||
@ApiModelProperty(value = "业务主键id", name = "examPaperId", required = true)
|
||||
private String examPaperId;
|
||||
|
||||
@ApiModelProperty(value = "试卷名称", name = "examName", required = true)
|
||||
@NotEmpty(message = "试卷名称不能为空")
|
||||
private String examName;
|
||||
@ApiModelProperty(value = "试卷总分数", name = "examScore", required = true)
|
||||
@NotEmpty(message = "试卷总分数不能为空")
|
||||
private BigDecimal examScore;
|
||||
@ApiModelProperty(value = "合格分数", name = "passScore", required = true)
|
||||
@NotEmpty(message = "合格分数不能为空")
|
||||
private BigDecimal passScore;
|
||||
@ApiModelProperty(value = "是否上架(0否 1是)", name = "sellFlag", required = true)
|
||||
@NotNull(message = "是否上架(0否 1是)不能为空")
|
||||
private Integer sellFlag;
|
||||
@ApiModelProperty(value = "考试时长(分钟)", name = "examTime", required = true)
|
||||
@NotEmpty(message = "考试时长(分钟)不能为空")
|
||||
private String examTime;
|
||||
@ApiModelProperty(value = "试卷类型 1-自建试卷 2-班级中自动生成试卷", name = "type", required = true)
|
||||
@NotNull(message = "试卷类型 1-自建试卷 2-班级中自动生成试卷不能为空")
|
||||
private Integer type;
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,29 @@
|
|||
package com.zcloud.edu.dto.resource;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
/**
|
||||
* web-client
|
||||
*
|
||||
* @Author zhaokai
|
||||
* @Date 2026-01-09 17:04:43
|
||||
*/
|
||||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public class ExamPaperUpdateSellFlagCmd {
|
||||
@ApiModelProperty(value = "主键", name = "id", required = true)
|
||||
@NotNull(message = "id不能为空")
|
||||
private Long id;
|
||||
|
||||
@ApiModelProperty(value = "是否上架(0否 1是)", name = "sellFlag", required = true)
|
||||
@NotNull(message = "是否上架(0否 1是)不能为空")
|
||||
private Integer sellFlag;
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package com.zcloud.edu.dto;
|
||||
package com.zcloud.edu.dto.resource;
|
||||
|
||||
import com.alibaba.cola.dto.Command;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
|
|
@ -8,6 +8,7 @@ import lombok.EqualsAndHashCode;
|
|||
import lombok.NoArgsConstructor;
|
||||
|
||||
import javax.validation.constraints.*;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* web-client
|
||||
|
|
@ -59,7 +60,7 @@ public class QuestionAddCmd extends Command {
|
|||
private String descr;
|
||||
|
||||
@ApiModelProperty(value = "分值", name = "score")
|
||||
private String score;
|
||||
private BigDecimal score;
|
||||
|
||||
}
|
||||
|
||||
|
|
@ -1,6 +1,7 @@
|
|||
package com.zcloud.edu.dto;
|
||||
package com.zcloud.edu.dto.resource;
|
||||
|
||||
import com.alibaba.cola.dto.PageQuery;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
|
||||
|
|
@ -23,6 +24,7 @@ public class QuestionListQry extends PageQuery {
|
|||
* - `le`: 小于等于比较查询
|
||||
* - `ne`: 不等比较查询,对应SQL的!=操作符
|
||||
*/
|
||||
private String likeQuestionId;
|
||||
@ApiModelProperty(value = "企业id", name = "eqCorpinfoId", required = true)
|
||||
private String eqCorpinfoId;
|
||||
}
|
||||
|
||||
|
|
@ -1,11 +1,9 @@
|
|||
package com.zcloud.edu.dto;
|
||||
package com.zcloud.edu.dto.resource;
|
||||
|
||||
import com.alibaba.cola.dto.PageQuery;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
|
||||
/**
|
||||
* web-client
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package com.zcloud.edu.dto;
|
||||
package com.zcloud.edu.dto.resource;
|
||||
|
||||
import com.alibaba.cola.dto.Command;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package com.zcloud.edu.dto;
|
||||
package com.zcloud.edu.dto.resource;
|
||||
|
||||
import com.alibaba.cola.dto.Command;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
|
|
@ -8,6 +8,7 @@ import lombok.EqualsAndHashCode;
|
|||
import lombok.NoArgsConstructor;
|
||||
|
||||
import javax.validation.constraints.*;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* web-client
|
||||
|
|
@ -24,7 +25,7 @@ public class QuestionUpdateCmd extends Command {
|
|||
@NotNull(message = "id不能为空")
|
||||
private Long id;
|
||||
|
||||
@ApiModelProperty(value = "主键id", name = "questionNumber", required = true)
|
||||
@ApiModelProperty(value = "主键id", name = "questionId", required = true)
|
||||
@NotEmpty(message = "主键id不能为空")
|
||||
private String questionId;
|
||||
|
||||
|
|
@ -66,6 +67,6 @@ public class QuestionUpdateCmd extends Command {
|
|||
private String descr;
|
||||
|
||||
@ApiModelProperty(value = "分值", name = "score")
|
||||
private String score;
|
||||
private BigDecimal score;
|
||||
}
|
||||
|
||||
|
|
@ -1,7 +1,6 @@
|
|||
package com.zcloud.edu.dto;
|
||||
package com.zcloud.edu.dto.resource;
|
||||
|
||||
import com.alibaba.cola.dto.Command;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
|
|
@ -10,7 +9,6 @@ import lombok.NoArgsConstructor;
|
|||
|
||||
import javax.validation.constraints.*;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package com.zcloud.edu.dto;
|
||||
package com.zcloud.edu.dto.resource;
|
||||
|
||||
import com.alibaba.cola.dto.Command;
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package com.zcloud.edu.dto;
|
||||
package com.zcloud.edu.dto.resource;
|
||||
|
||||
import com.alibaba.cola.dto.PageQuery;
|
||||
import lombok.Data;
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
package com.zcloud.edu.dto;
|
||||
package com.zcloud.edu.dto.resource;
|
||||
|
||||
import com.alibaba.cola.dto.PageQuery;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue