Commit 883f9a21 by liangkaiping

copy

parent ffef1599
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>cloud-training-project</artifactId>
<groupId>com.yizhi</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>com.yizhi</groupId>
<artifactId>cloud-training-project-api</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>com.yizhi</groupId>
<artifactId>cloud-orm</artifactId>
<version>1.0-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.yizhi</groupId>
<artifactId>cloud-common-api</artifactId>
<version>1.0-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.yizhi</groupId>
<artifactId>cloud-core</artifactId>
<version>1.0-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>com.yizhi</groupId>
<artifactId>cloud-util</artifactId>
<version>1.0-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
\ No newline at end of file
package com.yizhi.training.application.constant;
/**
* 证书获取状态
*
* @Author: shengchenglong
* @Date: 2018/10/23 18:52
*/
public enum CertificateGrantStatus {
UN_FINISHED("计划未完成,无法获得证书"),
HAS_GOT("已经获取过该证书"),
SUCCESS_GET("恭喜您!成功获得证书");
private String value;
CertificateGrantStatus(String value) {
this.value = value;
}
public String getValue() {
return this.value;
}
}
package com.yizhi.training.application.constant;
/**
* 培训项目常量
*
* @Author: shengchenglong
* @Date: 2018/3/26 14:47
*/
public interface ProjectConstant {
/**
* 删除状态:未删
*/
Integer DELETED_NO = 0;
/**
* 删除状态:已删
*/
Integer DELETED_YES = 1;
/**
* 是否启用报名 0:否
*/
Integer PROJECT_ENABLE_ENROLL_NO = 0;
/**
* 是否启用报名 1:是
*/
Integer PROJECT_ENABLE_ENROLL_YES = 1;
/**
* 是否启用签到 0:否
*/
Integer PROJECT_ENABLE_SIGN_NO = 0;
/**
* 是否启用签到 1:是
*/
Integer PROJECT_ENABLE_SIGN_YES = 1;
/**
* 是否启用提醒 0:否
*/
Integer PROJECT_ENABLE_REMIND_NO = 0;
/**
* 是否启用提醒 1:是
*/
Integer PROJECT_ENABLE_REMIND_YES = 1;
// ****************************************
/**
* 项目状态 0:草稿
*/
Integer PROJECT_STATUS_DRAFT = 0;
/**
* 项目状态 1:启用
*/
Integer PROJECT_STATUS_ENABLE = 1;
/**
* 项目状态 2:停用
*/
Integer PROJECT_STATUS_DISABLE = 2;
// **************************************
/**
* 项目指定学员可见:0
*/
Integer PROJECT_VISIBLE_RANGE_ACCOUNT = 0;
/**
* 项目平台用户可见(创建人管理权限范围)
*/
Integer PROJECT_VISIBLE_RANGE_SITE = 1;
// **************************************
/**
* 审核状态:0通过
*/
Integer COMMENT_AUDIT_STATUS_UP = 0;
/**
* 审核状态:1下架
*/
Integer COMMENT_AUDIT_STATUS_DOWN = 1;
// *****************************************
/**
* 完成条件:0属于学习计划
*/
Integer CONDITION_BELONG_PLAN = 0;
/**
* 完成条件:1属于学习活动
*/
Integer CONDITION_BELONG_ACTIVITY = 1;
// ***********************************************
// // 活动类型: 0课程 1考试 2调研 3直播 4投票 5作业 6证书 7签到 8外部链接
//
// Integer PROJECT_ACTIVITY_TYPE_COURSE = 0;
// Integer PROJECT_ACTIVITY_TYPE_EXAM = 1;
// Integer PROJECT_ACTIVITY_TYPE_RESEARCH = 2;
// Integer PROJECT_ACTIVITY_TYPE_LIVE = 3;
// Integer PROJECT_ACTIVITY_TYPE_VOTE = 4;
// Integer PROJECT_ACTIVITY_TYPE_ASSIGNMENT = 5;
// Integer PROJECT_ACTIVITY_TYPE_CERTIFICATE = 6;
// Integer PROJECT_ACTIVITY_TYPE_SIGN = 7;
// Integer PROJECT_ACTIVITY_TYPE_LINK = 8;
// *************************************************
/**
* 计划条件类型,0:计划前置条件
*/
Integer TP_PLAN_CONDITION_VO_TYPE_PRE = 0;
/**
* 计划条件类型,1:计划完成条件
*/
Integer TP_PLAN_CONDITION_VO_TYPE_POST = 1;
/**
* 活动条件类型,0:活动开启条件
*/
Integer TP_PLAN_ACTIVITY_CONDITION_VO_PRE = 0;
/**
* 活动条件类型,1:活动完成条件(目前只有考试有完成条件)
*/
Integer TP_PLAN_ACTIVITY_CONDITION_VO_POST = 1;
/**
* 学习计划完成条件的类型,0:设置完成活动数
*/
Integer TP_PLAN_CONDITION_POST_ACTIVITY_NUM = 0;
/**
* 学习计划完成条件的类型,1:指定完成活动
*/
Integer TP_PLAN_CONDITION_POST_ACTIVITY_ID = 1;
/**
* 学习活动开启条件的类型,0:设置完成活动数
*/
Integer TP_PLAN_ACTIVITY_CONDITION_PRE_NUM = 0;
/**
* 学习活动开启条件的类型,1:指定完成活动
*/
Integer TP_PLAN_ACTIVITY_CONDITION_PRE_ID = 1;
/**
* 学习活动(考试)完成条件,0:不设置及格分
*/
Integer TP_PLAN_ACTIVITY_EXAM_CONDITION_POST_NONE = 0;
/**
* 学习活动(考试)完成条件,1:指定分数及格
*/
Integer TP_PLAN_ACTIVITY_EXAM_CONDITION_POST_SCORE = 1;
/**
* 自定义项目h5接口权限验证通过 1
*/
Integer TP_PLAN_CUSTOMPROJECT_PASS = 1;
/**
* 自定义项目h5接口权限验证通过 0
*/
Integer TP_PLAN_CUSTOMPROJECT_FAIL = 0;
}
package com.yizhi.training.application.enums;
public enum TrEnrollStatusEnum {
NO_ENROLL(10,"无需报名"),
FREE_ENROLL(20,"免费报名"),
PAY_ENROLL(30,"收费报名"),
;
private Integer code;
private String value;
public Integer getCode() {
return code;
}
public void setCode(Integer code) {
this.code = code;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
TrEnrollStatusEnum(Integer code, String value) {
this.code = code;
this.value = value;
}
}
package com.yizhi.training.application.exception;
import lombok.Data;
/**
* @Author: shengchenglong
* @Date: 2018/6/5 15:48
*/
@Data
public class TrainingProjectException extends Exception {
private String message;
public TrainingProjectException(String message) {
this.message = message;
}
}
package com.yizhi.training.application.feign;
import com.yizhi.training.application.vo.api.TpStudentProjectRecordEbscnVO;
import com.yizhi.training.application.vo.api.UserTrainingProjectStatusVO;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
@FeignClient(name = "trainingProject", contextId = "OutsideEbscnClient")
public interface OutsideTrainingProjectEbscnClient {
/**
* 根据培训项目名称获取指定用户的完成状态
*/
@PostMapping("/outside/ebscn/users/study/status")
TpStudentProjectRecordEbscnVO geUserTrainingProjectStatus(@RequestBody UserTrainingProjectStatusVO vo);
}
package com.yizhi.training.application.feign;
import com.yizhi.training.application.param.PaidTrainingProjectQO;
import com.yizhi.training.application.vo.api.PaidTrainingProjectVO;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import javax.validation.Valid;
import java.util.List;
/**
* @ClassName: PaidTrainingProjectClient
* @author: zjl
* @date: 2021/1/12 16:27
*/
@FeignClient(name = "trainingProject", contextId = "PaidTrainingProjectClient")
public interface PaidTrainingProjectClient {
/**
* 按条件获取付费课程
* @param qo
* @return
*/
@PostMapping("/trainingProject/paid/get")
public List<PaidTrainingProjectVO> getPaidTrainingProject(@Valid @RequestBody PaidTrainingProjectQO qo);
}
package com.yizhi.training.application.feign;
import com.yizhi.training.application.vo.RemoteDaIndicatorVo;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
/**
* @ClassName DaIndicatorAccountController
* @Description TODO
* @Author shengchenglong
* @DATE 2019-10-09 16:52
* @Version 1.0
*/
@FeignClient(name = "trainingProject", contextId = "RemoteDaIndicatorTpClient")
public interface RemoteDaIndicatorTpClient {
/**
* dashboard - 完成课程数
*
* @return
*/
@PostMapping("/remote/da/tp/tpFinish")
public boolean tpFinish(@RequestBody RemoteDaIndicatorVo vo);
}
package com.yizhi.training.application.feign;
import com.yizhi.training.application.vo.manage.StudyCoursePlanProgressVo;
import com.yizhi.training.application.vo.manage.StudyExamPlanProjectVo;
import com.yizhi.training.application.vo.manage.StudyPlanProjectProgressVo;
import com.yizhi.training.application.vo.manage.StudyPlanProjectVo;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
/**
* 申万宏源项目接口
* @author meicunzhi
*
*/
@FeignClient(name = "trainingProject", contextId = "ShenWanHongYuanProjectClient")
public interface ShenWanHongYuanProjectClient {
/**
* 查询所有学习计划信息
* @param companyId
* @return
*/
@GetMapping(value = "swhy/studyplan/all")
List<StudyPlanProjectVo> swhyStudyplanAll(@RequestParam("companyId")Long companyId);
/**
* 查询单个学员学习计划完成情况
* @param companyId
* @param accountId
* @param projectId 可为空
* @return
*/
@GetMapping(value = "swhy/studyplan/record/account")
List<StudyPlanProjectVo> swhyRecordAccount(@RequestParam("companyId")Long companyId, @RequestParam("accountId")Long accountId,
@RequestParam("projectId")Long projectId);
/**
* 查询当天指定学习计划的已完成学员学习记录
* @param companyId
* @param projectId
* @return
*/
@GetMapping(value = "swhy/studyplan/record/today")
List<StudyPlanProjectVo> swhyRecordAccountToday(@RequestParam("companyId")Long companyId, @RequestParam("projectId")Long projectId,
@RequestParam("queryDays")Integer queryDays);
/**
* 查询指定学习计划的考试学习记录
* @param companyId 企业ID
* @param projectId 项目ID
* @param planId 活动ID
* @param queryDays查询多少天内的记录(含当天),传空为全部
* @return
*/
@GetMapping(value = "swhy/studyplan/record/exam")
List<StudyExamPlanProjectVo> swhyExamRecordAccount(@RequestParam("companyId")Long companyId, @RequestParam("projectId")Long projectId,
@RequestParam("planId") Long planId, @RequestParam("queryDays") Integer queryDays);
/**
* 查询指定学习计划的所有课程进度
* @param siteId
* @param projectId
* @param totalCourse
* @param queryDays查询多少天内的记录(含当天),传空为全部
* @return
*/
@GetMapping(value = "swhy/studyplan/record/progress")
List<StudyPlanProjectProgressVo> swhyRecordAccountProgress(@RequestParam("siteId")Long siteId, @RequestParam("projectId")Long projectId, @RequestParam("queryDays") Integer queryDays);
/**
* 查询指定学习计划的考试学习记录
* @param siteId 站点ID
* @param projectId 项目ID
* @param planId 活动ID
* @param queryDays查询多少天内的记录(含当天),传空为全部
* @param groupType分组类型1按人员分组,2按人员和活动
*
* @return
*/
@GetMapping(value = "swhy/studyplan/record/course/progress")
List<StudyCoursePlanProgressVo> swhyRecordAccountCourseProgress(@RequestParam("siteId") Long siteId, @RequestParam("projectId") Long projectId,
@RequestParam("planId") Long planId, @RequestParam("queryDays") Integer queryDays, @RequestParam("groupType") Integer groupType);
/**
* 获取项目的课程ID
* @param projectId
* @return
*/
@GetMapping(value = "swhy/studyplan/record/project/courseids")
List<Long> getProjectCourseIds(@RequestParam("projectId") Long projectId);
/**
* 获取项目活动下的课程ID
* @param projectId
* @param planId
* @return
*/
@GetMapping(value = "swhy/studyplan/record/project/planId/courseids")
List<Long> getProjectPlanActivityCourseIds(@RequestParam("projectId") Long projectId, @RequestParam("planId")Long planId);
}
package com.yizhi.training.application.feign;
import com.yizhi.core.application.context.RequestContext;
import com.yizhi.training.application.vo.domain.TpClassificationVo;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
/**
* @Author: shengchenglong
* @Date: 2018/3/23 22:20
*/
@FeignClient(name = "trainingProject", contextId = "TpClassificationClient")
public interface TpClassificationClient {
@GetMapping(value = "/tpClassification/list")
List<TpClassificationVo> list(@RequestBody RequestContext context);
@PostMapping(value = "/tpClassification/save")
Boolean save(@RequestBody TpClassificationVo tpClassification);
@PostMapping(value = "/tpClassification/update")
Boolean update(@RequestBody TpClassificationVo tpClassification);
@GetMapping(value = "/tpClassification/view")
TpClassificationVo view(@RequestParam("id") Long id);
/**
* 分类逻辑删除 删除之前检验有误项目关联
* 有则删除失败 无则删除成功
*
* @param param 接参实体 只取id
* @return 布尔值 true删除成功 false 删除失败
*/
@PostMapping(value = "/tpClassification/delete")
Boolean tpClassificationDelete(@RequestBody TpClassificationVo param);
}
package com.yizhi.training.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.training.application.vo.domain.TpCommentVo;
import com.yizhi.training.application.vo.manage.PageCommentVo;
import io.swagger.annotations.ApiParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.Map;
/**
* @Author: shengchenglong
* @Date: 2018/3/23 22:20
*/
@FeignClient(name = "trainingProject", contextId = "TpCommentClient")
public interface TpCommentClient {
@GetMapping("/tpComment/list")
Page<PageCommentVo> list(
@RequestParam(name = "trainingProjectId")Long trainingProjectId,
@RequestParam(name = "accountId")Long accountId,
@RequestParam(name = "pageNo")Integer pageNo,
@RequestParam(name = "pageSize")Integer pageSize,
@RequestParam(name = "type") Integer type
);
@PostMapping("/tpComment/delete")
Boolean delete(@RequestBody TpCommentVo tpComment);
@PostMapping("/tpComment/save")
Boolean save(@RequestBody TpCommentVo tpComment);
@GetMapping("/tpComment/up")
Boolean up(@RequestParam("id") Long id);
@GetMapping("/tpComment/down")
Boolean down(@RequestParam("id") Long id);
@GetMapping("/tpComment/list/export")
public Map<String, Object> export(
@ApiParam(name = "trainingProjectId", value = "项目id") @RequestParam(name = "trainingProjectId") Long trainingProjectId,
@ApiParam(name = "trainingProjectName", value = "项目名称") @RequestParam(name = "trainingProjectName") String trainingProjectName);
/**
* 交银康联中调用的老接口
* @param trainingProjectId
* @param accountId
* @param pageNo
* @param pageSize
* @return
*/
@Deprecated
@GetMapping("/tpComment/listjykl")
Page<PageCommentVo> list(
@RequestParam(name = "trainingProjectId")Long trainingProjectId,
@RequestParam(name = "accountId")Long accountId,
@RequestParam(name = "pageNo")Integer pageNo,
@RequestParam(name = "pageSize")Integer pageSize
);
/**
* 交银康联中调用的老接口
* @param tpComment
* @return
*/
@Deprecated
@PostMapping("/tpComment/downjykl")
Boolean down(@RequestBody TpCommentVo tpComment);
}
package com.yizhi.training.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.training.application.vo.domain.TpCommentReplyVo;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
/**
* @Author: shengchenglong
* @Date: 2018/3/23 22:20
*/
@FeignClient(name = "trainingProject", contextId = "TpCommentReplyClient")
public interface TpCommentReplyClient {
@GetMapping("/tpCommentReply/list")
Page<TpCommentReplyVo> replyList(@RequestParam("commmentId")Long commmentId, @RequestParam("pageNo")Integer pageNo, @RequestParam("pageSize")Integer pageSize, @RequestParam("type")Integer type);
@PostMapping("/tpCommentReply/save")
Boolean save(@RequestBody TpCommentReplyVo tpCommentReply);
@GetMapping("/tpCommentReply/delete")
Boolean delete(@RequestParam("tpCommentReplyId") Long tpCommentReplyId);
@GetMapping("/tpCommentReply/up")
Boolean up(@RequestParam("id") Long id);
@GetMapping("/tpCommentReply/down")
Boolean down(@RequestParam("id") Long id);
/**
* 交银康联中调用的老接口
* @param commmentId
* @param pageNo
* @param pageSize
* @return
*/
@Deprecated
@GetMapping("/tpCommentReply/listjykl")
Page<TpCommentReplyVo> replyList(@RequestParam("commmentId")Long commmentId, @RequestParam("pageNo")Integer pageNo, @RequestParam("pageSize")Integer pageSize);
}
package com.yizhi.training.application.feign;
import com.yizhi.training.application.vo.domain.TpCommentThumbsUpVo;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
/**
* @Author: shengchenglong
* @Date: 2018/3/23 22:20
*/
@FeignClient(name = "trainingProject", contextId = "TpCommentThumbsUpClient")
public interface TpCommentThumbsUpClient {
@PostMapping("/tpCommentThumbsUp/save")
Boolean save(@RequestBody TpCommentThumbsUpVo tpCommentThumbsUp);
@PostMapping("/tpCommentThumbsUp/delete")
Boolean delete(@RequestBody TpCommentThumbsUpVo tpCommentThumbsUp);
@GetMapping("/tpCommentThumbsUp/count")
Integer countThumbsUp(@RequestParam(value = "commentId 评论id")Long commentId);
}
package com.yizhi.training.application.feign;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
@FeignClient(name = "trainingProject", contextId = "TpEnrollPassedClient")
public interface TpEnrollPassedClient {
@GetMapping("/TpStudentEnrollPassedVo/selectTpIdByCondition")
Long selectTpIdByCondition(@RequestParam(value = "tpProjrctId")Long tpProjrctId);
}
package com.yizhi.training.application.feign;
import com.yizhi.training.application.constant.CertificateGrantStatus;
import com.yizhi.training.application.model.BaseModel;
import com.yizhi.training.application.vo.domain.TpPlanActivityVo;
import com.yizhi.training.application.vo.manage.ConditionDeleteVo;
import com.yizhi.training.application.vo.manage.TpPlanActivityConditionUpdateVo;
import com.yizhi.training.application.vo.manage.TpPlanActivitySingleVo;
import com.yizhi.util.application.enums.i18n.Constants;
import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
import java.util.Map;
import java.util.Set;
/**
* @Author: shengchenglong
* @Date: 2018/3/27 20:19
*/
@FeignClient(name = "trainingProject", contextId = "TpPlanActivityClient")
public interface TpPlanActivityClient {
/**
* 更新排序
*
* @param list
* @return
*/
@PostMapping("/tpPlanActivity/sort/update")
Integer updateSort(@RequestBody List<TpPlanActivityVo> list);
/*
* 通过 作业id去查询相应的 计划内容
* */
@PostMapping("/tpPlanActivity/tpPlan/list")
List<Long> allListByAssignmentIds(@RequestBody List<TpPlanActivityVo> tpPlanActivityVos);
/**
* 查询培训活动列表
*
* @param tpPlanId 所属培训计划id
* @return
*/
@GetMapping("/tpPlanActivity/all/list")
List<TpPlanActivityVo> allList(@RequestParam("tpPlanId") Long tpPlanId, @RequestParam("name") String name, @RequestParam("type") Integer type);
/**
* 查询培训活动列表
*
* @param tpId 所属培训项目id
* @return
*/
@GetMapping("/tpPlanActivity/tp/all/list")
List<TpPlanActivityVo> allListByTpId(@RequestParam("tpId") Long tpId);
/**
* 编辑培训活动开启、完成条件
*
* @param model
* @return
* @throws Exception
*/
@PostMapping("/tpPlanActivity/condition/edit")
Integer conditionEdit(@RequestBody BaseModel<TpPlanActivityConditionUpdateVo> model);
/**
* 在修改培训计划时,若有移除培训活动,使用该接口
*
* @param model
* @return
*/
@PostMapping("/tpPlanActivity/batch/delete")
Integer batchDelete(@RequestBody BaseModel<List<Long>> model);
/**
* 修改培训计划时,单个添加学习活动
*
* @param model
* @return
*/
@PostMapping("/tpPlanActivity/save")
Integer addOne(@RequestBody BaseModel<List<TpPlanActivitySingleVo>> model);
/**
* 删除前置 或 后置条件
*
* @param model 包含的是id
* @return
*/
@PostMapping("/tpPlanActivity/condition/delete")
Integer deleteConditions(@RequestBody BaseModel<ConditionDeleteVo> model);
@GetMapping("/tpPlanActivity/get")
TpPlanActivityVo getOne(@RequestParam("id") Long id);
/**
* 检查业务是否在培训项目中存在
*
* @param relationIds
* @return 存在的业务id数组
*/
@Deprecated
@GetMapping("/tpPlanActivity/biz/exist/check/")
List<Long> checkBizIsExistInTp(@RequestBody List<Long> relationIds);
@GetMapping("/tpPlanActivity/biz/exist/names/check")
Set<String> checkBizIsExistInTpNames(@RequestBody List<Long> relationIds);
/**
* 添加一条活动浏览记录
*
* @param model
* @return
*/
@PostMapping("/tpPlanActivity/view/record/add")
Integer addViewRecord(@RequestBody BaseModel<Long> model);
/**
* 点击发放证书
*
* @param param
* @return
*/
@PostMapping("/tpPlanActivity/certificate/grant")
CertificateGrantStatus certificateGrant(@RequestBody Map<String, Long> param);
/**
* 点击发放证书 ( PC端 )
* @param param
* @return
*/
@PostMapping("/tpPlanActivity/pc/certificate/grant")
Constants certificatePcGrant(@RequestBody Map<String, Long> param);
/**
* 获取培训项目下的活动个数
* @param id 培训id
* @return
*/
@GetMapping("/tpPlanActivity/get/courseIds")
List<Long> getActiveCountById(@RequestParam(name = "id") Long id);
@ApiOperation(value = "获取培训项目下的活动个数 v2 版本 修改:活动数去掉证书")
@GetMapping("/tpPlanActivity/get/v2/courseIds")
public List<Long> getExcCertiferActiveCountById(@RequestParam(name = "id") Long id);
@GetMapping("/tpPlanActivity/activitiesExport")
public String activitiesExport(@RequestBody Map<String, Object> map);
/**
* 检查业务是否被培训项目关联(不存在或者包含该业务所在计划被删除了或者包含该业务所在培训项目下架或删除啦)
* @param bizType 活动类型:0课程 1考试 2调研 3直播 4投票 5作业 6证书 7外部链接 8报名 9签到 10线下课程 11:案例活动、12:精选案例 、13:论坛帖子
* @param relationId 业务id
* @return
*/
@GetMapping("/tpPlanActivity/biz/canDown")
public Boolean checkBizCanDown(@RequestParam("bizType")Integer bizType,@RequestParam("relationId") Long relationId);
}
package com.yizhi.training.application.feign;
import com.yizhi.training.application.model.BaseModel;
import com.yizhi.training.application.vo.manage.ConditionDeleteVo;
import com.yizhi.training.application.vo.manage.TpPlanUpdateVo;
import com.yizhi.training.application.vo.domain.TpPlanVo;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
/**
* @Author: shengchenglong
* @Date: 2018/3/27 16:03
*/
@FeignClient(name = "trainingProject", contextId = "TpPlanClient")
public interface TpPlanClient {
/**
* 查询培训项目下的所有培训计划
*
* @param trainingProjectId
* @return
*/
@GetMapping("/tpPlan/all/list")
List<TpPlanVo> listAll(@RequestParam("trainingProjectId") Long trainingProjectId);
/**
* 更新排序
*
* @param list
* @return
*/
@PostMapping("/tpPlan/sort/update")
Integer updateSort(@RequestBody List<TpPlanVo> list);
/**
* 新增培训计划(包括计划中的活动和条件等)
*
* @param model
* @return
*/
@PostMapping("/tpPlan/save")
TpPlanVo save(@RequestBody BaseModel<com.yizhi.training.application.vo.manage.TpPlanVo> model);
/**
* 修改培训计划
*
* @param model
* @return
*/
@PostMapping("/tpPlan/update")
TpPlanVo update(@RequestBody BaseModel<TpPlanUpdateVo> model);
/**
* 删除前置 或 后置条件
*
* @param model 包含的是id
* @return
*/
@PostMapping("/tpPlan/condition/delete")
Integer deleteConditions(@RequestBody BaseModel<ConditionDeleteVo> model);
/**
* 根据id批量删除
*
* @param ids
* @return
*/
@PostMapping("/tpPlan/batch/delete")
Integer batchDelete(@RequestBody BaseModel<List<Long>> ids);
/**
* 查看培训计划的内容(包括提醒、前置计划、完成条件)
*
* @param planId
* @return
*/
@GetMapping("/tpPlan/detail/view")
TpPlanVo viewDetail(@RequestParam("planId") Long planId);
/**
* 根据计划id清空计划活动(包括条件等)
*
* @param model
* @return
*/
@PostMapping("/tpPlan/truncate/activity")
Integer truncateActivity(@RequestBody BaseModel<Long> model);
/**
* 获取计划实体
* @param tpPlanId
* @return
*/
@GetMapping("/tpPlan/getOne")
public TpPlanVo getOne(@RequestParam("tpPlanId") Long tpPlanId);
/**
* type;1-上移 2-下移 必填
*/
@GetMapping("/tpPlan/move")
public Integer move(@RequestParam("type") Integer type,
@RequestParam("id") Long id);
}
package com.yizhi.training.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.training.application.vo.api.TpStudentProjectRecordVoVO;
import com.yizhi.training.application.vo.manage.TpPlanFinishedListVo;
import com.yizhi.training.application.vo.manage.TpPlanFinishedVo;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
import java.util.Map;
/**
* @author Ding
* @className TpPlanFinishedApiClient
* @description 自定义项目, 项目/计划 完成情况
* @date 2018/12/4
**/
@FeignClient(name = "trainingProject", contextId = "TpPlanFinishedApiClient")
public interface TpPlanFinishedApiClient {
/**
* 任务完成情况API获取计划列表
*
* @param projectId
* @return
*/
@GetMapping("/tpPlan/all/finishedList")
Page<TpPlanFinishedListVo> tpPlanList(@RequestParam("projectId") Long projectId, @RequestParam("pageNo") Integer pageNo, @RequestParam("pageSize") Integer pageSize);
/**
* 任务完成情况计划信息
*
* @param projectId
* @param tpPlanId
* @return
*/
@GetMapping("/tpPlan/getTpPlanActivity")
TpPlanFinishedVo getTpPlanActivity(@RequestParam("projectId") Long projectId, @RequestParam("tpPlanId") Long tpPlanId);
/**
* 任务完成情况点击活动
*
* @param activityId
* @param tpPlanId
* @return
*/
@GetMapping("/tpPlan/clickActivity")
Map<String, Object> ClickActivity(@RequestParam("activityId") Long activityId, @RequestParam("tpPlanId") Long tpPlanId);
/**
* 复旦mini mba项目获取项目完成情况
*
* @param projectIds
* @return
*/
@PostMapping("/tpPlan/getProjectsStatus")
List<TpStudentProjectRecordVoVO> getProjectsStatus(@RequestBody List<Long> projectIds);
/**
* 复旦mini mba项目获取正在学习人数
*
* @param projectIds
* @return
*/
@PostMapping("/tpPlan/getProjectsStudyingNum")
Integer getProjectsStudyingNum(@RequestBody List<Long> projectIds);
/**
* 复旦mini mba项目获取学习记录
*
* @param projectIds
* @return
*/
@PostMapping("/tpPlan/getProjectsStudyingRecords")
List<TpStudentProjectRecordVoVO> getProjectsStudyingRecords(@RequestBody List<Long> projectIds);
}
package com.yizhi.training.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.core.application.context.RequestContext;
import com.yizhi.training.application.vo.manage.SearchProjectVo;
import com.yizhi.training.application.vo.domain.TrainingProjectVo;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
import java.util.Map;
/**
* @Author: shengchenglong
* @Date: 2018/3/23 22:20
*/
@FeignClient(name = "trainingProject", contextId = "TpProjectClient")
public interface TpProjectClient {
@GetMapping(value = "/trainingProject/list")
Page<TrainingProjectVo> list(@RequestBody SearchProjectVo searchProjectVo);
/**
* 查询项目列表 版本2
* 对比版本1 新增筛选条件查询:无需报名;免费报名;收费报名
* @param searchProjectVo 入参
*/
@GetMapping(value = "/trainingProject/list/v2")
Page<TrainingProjectVo> listV2(@RequestBody SearchProjectVo searchProjectVo);
@PostMapping("/trainingProject/up")
Integer up(@RequestBody Map<String, Long> map);
@PostMapping("/trainingProject/down")
Boolean down(@RequestBody Map<String, Long> map);
/**
* 王飞达
*
* @param searchProjectVo
* @return
*/
@GetMapping(value = "/trainingProject/list/notIds")
Page<TrainingProjectVo> listNotIds(@RequestBody SearchProjectVo searchProjectVo);
/**
* 自定义项目h5接口培训项目验证用户权限
*
* @return
*/
@GetMapping("/trainingProject/getCustomProjectRange")
Integer getCustomProjectRange(@RequestParam("projectId") Long projectId);
/**
* 案例库获取培训项目信息
*
* @param idList
* @return
* @author ding
*/
@GetMapping("/trainingProject/getCaseLibraryProject")
Map<Long, TrainingProjectVo> getCaseLibraryProject(@RequestParam("idList") List<Long> idList);
/**
* 我的案例获取可见范围id
*
* @param res
* @return
*/
@PostMapping("/trainingProject/caseLibrary/getRangeProjects")
List<TrainingProjectVo> getCaseLibraryRangeProjects(@RequestBody RequestContext res);
}
package com.yizhi.training.application.model;
import com.yizhi.core.application.context.RequestContext;
import lombok.Data;
import java.util.Date;
/**
* @Author: shengchenglong
* @Date: 2018/3/27 15:55
*/
@Data
public class BaseModel<T> {
private RequestContext context;
private Date date;
private T obj;
}
package com.yizhi.training.application.param;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* 自定义项目获取作业打卡和被赞次数请求类
*
* @Author: dingxiaowei
* @Date: 2019/10/22
*/
@Data
@ApiModel("自定义项目获取作业打卡和被赞次数请求类")
public class AssignmentDetailsParam {
@ApiModelProperty(value = "培训项目ids")
private List<Long> projectIds;
@ApiModelProperty(value = "是否取实时数据 0:前天截止数据 1:实时数据")
private Integer isReaTime;
}
package com.yizhi.training.application.param;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
* @ClassName: PaidTrainingProjectQO
* @author: zjl
* @date: 2021/1/12 16:28
*/
@Data
@ApiModel(value = "付费课程入参")
public class PaidTrainingProjectQO implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "搜索关键字")
private String keyword;
@ApiModelProperty(value = "排序字段 actualPrice(实际价格) exchangeCount(兑换量) releaseTime(上架时间)")
private String orderField;
@ApiModelProperty(value = "排序顺序 asc:升序 desc:倒序")
private String order;
@ApiModelProperty(value = "分页参数:每页条数,默认10条")
private Integer pageSize = 10;
@ApiModelProperty(value = "分页参数:跳转页,默认1")
private Integer pageNo = 1;
@ApiModelProperty(value = "兑换状态:0(全部) 1(已兑换) 2(未兑换) 3(可兑换)")
private Integer exchangeState = 0;
@ApiModelProperty(value = "站点id", hidden = true)
private Long siteId;
}
package com.yizhi.training.application.param;
import lombok.Data;
/**
* 培训项目查询参数
*
* @Author: shengchenglong
* @Date: 2018/5/12 11:38
*/
@Data
public class TrainingProjectParam {
private String name;
private Long companyId;
private Long orgId;
private Long siteId;
private Status status;
public enum Status {
UP(1),
DOWN(2);
private int code;
Status(int code) {
this.code = code;
}
public int getCode() {
return this.code;
}
}
}
package com.yizhi.training.application.vo;
import java.util.Arrays;
import java.util.List;
/**
*
*/
public enum EvenType {
COURSE_UP(1L,Arrays.asList(1,2)),//"课程上架通知"
COURSE_FINISH(2L, Arrays.asList(1,2)),//课程完成通知
ENROLL_START(3L, Arrays.asList(1,3,4,5)),//报名开始
TRAINING_AUDIT_PASS(4L, Arrays.asList(1,3,4,5)),//项目审核通过通知
TRAINING_AUDIT_FAIL(5L, Arrays.asList(1,3,4,5)),//项目审核不通过通知
SIGN_SUCCESS(6L, Arrays.asList(1,3,4,5)),//签到成功通知
TRAINING_FINISH(7L, Arrays.asList(1,3,4,5)),//项目完成通知
ASSIGNMENT_AUDIT_FINISH(8L, Arrays.asList(1,6,7,8)),//作业已被批阅通知
EXAM_AUDIT_FINISH(9L, Arrays.asList(1,9,10,11)),//考试已被批阅通知
POINT_CHANGE(10L, Arrays.asList(1,12,13,14));//积分变动原因
//数据库message表的id
private Long key;
//数据库message_parameter表的field_type
private List<Integer> fieldType;
private EvenType(Long key, List<Integer> fieldType) {
this.key = key;
this.fieldType = fieldType;
}
public Long getKey() {
return key;
}
public List<Integer> getName() {
return fieldType;
}
}
package com.yizhi.training.application.vo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Date;
/**
* @ClassName RemoteDaIndicatorVo
* @Description TODO
* @Author shengchenglong
* @DATE 2019-10-11 17:23
* @Version 1.0
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
public class RemoteDaIndicatorVo {
private Long siteId;
private Date startDate;
private Date endDate;
private Date day;
private Date processTime;
}
package com.yizhi.training.application.vo.api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
@Data
public class CalendarTaskParamVo {
@ApiModelProperty("时间参数")
public Date date;
@ApiModelProperty("业务类型")
public Integer taskType = 0;
@ApiModelProperty("当前页数")
public Integer pageNo;
@ApiModelProperty("页内条数")
public Integer pageSize;
}
package com.yizhi.training.application.vo.api;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* @Author: shengchenglong
* @Date: 2018/4/23 13:52
*/
@Data
@ApiModel(value = "火热报名列表vo")
public class HotEnrollListVo {
@ApiModelProperty(value = "培训项目id")
private Long trainingProjectId;
@ApiModelProperty(value = "培训项目名称")
private String tpName;
@ApiModelProperty(value = "培训项目图片")
private String tpLogoImg;
@ApiModelProperty(value = "报名id")
private Long enrollId;
@ApiModelProperty(value = "报名开始时间")
private Date enrollStartTime;
@ApiModelProperty(value = "报名结束时间")
private Date enrollEndTime;
@ApiModelProperty(value = "报名开始时间-String类型")
private String enrollStartTimeString;
@ApiModelProperty(value = "报名结束时间-String类型")
private String enrollEndTimeString;
@ApiModelProperty("课程数量")
private Integer activitieNum;
@ApiModelProperty("学时")
private Float period;
@ApiModelProperty("培训项目学时显示 true 显示,false不显示")
private Boolean trainingDurationShow;
@ApiModelProperty("所有課程id")
private List<Long> listCourseIds = new ArrayList<>();
@ApiModelProperty(value = "是否付费报名,默认false")
private Integer enablePay;
}
package com.yizhi.training.application.vo.api;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* @Author: shengchenglong
* @Date: 2018/4/23 09:25
*/
@Data
@ApiModel(value = "火热报名列表参数vo")
public class HotEnrollParamVo {
@ApiModelProperty(value = "当前时间,必传")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date now;
@ApiModelProperty(value = "分页参数:每页条数,默认20条")
private Integer pageSize = 20;
@ApiModelProperty(value = "分页参数:跳转页,默认1")
private Integer pageNo = 1;
@ApiModelProperty(value = "是否付费;0否;1是;默认为null")
private Integer enablePay ;
}
package com.yizhi.training.application.vo.api;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @Author: shengchenglong
* @Date: 2018/4/11 14:26
*/
@Data
@ApiModel(value = "培训项目id vo")
public class IdVo {
@ApiModelProperty(value = "培训项目id")
private Long id;
}
package com.yizhi.training.application.vo.api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
* @description: 我的页面VO
* @author: lly
* @date: 2019-01-03 20:07
**/
@Data
public class MyPageVO implements Serializable {
/**
* 未开始记录总数
*/
@ApiModelProperty(value ="记录总数")
private Integer unStartRecords;
/**
* 进行中记录总数
*/
@ApiModelProperty(value ="进行中记录总数")
private Integer processRecords;
/**
* 完成记录总数
*/
@ApiModelProperty(value ="已经完成记录总数")
private Integer finishRecords;
}
package com.yizhi.training.application.vo.api;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* @ClassName: PaidTrainingProjectVO
* @author: zjl
* @date: 2021/1/12 16:13
*/
@Data
@ApiModel(value = "付费项目返回vo")
public class PaidTrainingProjectVO implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键id")
private Long id;
@ApiModelProperty(value = "培训项目名称")
private String name;
@ApiModelProperty(value = "logo图片")
private String logoImg;
@ApiModelProperty(value = "项目上架时间")
private Date releaseTime;
@ApiModelProperty(value = "购买金币的实际价格")
private Integer actualPrice;
@ApiModelProperty(value = "购买金币的原价")
private Integer originalPrice;
@ApiModelProperty(value = "兑换数")
private Integer exchangeCount;
}
package com.yizhi.training.application.vo.api;
import com.baomidou.mybatisplus.annotations.TableField;
import com.yizhi.training.application.vo.domain.TpStudentProjectRecordVo;
import com.yizhi.training.application.vo.domain.TrainingProjectVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
* <p>
* 培训项目完成情况,由学习计划完成记录计算得出
* </p>
*/
@Data
@Api(tags = "TpStudentProjectRecordEbscnVO", description = "培训项目完成情况,由学习计划完成记录计算得出")
public class TpStudentProjectRecordEbscnVO extends TpStudentProjectRecordVo {
@ApiModelProperty(value = "培训项目信息")
private TrainingProjectVo trainingProject;
@ApiModelProperty(value = "用户对该培训项目的学习状态记录")
private List<TpStudentProjectRecordVo> data;
@ApiModelProperty(value = "该培训项目关联的课程id")
private List<Long> CourseIds;
}
package com.yizhi.training.application.vo.api;
import com.yizhi.training.application.vo.domain.TpStudentProjectRecordVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* <p>
* 培训项目完成情况,由学习计划完成记录计算得出
* </p>
*
* @author ding
* @since 2019-10-22
*/
@Data
@Api(tags = "TpStudentProjectRecordVoVO", description = "培训项目完成情况,由学习计划完成记录计算得出")
public class TpStudentProjectRecordVoVO extends TpStudentProjectRecordVo {
@ApiModelProperty(value = "项目完成状态 0:未解锁(未开始) 1:已完成 2:未完成")
private Integer state;
@ApiModelProperty(value = "项目开始时间")
private Date startTime;
@ApiModelProperty(value = "项目结束时间")
private Date endTime;
@ApiModelProperty("培训项目名称")
private String trainingProjectName;
}
package com.yizhi.training.application.vo.api;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "评论分页参数说明")
public class TrCommentVo {
@ApiModelProperty(value = "培训项目Id 必传",required = true)
Long trainingProjectId;
@ApiModelProperty(value = "评论分页参数")
Integer pageNo = 1;
@ApiModelProperty(value = "评论分页参数")
Integer pageSize = 10;
@ApiModelProperty(value = "回复列表分页参数")
Integer replyPageNo = 1;
@ApiModelProperty(value = "回复列表分页参数")
Integer replyPageSize = 5;
}
package com.yizhi.training.application.vo.api;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* @Author: shengchenglong
* @Date: 2018/4/11 14:42
*/
@Data
@ApiModel(value = "培训内容--学习活动vo")
public class TrainingProjectContentActivityVo {
@ApiModelProperty(value = "主键id")
private Long id;
@ApiModelProperty(value = "活动类型:活动类型: 0课程 1考试 2调研 3直播 4投票 5作业 6证书 7外部链接 8报名 9签到 10线下课程")
private Integer type;
@ApiModelProperty(value = "关联的活动的id")
private Long relationId;
@ApiModelProperty(value = "外部链接的url")
private String url;
@ApiModelProperty(value = "活动名称,从活动那边取过来,不能自定义")
private String name;
@ApiModelProperty(value = "排序")
private Integer sort;
@ApiModelProperty(value = "当前活动开启条件:完成以下学习活动")
private List<Long> conditionPreActivityIds = new ArrayList<>();
@ApiModelProperty(value = "当前活动开启条件:完成指定学习活动数")
private Integer conditionPreActivityNums = 0;
@ApiModelProperty(value = "当前活动是否已经开始")
private Boolean started = Boolean.valueOf(false);
@ApiModelProperty(value = "当前活动是否已经完成")
private Boolean finished = Boolean.valueOf(false);
/**
* 该字段仅仅用于有未完成(recorde 记录为0的那种业务记录)
* 如:考试、线下课程等
*/
private Boolean unPassed = Boolean.valueOf(false);
/**
* 该字段仅仅用于有手动导入完成状态的活动
* 如:线下课程等
*/
private Boolean unImported = Boolean.valueOf(false);
private Boolean clicked = Boolean.valueOf(false);
@ApiModelProperty(value = "当前状态")
private String status;
@ApiModelProperty(value = "活动是否已经过期")
private Boolean expired;
@ApiModelProperty(value = "该业务是否包含证书 --是否发放证书: true :配置开启证书,false :不开启证书")
private Boolean hasCertificate;
@ApiModelProperty(value = "观看类型:0: 公开播放 ; 1: 站内授权播放; ")
private Integer viewType;
}
package com.yizhi.training.application.vo.api;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* @Author: shengchenglong
* @Date: 2018/4/11 14:42
*/
@Data
@ApiModel(value = "培训内容--学习计划vo")
public class TrainingProjectContentPlanVo {
@ApiModelProperty(value = "主键id")
private Long id;
@ApiModelProperty(value = "学习计划名称")
private String name;
@ApiModelProperty(value = "学习计划开始时间")
private Date startTime;
@ApiModelProperty(value = "学习计划结束时间")
private Date endTime;
@ApiModelProperty(value = "活动集合")
private List<TrainingProjectContentActivityVo> activities = new ArrayList<>();
@ApiModelProperty(value = "开启当前学习计划:需要完成以下前置计划")
private List<String> prePlanNames = new ArrayList<>();
@ApiModelProperty(value = "当前计划是否开启")
private Boolean started = false;
@ApiModelProperty(value = "当前状态:未开始,进行中,已完成")
private String status;
@ApiModelProperty(value = "当前时间是否在计划时间段内")
private Boolean inTime;
@ApiModelProperty(value = "完成百分比")
private String percentageOfCompletion;
private Boolean finished;
@ApiModelProperty(hidden = true)
private List<Long> conditionPrePlanIds = new ArrayList<>();
@ApiModelProperty(hidden = true)
private Boolean inPlanStartTime;
@ApiModelProperty(hidden = true)
private Boolean inPlanEndTime;
@ApiModelProperty(value = "是否只有证书")
private Boolean isOnly = true;
/**
* 已经完成的
*/
@ApiModelProperty(hidden = true)
private List<Long> FinishedActivityIds = new ArrayList<>();
/**
* 完成条件指定要完成的
*/
@ApiModelProperty(hidden = true)
private List<Long> toFinishedActivityIds = new ArrayList<>();
/**
* 完成条件指定要完成的
*/
@ApiModelProperty(hidden = true)
private int toFinishedActivityNum = 0;
/**
* 所有的活动 id
*/
@ApiModelProperty(hidden = true)
private List<Long> allActivityIds = new ArrayList<>();
/**
* 需要参与完成率计算的 活动 id 只有证书是不参与的
*/
@ApiModelProperty(hidden = true)
private List<Long> needCalculateActivityIds = new ArrayList<>();
}
package com.yizhi.training.application.vo.api;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @Author: shengchenglong
* @Date: 2018/4/11 14:40
*/
@Data
@ApiModel(value = "培训项目详情--培训内容vo")
public class TrainingProjectContentVo {
@ApiModelProperty(value = "培训计划集合")
private List<TrainingProjectContentPlanVo> plans;
}
package com.yizhi.training.application.vo.api;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* @Author: shengchenglong
* @Date: 2018/5/11 10:31
*/
@Data
@ApiModel(value = "最近7天课程学习时长")
public class TrainingProjectCourseRecentVo{
@ApiModelProperty("日期")
private Date date;
@ApiModelProperty("学习时长")
private Long seconds = 0L;
}
package com.yizhi.training.application.vo.api;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @Author: shengchenglong
* @Date: 2018/4/26 15:42
*/
@Data
@ApiModel(value = "培训项目详情vo")
public class TrainingProjectDetailVo {
@ApiModelProperty("培训详情--培训介绍")
private TrainingProjectIntroductionVo introductionVo;
@ApiModelProperty("培训详情--培训内容")
private TrainingProjectContentVo contentVo;
@ApiModelProperty("培训项目学习进度统计")
private TrainingProjectProgressVo progressVo = new TrainingProjectProgressVo();
}
package com.yizhi.training.application.vo.api;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* @Author: shengchenglong
* @Date: 2018/4/10 17:04
*/
@Data
@ApiModel(value = "培训项目详情--培训简介--报名须知vo")
public class TrainingProjectIntroductionEnrollVo {
@ApiModelProperty(value = "报名主键id")
private Long id;
@ApiModelProperty(value = "报名名额")
private Integer limit;
@ApiModelProperty(value = "报名开始时间")
private Date startTime;
@ApiModelProperty(value = "报名结束时间")
private Date endTime;
@ApiModelProperty(notes = "注意事项")
private String notice;
}
package com.yizhi.training.application.vo.api;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* @Author: shengchenglong
* @Date: 2018/4/10 16:59
*/
@Data
@ApiModel(value = "培训项目详情--培训简介vo")
public class TrainingProjectIntroductionVo {
@ApiModelProperty(value = "培训项目主键id")
private Long id;
@ApiModelProperty(value = "图片")
private String logoImg;
@ApiModelProperty(value = "项目名称")
private String name;
@ApiModelProperty(value = "项目介绍")
private String description;
@ApiModelProperty(value = "开始时间")
private Date startTime;
@ApiModelProperty(value = "结束时间")
private Date endTime;
@ApiModelProperty(value = "是否需要报名")
private Boolean needEnroll = false;
@ApiModelProperty(value = "报名名额")
private Integer enrollLimit = 0;
@ApiModelProperty(value = "已经报名人数")
private Integer hasEnrolledNum = 0;
@ApiModelProperty(value = "是否已经报名")
private Boolean hasEnrolled = false;
@ApiModelProperty(value = "是否需要审核")
private Boolean needAudit = false;
@Deprecated
@ApiModelProperty(value = "是否已经审核")
private Boolean audited = false;
@ApiModelProperty(value = "审核状态:1:待审核,2:审核通过,3:审核不通过。")
private Integer auditStatus = 0;
@ApiModelProperty(value = "报名须知,不需则为null")
private TrainingProjectIntroductionEnrollVo enroll = new TrainingProjectIntroductionEnrollVo();
@ApiModelProperty(value = "根据参与人数与培训人数的比较: 立即报名-1、名额已满-2")
private Integer memberStutas;
@ApiModelProperty(value = "根据参与人数与培训人数的比较: 立即报名-msg.immediately.enroll、名额已满-msg.quota.full")
private String memberStutasCodeName;
@ApiModelProperty(value = "审核状态码:1:待审核-msg.audit.ing,2:审核通过-msg.audit.success,3:审核不通过-msg.audit.fail")
private String auditStutasCodeName;
@ApiModelProperty(value = "灯箱效果提示框")
private String titleStutasCodeName;
@ApiModelProperty(value = "项目可见范围类型==0:指定学员可见,1平台用户可见(创建人管理权限范围)")
private Integer type;
@ApiModelProperty(value = "培训名额 与项目可见范围有关")
private Integer trMembers;
@ApiModelProperty(value = "培训项目所有情况的列举" +
"1-培训时间未开始,请等待! 2-开始学习 3-报名尚未开始,无法进行项目学习! 4-报名已结束,无法进行项目学习!" +
"5-您尚未报名,报名成功后可进行学习。 6-名额已满,无法进行项目学习! 7-报名审核中,无法进行项目学习! 8-报名审核未通过,无法进行项目学习!9-已完成")
private Integer status;
@ApiModelProperty(value = "项目是否已完成")
private Boolean hasFinished;
@ApiModelProperty(value = "是否显示积分")
private Boolean enablePoint;
@ApiModelProperty(value = "培训项目主体积分")
private Integer point;
@ApiModelProperty(value = "所有积分最小总数")
private Integer minPoint;
@ApiModelProperty(value = "所有积分最大总数")
private Integer maxPoint;
@ApiModelProperty("学时")
private Float period;
@ApiModelProperty("培训项目学时显示 true 显示,false不显示")
private Boolean trainingDurationShow;
@ApiModelProperty(value = "多少人已经参与")
private Integer JoinNumber;
@ApiModelProperty(value = "是否开启定位(0:否,1:是),默认否")
private Integer enablePosition;
@ApiModelProperty(value = "是否付费报名,0否;1是")
private Integer enablePay;
@ApiModelProperty(value = "购买实际价格")
private Integer actualPrice;
@ApiModelProperty(value = "购买原价格")
private Integer originalPrice;
}
package com.yizhi.training.application.vo.api;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
* @Author: shengchenglong
* @Date: 2018/3/27 20:41
*/
@Data
@ApiModel(value = "培训项目列表vo")
public class TrainingProjectListVo {
@ApiModelProperty(value = "主键id")
private Long id;
@ApiModelProperty(value = "培训项目名称")
private String name;
@ApiModelProperty(value = "logo图片")
private String logoImg;
@ApiModelProperty(value = "学习项目开始时间")
private Date startTime;
@ApiModelProperty(value = "学习项目结束时间")
private Date endTime;
@ApiModelProperty(value = "多少人已经参与")
private Integer JoinNumber;
@ApiModelProperty(value = "是否已经完成")
private Boolean finished;
@ApiModelProperty(value = "学习项目开始时间-String类型")
private String startTimeString;
@ApiModelProperty(value = "学习项目结束时间-String类型")
private String endTimeString;
@ApiModelProperty(value = "课程数量")
private Integer activitieNum;
@ApiModelProperty(value = "学时")
private Float period;
@ApiModelProperty("培训项目学时显示 true 显示,false不显示")
private Boolean trainingDurationShow;
@ApiModelProperty("所有課程id")
private List<Long> listCourseIds;
@ApiModelProperty(value = "是否付费报名,默认0否,1是")
private Integer enablePay;
}
package com.yizhi.training.application.vo.api;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* @Author: shengchenglong
* @Date: 2018/4/9 11:24
*/
@Data
@ApiModel(value = "我的--培训项目列表查询参数vo")
public class TrainingProjectMyParamVo {
@ApiModelProperty(value = "列表类型,1:未开始,2:进行中,3:已完成,4.已过期", notes = "必传")
private Integer type;
@ApiModelProperty(value = "当前时间,必传")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date now;
@ApiModelProperty(value = "关键字,搜索用,非必传")
private String keyword;
@ApiModelProperty(value = "分页参数:每页条数,默认20")
private Integer pageSize = 20;
@ApiModelProperty(value = "分页参数:跳转页,默认1")
private Integer pageNo = 1;
}
package com.yizhi.training.application.vo.api;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* @Author: shengchenglong
* @Date: 2018/3/27 20:47
*/
@Data
@ApiModel(value = "首页--训项目列表查询参数vo")
public class TrainingProjectParamVo {
@ApiModelProperty(value = "当前时间,必传")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date now;
@ApiModelProperty(value = "关键字,搜索用,非必传")
private String keyword;
@ApiModelProperty(value = "分页参数:每页条数,默认20条")
private Integer pageSize = 20;
@ApiModelProperty(value = "分页参数:跳转页,默认1")
private Integer pageNo = 1;
@ApiModelProperty(value = "是否付费筛选,默认0否,1是")
private Integer enablePay;
}
package com.yizhi.training.application.vo.api;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* @Author: shengchenglong
* @Date: 2018/5/11 10:04
*/
@Data
@ApiModel(value = "培训项目学习进度统计")
public class TrainingProjectProgressVo {
@ApiModelProperty("总学习时长")
private Long totalStudySeconds = 0L;
@ApiModelProperty(value = "最近7天课程学习时长", notes = "按照时间顺序")
private List<TrainingProjectCourseRecentVo> courseRecentVos = new ArrayList<>();
@ApiModelProperty("总课程次数")
private Integer totalCourse = 0;
@ApiModelProperty("总考试次数")
private Integer totalExam = 0;
@ApiModelProperty("总调研次数")
private Integer totalResearch = 0;
@ApiModelProperty("总投票次数")
private Integer totalVote = 0;
@ApiModelProperty("总作业次数")
private Integer totalAssignment = 0;
@ApiModelProperty("总签到次数")
private Integer totalSign = 0;
/************************************ PC 端添加完成字段 *************************/
@ApiModelProperty("完成课程次数")
private Integer finishedCourseNum = 0;
@ApiModelProperty("完成考试次数")
private Integer finishedExamNum = 0;
@ApiModelProperty("完成调研次数")
private Integer finishedResearchNum = 0;
@ApiModelProperty("完成投票次数")
private Integer finishedVoteNum = 0;
@ApiModelProperty("完成总作业次数")
private Integer finishedAssignmentNum = 0;
@ApiModelProperty("完成签到次数")
private Integer finishedSignNum = 0;
@ApiModelProperty("总学习时长 (转换成小时)")
private String totalStudyHours = "";
}
package com.yizhi.training.application.vo.api;
import java.math.BigDecimal;
import java.util.List;
import com.yizhi.training.application.vo.domain.TrainingProjectVo;
import lombok.Data;
@Data
public class TrainingProjectVoPortalVo extends TrainingProjectVo {
/**
* 活动数量 只要课程的
*/
private Integer activityNum;
/**
* 课程学时
*/
private BigDecimal studyTime;
/**
* 课程id
*/
private List<Long> listCourseIds;
}
package com.yizhi.training.application.vo.api;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@Data
@ApiModel(value = "根据指定的培训项目名称查询指定用户的学习完成状态")
public class UserTrainingProjectStatusVO {
@ApiModelProperty(value = "培训项目名称 必传,完全匹配",required = true)
private String trainingProjectName;
@ApiModelProperty(value = "用户列表")
private List<Long> userIds;
@ApiModelProperty(value = "站点id")
private Long siteId;
}
package com.yizhi.training.application.vo.domain;
import com.baomidou.mybatisplus.activerecord.Model;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* <p>
* 学员学习记录
* </p>
*
* @author fulan123
* @since 2018-10-19
*/
@Data
@Api(tags = "StatisticsTrainingProjectLearnVo", description = "学员学习记录")
public class StatisticsTrainingProjectLearnVo extends Model<StatisticsTrainingProjectLearnVo> {
@ApiModelProperty(value = "主键")
private Long id;
@ApiModelProperty(value = "培训项目id")
private Long trainingProjectId;
@ApiModelProperty(value = "用户Id")
private Long accountId;
@ApiModelProperty(value = "首次学习时间")
private Date first_learn_time;
@ApiModelProperty(value = "完成时间")
private Date finish_time;
@ApiModelProperty(value = "1未完成 2已完成")
private Integer finished;
@ApiModelProperty(value = "获取积分")
private Integer learnPoint;
@ApiModelProperty(value = "记录创建时间")
private Date recordCreateTime;
@Override
protected Serializable pkVal() {
return this.id;
}
}
package com.yizhi.training.application.vo.domain;
import com.baomidou.mybatisplus.activerecord.Model;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* <p>
*
* </p>
*
* @author fulan123
* @since 2018-10-19
*/
@Data
@Api(tags = "statistics_training_project", description = "")
public class StatisticsTrainingProjectVo extends Model<StatisticsTrainingProjectVo> {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键")
private Long id;
@ApiModelProperty(value = "培训项目id")
private Long trainingProjectId;
@ApiModelProperty(value = "培训项目名称")
private String trainingProjectName;
@ApiModelProperty(value = "培训项目创建时间")
private Date trainingProjectCreateTime;
@ApiModelProperty(value = "培训项目开始时间")
private Date trainingProjectStartTime;
@ApiModelProperty(value = "培训项目结束时间")
private Date trainingProjectEndTime;
@ApiModelProperty(value = "培训项目状态")
private Integer trainingProjectState;
@ApiModelProperty(value = "培训项目部门id")
private Long trainingProjectOrgId;
@ApiModelProperty(value = "培训项目部门名字")
private String trainingProjectOrgName;
@ApiModelProperty(value = "培训项目站点id")
private Long trainingProjectSiteId;
@ApiModelProperty(value = "培训项目公司id")
private Long trainingProjectCompanyId;
@ApiModelProperty(value = "工号")
private String workNum;
@ApiModelProperty(value = "用户Id")
private Long accountId;
@ApiModelProperty(value = "用户名")
private String name;
@ApiModelProperty(value = "用户姓名")
private String fullname;
@ApiModelProperty(value = "部门编码")
private Long orgId;
@ApiModelProperty(value = "部门编码")
private String orgNo;
@ApiModelProperty(value = "所在部门")
private String orgName;
@ApiModelProperty(value = "部门所有父节点名称")
private String orgParentNames;
@ApiModelProperty(value="0未参加 1已参加")
private Integer joinState;
@ApiModelProperty(value = "用户状态(0禁用1启用)")
private Integer accountState;
@ApiModelProperty(value = "用户部门ID")
private Long accountOrgId;
@ApiModelProperty(value = "用户站点ID")
private Long accountSiteId;
@ApiModelProperty(value = "用户公司ID")
private Long accountCompanyId;
@ApiModelProperty(value = "记录创建时间")
private Date recordCreateTime;
@Override
protected Serializable pkVal() {
return this.id;
}
}
package com.yizhi.training.application.vo.domain;
import com.baomidou.mybatisplus.activerecord.Model;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
* <p>
* 授权范围
* </p>
*
* @author shengchenglong
* @since 2018-04-19
*/
@Data
@Api(tags = "TpAuthorizationRangeVo", description = "授权范围")
public class TpAuthorizationRangeVo extends Model<TpAuthorizationRangeVo> {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键id")
private Long id;
@ApiModelProperty(value = "业务主体表id(如:培训项目id,考试id,调研id等等)")
private Long bizId;
@ApiModelProperty(value = "1.部门,2.用户,3.用户组")
private Integer type;
@ApiModelProperty(value = "关联id,类型由type判定")
private Long relationId;
@ApiModelProperty(value = "冗余授权对象的名称")
private String name;
@ApiModelProperty(value = "所属siteId")
private Long siteId;
@ApiModelProperty(value = "是否删除")
private Integer deleted;
@ApiModelProperty(value = "用户名")
private String fullName;
@ApiModelProperty(value = "工号")
private String workNum;
@Override
protected Serializable pkVal() {
return this.id;
}
}
package com.yizhi.training.application.vo.domain;
import com.baomidou.mybatisplus.activerecord.Model;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* <p>
* 培训项目分类表
* </p>
*
* @author shengchenglong
* @since 2018-03-27
*/
@Data
@Api(tags = "TpClassificationVo", description = "培训项目分类表")
public class TpClassificationVo extends Model<TpClassificationVo> {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键id")
private Long id;
@ApiModelProperty(value = "分类名")
private String name;
@ApiModelProperty(value = "分类描述")
private String description;
@ApiModelProperty(value = "是否删除(0:否,1:是)")
private Integer deleted;
@ApiModelProperty(value = "创建者id")
private Long createById;
@ApiModelProperty(value = "创建者名称")
private String createByName;
@ApiModelProperty(value = "创建时间")
private Date createTime;
@ApiModelProperty(value = "更新者id")
private Long updateById;
@ApiModelProperty(value = "修改者名称")
private String updateByName;
@ApiModelProperty(value = "修改时间")
private Date updateTime;
@ApiModelProperty(value = "站点id")
private Long siteId;
@ApiModelProperty(value = "组织id")
private Long orgId;
@ApiModelProperty(value = "企业id")
private Long companyId;
@Override
protected Serializable pkVal() {
return this.id;
}
}
package com.yizhi.training.application.vo.domain;
import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.yizhi.util.application.sensitive.annotation.SensitiveWords;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* <p>
* 培训项目 - 评论回复
* </p>
*
* @author shengchenglong
* @since 2018-03-27
*/
@Data
@Api(tags = "TpCommentReplyVo", description = "培训项目 - 评论回复")
public class TpCommentReplyVo extends Model<TpCommentReplyVo> {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键id")
private Long id;
@ApiModelProperty(value = "培训项目 - 评论id")
private Long tpCommentId;
@TableField("training_project_id")
private Long trainingProjectId;
@SensitiveWords
@ApiModelProperty(value = "回复内容")
private String content;
@ApiModelProperty(value = "删除状态:0未删除,1已删除")
private String auditStatus;
@ApiModelProperty(value = "删除人id")
private Long auditorId;
@ApiModelProperty(value = "删除时间")
private Date auditorTime;
@ApiModelProperty(value = "创建者id")
private Long createById;
@ApiModelProperty(value = "创建者账号名称")
private String createByName;
@ApiModelProperty(value = "创建者真实名称")
private String createByFullName;
@ApiModelProperty(value = "创建时间")
private Date createTime;
@ApiModelProperty(value = "站点id")
private Long siteId;
@ApiModelProperty(value = "组织id")
private Long orgId;
@ApiModelProperty(value = "企业id")
private Long companyId;
@ApiModelProperty(value = "用户头像")
private String userAvatar;
@ApiModelProperty(value = "回复用户父id")
private Long parentAccountId;
@ApiModelProperty("回复用户父姓名")
private String parentAccountFullName;
@ApiModelProperty(value = "回复用户父账号名称")
private String parentAccountName;
@ApiModelProperty("评论回复父Id(若无默认为null)")
private Long replyParentId;
@Override
protected Serializable pkVal() {
return this.id;
}
@ApiModelProperty("上架状态:0上架(默认)1下架")
private Integer state;
}
package com.yizhi.training.application.vo.domain;
import com.baomidou.mybatisplus.activerecord.Model;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
* <p>
* 评论点赞记录
* </p>
*
* @author shengchenglong
* @since 2018-03-27
*/
@Data
@Api(tags = "TpCommentThumbsUpVo", description = "评论点赞记录")
public class TpCommentThumbsUpVo extends Model<TpCommentThumbsUpVo> {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键id")
private Long id;
@ApiModelProperty(value = "评论id")
private Long tpCommentId;
@ApiModelProperty(value = "点赞人id")
private Long accountId;
@ApiModelProperty(value = "是否已经点赞")
private Boolean hasThumbsUp;
@Override
protected Serializable pkVal() {
return this.id;
}
}
package com.yizhi.training.application.vo.domain;
import com.baomidou.mybatisplus.activerecord.Model;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* <p>
* 培训项目 - 评论
* </p>
*
* @author shengchenglong
* @since 2018-03-27
*/
@Data
@Api(tags = "TpCommentVo", description = "培训项目 - 评论")
public class TpCommentVo extends Model<TpCommentVo> {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键id")
private Long id;
@ApiModelProperty(value = "培训项目id")
private Long trainingProjectId;
@ApiModelProperty(value = "评论内容")
private String content;
@ApiModelProperty(value = "审核状态:0通过,1下架(默认通过)")
private String auditStatus;
@ApiModelProperty(value = "下架人id")
private Long auditorId;
@ApiModelProperty(value = "下架意见")
private String auditContent;
@ApiModelProperty(value = "下架时间")
private Date auditorTime;
@ApiModelProperty(value = "创建者id")
private Long createById;
@ApiModelProperty(value = "创建者名称")
private String createByName;
@ApiModelProperty(value = "创建时间")
private Date createTime;
@ApiModelProperty(value = "站点id")
private Long siteId;
@ApiModelProperty(value = "组织id")
private Long orgId;
@ApiModelProperty(value = "企业id")
private Long companyId;
@ApiModelProperty(value = "用户头像")
private String userAvatar;
@Override
protected Serializable pkVal() {
return this.id;
}
@ApiModelProperty("状态(0:上架|1:下架 默认为0)")
private Integer state;
}
package com.yizhi.training.application.vo.domain;
import com.baomidou.mybatisplus.activerecord.Model;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
* <p>
* 学习活动(考试、证书)完成条件
* </p>
*
* @author shengchenglong
* @since 2018-04-28
*/
@Data
@Api(tags = "TpPlanActivityConditionPostVo", description = "学习活动(考试、证书)完成条件")
public class TpPlanActivityConditionPostVo extends Model<TpPlanActivityConditionPostVo> {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键id")
private Long id;
@ApiModelProperty(value = "所属学习活动的id")
private Long tpPlanActivityId;
@ApiModelProperty(value = "所属活动类型:1考试,2证书")
private Integer type;
@ApiModelProperty(value = "相关考试的id", notes = "考试、证书类型必传")
private Long examId;
@ApiModelProperty(value = "相关考试的得分", notes = "考试、证书类型必传")
private Float examScore;
@ApiModelProperty(value = "type=2时,证书id")
private Long certificateId;
@ApiModelProperty(value = "是否删除(1是,0否),默认否")
private Integer deleted;
@Override
protected Serializable pkVal() {
return this.id;
}
}
package com.yizhi.training.application.vo.domain;
import com.baomidou.mybatisplus.activerecord.Model;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
* <p>
* 学习活动前置条件
* </p>
*
* @author shengchenglong
* @since 2018-04-28
*/
@Data
@Api(tags = "TpPlanActivityConditionPreVo", description = "学习活动前置条件")
public class TpPlanActivityConditionPreVo extends Model<TpPlanActivityConditionPreVo> {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键id")
private Long id;
@ApiModelProperty(value = "所属学习活动的id")
private Long tpPlanActivityId;
@ApiModelProperty(value = "0:设置完成活动数,1:指定学习活动")
private Integer type;
@ApiModelProperty(value = "type=0时,设置的完成的数目")
private Integer num;
@ApiModelProperty(value = "type=1时,指定的活动id")
private Long preTpPlanActivityId;
@ApiModelProperty(value = "type=1时,活动相关联的资源的id")
private Long preTpPlanActivityRelationId;
@ApiModelProperty(value = "是否删除(1是,0否),默认否")
private Integer deleted;
@Override
protected Serializable pkVal() {
return this.id;
}
}
package com.yizhi.training.application.vo.domain;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.util.Date;
/**
* <p>
* <p>
* </p>
*
* @author shengchenglong
* @since 2018-09-11
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class TpPlanActivityViewRecordVo implements Serializable {
private static final long serialVersionUID = 1L;
private Long id;
/**
* 用户id
*/
private Long accountId;
/**
* 站点id
*/
private Long siteId;
/**
* 企业id
*/
private Long companyId;
/**
* 用户所在部门id
*/
private Long orgId;
/**
* 发生时间
*/
private Date time;
/**
* 培训项目 id
*/
private Long trainingProjectId;
/**
* 点击的活动
*/
private Long tpPlanActivityId;
/**
* 活动关联的业务
*/
private Long tpPlanActivityRelationId;
/**
* 业务类型
*/
private Integer tpPlanActivityType;
}
package com.yizhi.training.application.vo.domain;
import com.baomidou.mybatisplus.activerecord.Model;
import com.yizhi.training.application.vo.manage.TpPlanActivityConditionVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* <p>
* 学习计划中的活动
* </p>
*
* @author shengchenglong
* @since 2018-03-27
*/
@Data
@Api(tags = "TpPlanActivityVo", description = "学习计划中的活动")
public class TpPlanActivityVo extends Model<TpPlanActivityVo> {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键id")
private Long id;
@ApiModelProperty(value = "冗余培训项目id")
private Long trainingProjectId;
@ApiModelProperty(value = "学习计划id")
private Long tpPlanId;
@ApiModelProperty(value = "活动类型: 0课程 1考试 2调研 3直播 4投票 5作业 6证书 7外部链接 8报名 9签到 10线下课程 11案例活动 12精选案例 13 资料 14论坛帖子")
private Integer type;
@ApiModelProperty(value = "关联的活动的id")
private Long relationId;
@ApiModelProperty(value = "活动名称,从活动那边取过来,不能自定义")
private String name;
@ApiModelProperty(value = "外部链接地址")
private String address;
@ApiModelProperty(value = "排序")
private Integer sort;
@ApiModelProperty(value = "是否删除(1是,0否),默认否")
private Integer deleted;
@ApiModelProperty(value = "创建者id")
private Long createById;
@ApiModelProperty(value = "创建者名称")
private String createByName;
@ApiModelProperty(value = "创建时间")
private Date createTime;
@ApiModelProperty(value = "更新者id")
private Long updateById;
@ApiModelProperty(value = "修改者名称")
private String updateByName;
@ApiModelProperty(value = "修改时间")
private Date updateTime;
@ApiModelProperty(value = "站点id")
private Long siteId;
@ApiModelProperty(value = "组织id")
private Long orgId;
@ApiModelProperty(value = "企业id")
private Long companyId;
@ApiModelProperty(value = "开启条件")
private List<TpPlanActivityConditionPreVo> conditionPres;
@ApiModelProperty(value = "完成条件(目前只有考试有完成条件)")
private List<TpPlanActivityConditionPostVo> conditionPosts;
@ApiModelProperty(value = "条件设置,不持久化")
private TpPlanActivityConditionVo condition = new TpPlanActivityConditionVo();
@ApiModelProperty(value = "是否已经完成")
private Boolean finished;
@Override
protected Serializable pkVal() {
return this.id;
}
}
package com.yizhi.training.application.vo.domain;
import com.baomidou.mybatisplus.activerecord.Model;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
* <p>
* 学习计划完成条件
* </p>
*
* @author shengchenglong
* @since 2018-04-28
*/
@Data
@Api(tags = "TpPlanConditionPostVo", description = "学习计划完成条件")
public class TpPlanConditionPostVo extends Model<TpPlanConditionPostVo> {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键id")
private Long id;
@ApiModelProperty(value = "所属培训项目id")
private Long trainingProjectId;
@ApiModelProperty(value = "所属学习计划id")
private Long tpPlanId;
@ApiModelProperty(value = "0:设置完成活动数,1:指定学习活动")
private Integer type;
@ApiModelProperty(value = "type=0时,设置的完成的数目")
private Integer num;
@ApiModelProperty(value = "type=1时,指定的活动id")
private Long tpPlanActivityId;
@ApiModelProperty(value = "type=1时,指定的活动相关联的id(比如:考试活动即考试的id,课程活动即课程的id)")
private Long tpPlanActivityRelationId;
@ApiModelProperty(value = "是否删除(1是,0否),默认否")
private Integer deleted;
@Override
protected Serializable pkVal() {
return this.id;
}
}
package com.yizhi.training.application.vo.domain;
import com.baomidou.mybatisplus.activerecord.Model;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
* <p>
* 学习计化前置条件
* </p>
*
* @author shengchenglong
* @since 2018-04-28
*/
@Data
@Api(tags = "TpPlanConditionPreVo", description = "学习计化前置条件")
public class TpPlanConditionPreVo extends Model<TpPlanConditionPreVo> {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键id")
private Long id;
@ApiModelProperty(value = "所属培训项目id")
private Long trainingProjectId;
@ApiModelProperty(value = "所属学习计划的id")
private Long planId;
@ApiModelProperty(value = "前置学习计划的id")
private Long prePlanId;
@ApiModelProperty(value = "是否删除(1是,0否),默认否")
private Integer deleted;
@Override
protected Serializable pkVal() {
return this.id;
}
}
package com.yizhi.training.application.vo.domain;
import com.baomidou.mybatisplus.activerecord.Model;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* <p>
* 培训计划提醒
* 物理删除
* </p>
*
* @author shengchenglong
* @since 2018-03-27
*/
@Data
@Api(tags = "TpPlanRemindVo", description = "培训计划提醒 物理删除")
public class TpPlanRemindVo extends Model<TpPlanRemindVo> {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键id")
private Long id;
@ApiModelProperty(value = "培训计划id")
private Long tpPlanId;
@ApiModelProperty(value = "提醒方式,0:开始时间,1:结束时间,2:自定义时间")
private Integer type;
@ApiModelProperty(value = "type = 0 或 1 时 相差秒数")
private Long seconds;
@ApiModelProperty(value = "提醒时间")
private Date time;
@ApiModelProperty(value = "排序")
private Integer sort;
@ApiModelProperty(value = "创建者id")
private Long createById;
@ApiModelProperty(value = "创建者名称")
private String createByName;
@ApiModelProperty(value = "创建时间")
private Date createTime;
@Override
protected Serializable pkVal() {
return this.id;
}
}
package com.yizhi.training.application.vo.domain;
import com.baomidou.mybatisplus.activerecord.Model;
import com.yizhi.training.application.vo.manage.TpPlanConditionVo;
import com.yizhi.training.application.vo.manage.TpRemindVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* <p>
* 培训项目 - 学习计划
* </p>
*
* @author shengchenglong
* @since 2018-03-27
*/
@Data
@Api(tags = "TpPlanVo", description = "培训项目 - 学习计划")
public class TpPlanVo extends Model<TpPlanVo> {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键id")
private Long id;
@ApiModelProperty(value = "所属培训项目id")
private Long trainingProjectId;
@ApiModelProperty(value = "学习计划名称")
private String name;
@ApiModelProperty(value = "学习计划开始时间")
private Date startTime;
@ApiModelProperty(value = "学习计划结束时间")
private Date endTime;
@ApiModelProperty(value = "排序")
private Integer sort;
@ApiModelProperty(value = "是否删除(1是,0否),默认否")
private Integer deleted;
@ApiModelProperty(value = "创建者id")
private Long createById;
@ApiModelProperty(value = "创建者名称")
private String createByName;
@ApiModelProperty(value = "创建时间")
private Date createTime;
@ApiModelProperty(value = "更新者id")
private Long updateById;
@ApiModelProperty(value = "修改者名称")
private String updateByName;
@ApiModelProperty(value = "修改时间")
private Date updateTime;
@ApiModelProperty(value = "站点id")
private Long siteId;
@ApiModelProperty(value = "组织id")
private Long orgId;
@ApiModelProperty(value = "企业id")
private Long companyId;
@ApiModelProperty(value = "是否开启邮件提醒(0:否,1:是),默认否。")
private Integer enableRemindMail;
@ApiModelProperty(value = "是否开启app提醒(0:否,1:是),默认否。")
private Integer enableRemindApp;
@ApiModelProperty(value = "邮件模板")
private Long mailRemindTemplateId;
@ApiModelProperty(value = "app消息推送模板")
private Long appRemindTemplateId;
@ApiModelProperty(value = "提醒内容")
private String remindContent;
@ApiModelProperty(value = "前置计划,查看用,不持久化")
private List<TpPlanConditionPreVo> conditionPres;
@ApiModelProperty(value = "完成条件,查看用,不持久化")
private List<TpPlanConditionPostVo> conditionPosts;
@ApiModelProperty(value = "提醒时间,查看用,不持久化(已废弃)")
private List<TpPlanRemindVo> reminds;
@ApiModelProperty(value = "条件,查看用,不持久化")
private TpPlanConditionVo condition;
/**
* 不持久化
*/
@ApiModelProperty(value = "活动集合")
private List<TpPlanActivityVo> activities;
/**
* 报错信息
*/
private String subMsg;
/**
* 不持久化
*/
private Integer finishedActivityNums = 0;
@ApiModelProperty(value = "提醒时间,查看用,不持久化(可用)")
private TpRemindVo remindVo;
@Override
protected Serializable pkVal() {
return this.id;
}
}
package com.yizhi.training.application.vo.domain;
import com.baomidou.mybatisplus.activerecord.Model;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* <p>
* 培训项目提醒
* 物理删除
* </p>
*
* @author shengchenglong
* @since 2018-03-27
*/
@Data
@Api(tags = "TpRemindVo", description = "培训项目提醒 物理删除")
public class TpRemindVo extends Model<TpRemindVo> {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键id")
private Long id;
@ApiModelProperty(value = "所属培训项目id")
private Long trainingProjectId;
@ApiModelProperty(value = "提醒方式,0:开始时间,1:结束时间,2:自定义时间")
private Integer type;
@ApiModelProperty(value = "type = 0 或 1 时 相差秒数")
private Long seconds;
@ApiModelProperty(value = "提醒时间")
private Date time;
@ApiModelProperty(value = "排序")
private Integer sort;
@ApiModelProperty(value = "创建者id")
private Long createById;
@ApiModelProperty(value = "创建者名称")
private String createByName;
@ApiModelProperty(value = "创建时间")
private Date createTime;
@Override
protected Serializable pkVal() {
return this.id;
}
}
package com.yizhi.training.application.vo.domain;
import com.baomidou.mybatisplus.activerecord.Model;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* <p>
* 学员完成活动记录(这里无论有没有被设置成别的活动的开启条件,都记录)
* </p>
*
* @author shengchenglong
* @since 2018-03-29
*/
@Data
@Api(tags = "TpStudentActivityRecordVo", description = "学员完成活动记录(这里无论有没有被设置成别的活动的开启条件,都记录)")
public class TpStudentActivityRecordVo extends Model<TpStudentActivityRecordVo> {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键id")
private Long id;
@ApiModelProperty(value = "活动类型: 0课程 1考试 2调研 3直播 4投票 5作业 6证书 7报名 8签到 9外部链接")
private Integer type;
@ApiModelProperty(value = "学员id")
private Long accountId;
@ApiModelProperty(value = "课程、考试、调研、直播、投票、作业、证书、外部链接的id,由type决定类型。")
private Long relationId;
@ApiModelProperty(value = "若是考试(type=1)的话,需要记录分数")
private Float score;
@ApiModelProperty(value = "若是课程,需要记录学习时长")
private Long seconds;
@ApiModelProperty(value = "是否完成(1是,0否),默认完成。")
private Integer finished;
@ApiModelProperty(value = "完成时间")
private Date finishDate;
@ApiModelProperty(value = "所属站点id")
private Long siteId;
@ApiModelProperty(value = "原始数据id")
private Long oId;
@ApiModelProperty(value = "原始数据id")
private Integer isCustom;
@Override
protected Serializable pkVal() {
return this.id;
}
}
package com.yizhi.training.application.vo.domain;
import com.baomidou.mybatisplus.activerecord.Model;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* <p>
* 学生参与培训项目记录(只针对需要报名的培训项目,不需要报名的该表不记录)
* </p>
*
* @author shengchenglong
* @since 2018-03-28
*/
@Data
@Api(tags = "TpStudentEnrollPassedVo", description = "学生参与培训项目记录(只针对需要报名的培训项目,不需要报名的该表不记录)")
public class TpStudentEnrollPassedVo extends Model<TpStudentEnrollPassedVo> {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键id")
private Long id;
@ApiModelProperty(value = "培训项目id")
private Long trainingProjectId;
@ApiModelProperty(value = "报名id")
private Long enrollId;
@ApiModelProperty(value = "学员id")
private Long accountId;
@ApiModelProperty(value = "冗余学习项目开始时间")
private Date startTime;
@ApiModelProperty(value = "冗余学习项目结束时间")
private Date endTime;
@ApiModelProperty(value = "参与时间,两种情况:1报名需审核,2不需审核")
private Date joinTime;
@ApiModelProperty(value = "所属站点id")
private Long siteId;
@Override
protected Serializable pkVal() {
return this.id;
}
}
package com.yizhi.training.application.vo.domain;
import com.baomidou.mybatisplus.activerecord.Model;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* <p>
* 学习计划完成记录,由两张条件表和活动记录表计算得出
* </p>
*
* @author shengchenglong
* @since 2018-03-29
*/
@Data
@Api(tags = "TpStudentPlanRecordVo", description = "学习计划完成记录,由两张条件表和活动记录表计算得出")
public class TpStudentPlanRecordVo extends Model<TpStudentPlanRecordVo> {
private static final long serialVersionUID = 1L;
private Long id;
@ApiModelProperty(value = "学习计划id")
private Long tpPlanId;
@ApiModelProperty(value = "是否完成(1是,0否),默认完成。")
private Integer finished;
@ApiModelProperty(value = "完成时间")
private Date finishDate;
@ApiModelProperty(value = "用户id")
private Long accountId;
@ApiModelProperty(value = "所属站点id")
private Long siteId;
@ApiModelProperty(value = "所属培训项目id")
private Long trainingProjectId;
@Override
protected Serializable pkVal() {
return this.id;
}
}
package com.yizhi.training.application.vo.domain;
import com.baomidou.mybatisplus.activerecord.Model;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* <p>
* 培训项目完成情况,由学习计划完成记录计算得出
* </p>
*
* @author shengchenglong
* @since 2018-04-09
*/
@Data
@Api(tags = "TpStudentProjectRecordVo", description = "培训项目完成情况,由学习计划完成记录计算得出")
public class TpStudentProjectRecordVo extends Model<TpStudentProjectRecordVo> {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键id")
private Long id;
@ApiModelProperty(value = "对应的培训项目id")
private Long trainingProjectId;
@ApiModelProperty(value = "是否完成(1是,0否),默认完成。")
private Integer finished;
@ApiModelProperty(value = "完成时间")
private Date finishDate;
@ApiModelProperty(value = "用户id")
private Long accountId;
@ApiModelProperty(value = "所属站点id")
private Long siteId;
@Override
protected Serializable pkVal() {
return this.id;
}
}
package com.yizhi.training.application.vo.domain;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.util.Date;
/**
* <p>
* <p>
* </p>
*
* @author shengchenglong
* @since 2018-09-11
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class TpViewRecordVo implements Serializable {
private static final long serialVersionUID = 1L;
private Long id;
/**
* 用户id
*/
private Long accountId;
/**
* 站点id
*/
private Long siteId;
/**
* 企业id
*/
private Long companyId;
/**
* 用户所在部门id
*/
private Long orgId;
/**
* 发生时间
*/
private Date time;
/**
* 点击的培训项目id
*/
private Long trainingProjectId;
}
package com.yizhi.training.application.vo.domain;
import com.baomidou.mybatisplus.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* <p>
* 培训项目主体表(报名、签到 是在报名签到表中记录项目id,论坛是单独的关系表)
* </p>
*
* @author shengchenglong
* @since 2018-03-27
*/
@Data
@Api(tags = "TrainingProjectSaveVo", description = "培训项目主体表(报名、签到 是在报名签到表中记录项目id,论坛是单独的关系表)")
public class TrainingProjectSaveVo extends Model<TrainingProjectSaveVo> {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键id")
private Long id;
@ApiModelProperty(value = "培训项目分类id")
private Long tpClassificationId;
@ApiModelProperty(value = "培训项目名称")
private String name;
@ApiModelProperty(value = "积分")
private Integer point;
@ApiModelProperty(value = "logo图片")
private String logoImg;
@ApiModelProperty(value = "学习项目开始时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date startTime;
@ApiModelProperty(value = "学习项目结束时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date endTime;
@ApiModelProperty(value = "项目状态(0:草稿、1:启用、2:停用)")
private Integer status;
@ApiModelProperty(value = "项目是否0:指定学员可见,1平台用户可见(创建人管理权限范围)")
private Integer visibleRange;
@ApiModelProperty(value = "是否删除(0:否,1:是)")
private Integer deleted;
@ApiModelProperty(value = "关键字,英文逗号分隔")
private String keyWords;
@ApiModelProperty(value = "项目介绍,富文本")
private String description;
@ApiModelProperty(value = "是否启用报名(0:否,1:是),默认否")
private Integer enableEnroll;
@ApiModelProperty(value = "是否启用签到(0:否,1:是),默认否")
private Integer enableSign;
@ApiModelProperty(value = "创建者id")
private Long createById;
@ApiModelProperty(value = "创建者名称")
private String createByName;
@ApiModelProperty(value = "创建时间")
private Date createTime;
@ApiModelProperty(value = "更新者id")
private Long updateById;
@ApiModelProperty(value = "修改者名称")
private String updateByName;
@ApiModelProperty(value = "修改时间")
private Date updateTime;
private Date releaseTime;
@ApiModelProperty(value = "站点id")
private Long siteId;
@ApiModelProperty(value = "组织id")
private Long orgId;
@ApiModelProperty(value = "企业id")
private Long companyId;
@ApiModelProperty(value = "是否开启邮件提醒(0:否,1:是),默认否。")
private Integer enableRemindMail;
@ApiModelProperty(value = "是否开启app提醒(0:否,1:是),默认否。")
private Integer enableRemindApp;
@ApiModelProperty(value = "邮件模板")
private Long mailRemindTemplateId;
@ApiModelProperty(value = "app消息推送模板")
private Long appRemindTemplateId;
@ApiModelProperty(value = "提醒内容")
private String remindContent;
@ApiModelProperty(value = "是否开启定位(0:否,1:是),默认否")
private Integer enablePosition;
@ApiModelProperty(value = "开启付费的项目是否在项目列表中显示;默认true显示")
private Integer enableQueue;
/**
* 不持久化
*/
@ApiModelProperty(value = "培训计划集合")
private List<TpPlanVo> plans;
@ApiModelProperty(value = "是否启用在日历任务中显示")
private Integer enableTask;
@ApiModelProperty(value = "权重")
private Integer weight;
@Override
protected Serializable pkVal() {
return this.id;
}
}
package com.yizhi.training.application.vo.domain;
import com.baomidou.mybatisplus.activerecord.Model;
import com.baomidou.mybatisplus.annotations.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* <p>
* 培训项目主体表(报名、签到 是在报名签到表中记录项目id,论坛是单独的关系表)
* </p>
*
* @author shengchenglong
* @since 2018-03-27
*/
@Data
@Api(tags = "TrainingProjectVo", description = "培训项目主体表(报名、签到 是在报名签到表中记录项目id,论坛是单独的关系表)")
public class TrainingProjectVo extends Model<TrainingProjectVo> {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键id")
private Long id;
@ApiModelProperty(value = "培训项目分类id")
private Long tpClassificationId;
@ApiModelProperty(value = "培训项目名称")
private String name;
@ApiModelProperty(value = "积分")
private Integer point;
@ApiModelProperty(value = "logo图片")
private String logoImg;
@ApiModelProperty(value = "学习项目开始时间")
private Date startTime;
@ApiModelProperty(value = "学习项目结束时间")
private Date endTime;
@ApiModelProperty(value = "项目状态(0:草稿、1:启用、2:停用)")
private Integer status;
@ApiModelProperty(value = "项目是否0:指定学员可见,1平台用户可见(创建人管理权限范围)")
private Integer visibleRange;
@ApiModelProperty(value = "是否删除(0:否,1:是)")
private Integer deleted;
@ApiModelProperty(value = "关键字,英文逗号分隔")
private String keyWords;
@ApiModelProperty(value = "项目介绍,富文本")
private String description;
@ApiModelProperty(value = "是否启用报名(0:否,1:是),默认否")
private Integer enableEnroll;
@ApiModelProperty(value = "是否启用签到(0:否,1:是),默认否")
private Integer enableSign;
@ApiModelProperty(value = "创建者id")
private Long createById;
@ApiModelProperty(value = "创建者名称")
private String createByName;
@ApiModelProperty(value = "创建时间")
private Date createTime;
@ApiModelProperty(value = "更新者id")
private Long updateById;
@ApiModelProperty(value = "修改者名称")
private String updateByName;
@ApiModelProperty(value = "修改时间")
private Date updateTime;
private Date releaseTime;
@ApiModelProperty(value = "站点id")
private Long siteId;
@ApiModelProperty(value = "组织id")
private Long orgId;
@ApiModelProperty(value = "企业id")
private Long companyId;
@ApiModelProperty(value = "是否开启邮件提醒(0:否,1:是),默认否。")
private Integer enableRemindMail;
@ApiModelProperty(value = "是否开启app提醒(0:否,1:是),默认否。")
private Integer enableRemindApp;
@ApiModelProperty(value = "邮件模板")
private Long mailRemindTemplateId;
@ApiModelProperty(value = "app消息推送模板")
private Long appRemindTemplateId;
@ApiModelProperty(value = "提醒内容")
private String remindContent;
@ApiModelProperty(value = "是否开启定位(0:否,1:是),默认否")
private Integer enablePosition;
@ApiModelProperty(value = "开启付费的项目是否在项目列表中显示;默认true显示")
private Integer enableQueue;
@ApiModelProperty(value = "是否付费报名,默认false")
@TableField("enable_pay")
private Integer enablePay;
@ApiModelProperty(value = "购买实际价格")
@TableField("actual_price")
private Integer actualPrice;
@ApiModelProperty(value = "购买原价格")
@TableField("original_price")
private Integer originalPrice;
/**
* 不持久化
*/
@ApiModelProperty(value = "培训计划集合")
private List<TpPlanVo> plans;
@ApiModelProperty(value = "是否启用在日历任务中显示")
private Integer enableTask;
@ApiModelProperty(value = "权重")
private Integer weight;
@Override
protected Serializable pkVal() {
return this.id;
}
}
package com.yizhi.training.application.vo.manage;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @Author: shengchenglong
* @Date: 2018/4/8 11:16
*/
@Data
@ApiModel("删除条件(可以是培训计划条件,可以是培训活动条件集合)")
public class ConditionDeleteVo {
@ApiModelProperty(value = "前置条件id集合")
private List<Long> preConditionIds;
@ApiModelProperty(value = "后置条件id集合")
private List<Long> postConditionIds;
}
package com.yizhi.training.application.vo.manage;
import com.yizhi.core.application.context.RequestContext;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* <p>
*
* </p>
*
* @author hutao123
* @since 2019-09-09
*/
@Data
@Api(tags = "MessageRemindVo", description = "各个业务设置提醒时的数据")
public class MessageRemindVo implements Serializable {
private static final long serialVersionUID = -7621642684091133619l;
@ApiModelProperty(value = "提醒id ")
private Long id;
@ApiModelProperty(value = "消息id")
private Long messageId;
@ApiModelProperty(value = "消息类型:1、自定义消息;2、系统消息;3、事件触发消息")
private Integer messageType;
@ApiModelProperty(value = "用户id 主要用于触发消息 个人完成发消息类型")
private Long accountId;
@ApiModelProperty(value = "消息内容(完整版)")
private String messageContext;
@ApiModelProperty(value = "关联模块类型(1:学习计划、2:考试、3:调研、4、投票5:报名、6:作业、7:签到、8:项目、9:直播、10:积分)")
private Integer relationType;
@ApiModelProperty(value = "关联的业务id: 比如调研id")
private Long relationId;
@ApiModelProperty(value = "发送方式:1、站内信;2、短信;3、邮件")
private Integer sendType;
@ApiModelProperty(value = "该业务提醒是被关闭,关闭则为true,默认false")
private Boolean hasDeleted = false;
@ApiModelProperty(value = "该业务提醒是否有变化,有则为true,默认false")
private Boolean isChangge = false;
@ApiModelProperty(value = "专门存放提醒时间设置")
private List<MessageTaskRemindVo> messageTaskRemindVos = new ArrayList<>();
@ApiModelProperty(value = "目前只有培训项目需要,计划同步项目可见范围")
private Boolean visibleRangeUpdate = false;
@ApiModelProperty(value = "指定范围(0:全平台,1:指定用户)")
private Integer visibleRange;
@ApiModelProperty(value = "业务参数对象")
private TaskVo taskVo;
@ApiModelProperty(value = "触发消息专用 发送时间")
private Date sendTime;
@ApiModelProperty(value = "是否设置为上架状态")
private Boolean hasUp = false;
@ApiModelProperty(value = "是否是 修改业务状态 ")
private Boolean taskStatusUpdate = false;
@ApiModelProperty(value = "业务状态 1:才允上架许发送(业务上架)0:不允许发送(业务非上架) 仅针对于系统消息")
private Integer taskStatus;
@ApiModelProperty(value = "上下文 必传,主要需要 siteId companyId accountId accountName 都不能是空")
private RequestContext requestContext;
@ApiModelProperty(value = "调研是否为复制类型")
private Boolean isCopy = false;
@ApiModelProperty(value = "复制调研时,旧的调研id")
private Long oldRelationId;
}
package com.yizhi.training.application.vo.manage;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* <p>
*
* </p>
*
* @author hutao123
* @since 2019-09-09
*/
@Data
@Api(tags = "MessageTaskRemindVo", description = "各个业务设置提醒时的数据")
public class MessageTaskRemindVo implements Serializable {
@ApiModelProperty(value = "待发消息id")
private Long messageRemindId;
@ApiModelProperty(value = "提醒时间事件类型 1:业务开始时间、 2:业务结束时间、3:自定义时间")
private Integer timeEventType;
@ApiModelProperty(value = "发生时间枚举:1:五分钟前、2:十分钟前、3:三十分钟前、4:一个小时前、5:两个小时前、6:一天前、7:两天前")
private Integer timeType;
@ApiModelProperty(value = "最终发送时间")
private Date sendTime;
}
package com.yizhi.training.application.vo.manage;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.yizhi.training.application.vo.domain.TpCommentReplyVo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
@Data
public class PageCommentVo {
private Long id;
@ApiModelProperty(value = "账号id")
private Long accountId;
@ApiModelProperty(value = "评论人")
private String commentator;
@ApiModelProperty(value = "评论内容")
private String content;
@ApiModelProperty(value = "创建时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date createTime;
@ApiModelProperty(value = "点赞数")
private Integer thumbsUps;
@ApiModelProperty(value = "用户头像")
private String userAvatar;
@ApiModelProperty(value = "是否点赞 1 是 0否")
private Integer status;
@ApiModelProperty(value = "是否已经点赞")
private Boolean hasThumbsUp;
@ApiModelProperty(value = "回复数")
private Integer replys;
@ApiModelProperty(value = "回复列表")
List<TpCommentReplyVo> tpCommentReplies = new ArrayList<>();
@ApiModelProperty(value = "姓名")
private String commentatorName;
@ApiModelProperty("状态(0:上架|1:下架 默认为0)")
private Integer state;
@ApiModelProperty(value = "评论对象")
private String replyName;
}
package com.yizhi.training.application.vo.manage;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ApiModel("可见范围关联Vo")
@Data
public class RelationIdVo {
@ApiModelProperty("类型:1用户,2部门,3用户组")
private Integer type;
@ApiModelProperty("授权对象id")
private Long relationId;
@ApiModelProperty("授权对象的名称")
private String name;
}
\ No newline at end of file
package com.yizhi.training.application.vo.manage;
import java.util.List;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author wangfeida
*
*/
@Data
public class ReportOrgRespVOTP {
@ApiModelProperty(value = "部门id")
private Long orgId;
@ApiModelProperty(value = "部门编码")
private String orgCode;
@ApiModelProperty(value = "部门名称")
private String orgName;
@ApiModelProperty(value = "部门人数")
private Long orgAccountNum;
@ApiModelProperty(value = "父节组织名称")
private List<String> parentOrgNames;
@ApiModelProperty(value = "部门下的人员的id")
private List<Long> listAccount;
}
package com.yizhi.training.application.vo.manage;
import java.math.BigDecimal;
import java.util.Date;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* 按用户分组统计
*
* @author mei
*/
@Data
public class ReportStudyTrainingProjectAccountViewVo {
@ApiModelProperty(value = "用户账号")
private Long accountId;
@ApiModelProperty(value = "用户名")
private String accountName;
@ApiModelProperty(value = "姓名")
private String accountFullName;
@ApiModelProperty(value = "所在部门")
private String orgName;
@ApiModelProperty(value = "项目名称")
private String projectName;
@ApiModelProperty(value = "学习状态 -1 未参加 0未完成 1 已完成")
private String state;
@ApiModelProperty(value = "开始时间")
private Date startTime;
@ApiModelProperty(value = "完成时间")
private Date endTime;
/**
* 以下字段报表用到
*/
@ApiModelProperty(value = "最早完成时间")
private Date firstFinishTime;
@ApiModelProperty(value = "获得积分")
private Integer point;
@ApiModelProperty(value = "用户当前状态")
private Integer accountState;
// 新增学习时长 -@2019年12月3日
@ApiModelProperty(value = "学习时长")
private Integer seconds;
}
package com.yizhi.training.application.vo.manage;
import java.math.BigDecimal;
import java.util.Date;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* 按用户分组统计
* @author mei
*
*/
@Data
public class ReportStudyTrainingProjectAccountVo {
@ApiModelProperty(value = "用户ID")
private Long accountId;
@ApiModelProperty(value = "用户名")
private String accountName;
@ApiModelProperty(value = "姓名")
private String accountFullName;
@ApiModelProperty(value = "所在部门")
private String orgName;
@ApiModelProperty(value = "所在组织架构")
private String orgNames;
@ApiModelProperty(value = "应参加项目数(空返回0)")
private Integer totalAsk = 0;
@ApiModelProperty(value = "实际参加项目数(空返回0)")
private Integer totalIn = 0;
@ApiModelProperty(value = "已完成项目数(空返回0)")
private Integer totalFinish = 0;
}
package com.yizhi.training.application.vo.manage;
import java.math.BigDecimal;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* 按部门分组统计
* @author mei
*
*/
@Data
public class ReportStudyTrainingProjectOrgVo {
@ApiModelProperty(value = "部门id")
private Long orgId;
@ApiModelProperty(value = "部门编码")
private String orgNo;
@ApiModelProperty(value = "部门名称")
private String orgName;
@ApiModelProperty(value = "所在组织架构")
private String orgNames;
@ApiModelProperty(value = "部门总人数")
private Integer accountNum = 0;
@ApiModelProperty(value = "可参加项目数(空返回0)")
private Integer totalAskProject = 0;
@ApiModelProperty(value = "可参加人数(空返回0)")
private Integer totalAskAccount = 0;
@ApiModelProperty(value = "实际参加人数(空返回0)")
private Integer totalIn = 0;
@ApiModelProperty(value = "完成人数(空返回0)")
private Integer totalFinish = 0;
@ApiModelProperty(value = "完成率(空返回0),保留小时2位(98.00),前端补%")
private BigDecimal avgFinish;
}
package com.yizhi.training.application.vo.manage;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import com.yizhi.training.application.vo.domain.TpAuthorizationRangeVo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* 按项目分组统计
* @author mei
*
*/
@Data
public class ReportStudyTrainingProjectVo {
@ApiModelProperty(value = "项目ID")
private Long id;
@ApiModelProperty(value = "项目名称")
private String name;
@ApiModelProperty(value = "开始时间(项目周期)")
private Date startTime;
@ApiModelProperty(value = "结束时间(项目周期)")
private Date endTime;
@ApiModelProperty(value = "可参加人数(空返回0)")
private Integer totalAsk = 0;
@ApiModelProperty(value = "实际参加人数(空返回0)")
private Integer totalIn = 0;
@ApiModelProperty(value = "完成人数(空返回0)")
private Integer totalFinish = 0;
@ApiModelProperty(value = "完成率(空返回0),保留小时2位(98.00),前端补%")
private BigDecimal avgFinish;
//中台组装
@ApiModelProperty(value="项目是否0:指定学员可见,1平台用户可见(创建人管理权限范围)")
private Integer visibleRange;
@ApiModelProperty(value="指定平台可见的取值")
private List<TpAuthorizationRangeVo> listTpAuthorizationRange;
}
package com.yizhi.training.application.vo.manage;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.models.auth.In;
import lombok.Data;
import java.util.List;
@Data
@Api(tags = "SearchProjectVo", description = "项目查询参数vo")
public class SearchProjectVo {
@ApiModelProperty(value = "培训项目分类id")
private Long tpClassificationId;
@ApiModelProperty(value = "培训项目名称")
private String name;
@ApiModelProperty(value = "项目状态(0:草稿、1:启用、2:停用)")
private Integer status;
@ApiModelProperty(value = "站点id")
private Long siteId;
@ApiModelProperty(value = "组织id")
private List<Long> orgId;
@ApiModelProperty(value = "企业id")
private Long companyId;
@ApiModelProperty(value = "分页数")
private Integer pageNo;
@ApiModelProperty(value = "分页数量")
private Integer pageSize;
@ApiModelProperty("培训项目IDs")
private List<Long> listIds;
@ApiModelProperty(value = "报名条件;10:无需报名;20:免费报名;30:收费报名 TrEnrollStatusEnum")
private Integer enrollStatus;
}
This diff is collapsed. Click to expand it.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment