Commit bf1ed5e1 by liangkaiping

copy

parent d85ea1cc
<?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>course</artifactId>
<groupId>com.yizhi</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<groupId>com.yizhi</groupId>
<artifactId>cloud-course-api</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<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>
<dependency>
<groupId>com.yizhi</groupId>
<artifactId>cloud-orm</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.course.application.eum;
/**
* 是否删除枚举类,
* 1:是,0:否
*/
public enum DeletedEnum {
YES(1), NO(0);
private int value;
private DeletedEnum(int value) {
this.value = value;
}
public int getValue() {
return this.value;
}
}
package com.yizhi.course.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.course.application.vo.AccreditCourseVO;
import com.yizhi.course.application.vo.AccreditVO;
import com.yizhi.course.application.vo.AuthorizeCourseVO;
import com.yizhi.course.application.vo.PageAuthorizeVO;
import com.yizhi.course.application.vo.domain.CourseEntityVo;
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 Fairyland
*
*/
@FeignClient(name = "course", contextId = "AccreditClient")
public interface AccreditClient {
/**
* 根据课程关键字(课程名称 name或者标签tags)、授权站点id,站点id 查询未选择课程(分页并显示总条数)
*
*/
@GetMapping("/accredit/course/noCourseList")
Page<CourseEntityVo> noCourseList(@RequestBody AccreditCourseVO accreditCourseVO);
/**
* 根据课程关键字(课程名称 name或者标签tags)企业id、 站点id 查询已选择课程(分页并显示总条数)
*
*/
@GetMapping("/accredit/courseList")
Page<CourseEntityVo> courseList(@RequestBody AccreditCourseVO accreditCourseVO);
/**
* 根据课程关键字(课程名称 name或者标签tags)授权站点id、 站点id 查询已选择课程(不用分页)
* 作用:供 保存、 授权接口调用 与传进来的已选课程对象集合相比较
*
*/
@GetMapping("/accredit/XYcourseList")
List<CourseEntityVo> YXcourseList(@RequestBody AccreditCourseVO accreditCourseVO);
/**
* 授权列表接口
* @param siteName 站点名称
* @param pageNo 页码
* @param pageSize 每页条数
* @return
*/
@GetMapping(value = "/accredit/get/list")
public PageAuthorizeVO queryAuthorizeCourse(@RequestParam(name = "type",required = true) String type, @RequestParam(name = "siteName",required = false) String siteName,
@RequestParam(name = "companyName",required = false) String companyName,
@RequestParam(name = "pageNo", defaultValue = "0") Integer pageNo,
@RequestParam(name = "pageSize", defaultValue = "20") Integer pageSize);
@GetMapping(value = "/accredit/authorize/list")
Page<AuthorizeCourseVO> queryAuthorizedCourseList(@RequestParam(name = "type", required = true) String type,
@RequestParam(name = "siteName", required = false) String siteName,
@RequestParam(name = "companyName", required = false) String companyName,
@RequestParam(name = "pageNo", defaultValue = "0") Integer pageNo,
@RequestParam(name = "pageSize", defaultValue = "20") Integer pageSize);
/**
* 修改课程授权参数
* @auhtor lilingye
* @param accreditVO
* @return
*/
@PostMapping(value = "/accredit/update")
public Boolean updateAuthorize(@RequestBody AccreditVO accreditVO);
/**
* 此授权课程当前授权有效课程
* @param id
* @return
*/
@GetMapping(value = "/accredit/courseCount")
Integer getAccreditByCourseId(@RequestParam(value = "id") Long id);
}
package com.yizhi.course.application.feign;
import com.yizhi.course.application.vo.CardConfigVO;
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: XieHaijun
* @Description:
* @Date: Created in 17:43 2019/3/7
* @Modified By
*/
@FeignClient(name = "course", contextId = "CardConfigClient")
public interface CardConfigClient {
/**
* 新增或者修改名片配置信息
* @param vo
* @return
*/
@PostMapping(value = "/cardConfig/saveOrUpdate")
CardConfigVO addConfig(@RequestBody CardConfigVO vo);
/**
* 获取站点的名片配置信息
* @param siteId
* @return
*/
@GetMapping(value = "/cardConfig/get")
CardConfigVO getBySiteId(@RequestParam("siteId") Long siteId);
/**
* 初始化名片配置
* @return
*/
@GetMapping(value = "/cardConfig/init")
boolean initConfig(@RequestParam("siteId") Long siteId);
}
package com.yizhi.course.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.course.application.vo.ApiClassifyVo;
import com.yizhi.course.application.vo.domain.ClassifyEntityVo;
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;
@FeignClient(name = "course", contextId = "ClassifyClient")
public interface ClassifyClient {
@GetMapping("/manage/classify/find/id")
ClassifyEntityVo getById(@RequestParam("id") Long id);
@GetMapping("/manage/classify/check/name")
boolean checkExtisClassifyName(@RequestParam("name") String name,
@RequestParam(value = "parentId" ,required = false) Long parentId,
@RequestParam("siteId") Long siteId,
@RequestParam("type") Integer type,
@RequestParam(value = "classifyId" ,required = false) Long classifyId);
/**
* 添加分类
*
* @param classify
* @return
*/
@PostMapping("/manage/classify/save")
int saveClassify(@RequestBody ClassifyEntityVo classify);
/**
* 删除分类
*
* @param id
* @return
*/
@PostMapping("/manage/classify/delete")
int deleteClassify(@RequestBody ClassifyEntityVo classify);
/**
* 修改分类
*
* @param classify
* @return
*/
@PostMapping("/manage/classify/update")
int updateClassify(@RequestBody ClassifyEntityVo classify);
/**
* 查询分类
*
* @param name
* @param pageNo
* @param pageSize
* @return
*/
@GetMapping("/manage/classify/list")
Page<ClassifyEntityVo> listClassify(
@RequestParam(required = false,name = "isStartHQ") Boolean isStartHQ,
@RequestParam(value = "name", required = false) String name,
@RequestParam(value = "pageNo", required = false) Integer pageNo,
@RequestParam(value = "pageSize", required = false) Integer pageSize,
@RequestParam(value = "companyId") Long companyId,
@RequestParam(value = "siteId") Long siteId,
@RequestParam(name = "orgIds", required = false) List<Long> orgIds
);
/**
* 学员端查询分类
*
* @return
*/
@GetMapping("/api/classify/list")
List<ClassifyEntityVo> listStuClassify(
@RequestParam(value = "companyId") Long companyId,
@RequestParam(value = "siteId") Long siteId
);
/**
* 分类排序
*
* @param list
* @return
*/
@PostMapping("/manage/classify/sort")
int sortClassify(@RequestBody List<ClassifyEntityVo> list);
@GetMapping(value = "/manage/classify/page/list")
Page<ApiClassifyVo> pageList(
@RequestParam(name = "name", required = false) String name,
@RequestParam(name = "pageNo") Integer pageNo,
@RequestParam(name = "pageSize") Integer pageSize,
@RequestParam(name = "companyId") Long companyId,
@RequestParam(name = "siteId") Long siteId,
@RequestParam(name = "orgIds", required = false) List<Long> orgIds
);
/**
* 验证同站点下 同级的分类不能重名
*
* @param name 分类名
* @param layer 分类层级
* @param companyId 企业名
* @param siteId 站点id
* @param id 分类id (修改的时候传入)
* @return Boolean
*/
@GetMapping("/manage/classify/vail/name")
Boolean vailName(
@RequestParam(name = "name") String name,
@RequestParam(name = "layer") Integer layer,
@RequestParam(name = "companyId") Long companyId,
@RequestParam(name = "siteId") Long siteId,
@RequestParam(name = "id",required = false) Long id
);
@GetMapping("/manage/classify/getClassifyName")
public String getClassifyName(@RequestParam("classifyId")Long classifyId);
}
package com.yizhi.course.application.feign;
import com.yizhi.course.application.vo.ClassifyGroupInfoVO;
import com.yizhi.course.application.vo.ClassifyGroupStudentVO;
import com.yizhi.course.application.vo.ClassifyGroupVO;
import com.yizhi.course.application.vo.GroupClassifyItemVO;
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;
@FeignClient(name = "course", contextId = "ClassifyGroupClient")
public interface ClassifyGroupClient {
/**
* 勾选分类之后进行保存
* @param classifyGroupInfoVO
* @return
*/
@PostMapping("/classify/group/save")
List<ClassifyGroupVO> save(@RequestBody ClassifyGroupInfoVO classifyGroupInfoVO);
/**
* 全量保存
* @param classifyGroupInfoVO
* @return
*/
@PostMapping("/classify/group/save/all")
List<ClassifyGroupVO> saveAll(@RequestBody ClassifyGroupInfoVO classifyGroupInfoVO);
/**
* 获取 每一级分类信息和上次保存的分类信息
* @param id 创建的分类组id(主信息ID)
* @param classifyId 当前选择的分类id(首次进来时候不要传)
* @param layer 选择的分类层级(1表示一级......3表示三级),没有选择不要传
* @return (classifyData存放分类列表信息; classifyGroupData存放选择分类的选择过的)
*/
@GetMapping("/classify/group/get")
List<GroupClassifyItemVO> get(@RequestParam("id") Long id,
@RequestParam(value = "classifyId" ,required = false) Long classifyId,
@RequestParam(value = "layer",required = false) Integer layer);
/**
* 获取被选择的分类id
* @param id
* @return
*/
@GetMapping("/classify/group/get/select/classifyIds")
List<Long> getSelectIds(@RequestParam("id") Long id);
@GetMapping("/classify/group/join/status")
Boolean joinStatus(@RequestParam("cid") Long cid);
/**
* 前端显示分类组下的全部关联信息
* @param id
* @return
*/
@GetMapping("/classify/group/view")
ClassifyGroupStudentVO view(@RequestParam(name = "id") Long id);
@GetMapping("/classify/group/manage/view")
ClassifyGroupStudentVO manageView(@RequestParam(name = "id") Long id,
@RequestParam(name = "keyName",required = false) String keyName);
}
package com.yizhi.course.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.course.application.vo.ClassifyGroupStudentVO;
import com.yizhi.course.application.vo.domain.ClassifyGroupInfoEntityVo;
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;
@FeignClient(name = "course", contextId = "ClassifyGroupInfoClient")
public interface ClassifyGroupInfoClient {
/**
* 保存分类组的基本信息
* @param classifyGroupInfo
* @return
*/
@PostMapping("/classify/group/info/save")
ClassifyGroupInfoEntityVo save(@RequestBody ClassifyGroupInfoEntityVo classifyGroupInfo);
/**
* 获取分类组的列表信息
* @param pageNo 页码
* @param pageSize 每页大小
* @param status 状态(可以不传,查询全部状态,传了就查询对应状态的
* @return
*/
@GetMapping("/classify/group/info/list")
Page<ClassifyGroupInfoEntityVo> list(@RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
@RequestParam(name = "pageSize", defaultValue = "20") Integer pageSize,
@RequestParam(name="status", required = false ) Integer status);
/**
* 提供给外部模块使用,根据企业和站点查询该站点下的分类组
* @param companyId 登录的用户企业id
* @param siteId 用户当前访问的站点id
* @return
*/
@GetMapping("/classify/group/info/list/all")
List<ClassifyGroupInfoEntityVo> listAll(@RequestParam("companyId") Long companyId,
@RequestParam("siteId") Long siteId);
/**
* 选择一条分组信息进行查看
* @param id 分类组基本信息的唯一id
* @return
*/
@GetMapping("/classify/group/info/get")
ClassifyGroupInfoEntityVo get(@RequestParam(name = "id") Long id);
/**
* 删除一条分类组信息
* @param id 分类组基本信息的唯一id
* @return
*/
@GetMapping("/classify/group/info/delete")
boolean delete(@RequestParam(name = "id") Long id);
/**
* 学员端查看(包含分类组基本信息和分类列表信息(层级平铺前端处理)
* @param id 分类组基本信息的唯一id
* @return
*/
@GetMapping("/classify/group/info/view")
ClassifyGroupStudentVO view(@RequestParam(name = "id") Long id);
}
package com.yizhi.course.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.course.application.vo.ApiCommnentVo;
import com.yizhi.course.application.vo.CourseCommentVo;
import com.yizhi.course.application.vo.PageCommentVo;
import com.yizhi.course.application.vo.ThumbsUpVO;
import com.yizhi.course.application.vo.domain.CommentEntityVo;
import com.yizhi.course.application.vo.domain.ReplyEntityVo;
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.List;
import java.util.Map;
@FeignClient(name = "course", contextId = "CommClient")
public interface CommClient {
@GetMapping("/comm/list")
PageCommentVo list(@RequestParam("courseId") Long courseId,
@RequestParam(name = "commentator", required = false) String commentator,
@RequestParam(name = "status", required = false) Integer status, @RequestParam("pageNo") Integer pageNo,
@RequestParam("pageSize") Integer pageSize);
@GetMapping("/comm/reply/list")
Page<ReplyEntityVo> replyList(@RequestParam("commmentId") Long commmentId, @RequestParam("pageNo") Integer pageNo,
@RequestParam("pageSize") Integer pageSize);
@PostMapping("/thumbsUp/save")
Boolean saveThumbsUp(@RequestBody ThumbsUpVO thumbsUp);
@PostMapping("/thumbsUp/delete")
Boolean deleteThumbsUp(@RequestBody ThumbsUpVO thumbsUp);
@GetMapping("/comm/api/list")
Page<ApiCommnentVo> apiList(@RequestParam(name = "courseId") Long courseId,
@RequestParam(name = "accountId") Long accountId, @RequestParam(name = "pageNo") Integer pageNo,
@RequestParam(name = "pageSize") Integer pageSize);
@GetMapping("/comm/get")
CommentEntityVo get(@RequestParam("id") Long id);
@PostMapping("/comm/pc/list")
PageCommentVo pcList(@RequestBody CourseCommentVo commentVo);
@GetMapping("/comm/up")
public Boolean up(@RequestParam("id") Long id,@RequestParam("type") Integer type);
@GetMapping("/comm/down")
public Boolean down(@RequestParam("id") Long id,@RequestParam("type") Integer type);
@GetMapping("/comm/list/export")
public Map<String, Object> export(
@ApiParam(name = "courseId", value = "课程id") @RequestParam(name = "courseId") Long courseId,
@ApiParam(name = "courseName", value = "课程名称") @RequestParam(name = "courseName") String courseName,
@RequestParam(name = "commentator", required = false) String commentator,
@RequestParam(name = "status", required = false) Integer status);
@GetMapping("/comm/reply/list2")
public Page<ReplyEntityVo> replyList2(@RequestParam("commmentId") Long commmentId, @RequestParam("pageNo") Integer pageNo,
@RequestParam("pageSize") Integer pageSize);
@GetMapping("/comm/getCount")
public List<Integer> countComm(@RequestParam("courseIds") List<Long> courseIds);
/**
* 交银康联中调用的老接口
* @param courseId
* @param pageNo
* @param pageSize
* @return
*/
@Deprecated
@GetMapping("/comm/listjykl")
PageCommentVo list(@RequestParam("courseId") Long courseId, @RequestParam("pageNo") Integer pageNo, @RequestParam("pageSize") Integer pageSize);
}
package com.yizhi.course.application.feign;
import com.yizhi.course.application.vo.CourseGradeVO;
import com.yizhi.course.application.vo.ThumbsUpVO;
import com.yizhi.course.application.vo.domain.CommentEntityVo;
import com.yizhi.course.application.vo.domain.ReplyEntityVo;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
/**
* 评论
* @author Fairyland
*
*/
@FeignClient(name = "course", contextId = "CommentClient")
public interface CommentClient {
/**
* 根据评论id审核该评论,审核确定后 改变审核状态 评论会从列表消失 连评论下的回复一起消失
* comment 评论对象
* @return
*/
@PostMapping("/comment/auditComment")
String auditComment(@RequestBody CommentEntityVo comment);
/**
* 根据回复评论id审核该评论,审核确定后 改变审核状态 评论会从列表消失 连评论下的回复一起消失
* reply 评论对象
* @return
*/
@PostMapping("/comment/auditreply")
String auditreply(@RequestBody ReplyEntityVo reply);
/**
* 新增评论feign接口(保存)
* @param comment
* @return
*/
@PostMapping("/comment/save")
CommentEntityVo saveComment(@RequestBody CommentEntityVo comment);
/**
* 新增评论feign接口(保存)
* @return
*/
@PostMapping("/reply/save")
Boolean saveReply(@RequestBody ReplyEntityVo reply);
@PostMapping("/thumbsUp/save")
Boolean saveThumbsUp(@RequestBody ThumbsUpVO thumbsUp);
/**
* 新增删除点赞feign接口(保存)
* @return
*/
@PostMapping("/thumbsUp/delete")
Boolean deleteThumbsUp(@RequestBody ThumbsUpVO thumbsUp);
@PostMapping("/grade/save")
Boolean saveGrade(@RequestBody CourseGradeVO grade);
}
package com.yizhi.course.application.feign;
import com.yizhi.course.application.vo.BathEditCourseVo;
import com.yizhi.course.application.vo.CourseShelvesVo;
import com.yizhi.course.application.vo.domain.CourseEntityVo;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
import java.util.Map;
@FeignClient(name = "course", contextId = "CourseBathEditClient")
public interface CourseBathEditClient {
/**
* 课程批量上下架检查
* @param vo 请求参数
* @return
*/
@PostMapping("/bath/edit/shelves/check")
List<Map<String,Object>> courseShelvesCheck(@RequestBody CourseShelvesVo vo);
/**
* 课程分类批量修改
* @param vo
* @return
*/
@PostMapping("/bath/edit/classify")
Boolean courseClassifyEdit(@RequestBody BathEditCourseVo vo);
/**
* 课程批量上下架操作
* @param vo
* @return
*/
@PostMapping("/bath/edit/shelves")
Boolean courseShelvesEdit(@RequestBody BathEditCourseVo vo);
/**
* 检查哪些课程是上架状态
* @param ids
* @return
*/
@PostMapping("/bath/edit/strategy/check")
List<CourseEntityVo> courseStrategyCheck(@RequestBody List<Long> ids);
/**
* 对指定的未上架课程进行批量策略修改
* @param vo
* @return
*/
@PostMapping("/bath/edit/strategy")
Boolean courseStrategyEdit(@RequestBody BathEditCourseVo vo);
}
package com.yizhi.course.application.feign;
import com.yizhi.course.application.vo.CourseDashboardParam;
import com.yizhi.course.application.vo.CourseDashboardVO;
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 Fairyland
*/
@FeignClient(name = "course", contextId = "CourseDashboardClient")
public interface CourseDashboardClient {
@PostMapping("/dashboard/getCourseDashboardData")
public Map<Long, CourseDashboardVO> getCourseDashboardData(@RequestBody CourseDashboardParam param);
/**
* 根据时间站点 获取《用户id,时间内的累计学习时长》
*
* @param param
* @return
*/
@PostMapping("/dashboard/getCourseStudyTime")
public Map<Long, Long> getCourseStudyTime(@RequestBody CourseDashboardParam param);
/**
* 根据时间实时获取当前用户课程的累计学习时间
*
* @param startDate
* @param endDate
* @return
*/
@GetMapping("/dashboard/todayStudyTime")
public Long todayStudyTime(@RequestParam("startDate") String startDate, @RequestParam("endDate") String endDate);
/**
* 实时获取浏览课程数
*
* @return
*/
@GetMapping("/dashboard/viewRecords/getCount")
public Integer getViewRecordsCount();
}
package com.yizhi.course.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.course.application.vo.*;
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: XieHaijun
* @Description:
* @Date: Created in 13:44 2018/12/19
* @Modified By
*/
@FeignClient(name = "course", contextId = "CoursePcClient")
public interface CoursePcClient {
String COURSE_STATUS_STUDYING = "studying";// 学习中的状态
String COURSE_STATUS_COMPLETE = "complete";// 完成中的状态
@GetMapping("/pc/recommend")
List<HomePageCoursePageVo> recommend();
/**
* 查询推荐课程列表 版本v2
*/
@GetMapping("/pc/v2/recommend")
public List<HomePageCoursePageVoV2> recommendV2();
@PostMapping("/pc/status/ids/get")
List<CourseStudentStatusVO> getStatusByIds(@RequestBody List<Long> ids);
@GetMapping("/pc/status/init")
void studeyStatusInit(@RequestParam(value = "siteId",required = false) Long siteId);
@GetMapping("/pc/list")
public Page<HomePageCoursePageVo> listCourseInfo(
@RequestParam(value="classifyId",required = false) Long classifyId,
@RequestParam(value = "pageNo",required = false ) Integer pageNo,
@RequestParam(value = "pageSize",required = false ) Integer pageSize,
@RequestParam(value = "isQueryChildren",required = false) Boolean isQueryChildren);
@GetMapping("/pc/v2/list")
public Page<HomePageCoursePageVoV2> listCourseInfoV2(
@RequestParam(value="classifyId",required = false) Long classifyId,
@RequestParam(value = "pageNo",required = false ) Integer pageNo,
@RequestParam(value = "pageSize",required = false ) Integer pageSize,
@RequestParam(value = "isQueryChildren",required = false) Boolean isQueryChildren,
@RequestParam(value = "hotDesc",required = false) Boolean hotDesc,
@RequestParam(value = "gradeDesc",required = false) Boolean gradeDesc);
@GetMapping("/pc/classify/list")
public List<ClassifyVo> listClassifyInfo(
@RequestParam(value="classifyId",required = false) Long classifyId);
@GetMapping("/pc/list/course/grade")
public List<ModuleAllVoCourse> listCoursePCgrade(@RequestParam(name="ids")List<Long> ids);
@PostMapping("/pc/list/course/get/material/time")
public Map<Long,Long> getMaterialTimeByCourseIds(@RequestBody List<Long> ids);
@GetMapping("/pc/list/course/portal/pc/api")
public List<ModuleAllVoCourse> listCourseScope(@RequestParam(name="relationIds",required=false)List<Long> relationIds, @RequestParam(name="num")Integer num,@RequestParam(name="listIds",required=false)List<Long> listIds);
/**
* 章节学习列表,最后一次在最上面
* @param testId
* @param accountId
* @return
*/
@GetMapping("/pc/chapter/test/list")
List<TestCaseRecordVO> chapterTestList(@RequestParam(name="testId") Long testId,
@RequestParam(name="accountId") Long accountId);
@GetMapping("/pc/my/study/count")
MyCourseStudyCountVo getMyCourseStudyCount(@RequestParam("siteId") Long siteId,
@RequestParam("accountId") Long accountId);
@GetMapping("/pc/my/study/list")
Page<MyCourseRecordeVo> getMyCourseStudyList(
@RequestParam("siteId") Long siteId,
@RequestParam("accountId") Long accountId,
@RequestParam(name = "name", required = false) String name,
@RequestParam(name = "type", required = false) Integer type, //课程是否完成 0 为进行中 1 为已完成
@RequestParam(name = "pageNo") Integer pageNo,
@RequestParam(name = "pageSize") Integer pageSize,
@RequestParam(name = "startDate", required=false) Long startDate,
@RequestParam(name = "endDate", required=false) Long endDate
);
/**
* 查询课程学时
* @param ids
* @return
*/
@PostMapping("/pc/course/study/hour/get")
Map<Long,Float> getStudyHourByCourseIds(@RequestBody List<Long> ids);
}
package com.yizhi.course.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.course.application.vo.*;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.Date;
import java.util.List;
import java.util.Map;
@FeignClient(name = "course", contextId = "CourseReportClient")
public interface CourseReportClient {
/**
* 课程----图形报表
* @param startDate
* @param endDate
* @param companyId
* @param orgId
* @param siteId
* @return
*/
@GetMapping("/statisticsCourse/chart/group")
public List<ReportStudyCourseChartsVo> chartGroup(
@RequestParam("startDate")String startDate,
@RequestParam("endDate")String endDate,
@RequestParam("companyId")Long companyId,
@RequestParam("orgId")Long orgId,
@RequestParam("siteId")Long siteId);
/**
* 课程---按课程统计
* @param kwd
* @param startDate
* @param endDate
* @param companyId
* @param orgId
* @param siteId
* @return
*/
@GetMapping("/statisticsCourse/group")
public Page<ReportStudyCourseVo> courseGroup(
@RequestParam(value="kwd",required=false)String kwd,
@RequestParam("startDate")String startDate,
@RequestParam("endDate")String endDate,
@RequestParam("companyId")Long companyId,
@RequestParam("orgId")Long orgId,
@RequestParam("siteId")Long siteId,
@RequestParam(value="pageNo",required=false)Integer pageNo,
@RequestParam(value="pageSize",required=false)Integer pageSize);
/**
* 课程----按照课程统计----详情
* @param accountKwd
* @param orgKwd
* @param courseId
* @param startDate
* @param endDate
* @param pageNo
* @param pageSize
* @return
*/
@GetMapping("/statisticsCourse/group/view")
public Map<String,Object> courseGroupView(
@RequestParam(value="accountKwd",required=false)String accountKwd,
@RequestParam(value="orgKwd",required=false)String orgKwd,
@RequestParam("courseId")Long courseId,
@RequestParam("startDate")String startDate,
@RequestParam("endDate")String endDate,
@RequestParam(value="pageNo",required=false)Integer pageNo,
@RequestParam(value="pageSize",required=false)Integer pageSize);
/**
* 按照用户统计
* @param accountKwd
* @param orgKwd
* @param startDate
* @param endDate
* @param companyId
* @param orgId
* @param siteId
* @return
*/
@GetMapping("/statisticsCourse/account/group")
public Page<ReportStudyCourseAccountVo> courseAccountGroup(
@RequestParam(value="accountKwd",required=false)String accountKwd,
@RequestParam(value="orgKwd",required=false)String orgKwd,
@RequestParam("startDate")String startDate,
@RequestParam("endDate")String endDate,
@RequestParam("companyId")Long companyId,
@RequestParam("orgId")Long orgId,
@RequestParam("siteId")Long siteId,
@RequestParam(value="pageNo",required=false)Integer pageNo,
@RequestParam(value="pageSize",required=false)Integer pageSize);
/**
* 按照用户统计下载 因为上边的那个如果应用到下载执行速度比较慢,因此进行优化了。
* @param accountKwd
* @param orgKwd
* @param startDate
* @param endDate
* @param companyId
* @param orgId
* @param siteId
* @param pageNo
* @param pageSize
* @return
*/
@GetMapping("/statisticsCourse/account/group/export")
public Page<ReportStudyCourseAccountVo> courseAccountGroupExport(
@RequestParam(value="accountKwd",required=false)String accountKwd,
@RequestParam(value="orgKwd",required=false)String orgKwd,
@RequestParam("startDate")String startDate,
@RequestParam("endDate")String endDate,
@RequestParam("companyId")Long companyId,
@RequestParam("orgId")Long orgId,
@RequestParam("siteId")Long siteId,
@RequestParam(value="pageNo",required=false)Integer pageNo,
@RequestParam(value="pageSize",required=false)Integer pageSize);
@GetMapping("/statisticsCourse/account/details")
public List<ReportStudyCourseAccountDetailsVo> courseAccountDetails(
@RequestParam(value="accountKwd",required=false)String accountKwd,
@RequestParam(value="orgKwd",required=false)String orgKwd,
@RequestParam("startDate")String startDate,
@RequestParam("endDate")String endDate,
@RequestParam("companyId")Long companyId,
@RequestParam("orgId")Long orgId,
@RequestParam("siteId")Long siteId,
@RequestParam("pageNo")Integer pageNo,
@RequestParam("pageSize")Integer pageSize);
@GetMapping("/statisticsCourse/account/details/dataTotal")
public Integer courseAccountDetailsDataTotal(
@RequestParam(value="accountKwd",required=false)String accountKwd,
@RequestParam(value="orgKwd",required=false)String orgKwd,
@RequestParam("startDate")String startDate,
@RequestParam("endDate")String endDate,
@RequestParam("companyId")Long companyId,
@RequestParam("orgId")Long orgId,
@RequestParam("siteId")Long siteId);
/**
* 按照用户统计----详情
* @param accountId
* @param startDate
* @param endDate
* @param pageNo
* @param pageSize
* @return
*/
@GetMapping("/statisticsCourse/account/group/view")
public Map<String,Object> courseAccountGroupView(
@RequestParam("accountId")Long accountId,
@RequestParam(value="kwd",required=false)String kwd,
@RequestParam("startDate")String startDate,
@RequestParam("endDate")String endDate,
@RequestParam(value="pageNo",required=false)Integer pageNo,
@RequestParam(value="pageSize",required=false)Integer pageSize);
/**
* 按照部门统计
* @param kwd
* @param startDate
* @param endDate
* @param companyId
* @param orgId
* @param siteId
* @return
*/
@GetMapping("/statisticsCourse/org/group")
public Page<ReportStudyCourseOrgVo> courseOrgGroup(
@RequestParam(value="kwd",required=false)String kwd,
@RequestParam("startDate")String startDate,
@RequestParam("endDate")String endDate,
@RequestParam("companyId")Long companyId,
@RequestParam("orgId")Long orgId,
@RequestParam("siteId")Long siteId,
@RequestParam(value="pageNo",required=false)Integer pageNo,
@RequestParam(value="pageSize",required=false)Integer pageSize);
/**
* 异步加载报表
* @param startDate
* @return
*/
@GetMapping("/statisticsCourse/asynchronous/load/date")
public String AsynchronousCourse(@RequestParam(value="startDate",required=false) String startDate,
@RequestParam(value="endDate",required=false) String endDate);
/**
* 报表服务专用接口
*/
@GetMapping("/statisticsCourse/get/statis/course/message")
public StatisCourse getStatisCourseMessage(@RequestParam(value="companyIdParam",required=false)Long companyIdParam,@RequestParam(value="siteIdParam",required=false)Long siteIdParam);
@GetMapping("/statisticsCourse/get/all/siteId")
public List<Long> getAllSiteId();
@GetMapping("/statisticsCourse/get/statis/course/relationId/by/courseId")
public CourseAccountReport listCourseAccountByCourseId(@RequestParam(value="id")Long id);
@GetMapping("/statisticsCourse/get/statis/course/materialtime/by/courseId")
public String getCourseDuration(@RequestParam(value="cId")Long cId);
@GetMapping("/statisticsCourse/get/statis/course/recorde/by/courseId")
public List<StatisticsCourseRecorde> getCourseRecordeByCourseId(@RequestParam(value="cId")Long cId,@RequestParam("startDate")String startDate,@RequestParam("endDate")String endDate,@RequestParam("type")Integer type);
@GetMapping("/statisticsCourse/get/statis/course/message/by/courseId")
public List<StatisticsCourseMessage> getCourseMessageByCourseId(@RequestParam("cId")Long cId,@RequestParam("startDate")String startDate,@RequestParam("endDate")String endDate,@RequestParam("siteId")Long siteId);
@GetMapping("/statisticsCourse/get/statis/course/mintime/by/courseId")
public Date getCourseMinTimeByCourseId(@RequestParam(value="id")Long id);
@GetMapping("/statisticsCourse/get/statis/course/grade")
public List<ScormRecordVO> getCourseGrade();
}
package com.yizhi.course.application.feign;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
@FeignClient(name = "course", contextId = "CourseStatusSyncClient")
public interface CourseStatusSyncClient {
@GetMapping("/sync/sendFinishStatus")
String TrainningFinishToCourse();
}
package com.yizhi.course.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.course.application.vo.ProjectsDurationParamVO;
import com.yizhi.course.application.vo.StudyHourReportVO;
import com.yizhi.course.application.vo.domain.RecordeEntityVo;
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: XieHaijun
* @Description:
* @Date: Created in 13:41 2018/11/14
* @Modified By
*/
@FeignClient(name = "course", contextId = "CourseStudyClient")
public interface CourseStudyClient {
@PostMapping("/study/status")
Boolean completionStatus(@RequestBody RecordeEntityVo studyRecd);
@GetMapping("/study/point/init")
Boolean coursePointInit(@RequestParam(value = "siteId", required = false) Long siteId);
/**
* 获取学时统计列表
*
* @param userName
* @param orgNameLike
* @param pageNo
* @param pageSize
* @return
* @author ding
*/
@GetMapping("/study/report/list")
Page<StudyHourReportVO> getStudyHourList(@RequestParam(value = "userName", required = false) String userName,
@RequestParam(value = "orgNameLike", required = false) String orgNameLike,
@RequestParam("pageNo") Integer pageNo,
@RequestParam("pageSize") Integer pageSize);
/**
* 获取学时统计列表下载
*
* @param userName
* @param orgNameLike
* @return
* @author ding
*/
@GetMapping("/study/report/listDownload")
String getStudyHourListDownload(@RequestParam(value = "userName", required = false) String userName,
@RequestParam(value = "orgNameLike", required = false) String orgNameLike);
/**
* 学时明细下载
*
* @param userName
* @param orgNameLike
* @return
*/
@GetMapping("/study/details/download")
public String studyHourDetailsDownload(
@RequestParam(value = "userName", required = false) String userName,
@RequestParam(value = "orgNameLike", required = false) String orgNameLike);
/**
* 复旦mini mba项目获取多个培训项目总学习时长
*
* @param paramVO
* @return
*/
@PostMapping("/study/projects/totalDuration")
public Integer getProjectsTotalDuration(@RequestBody ProjectsDurationParamVO paramVO);
/**
* 复旦mini mba项目获取多个个课程的学习总时长
*
* @param paramVO
* @return
*/
@PostMapping("/study/course/totalDuration")
Map<Long, Map<String, Object>> getCourseTotalDuration(@RequestBody ProjectsDurationParamVO paramVO);
@GetMapping("/study/course/mq/record/open")
Boolean openRedis(@RequestParam("key") String key);
}
package com.yizhi.course.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.course.application.vo.CourseStudyHourVO;
import com.yizhi.course.application.vo.MyDurationVO;
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: XieHaijun
* @Description:
* @Date: Created in 11:22 2019/5/14
* @Modified By
*/
@FeignClient(name = "course", contextId = "CourseStudyHourClient")
public interface CourseStudyHourClient {
/**
* 学时统计
* @param siteId
* @param accountId
* @param courseId
* @return
*/
@GetMapping("/courseStudyHour/hour/statistics")
Float hourStatistics(@RequestParam("siteId") Long siteId,
@RequestParam(value = "accountId",required = false) Long accountId,
@RequestParam(value = "courseId" ,required = false) Long courseId);
/**
* 发放学时
* @param entiy
* @return
*/
@PostMapping("/courseStudyHour/add")
Boolean add(@RequestBody CourseStudyHourVO entiy);
/**
分页查询用户学时记录
* @param accountId
* @param siteId
* @param pageNo
* @param pageSize
* @return
*/
@GetMapping("/courseStudyHour/query/duration/ByAccountId")
public Page<MyDurationVO> queryDurationByAccountId(@RequestParam("accountId")Long accountId,
@RequestParam("siteId")Long siteId,
@RequestParam(value = "pageNo")Integer pageNo,
@RequestParam("pageSize")Integer pageSize);
}
package com.yizhi.course.application.feign;
import com.yizhi.course.application.vo.CourseStudyDrRankInfoVO;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
@FeignClient(name = "course", contextId = "CourseStudyHourRankingClient")
public interface CourseStudyHourRankingClient {
/**
* 查询当前人的排名和站点排名列表
* @param siteId
* @param accountId
* @return
*/
@GetMapping("/studyHour/ranking/info")
CourseStudyDrRankInfoVO getListBySiteId(@RequestParam("siteId") Long siteId,
@RequestParam("accountId") Long accountId);
/**
* 异步生成站点排名信息
* @param siteId
* @return
*/
@GetMapping("/studyHour/ranking/generated")
boolean rankingGenerated(@RequestParam("siteId") Long siteId);
}
package com.yizhi.course.application.feign;
import com.yizhi.course.application.vo.CourseGradeVO;
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;
@FeignClient(name = "course", contextId = "GradeClient")
public interface GradeClient {
@PostMapping("/grade/pc/save")
Integer savePcGrade(@RequestBody CourseGradeVO grade);
/**
*
* 对用户能否评分进行判断,已对课程进行评分的用户只能进行评论;
* @return
*/
@GetMapping("/grade/pc/judgeWhetherSaveGrade")
public Boolean judgeWhetherSaveGrade(@RequestParam(name="courseId")Long courseId);
}
package com.yizhi.course.application.feign;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
@FeignClient(name = "course", contextId = "HeartbeatHandleClient")
public interface HeartbeatHandleClient {
/**
* 学习日志计算处理
* @return
*/
@GetMapping("/heartbeat/handle/calculate")
Boolean calculate(@RequestParam("sessionId") String sessionId);
}
package com.yizhi.course.application.feign;
import com.yizhi.course.application.vo.LastViewRecordVO;
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: XieHaijun
* @Description:
* @Date: Created in 16:05 2019/6/18
* @Modified By
*/
@FeignClient(name = "course", contextId = "LastViewRecordClient")
public interface LastViewRecordClient {
@PostMapping("/api/lastViewRecord/save")
Boolean save(@RequestBody LastViewRecordVO vo);
@GetMapping("/api/lastViewRecord/get")
LastViewRecordVO get(@RequestParam("siteId") Long siteId,
@RequestParam("accountId") Long accountId,
@RequestParam("courseId") Long courseId,
@RequestParam(value = "chapterId",required = false) Long chapterId);
}
package com.yizhi.course.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.course.application.vo.*;
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;
@FeignClient(name = "course", contextId = "LessonClient")
public interface LessonClient {
/**
* 鏌ョ湅鍋氳鍒楄〃
*/
@GetMapping("/manageLesson/lesson/list")
Page<MaterialManageVo> getLessonList(@RequestParam("name") String name,
@RequestParam("listCommintIdList") List<Long> listComminIdList,
@RequestParam("listAuditorIdList") List<Long> listAuditorIdList,
@RequestParam("state") Integer state,
@RequestParam("pageNo") Integer pageNo,
@RequestParam("pageSize") Integer pageSize,
@RequestParam("orgId") Long orgId);
/**
* 鏍规嵁绱犳潗id鏌ョ湅鍗曚釜鍋氳璇︽儏
*/
@GetMapping("/manageLesson/lesson/details")
MaterialManageDetailsVo getLesson(@RequestParam("id") Long id);
/**
* 鏍规嵁绱犳潗id瀹℃牳/鏇存敼鐘舵��
*/
@PostMapping("/manageLesson/update/state")
Boolean updateStateManage(@RequestBody MaterialStateUpdateVo materialStateUpdateVo);
/**
* 鏍规嵁绱犳潗id瀹℃牳/鏇存敼鐘舵�佸苟涓斿緱鍒颁笅涓�涓猧d
*/
@PostMapping("/manageLesson/update/state/getNextId")
Long updateStateGetNextId(@RequestBody MaterialStateUpdateVo materialStateUpdateVo);
/**
* 閫氳繃鍋氳id鏌ョ湅涓嶉�氳繃鐨勫師鍥�
*/
@GetMapping("/manageLesson/nopass/reason")
List<NoPassReason> noPassReason(@RequestParam("lessonId") Long lessonId, @RequestParam("pageNo") Integer pageNo,
@RequestParam("pageSize") Integer pageSize);
/**
* 浠ヤ笂鏄鐞嗙fen鎺ュ彛------------------------------------------
*/
/**
* 浠ヤ笅鏄鍛樼fen鎺ュ彛------------------------------------------
*/
/**
* 鏍规嵁绱犳潗id瀹℃牳/鏇存敼鐘舵��
*/
@PostMapping("/student/myLesson/update/state")
Boolean updateStateStudent(@RequestBody MaterialStateUpdateVo materialStateUpdateVo);
/**
* 鎴戠殑鍋氳鍒楄〃
* @param accountId
* @param name
* @return
*/
@GetMapping("/student/myLesson/list")
Page<CourseStudentListVo> getMyLessonList(@RequestParam(name="name",required=false)String name, @RequestParam(name="pageNo",required=false)Integer pageNo,
@RequestParam(name = "pageSize", required=false) Integer pageSize, @RequestParam(name="accountId",required=false)Long accountId);
/**
* 鏄剧ず鍗曚釜鍋氳
*/
@GetMapping("/student/myLesson/show")
CourseStudentListVo getMyLessonShow(@RequestParam("id")Long id);
/**
* 鏂板缓绱犳潗
* @param materialSaveVO
* @return
*/
@PostMapping("/student/myLesson/save")
Long setMyLesson(@RequestBody MaterialSaveVO materialSaveVO);
/**
* 鏄剧ず宸查�氳繃鐨勫仛璇�
* @param name
* @param pageNo
* @param pageSize
* @return
*/
@GetMapping("/student/myLesson/pass/list")
public Page<CourseStudentListVo> getPassMaterialList(
@RequestParam(name="name",required=false)String name,
@RequestParam(name="accountId",required=false)Long accountId,
@RequestParam(name="pageNo",required=false)Integer pageNo,
@RequestParam(name = "pageSize", required=false) Integer pageSize);
/**
* 鎴戠殑鎵�鏈夊仛璇炬暟閲忥紙涓嶅寘鎷凡缁忓垹闄ょ殑锛�
* @param accountId
* @return
*/
@GetMapping("/student/myLesson/all/num")
public Integer getMyLessonAllNum(@RequestParam(name="accountId",required=true)Long accountId);
}
package com.yizhi.course.application.feign;
import com.yizhi.course.application.vo.ClassifyVo;
import com.yizhi.course.application.vo.MarketingClassifyVo;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.List;
/**
* @Author: XieHaijun
* @Description: 营销课程分类
* @Date: Created in 9:34 2018/4/10
* @Modified By
*/
@FeignClient(name = "course", contextId = "MarketingClassifyClient")
public interface MarketingClassifyClient {
/************************* 营销分类接口 *********************************/
@RequestMapping(value = "/marketing/classify/save",method = RequestMethod.POST)
public MarketingClassifyVo saveClassify(@RequestBody MarketingClassifyVo marketingClassifyVo);
@RequestMapping(value = "/marketing/classify/delete",method = RequestMethod.GET)
public boolean deleteClassify(@RequestParam(value = "id") Long id);
@RequestMapping(value = "/marketing/classify/update",method = RequestMethod.POST)
public boolean updateClassify(@RequestBody MarketingClassifyVo marketingClassifyVo);
@RequestMapping(value = "/marketing/classify/list",method = RequestMethod.GET)
public List<ClassifyVo> listClassify();
@RequestMapping(value = "/marketing/classify/view",method = RequestMethod.GET)
public ClassifyVo viewClassify(@RequestParam(value = "id") Long id);
@RequestMapping(value = "/marketing/classify/name/get",method = RequestMethod.GET)
public ClassifyVo getByName(@RequestParam(value = "name") String name,@RequestParam("siteId") Long siteId,
@RequestParam(value = "classifyId",required = false) Long classifyId);
}
package com.yizhi.course.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.course.application.vo.domain.CourseEntityVo;
import com.yizhi.course.application.vo.*;
import com.yizhi.util.application.page.PageInfo;
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;
/**
* <p>
* 营销课程
* </p>
*
* @author fulan123
* @since 2018-03-19
*/
@FeignClient(name = "course", contextId = "MarketingCourseClient")
public interface MarketingCourseClient {
@GetMapping("/marketing/course/extis/chapte")
boolean extisChapte(@RequestParam("courseId") Long courseId);
/************************* 营销课程接口 *********************************/
@PostMapping("/marketing/course/save")
public MarketingCourseVo save(@RequestBody MarketingCourseVo marketingCourseVo);
@PostMapping("/marketing/course/update")
public boolean update(@RequestBody MarketingCourseVo marketingCourseVo);
@GetMapping("/marketing/course/delete")
public boolean delete(@RequestParam(value = "courseIds") String courseIds);
@GetMapping("/marketing/course/up")
public Boolean up(@RequestParam(value = "id") Long id);
@GetMapping("/marketing/course/down")
public Boolean down(@RequestParam(value = "id") Long id);
@PostMapping("/marketing/course/list")
public Page<CourseEntityVo> list(@RequestBody QueryCourseRequest queryCourseRequest);
@GetMapping("/marketing/course/view")
public MarketingCourseVo view(@RequestParam(value = "courseId") Long courseId,
@RequestParam(required = false,value = "shareId") Long shareId,
@RequestParam(required = false,value = "accountId") Long accountId,
@RequestParam(required = false,value = "openId") String openId,
@RequestParam(required = false,value = "manage") Boolean manage,
@RequestParam(required = false,value = "childShareOpenId") String childShareOpenId);
@PostMapping("/marketing/course/share")
public CourseShareVo share(@RequestBody CourseShareVo vo);
@GetMapping("/marketing/course/activity")
public boolean activity(@RequestParam(value = "browseRecordId") Long browseRecordId );
@GetMapping("/marketing/course/name/get")
public MarketingCourseVo getByName(@RequestParam("courseName") String courseName,@RequestParam("siteId") Long siteId,
@RequestParam(value = "courseId",required = false) Long courseId);
@GetMapping("/marketing/course/code/get")
MarketingCourseVo existByCode(@RequestParam("courseCode") String courseCode,@RequestParam("siteId") Long siteId,
@RequestParam(value = "courseId",required = false) Long courseId);
@GetMapping("/marketing/course/classify/id/get")
public Integer getByClassifyId(@RequestParam(value = "classifyId") Long classifyId);
@GetMapping("/marketing/course/share/list")
public PageInfo<CourseShareVo> shareList(@RequestParam(value = "pageNo") int pageNo
, @RequestParam(value = "pageSize" ,required = false) Integer pageSize
, @RequestParam(value = "searchFiled" ,required = false) String searchFiled);
@GetMapping("/marketing/course/share/browse/records")
public Page<BrowseRecordsVo> shareBrowseRecords(@RequestParam(value = "courseId") Long courseId
, @RequestParam(value = "pageNo") int pageNo
, @RequestParam(value = "pageSize" ,required = false) Integer pageSize
, @RequestParam(value = "searchFiled" ,required = false) String searchFiled);
@GetMapping("/marketing/course/share/count")
public int shareCount();
@GetMapping("/marketing/course/name/find")
public List<CourseVo> courseFindByName(@RequestParam(value = "name") String name,
@RequestParam(value = "companyId") Long companyId,
@RequestParam(value = "siteId") Long siteId,
@RequestParam(value = "orgId") Long orgId);
@GetMapping("/marketing/course/report/view")
public Page<ReportMarketingCourseDataChartsVo> chartGroup(
@RequestParam(name = "startDate", required = true) String startDate,
@RequestParam(name = "endDate", required = true) String endDate,
@RequestParam(name = "type", required = true, defaultValue = "1") Integer type,//value = "类型:1按日 2按周 3按月(默认按日)
@RequestParam(name = "pageSize", required = false, defaultValue = "10") Integer pageSize,
@RequestParam(name = "pageNo", required = false, defaultValue = "1") Integer pageNo);
@GetMapping("/marketing/course/report/course/group")
public Page<ReportMarketingCourseVo> marketingCourseGroup(
@RequestParam(name = "startDate", required = true) String startDate,
@RequestParam(name = "endDate", required = true) String endDate,
@RequestParam(name = "kwd", required = false) String kwd,
@RequestParam(name = "pageSize", required = false, defaultValue = "10") Integer pageSize,
@RequestParam(name = "pageNo", required = false, defaultValue = "1") Integer pageNo);
@GetMapping("/marketing/course/report/course/group/view/list")
Page<MarketingCourseViewVo> marketingCourseViewList(
@RequestParam(name = "courseId") Long courseId,
@RequestParam(name = "nikeName",required = false) String nikeName,
@RequestParam(name = "pageSize", required = false) Integer pageSize,
@RequestParam(name = "pageNo", required = false) Integer pageNo);
@GetMapping("/marketing/course/report/account/group")
public Page<ReportMarketingCourseAccountVo> marketingCourseAccountGroup(
@RequestParam(name = "startDate", required = true) String startDate,
@RequestParam(name = "endDate", required = true) String endDate,
@RequestParam(name = "orgKwd", required = false) String orgKwd,
@RequestParam(name = "accountKwd", required = false) String accountKwd,
@RequestParam(name = "pageSize", required = false, defaultValue = "10") Integer pageSize,
@RequestParam(name = "pageNo", required = false, defaultValue = "1") Integer pageNo);
@PostMapping("/marketing/course/report/account/group/export")
public Page<ReportMarketingCourseAccountVo> marketingCourseAccountGroupExp(
@RequestBody MkCourseExportRepVO vo);
@PostMapping("/marketing/course/report/course/group/export")
public Page<ReportMarketingCourseVo> marketingCourseGroupExp(
@RequestBody MkCourseExportRepVO vo);
@GetMapping("/marketing/course/share/spread/list")
PageInfo<CourseShareVo> shareSpreadList(
@RequestParam(value = "courseId" ) Long courseId,
@RequestParam(value = "pageNo") int pageNo,
@RequestParam(value = "pageSize" ,required = false) Integer pageSize,
@RequestParam(value = "firstShareId" ,required = false) String firstShareId);
@GetMapping("/marketing/course/wechat/openid/get")
WechatInfoVO wachatOpenIdGet(@RequestParam("openId") String openId
);
@GetMapping("/marketing/course/sms/pre/check")
Integer smsSendPreCheck(@RequestParam("openId") String openId, @RequestParam("tel") String tel);
@GetMapping("/marketing/course/sms/captcha/save")
Boolean saveCaptcha(@RequestParam("openId") String openId,
@RequestParam("tel") String tel,
@RequestParam("captcha") String captcha);
@GetMapping("/marketing/course/sms/captcha/validate")
Integer smsCaptchaValidate(@RequestParam("openId") String openId,
@RequestParam("tel") String tel,
@RequestParam("captcha") String captcha);
}
package com.yizhi.course.application.feign;
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: XieHaijun
* @Description:
* @Date: Created in 20:39 2019/1/10
* @Modified By
*/
@FeignClient(name = "course", contextId = "MarketingCourseExportClient")
public interface MarketingCourseExportClient {
/**
* 按转发阅读的组织导出
* @param parament
* @return
*/
@PostMapping({"/marketing/course/export/forword/org"})
public Boolean marketingCourseGroupExport(@RequestBody Map<String, Object> parament);
/**
* 按转发的用户导出(明细)
* @param parament
* @return
*/
@PostMapping({"/marketing/course/export/forword/account"})
public Boolean marketingCourseAccountGroupExport(@RequestBody Map<String, Object> parament);
/**
* 营销课程访问数据下载结果
* @param courseId
* @return
*/
@GetMapping("/marketing/course/export/course/group/view/list/export")
String marketingCourseViewListExport(
@RequestParam(name = "courseId") Long courseId,
@RequestParam(name = "siteId") Long siteId,
@RequestParam(name = "accountId") Long accountId,
@RequestParam(name = "companyId") Long companyId);
}
package com.yizhi.course.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.course.application.vo.AudioVideoVO;
import com.yizhi.course.application.vo.MaterialVo;
import com.yizhi.course.application.vo.domain.MaterialEntityVo;
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.List;
import java.util.Map;
@FeignClient(name = "course", contextId = "MaterialClient")
public interface MaterialClient {
@PostMapping("/material/save")
Boolean insert(@RequestBody Map<String, Object> map);
/**
* 新增并返回新增对象
* @param map
* @return
*/
@PostMapping("/material/save/obj")
MaterialEntityVo insertObj(@RequestBody Map<String,Object> map);
@PostMapping("/material/delete")
Boolean delete(@RequestBody List<Long> ids);
@GetMapping("/material/get")
MaterialVo get(@RequestParam(value = "id") Long id);
@GetMapping("/material/view")
MaterialEntityVo view(@RequestParam(value = "id") Long id);
@PostMapping("/material/update")
Boolean update(@RequestBody Map<String, Object> map);
@GetMapping("/material/list")
Page<MaterialEntityVo> list(@RequestBody Map<String, Object> map);
@GetMapping("/material/video/view")
AudioVideoVO videoView(@RequestParam(value = "videoId") String videoId);
@PostMapping("/material/video/update")
Boolean videoUpdate(@RequestBody Map<String,Object> mao);
/**
* 查询素材列表 ( Scorm课程 )
* @return
*/
@GetMapping("/material/scormList")
Page<MaterialEntityVo> queryScormCourseList(@RequestParam Map<String,Object> map);
/**
* 查询素材列表 ( 一般课程 )
*
* @param map
* @return
*/
@GetMapping("/material/commonList")
Page<MaterialEntityVo> queryCommonCourseList(@RequestParam Map<String,Object> map);
@GetMapping("/material/list/export")
Map<String, Object> materialListExport(@RequestParam(required = false, value = "type", defaultValue = "0") Integer type,
@ApiParam(name = "name", value = "课程名称或作者", required = false) @RequestParam(name = "name", required = false) String name,
@ApiParam(name = "classifyId", value = "分类id ", required = false) @RequestParam(name = "classifyId", required = false) Long classifyId,
@ApiParam(name = "shelves", value = "0 未上架 1 已上架 2 草稿", required = false) @RequestParam(name = "shelves", required = false) Integer shelves,
@ApiParam(name = "courseType", value = "课程类型", required = false) @RequestParam(required = false, value = "courseType") Integer courseType);
}
package com.yizhi.course.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.course.application.vo.OfflineClassifyVo;
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;
@FeignClient(name = "course", contextId = "OfflineClassifyClient")
public interface OfflineClassifyClient {
/**
* 根据id删除线下课程分类
* notice: 只能删除没有子分类的实体
*
* @param
* @return
*/
@PostMapping("/manage/offlineClassify/delete")
Integer delete(@RequestBody Map<String, String> map);
/**
* 添加线下课程分类
*
* @param offlineClassify
* @return
*/
@PostMapping("/manage/offlineClassify/save")
Integer saveOfflineClassify(@RequestBody OfflineClassifyVo offlineClassify);
/**
* 修改线下课程分类
*
* @param offlineClassify
* @return
*/
@PostMapping("/manage/offlineClassify/update")
Integer updateOfflineClassify(@RequestBody OfflineClassifyVo offlineClassify);
/**
* 查询线下课程分类
*
*/
@PostMapping("/manage/offlineClassify/list")
List<OfflineClassifyVo> listOfflineClassify();
/**
* 线下课程分类排序
*
* @param list
* @return
*/
@PostMapping("/manage/offlineClassify/sort/update")
Integer offlineClassifySort(@RequestBody List<OfflineClassifyVo> list);
/**
* 线下课程分类分页查询
*
* @param name
* @param pageNo
* @param pageSize
* @return
*/
@GetMapping("/manage/offlineClassify/page/list")
Page<OfflineClassifyVo> pageList(
@RequestParam(name = "name", required = false) String name,
@RequestParam(name = "pageNo") Integer pageNo,
@RequestParam(name = "pageSize") Integer pageSize);
}
package com.yizhi.course.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.course.application.vo.OfflineCourseDeleteVo;
import com.yizhi.course.application.vo.OfflineCourseStudentVo;
import com.yizhi.course.application.vo.OfflineCourseVo;
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;
@FeignClient(name = "course", contextId = "OfflineCourseClient")
public interface OfflineCourseClient {
/**
* 线下课程删除
*
* @param offlineCourseDeleteVo
* @return
*/
@PostMapping("/offlineCourse/delete")
Boolean delete(@RequestBody OfflineCourseDeleteVo offlineCourseDeleteVo);
/**
* 下课程保存
*
* @param offlineCourseVo
* @return
*/
@PostMapping("/offlineCourse/save")
OfflineCourseVo save(@RequestBody OfflineCourseVo offlineCourseVo);
/**
* 线下课程code 唯一性验证
*
* @param id
* @param code
* @param siteId
* @return
*/
@GetMapping("/offlineCourse/code/verifyCourse")
Boolean verifyCourseCode(@RequestParam(value = "id", required = false) Long id,
@RequestParam(value = "code") String code,
@RequestParam(value = "siteId") Long siteId);
/**
* 修改线下课程
*
* @param offlineCourseVo
* @return
*/
@PostMapping("/offlineCourse/update")
Boolean update(@RequestBody OfflineCourseVo offlineCourseVo);
/**
* 线下课程分页查询
*
* @param map
* @return
*/
@GetMapping("/offlineCourse/list")
Page<OfflineCourseVo> list(@RequestBody Map<String, Object> map);
/**
* 全文检索
*
* @param name
* @param companyId
* @param siteId
* @param orgId
* @return
*/
@GetMapping("/offlineCourse/search/list")
List<OfflineCourseVo> getCourseList(
@RequestParam(name = "name") String name,
@RequestParam(name = "companyId") Long companyId,
@RequestParam(name = "siteId") Long siteId,
@RequestParam(name = "orgId") Long orgId);
/**
* 线下课程_课程上架
*
* @param offlineCourse
* @return
*/
@PostMapping("/offlineCourse/up")
Boolean up(@RequestBody OfflineCourseVo offlineCourse);
/**
* 线下课程_课程下架
*
* @param offlineCourse
* @return
*/
@PostMapping("/offlineCourse/down")
Boolean down(@RequestBody OfflineCourseVo offlineCourse);
/**
* 课程查看
*
* @param id
* @return
*/
@GetMapping("/offlineCourse/get")
OfflineCourseVo get(@RequestParam(value = "id") Long id);
/**
* 上传文件
*
* @param offlineCourseVo
* @return
*/
@PostMapping(value = "/offlineRecorde/upload")
String upload(@RequestBody OfflineCourseVo offlineCourseVo);
/**
* 下载数据
*
* @param param
* @return
*/
@PostMapping("/offlineRecorde/download")
String download(@RequestBody Map<String, Object> param);
/**
* 线下课程学员端查询 (培训项目中关联)
*
* @param id
* @return
*/
@GetMapping("/api/offlineCourse/get")
OfflineCourseStudentVo getList(@RequestParam(value = "id") Long id);
/**
* 通id获取信息
* @param id
* @return
*/
@GetMapping("/offlineCourse/get/offlineCourse")
public OfflineCourseVo getCourseById(@RequestParam(value = "id") Long id);
/************************************ PC端 开始 **************************************/
/**
* 线下课程 PC 端查询 (培训项目中关联)
* @param id
* @return
*/
@GetMapping("/api/offlineCourse/pc/get")
OfflineCourseStudentVo getPcList(@RequestParam(value = "id") Long id);
/************************************ PC端 结束 **************************************/
/**
* 获取线下课程
* @param courseNo
* @return
*/
@GetMapping("/offlineCourse/getOfflineCourseByCode")
OfflineCourseVo getOfflineCourseByCode(@RequestParam(value = "courseNo") String courseNo,
@RequestParam(value = "siteId") Long siteId);
}
package com.yizhi.course.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.course.application.vo.OfflineRecordeVO;
import com.yizhi.course.application.vo.ReportOfflineCourseDataStatisticsVo;
import com.yizhi.course.application.vo.ReportOfflineCourseStatisticsDetailVo;
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: shengchenglong
* @Date: 2018/10/22 16:13
*/
@FeignClient(name = "course", contextId = "OfflineCourseReportClient")
public interface OfflineCourseReportClient {
@GetMapping("/manage/offlineCourseReport/data/statistics")
List<ReportOfflineCourseDataStatisticsVo> dataStatistics(@RequestParam("startTime") Long startTime,
@RequestParam("endTime") Long endTime);
/**
* 数据统计
*
* @param name
* @param startTime
* @param endTime
* @param pageSize
* @param pageNo
* @return
*/
@GetMapping("/manage/offlineCourseReport/statistics/detail")
Page<ReportOfflineCourseStatisticsDetailVo> statisticsDetail(@RequestParam(name = "name") String name,
@RequestParam(name = "startTime") Long startTime, @RequestParam(name = "endTime") Long endTime,
@RequestParam(name = "pageSize") Integer pageSize, @RequestParam("pageNo") Integer pageNo);
/**
* 查询报表记录详情 根据课程id
*
* @param offlineCourseId
* @return
*/
@GetMapping("/manage/offlineCourseReport/queryDetail/list")
public Page<OfflineRecordeVO> queryDetailList(@RequestParam(name = "offlineCourseId") Long offlineCourseId,
@RequestParam(name = "pageNo") Integer pageNo,
@RequestParam(name = "pageSize") Integer pageSize);
}
package com.yizhi.course.application.feign;
import com.yizhi.course.application.vo.OutsideEbscnCourseRecordVO;
import com.yizhi.course.application.vo.OutsideEbscnCourseVO;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
/**
* 岗前60小时查询接口
*/
@FeignClient(name = "course", contextId = "OutsideEbscnCourseClient")
public interface
OutsideEbscnCourseClient {
@PostMapping("/outside/ebscn/study/record/get")
List<OutsideEbscnCourseRecordVO> getStudyRecord(@RequestBody OutsideEbscnCourseVO vo);
}
package com.yizhi.course.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.course.application.vo.ProjectCourseVo;
import com.yizhi.course.application.vo.ProjectSeachCourseVo;
import com.yizhi.course.application.vo.domain.ProjectCourseEntityVo;
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;
@FeignClient(name = "course", contextId = "ProjectCourseClient")
public interface ProjectCourseClient {
@GetMapping("/projectCourse/list")
Page<ProjectCourseVo> projectList(@RequestBody ProjectSeachCourseVo projectSeachCourseVo);
@PostMapping("/projectCourse/save")
Boolean projectCourseSave(@RequestBody ProjectCourseEntityVo projectCourse);
@PostMapping("/projectCourse/delete")
Boolean projectCourseDelete(@RequestBody ProjectCourseEntityVo projectCourse);
}
package com.yizhi.course.application.feign;
import com.yizhi.course.application.vo.AccountDurationVO;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
@FeignClient(name = "course", contextId = "RankListClient")
public interface RankListClient {
@GetMapping("/rank/user/top")
public AccountDurationVO userRank(@RequestParam("accountId") Long accountId,
@RequestParam("companyId") Long companyId, @RequestParam("siteId") Long siteId,
@RequestParam("top") Integer top);
}
package com.yizhi.course.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.course.application.vo.MyCourseRecordeVo;
import com.yizhi.course.application.vo.RecordeDurationVO;
import com.yizhi.course.application.vo.RecordeListVo;
import com.yizhi.course.application.vo.StudyDurationVO;
import com.yizhi.course.application.vo.domain.ChapterEntityVo;
import com.yizhi.course.application.vo.domain.CourseEntityVo;
import com.yizhi.course.application.vo.domain.MaterialEntityVo;
import com.yizhi.course.application.vo.domain.RecordeEntityVo;
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.Set;
@FeignClient(name = "course", contextId = "RecordeClient")
public interface RecordeClient {
@PostMapping("/recorde/save")
Boolean save(@RequestBody RecordeEntityVo recorde);
@PostMapping("/recorde/completed/save")
public Boolean completedSave(@RequestBody RecordeEntityVo recorde);
@PostMapping("/recorde/last/study/save")
Boolean lastStudySave(@RequestBody RecordeEntityVo recorde);
@PostMapping("/recorde/update")
Boolean update(@RequestBody RecordeEntityVo recorde);
@PostMapping("/recorde/update/list")
Boolean updateList(@RequestBody List<RecordeEntityVo> recordes);
@GetMapping("/recorde/get")
RecordeEntityVo get(
@RequestParam("accountId") Long accountId,
@RequestParam("chapterId") Long chapterId,
@RequestParam("sessionId") String sessionId
);
@PostMapping("/recorde/list/save")
List<RecordeEntityVo> saveList(@RequestBody List<RecordeEntityVo> recordes);
@PostMapping("/recorde/list/update")
public boolean batchUpdate(@RequestBody List<RecordeEntityVo> recordes);
/**
* 删除学习记录list
*
* @param recordes
* @return
*/
@PostMapping("/list/delete")
Boolean deleteList(@RequestBody List<RecordeEntityVo> recordes);
@GetMapping("/recorde/get/completed")
Integer getCompleted(
@RequestParam("chapterId") Long chapterId,
@RequestParam("accountId") Long accountId,
@RequestParam("duration") Integer duration
);
@GetMapping("/recorde/list")
List<RecordeListVo> getMyRecorde(
@RequestParam(name = "courseId") Long courseId,
@RequestParam(name = "accountId") Long accountId
);
@GetMapping("/recorde/my/list")
Page<MyCourseRecordeVo> getMyCourseRecordeList(
@RequestParam(name = "name", required = false) String name,
@RequestParam(name = "accountId") Long accountId,
@RequestParam(name = "type", required = false) Integer type,
@RequestParam(name = "pageNo") Integer pageNo,
@RequestParam(name = "pageSize") Integer pageSize
);
/**
* 获得我的课程 进行中或完成的数量
*
* @param accountId
* @param type 课程是否完成 0 为进行中 1 为已完成
* @return
*/
@GetMapping("/recorde/my/list/count")
Integer getMyCourseRecordeCount(
@RequestParam(name = "accountId") Long accountId,
@RequestParam(name = "type", required = false) Integer type
);
/**
* 查询所有课程
*
* @return
*/
@GetMapping("/recorde/course/list")
List<CourseEntityVo> getCourseList();
@PostMapping("/recorde/exist/course/list")
List<CourseEntityVo> selectExistCourse(@RequestBody Set<Long> courseIds);
/**
* 查询所有章节
*
* @return
*/
@GetMapping("/recorde/chapter/list")
List<ChapterEntityVo> getChapterList();
@PostMapping("/recorde/exist/chapter/list")
List<ChapterEntityVo> selectExistChapter(@RequestBody List<Long> chapterIds);
/**
* 查询所有素材
*
* @return
*/
@GetMapping("/recorde/material/list")
List<MaterialEntityVo> getMaterialList();
@PostMapping("/recorde/exist/material/list")
List<MaterialEntityVo> selectExistMaterial(@RequestBody List<Long> materialIds);
/**
* 查询所有学习记录
*
* @return
*/
@GetMapping("/recorde/all/list")
List<RecordeEntityVo> getAllRecordeList();
@PostMapping("/recorde/exist/recorde/list")
List<RecordeEntityVo> getExistRecorde(@RequestBody List<String> sessionIds);
/**
* 查询所有的学员每个章节的总学习时长
*
* @return
*/
@GetMapping("/recorde/duration/list")
List<RecordeDurationVO> getRecordeDuration();
/**
* 查询课程是否完成
*
* @param chapterId
* @return
*/
@GetMapping("recorde/course/isFinish")
Long getCourseFinished(@RequestParam("accountId") Long accountId, @RequestParam("chapterId") Long chapterId);
/**
* 查询课程完成的学员
*
* @param courseId
*
* @return
*/
@GetMapping("recorde/course/finishAccountIds")
List<Long> getFinishedAccountIds(@RequestParam("courseId") Long courseId);
/**
* 专为培训统计时长所用
* @param courseId
* @return
*/
@GetMapping("recorde/course/getStudyTime")
Integer getStudyTime(@RequestParam(value = "courseId",required = false) List<Long> courseId);
/**
* 课程章节完成的数量
* @param accountId
* @param chapterId
* @return
*/
@GetMapping("/recorde/course/chapter/isFinish")
public int getCourseChapterFinished(@RequestParam("accountId") Long accountId,
@RequestParam("chapterId") Long chapterId);
/**
* 统计学习时长。chapterId不是必须。如果chapterId指定,回统计该用户对于章节的学习时长
* @param accountId
* @param SiteId
* @param chapterId
* @return
*/
@GetMapping("/recorde/count/study/duration")
Long countStudyDuration(@RequestParam("accountId") Long accountId,
@RequestParam("SiteId") Long SiteId,
@RequestParam(value = "chapterId" ,required = false) Long chapterId);
/**
* 按课程统计学习总时长
* @param accountId
* @param SiteId
* @param courseIds
* @return
*/
@GetMapping("/recorde/count/study/duration/cids")
Long countStudyDurationByIds(@RequestParam("accountId") Long accountId,
@RequestParam("SiteId") Long SiteId,
@RequestParam(value = "courseIds") List<Long> courseIds);
/**
* 平台报告统计
* @param accountId
* @param siteIds
* @param startDate
* @param endDate
* @param accounts
* @return
*/
@GetMapping("/recorde/studyDuration")
StudyDurationVO studyDuration(@RequestParam("accountId") Long accountId, @RequestParam("siteIds") List<Long> siteIds,
@RequestParam("startDate") String startDate, @RequestParam("endDate") String endDate , @RequestParam("accounts") List<Long> accounts);
}
package com.yizhi.course.application.feign;
import com.yizhi.course.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 = "course", contextId = "RemoteDaIndicatorCourseClient")
public interface RemoteDaIndicatorCourseClient {
/**
* dashboard - 完成课程数
*
* @return
*/
@PostMapping("/remote/da/course/courseFinish")
boolean courseFinish(@RequestBody RemoteDaIndicatorVo vo);
/**
* dashboard - 课程学习时长
*
* @return
*/
@PostMapping("/remote/da/course/courseTime")
boolean courseTime(@RequestBody RemoteDaIndicatorVo vo);
}
package com.yizhi.course.application.feign;
import com.yizhi.course.application.vo.CourseStudyHourVO;
import com.yizhi.course.application.vo.ShenWanHongYuanCourseVO;
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;
@FeignClient(name = "course", contextId = "ShenWanHongYuanCourseClient")
public interface ShenWanHongYuanCourseClient {
/**
* 按学员课程分组获取学时
* @param queryDay
* @param courseIds
* @return
*/
@GetMapping(value = "/swhy/accountcoursegroup/recordes")
List<CourseStudyHourVO> getAccountCourseGroupRecorde(@RequestParam(name = "queryDay", required = false) Integer queryDay,
@RequestParam(name = "courseIds", required = true) List<Long> courseIds,
@RequestParam(name = "accountIds", required = false) List<Long> accountIds);
/**
* 按学员分组获取学时
* @param queryDay
* @param accountIds
* @return
*/
@GetMapping(value = "/swhy/accountgroup/recordes")
List<CourseStudyHourVO> getAccountRecorde(@RequestParam(name = "queryDay", required = false) Integer queryDay,
@RequestParam(name = "courseIds", required = true) List<Long> courseIds,
@RequestParam(name = "accountIds", required = false) List<Long> accountIds);
@PostMapping(value = "/swhy/accountgroup/post/recordes")
List<CourseStudyHourVO> getAccountRecordePost(@RequestBody ShenWanHongYuanCourseVO vo);
}
package com.yizhi.course.application.feign;
import com.yizhi.course.application.vo.*;
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: XieHaijun
* @Description:
* @Date: Created in 11:41 2018/10/25
* @Modified By
*/
@FeignClient(name = "course", contextId = "TestCaseClient")
public interface TestCaseClient {
@GetMapping("/testCase/idGenerator/id")
Long idGeneratorId();
/**
* 测验总结性测验总提交
* @param vo
* @return
*/
@PostMapping("/testCase/submit")
public TestCaseSubmitVO testSubmit(@RequestBody TestCaseVO vo);
/**
* 过程测验单次提交
* @param vo
* @return
*/
@PostMapping("/testCase/simple/submit")
public TestCaseSimpleSubmitVO testCaseSimpleSubmit(@RequestBody TestCaseSimpleSubmitVO vo);
/**
* 根据测验答卷id查询答题记录信息
* @param testCaseId
* @return
*/
@GetMapping("/testCase/record/get")
public TestCaseRecordVO getRecordInfo(@RequestParam("testCaseId") Long testCaseId);
/**
* 判断该课程是否被该用户测验通过
* @param courseId
* @param accountId
* @return
*/
@GetMapping("/testCase/course/pass")
public Boolean courseIsSucceed(@RequestParam("courseId") Long courseId, @RequestParam("accountId") Long accountId);
/**
* 判断
* @param vo
* @return
*/
@PostMapping("/testCase/chapters/pass")
public Boolean chaptersIsSucceed(@RequestBody ChaptersPassReqVO vo);
}
package com.yizhi.course.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.course.application.vo.TestInfoListReqVO;
import com.yizhi.course.application.vo.TestInfoVO;
import com.yizhi.course.application.vo.TestInfoViewRespVO;
import com.yizhi.course.application.vo.TestSubjectVO;
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: XieHaijun
* @Description: 测验信息接口
* @Date: Created in 16:44 2018/10/15
* @Modified By
*/
@FeignClient(name = "course", contextId = "TestInfoClient")
public interface TestInfoClient {
/**
* 测验信息列表
* @param reqVO
* @return
*/
@PostMapping("/test/list")
public Page<TestInfoVO> testInfoList(@RequestBody TestInfoListReqVO reqVO);
/**
* 根据测验id查询
* @param id
* @return
*/
@GetMapping("/test/all/view")
public TestInfoViewRespVO viewAll(@RequestParam(value = "id") Long id );
/**
* 查询测验的试题列表
* @param id
* @return
*/
@GetMapping("/test/subject/list")
public List<TestSubjectVO> listSubject(@RequestParam("id") Long id);
/**
* 根据ids删除测验信息
* @param deleteTestIds
* @return
*/
@PostMapping("/test/ids/delete")
public Boolean testInfoDelete(@RequestBody List<Long> deleteTestIds);
/**
* 保存测验信息
* @param vo
* @return
*/
@PostMapping("/test/save")
public TestInfoVO testInfoSave(@RequestBody TestInfoVO vo);
/**
* 测验基本信息查看
* @param id
* @return
*/
@GetMapping("/test/view")
public TestInfoViewRespVO testInfoView(@RequestParam(value = "id") Long id );
/**
* 更新测验被使用中
* @param testId 测验id
* @param chapterId 课程章节关联的素材id(删除和更新麻烦传原章节id,新增测验关联传null)
* @return
*/
@GetMapping("/test/status/update")
public Boolean updateStatus(@RequestParam(value = "testId") Long testId,
@RequestParam(required = false, value = "chapterId") Long chapterId,
@RequestParam(value = "type") Integer type);
/**
* 保存测验试题
* @param vo
* @return
*/
@PostMapping("/testSubject/save")
public TestSubjectVO testSubjectSave(@RequestBody TestSubjectVO vo);
/**
* 删除测验试题信息
* @param id
* @return
*/
@GetMapping("/testSubject/delete")
public boolean testSubjectDelete(@RequestParam("id") Long id);
/**
* 根据id查看测验试题信息
* @param id
* @return
*/
@GetMapping("/testSubject/view")
public TestSubjectVO testSubjectView(@RequestParam("id") Long id);
/**
* 测验试题上移,下移排序
* @param id
* @param moveType
* @return
*/
@GetMapping("/testSubject/sort")
public TestSubjectVO sort(@RequestParam("id") Long id, @RequestParam("moveType") String moveType);
/**
* 更新测验试题分数
* @param id
* @param score
* @return
*/
@GetMapping("/testSubject/score/update")
public boolean updateScore(@RequestParam("id") Long id, @RequestParam("score") Integer score);
}
package com.yizhi.course.application.vo;
import java.util.List;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "AccountRecordeVO",description = "个人学时信息传输")
public class AccountDurationVO {
@ApiModelProperty(value = "姓名")
private String name;
@ApiModelProperty(value = "头像")
private String headPortrait;
@ApiModelProperty(value = "所在营业部门")
private String orgName;
@ApiModelProperty(value = "学时")
private Float totalDuration;
@ApiModelProperty(value = "排名数")
private String rankingNum;
@ApiModelProperty(value = "部门排行榜")
private List<OrganizationDurationVO> list;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* <p>
* 账号启禁用日志
* </p>
*
* @author yinyuyan123
* @since 2018-04-17
*/
@Data
@Api(tags = "AccountEnableLogVO", description = "账号启禁用日志")
public class AccountEnableLogVO {
@ApiModelProperty(value = "id")
private Long id;
@ApiModelProperty(value = "账号id")
private Long accountId;
@ApiModelProperty(value = "类型(1:启用2:停用)")
private Integer type;
@ApiModelProperty(value = "停启用原因")
private String reason;
@ApiModelProperty(value = "操作人")
private String createByName;
@ApiModelProperty(value = "操作时间")
private Date createTime;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
* <p>
* 用户
* </p>
*
* @author moniyin
* @since 2018-03-12
*/
@Data
@ApiModel(value = "AccountVO", description = "用户对象传输类")
public class AccountVO {
@ApiModelProperty(value = "id")
private Long id;
@ApiModelProperty(value = "账号名称")
private String name;
@ApiModelProperty(value = "头像")
private String headPortrait;
@ApiModelProperty(value = "是否开通")
private Boolean enabled;
@ApiModelProperty(value = "是否锁定")
private Boolean locked;
@ApiModelProperty(value = "座机")
private String telephone;
@ApiModelProperty(value = "手机号")
private String mobile;
@ApiModelProperty(value = "邮箱地址")
private String email;
@ApiModelProperty(value = "过期类型(1长期,2周期,对应字段:startTime,endTime,3天数,对应字段:expiredTime)")
private Integer expiredType;
@ApiModelProperty(value = "是否是第一次登录")
private Boolean firstLogin;
@ApiModelProperty(value = "第一次登录时间")
private Date firstLoginTime;
@ApiModelProperty(value = "上一次登录时间")
private Date lastLoginTime;
@ApiModelProperty(value = "账户锁定时间")
private Date lockedTime;
@ApiModelProperty(value = "账号生效时间")
private Date enabledTime;
@ApiModelProperty(value = "账户过期时间")
private Date expiredTime;
@ApiModelProperty(value = "盐")
private String salt;
@ApiModelProperty(value = "开始时间")
private Date startTime;
@ApiModelProperty(value = "结束时间")
private Date endTime;
@ApiModelProperty(value = "性别(‘M’:男,'F':女)")
private String sex;
@ApiModelProperty(value = "职位")
private String position;
@ApiModelProperty(value = "微信")
private String wechat;
@ApiModelProperty(value = "微信图片")
private String wechatPic;
@ApiModelProperty(value = "有效天数")
private Integer validDays;
@ApiModelProperty(value = "全名")
private String fullName;
@ApiModelProperty(value = "工号")
private String workNum;
@ApiModelProperty(value = "账号描述")
private String description;
@ApiModelProperty(value = "角色列表")
private List<RoleVO> roleVOs;
@ApiModelProperty(value = "部门id")
private Long orgId;
@ApiModelProperty(value = "部门名称")
private String orgName;
@ApiModelProperty(value = "部门全名称")
private String orgFullName;
@ApiModelProperty(value = "公司id")
private Long companyId;
@ApiModelProperty(value = "公司名称")
private String companyName;
@ApiModelProperty(value = "企业地址")
private String companyAddress;
@ApiModelProperty(value = "启禁用日志")
private List<AccountEnableLogVO> logs;
@ApiModelProperty(value = "app注册id")
private String appRegistrationId;
@ApiModelProperty(value = "备注1")
private String remarkFirst;
@ApiModelProperty(value = "备注2")
private String remarkSecond;
@ApiModelProperty(value = "备注3")
private String remarkThird;
@ApiModelProperty(value = "是否绑定微信,true 绑定,false 未绑定")
private Boolean bindWeChat;
@ApiModelProperty(value = "学员个人信息修改编辑权限")
private StudentEditPermissionVO editPermissionVO;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @Author: XieHaijun
* @Description:
* @Date: Created in 13:53 2018/4/8
* @Modified By
*/
@Api(
tags = {"AccountVo"},
description = "用户的账户信息"
)
@Data
public class AccountVo1 {
@ApiModelProperty(value = "用户id")
private long accountId;
@ApiModelProperty(value = "用户姓名")
private String name;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class AccreditCourseVO {
@ApiModelProperty(value = "课程名称或者标签")
private String name;
@ApiModelProperty(value = "企业id")
private Long companyId;
@ApiModelProperty(value = "授权站点id")
private Long sourceCompanyId;
@ApiModelProperty(value = "站点id")
private Long siteId;
@ApiModelProperty(value = "跳转页数,默认第一页")
private Integer pageNo;
@ApiModelProperty(value = "每页条数,默认20条")
private Integer pageSize;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* Date 2018-6-7 10:21:57
*
*/
@Data
public class AccreditVO {
@ApiModelProperty(value = "授权id")
private Long id;
@ApiModelProperty(value = "企业id")
private Long companyId;
@ApiModelProperty(value = "企业名称")
private String companyName;
@ApiModelProperty(value = "站点id")
private Long siteId;
@ApiModelProperty(value = "站点名称")
private String siteName;
@ApiModelProperty(value = "授权之前课程id")
private Long courseIdBefore;
@ApiModelProperty(value = "0:默认未删除;1表示删除")
private Integer delFlg;
@ApiModelProperty(value = "来源企业id")
private Long sourceCompanyId;
@ApiModelProperty(value = "授权站点id")
private Long accreditSiteId;
@ApiModelProperty(value = "授权时间")
private Date accreditTime;
@ApiModelProperty(value = "授权之后课程id")
private Long courseIdAfter;
@ApiModelProperty(value = "0草稿,1授权")
private Integer saleAuthorizeStatus;
@ApiModelProperty(value = "0是长期使用,1指定使用期限(授权销售)")
private Integer useType;
@ApiModelProperty(value = "指定使用的期限。(使用截止日期)")
private Date useDuration;
@ApiModelProperty(value = "保存时间")
private Date saveTime;
@ApiModelProperty(value = "1 课程授权 2课程销售")
private Integer type;
}
/**
* FileName: ApiClassifyVo
* Author: wenjunlong
* Date: 2018/4/17 14:01
* Description: 课程分类app端数据展示
* History:
* <author> <time> <version> <desc>
* 作者姓名 修改时间 版本号 描述
*/
package com.yizhi.course.application.vo;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.enums.FieldFill;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* 〈一句话功能简述〉<br>
* 〈课程分类app端数据展示〉
*
* @author wenjunlong
* @create 2018/4/17
* @since 1.0.0
*/
@Data
public class ApiClassifyVo {
@ApiModelProperty(value = "主键")
private Long id;
@ApiModelProperty(value = "父id ")
@TableField("parent_id")
private Long parentId;
@ApiModelProperty(value = "层级")
private Integer layer;
@ApiModelProperty(value = "名称")
private String name;
@ApiModelProperty(value = "分类编码")
private String code;
@ApiModelProperty(value = "备注")
private String description;
@ApiModelProperty(value = "状态")
private Integer status;
@TableField(value = "create_by_id", fill = FieldFill.INSERT)
private Long createById;
@TableField(value = "create_by_name", fill = FieldFill.INSERT)
private String createByName;
@TableField(value = "create_time", fill = FieldFill.INSERT)
private Date createTime;
@TableField(value = "update_by_id", fill = FieldFill.INSERT)
private Long updateById;
@TableField(value = "update_by_name", fill = FieldFill.INSERT)
private String updateByName;
@TableField(value = "update_time", fill = FieldFill.INSERT)
private Date updateTime;
@TableField("org_id")
private Long orgId;
@TableField("company_id")
private Long companyId;
@TableField("site_id")
private Long siteId;
@ApiModelProperty(value = "顶层节点id")
@TableField("root_id")
private Long rootId;
@ApiModelProperty(value = "排序")
private Integer sort;
@ApiModelProperty(value = "分类路径")
@TableField("path")
private String path;
@ApiModelProperty(value = "来源 1内部定制2 外部定制3外部采购 4课程营销")
@TableField("source")
private Integer source;
@ApiModelProperty(value = "上一个主键ID")
private Long moveUpId = -1L;
@ApiModelProperty(value = "下一个主键ID")
private Long moveDownId = -1L;
private List<ApiClassifyVo> children = new ArrayList<ApiClassifyVo>();
}
/**
* FileName: ApiCommnentVo
* Author: wenjunlong
* Date: 2018/4/19 10:54
* Description: 课程详情评论列表展示vo
* History:
* <author> <time> <version> <desc>
* 作者姓名 修改时间 版本号 描述
*/
package com.yizhi.course.application.vo;
import com.yizhi.course.application.vo.domain.ReplyEntityVo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* 〈一句话功能简述〉<br>
* 〈课程详情评论列表展示vo〉
*
* @author wenjunlong
* @create 2018/4/19
* @since 1.0.0
*/
@Data
public class ApiCommnentVo {
private Long id;
@ApiModelProperty(value = "账号id")
private Long accountId;
@ApiModelProperty(value = "评论人")
private String commentator;
@ApiModelProperty(value = "评论内容")
private String content;
private Date createTime;
@ApiModelProperty(value = "点赞数")
private Integer thumbsUp;
@ApiModelProperty(value = "是否点赞 1 是 0否")
private Integer status;
@ApiModelProperty(value = "用户头像")
private String userAvatar;
@ApiModelProperty(value = "回复数")
private Integer replys;
@ApiModelProperty(value = "回复列表")
private List<ReplyEntityVo> replies = new ArrayList<>();
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
@Api(
tags = {"CourseVo"},
description = "课程接对象"
)
@Data
public class ApiListCourseVo {
@ApiModelProperty(value = "课程id")
private Long id;
@ApiModelProperty(value = "业务名称")
private String name;
@ApiModelProperty(value = "业务编码")
private String code;
@ApiModelProperty(value = "课程评分")
private Double level;
@ApiModelProperty(value = "课程封面图")
private String image;
@ApiModelProperty(value = "作者")
private String author;
@ApiModelProperty(value = "作者单位")
private String authorUnit;
@ApiModelProperty(value = "1有效课程,0.失效课程")
private Integer valid;
@ApiModelProperty(value = "分类id")
private Long classifyId;
@ApiModelProperty(value = "分类名称")
private String classifyName;
@ApiModelProperty(value = "学习时长")
private Integer duration;
@ApiModelProperty(value = "课程学时")
private Float totalDuration;
@ApiModelProperty("课程学时显示 true 显示,false不显示")
private Boolean courseDurationShow;
@ApiModelProperty(value = "学习数")
private Integer studyNum;
@ApiModelProperty(value = "点赞数")
private Integer likeNum;
@ApiModelProperty(value = "创建时间")
private Date createTime;
@ApiModelProperty(value = "创建时间String")
private String createTimeString;
@ApiModelProperty("课程学习状态 0:表示未完成,1表示已完成 ,-1 未开始")
private Integer studentStatus;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@Api(
tags = {"CourseVo"},
description = "课程接对象"
)
@Data
public class ApiSeachCourseVo {
@ApiModelProperty(value = "课程名称")
private String name;
@ApiModelProperty(value = "分类id")
private Long classifyId;
@ApiModelProperty(value = "当前用户学员")
private Long accountId;
@ApiModelProperty(value = "1 为默认更新时间排序,2 按评分排序")
private Integer type;
private Long companyId;
private String[] orgIds;
private Long siteId;
private Integer pageNo;
private Integer pageSize;
private List<Long> ids;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* <p>
* 音视频
* </p>
*
* @author fulan123
* @since 2018-03-19
*/
@Data
@Api(tags = "AudioVideoVO", description = "音视频")
public class AudioVideoVO {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "主键")
private Long id;
@ApiModelProperty(value = "封面图片")
private String image;
@ApiModelProperty(value = "素材id")
private Long materialId;
@ApiModelProperty(value = "音频解释")
private String explanation;
@ApiModelProperty(value = "流程视频地址")
private String fdUrl;
@ApiModelProperty(value = "标清视频地址")
private String ldUrl;
@ApiModelProperty(value = "高清程视频地址")
private String sdUrl;
@ApiModelProperty(value = "阿里云点播视频id")
private String videoId;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* @Date 2020/9/24 4:26 下午
* @Author lvjianhui
**/
@Data
public class AuthCourseVO {
@ApiModelProperty(value = "授权课程id")
private Long courseId;
@ApiModelProperty(value = "课程名称")
private String name;
@ApiModelProperty(value = "授权有效期")
private Date validDate;
@ApiModelProperty(value = "课程编码")
private String couresCode;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* @Date 2020/9/24 4:26 下午
* @Author lvjianhui
**/
@Data
public class AuthorizationCourseVO {
@ApiModelProperty(value = "授权课程id")
private Long courseId;
@ApiModelProperty(value = "课程名称")
private String name;
@ApiModelProperty(value = "授权有效期")
private Date validDate;
@ApiModelProperty(value = "课程编码")
private String couresCode;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import io.swagger.annotations.ApiParam;
import lombok.Data;
import java.util.Date;
/**
* @author lilingye
* @date 2018-9-26
*/
@Api(tags = "AuthorizeCourseVO", description = "授权返回列表")
@Data
public class AuthorizeCourseVO {
private Long id;
// 站点id
@ApiModelProperty(value = "站点id")
private Long siteId;
// 站点名称
@ApiModelProperty(value = "站点名")
private String siteName;
// 公司id
@ApiModelProperty(value = "公司id")
private Long companyId;
// 公司名称
@ApiModelProperty(value = "公司名称")
private String companyName;
//授权数量
@ApiModelProperty(value = "授权课程数量")
private Integer authorizeCount;
// 授权时间
@ApiModelProperty(value = "授权时间")
private Date authorizeDate;
// 站点编码
@ApiModelProperty(value = "站点编码")
private String siteCode;
//授权课程
@ApiModelProperty(value = "有效课程数")
private Integer validCourseCount;
}
package com.yizhi.course.application.vo;
import lombok.Data;
import java.util.List;
/**
* 授权课程参数
*/
@Data
public class AuthorizeParamVO {
// 授权/销售课程的课程id
private List<AuthCourseVO> authorizationCourseVOs;
}
package com.yizhi.course.application.vo;
import lombok.Data;
import com.yizhi.core.application.vo.AccreditVO;
@Data
public class AuthorizeVO extends AuthorizeParamVO {
// 传参
private AccreditVO accreditVO;
}
package com.yizhi.course.application.vo;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
@Data
public class AuthorizedCourseVO {
// 授权id
@ApiModelProperty(value="授权id")
private Long id;
// 课程code
@ApiModelProperty (value="课程code")
private String courseCode;
// 课程名称
@ApiModelProperty (value="课程名称")
private String courseName;
// 授权时间
// @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@ApiModelProperty (value="授权时间")
private Date authorizeTime;
// 到期时间
// @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
@ApiModelProperty (value="到期时间")
private Date expireDate;
// 有效天数
@ApiModelProperty (value="有效天数")
private Integer validDays;
// 是否产期有效
@ApiModelProperty (value="是否长期有效,0 长期有效 1 指定有效期")
private Integer useType;
@ApiModelProperty(value = "授权课程父级授权的有效时间")
private Date parentUseDuration;
}
package com.yizhi.course.application.vo;
import com.yizhi.course.application.vo.domain.CourseEntityVo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
@Data
public class AuthrizeCourseVO extends CourseEntityVo {
private Long id;
@ApiModelProperty(value = "课程名称")
private String name;
@ApiModelProperty(value = "课程code")
private String code;
@ApiModelProperty(value = "课程封面图")
private String image;
@ApiModelProperty(value = "作者单位")
private String authorUnit;
@ApiModelProperty(value = "课程介绍")
private String description;
private String tags;
private Long createById;
private String createByName;
private Date createTime;
private Long updateById;
private String updateByName;
private Date updateTime;
@ApiModelProperty(value = "0 未上架 1 已上架")
private Integer shelves;
private Long companyId;
private Long orgId;
private Long siteId;
@ApiModelProperty(value = "分类id")
private Long classifyId;
@ApiModelProperty(value = "可见范围 0 游客 1 平台用户 2 指定范围")
private Integer scope;
@ApiModelProperty(value = "评论设置0上架评论及评分1关闭评论")
private Integer commentEnable;
@ApiModelProperty(value = "下载设置0允许用户在APP端下载课件1禁止下载")
private Integer downEnable;
@ApiModelProperty(value = "播放设置 0允许用户未完成观看前拖动进度条1禁止拖动")
private Integer fastForwardEnable;
@ApiModelProperty(value = "章节播放设置0自动播放下一段1手动播放下一段")
private Integer autoEnable;
@ApiModelProperty(value = "跳播设置:0允许1不允许")
private Integer jumpEnable;
@ApiModelProperty(value = "评分设置 0 允许 1 不允许")
private Integer gradeEnable;
@ApiModelProperty(value = "音频完成条件 0 播放即完成 1听完整个课程")
private Integer audioComplete;
@ApiModelProperty(value = "视频完成条件 0 播放即完成 1听完整个课程")
private Integer videoComplete;
@ApiModelProperty(value = "文档完成条件 0 观看即完成 1停留时长达到学习时长即完成")
private Integer docComplete;
@ApiModelProperty(value = "多媒体完成条件 0 观看即完成 1停留时长达到学习时长即完成")
private Integer richComplete;
@ApiModelProperty(value = "来源 1内部定制2 外部定制3外部采购 4课程营销")
private Integer source;
@ApiModelProperty(value = "0:默认未删除;1表示删除")
private Integer delFlg;
@ApiModelProperty(value = "被浏览次数")
private Long readCount;
@ApiModelProperty(value = "积分规则 1按课程 2 按章节 3 按素材")
private Integer portRule;
@ApiModelProperty(value = "课程分类名称")
private String classifyName;
@ApiModelProperty(value = "0.过期,1.有效")
private Integer valid;
@ApiModelProperty(value = "过期时间")
private Date expireDate;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* 批量修改课程vo
*/
@Data
public class BathEditCourseVo {
@ApiModelProperty("批量修改的课程对象")
private List<Long> editObject;
@ApiModelProperty("编辑的字段,修改的字段。只对修改的字段赋值")
private CourseVo editFields;
@ApiModelProperty("用户可见范围")
private List<CourseAccountVO> courseAccounts;
// 更新操作人
private Long updateByaccountId;
@ApiModelProperty(value = "课程类型 : 0 一般课程 1 Scorm课程")
private Integer courseType;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* <p>
*
* </p>
*
* @author 谢海军123
* @since 2018-04-09
*/
@ApiModel(
value = "BrowseRecordsVo",
description = "课程分享浏览记录对象"
)
@Data
public class BrowseRecordsVo {
@ApiModelProperty(value = "主键id")
private Long id;
@ApiModelProperty(value = "分享ID")
private Long shareId;
@ApiModelProperty(value = "浏览用户ID")
private String accountId;
@ApiModelProperty(value = "浏览用户名称")
private String accountName;
@ApiModelProperty(value = "浏览开始时间")
private Date readStartTime;
@ApiModelProperty(value = "浏览结束时间")
private Date readEndTime;
@ApiModelProperty(value = "停留时间")
private Long residenceTime;
@ApiModelProperty(value = "浏览平台")
private String browsingPlatform;
@ApiModelProperty(value = "微信头像")
private String avatar;
private String tel;
}
package com.yizhi.course.application.vo;
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.course.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* <p>
* 营销课程名片配置
* </p>
*
* @author 谢海军123
* @since 2019-03-07
*/
@Data
@ApiModel(value = "CardConfigVO", description = "营销课程名片配置")
public class CardConfigVO {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "card 名片配置表的唯一id")
private Long id;
@ApiModelProperty(value = "企业id")
private Long companyId;
@ApiModelProperty(value = "站点id")
private Long siteId;
@ApiModelProperty(value = "配置创建人id")
private Long createById;
@ApiModelProperty(value = "配置创建时间")
private Date createTime;
@ApiModelProperty(value = "更新人账号id")
private Long updateById;
@ApiModelProperty(value = "更新数据时间")
private Date updateTime;
@ApiModelProperty(value = "名片上部是否显示,0(false):不显示;1(true):显示")
private Boolean cardTopDisplay;
@ApiModelProperty(value = "上部横幅内容文字")
private String topBarText;
@ApiModelProperty(value = "上部横幅的背景色")
private String topBarBgcolor;
@ApiModelProperty(value = "上部横幅显示的按钮 0:显示电话和邮箱;1显示电话;2显示邮箱;3不显示按钮")
private Integer topBarButton;
@ApiModelProperty(value = "名片中间主体区域显示,0(false):不显示;1(true):显示")
private Boolean cardBodyDisplay;
@ApiModelProperty(value = "中间主体内容_字段1(目前设计为强制显示姓名) 默认为true,显示")
private Boolean bodyField1;
@ApiModelProperty(value = "字段2到字段字段4选择列表;值={0:隐藏该字段;1:职务;2部门;3企业名称;4电话;5邮箱;6备注1;7备注2;8;备注3}")
private Integer bodyField2;
@ApiModelProperty(value = "字段2到字段字段4选择列表;值={0:隐藏该字段;1:职务;2部门;3企业名称;4电话;5邮箱;6备注1;7备注2;8;备注3}")
private Integer bodyField3;
@ApiModelProperty(value = "字段2到字段字段4选择列表;值={0:隐藏该字段;1:职务;2部门;3企业名称;4电话;5邮箱;6备注1;7备注2;8;备注3}")
private Integer bodyField4;
@ApiModelProperty(value = "字段2到字段字段5选择列表;值={0:隐藏该字段;1:职务;2部门;3企业名称;4电话;5邮箱;6备注1;7备注2;8;备注3 9:个人签名}")
private Integer bodyField5;
@ApiModelProperty(value = "主体背景类型选择按钮 0:默认背景;1:自定义背景")
private Integer bodyBgimgRadio;
@ApiModelProperty(value = "主体背景图")
private String bodyBgimg;
@ApiModelProperty(value = "名片底部展开信息是否显示,0(false):不显示;1(true):显示")
private Boolean cardFootDisplay;
@ApiModelProperty(value = "修改者名称")
private String updateByName;
@ApiModelProperty(value = "创建者名称")
private String createByName;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* <p>
* 营销课程名片配置
* </p>
*
* @author 谢海军123
* @since 2019-03-07
*/
@Data
@ApiModel(value = "CardInfoVO", description = "提供显示的名片信息")
public class CardInfoVO {
@ApiModelProperty(value = "名片上部是否显示,0(false):不显示;1(true):显示")
private Boolean cardTopDisplay;
@ApiModelProperty(value = "上部横幅内容文字")
private String topBarText;
@ApiModelProperty(value = "上部横幅的背景色")
private String topBarBgcolor;
@ApiModelProperty(value = "上部横幅显示的按钮 (显示电话和邮箱;0:显示电话和邮箱;1显示电话;2显示邮箱;3不显示按钮")
private String topBarButton;
@ApiModelProperty(value = "名片中间主体区域显示,0(false):不显示;1(true):显示")
private Boolean cardBodyDisplay;
@ApiModelProperty(value = "中间主体内容_字段1(目前设计为强制显示姓名) 默认为true,显示")
private String bodyField1;
@ApiModelProperty(value = "字段2到字段字段4选择列表;值={0:隐藏该字段;1:职务;2部门;3企业名称;4电话;5邮箱;6备注1;7备注2;8;备注3}")
private String bodyField2;
@ApiModelProperty(value = "字段2到字段字段4选择列表;值={0:隐藏该字段;1:职务;2部门;3企业名称;4电话;5邮箱;6备注1;7备注2;8;备注3}")
private String bodyField3;
@ApiModelProperty(value = "字段2到字段字段4选择列表;值={0:隐藏该字段;1:职务;2部门;3企业名称;4电话;5邮箱;6备注1;7备注2;8;备注3}")
private String bodyField4;
@ApiModelProperty(value = "字段5 个性签名是否显示 0(false):不显示;1(true):显示")
private String bodyField5;
@ApiModelProperty(value = "主体背景图")
private String bodyBgimg;
@ApiModelProperty(value = "名片底部展开信息是否显示,0(false):不显示;1(true):显示")
private Boolean cardFootDisplay;
@ApiModelProperty(value = "手机号")
private String mobile;
@ApiModelProperty(value = "邮箱")
private String email;
@ApiModelProperty(value = "头像")
private String headPortrait;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Api(
tags = {"ChapterDetailedInfoVO"},description = "章节详细信息"
)
@Data
public class ChapterDetailedInfoVO {
@ApiModelProperty(value = "章节id")
private Long id;
@ApiModelProperty(value = "素材id")
private Long materialId;
@ApiModelProperty(value = "素材类型1音频 2 视频 3 文本 4 富媒体 5 Scrom (如果来源类型为3: 测验:1则为测验的01:过程性测验,2则为测验的02:总结性测验)")
private Integer materialType;
@ApiModelProperty(value = "课程")
private Long courseId;
@ApiModelProperty(value = "音频完成条件 0 播放即完成 1听完整个课程")
private Integer audioComplete;
@ApiModelProperty(value = "视频完成条件 0 播放即完成 1听完整个课程")
private Integer videoComplete;
@ApiModelProperty(value = "文档完成条件 0 观看即完成 1停留时长达到学习时长即完成")
private Integer docComplete;
@ApiModelProperty(value = "多媒体完成条件 0 观看即完成 1停留时长达到学习时长即完成")
private Integer richComplete;
@ApiModelProperty("完成时间单位:小时")
private Integer textHour;
@ApiModelProperty("完成时间单位:分")
private Integer textMinute;
@ApiModelProperty("完成时间单位:秒")
private Integer textSecond;
}
/**
* FileName: ChapterDetailsVo
* Author: wenjunlong
* Date: 2018/5/8 20:25
* Description: 章节详情 带完成状态
* History:
* <author> <time> <version> <desc>
* 作者姓名 修改时间 版本号 描述
*/
package com.yizhi.course.application.vo;
import com.baomidou.mybatisplus.annotations.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* 〈一句话功能简述〉<br>
* 〈章节详情 带完成状态〉
*
* @author wenjunlong
* @create 2018/5/8
* @since 1.0.0
*/
@Data
public class ChapterDetailsVo {
public static final String NOT_EXACTLY_MSG = "notExactlyMsg";
@ApiModelProperty(value = "主键id")
private Long id;
@ApiModelProperty(value = "章节父id")
@TableField("parent_id")
private Long parentId;
@ApiModelProperty(value = "课程")
@TableField("course_id")
private Long courseId;
@ApiModelProperty(value = "层级")
private Integer layer;
@ApiModelProperty(value = "章节名称")
private String name;
@ApiModelProperty(value = "素材id")
@TableField("material_id")
private Long materialId;
@ApiModelProperty(value = "素材名称")
@TableField("material_name")
private String materialName;
@ApiModelProperty(value = "素材类型1音频 2 视频 3 文本 4 富媒体 5 Scrom (如果source=3测验,1对应测验01 过程测验。2对应测验的02 总结性测验)")
@TableField("material_type")
private Integer materialType;
@ApiModelProperty(value = "可以获得积分")
private Integer score;
@ApiModelProperty(value = "备注")
private String remark;
@ApiModelProperty(value = "排序")
private Integer sort;
@ApiModelProperty(value = "父子关系排序")
private String path;
@ApiModelProperty("来源类型1 素材 2 考试 9 测验")
private Integer source;
@ApiModelProperty(value = "完成状态0 未完成(未开始测验) 1 已完成(测验通过) 2 测验未通过 ")
private Integer overed;
@ApiModelProperty(value = "完成章节百分比")
private Integer percent;
@ApiModelProperty(value = "章节素材内容")
private MaterialVo materialVo;
@ApiModelProperty(value = "测验分数")
private Integer testScore;
@ApiModelProperty(value = "是否是最后学习的章节")
private Boolean isLastStudy;
@ApiModelProperty(value = "课程章节排序字段")
private String paths;
@ApiModelProperty(value = "断点续播的进度点")
private Long progress;
@ApiModelProperty("是否显示水印 0否 1是 默认否")
private Integer displayMark;
@ApiModelProperty("水印类型 0个人信息 1自定义 默认个人信息")
private Integer wordType;
@ApiModelProperty("水印内容")
private String word;
}
/**
* FileName: ChapterDetailsVo
* Author: wenjunlong
* Date: 2018/5/8 20:25
* Description: 章节详情 带完成状态
* History:
* <author> <time> <version> <desc>
* 作者姓名 修改时间 版本号 描述
*/
package com.yizhi.course.application.vo;
import com.baomidou.mybatisplus.annotations.TableField;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* 〈一句话功能简述〉<br>
* 〈章节详情 带完成状态〉
*
* @author xiehaijun
* @create 2018/5/8
* @since 1.0.0
*/
@Data
public class ChapterJoinTestVo {
@ApiModelProperty(value = "素材id")
private Long materialId;
@ApiModelProperty(value = "测验关联章节次数")
private Integer countNum;
}
package com.yizhi.course.application.vo;
import com.baomidou.mybatisplus.annotations.TableField;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Api(
tags = {"ChapterVo"},
description = "章节接受参数对象"
)
@Data
public class ChapterVo {
@ApiModelProperty(value = "主键id")
private Long id;
@ApiModelProperty(value = "章节父id")
private Long parentId;
@ApiModelProperty(value = "章节名称")
private String name;
@ApiModelProperty(value = "素材id")
private Long materialId;
@ApiModelProperty(value = "素材名称")
private String materialName;
@ApiModelProperty(value = "素材类型1音频 2 视频 3 文本 4 富媒体 5 Scrom (7 过程测验,8总结性测验 ,9 直播")
private Integer materialType;
@ApiModelProperty(value = "可以获得积分")
private Integer score;
@ApiModelProperty(value = "备注")
private String remark;
@ApiModelProperty(value = "课程")
private Long courseId;
@ApiModelProperty(value = "排序")
private Integer sort;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @Author: XieHaijun
* @Description:
* @Date: Created in 10:17 2018/11/8
* @Modified By
*/
@Api(
tags = {"ChaptersPassReqVO"},
description = "章节接受参数对象"
)
@Data
public class ChaptersPassReqVO {
@ApiModelProperty(value = "是测验的章节id")
private List<Long> chapterIds;
@ApiModelProperty(value = "账号id")
private Long accountId;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* <p>
* 课程分类组基本信息表
* </p>
*
* @author xiehaijun
* @since 2019-12-13
*/
@Data
@ApiModel(value="ClassifyGroupInfo对象", description="课程分类组基本信息表")
public class ClassifyGroupInfoVO{
@ApiModelProperty(value = "主键")
private Long id;
@ApiModelProperty(value = "分类组名称")
private String name;
@ApiModelProperty(value = "分类描述")
private String desc;
@ApiModelProperty(value = "模版类型(1 平铺;2 两级分类;3 三级分类")
private int templateType;
@ApiModelProperty(value = "模版子类型(模版类型=2时候,该值1为一级二级分类,2 为二级分类三级分类)")
private Integer templateSubType;
@ApiModelProperty(value = "其他字段")
private String othen;
@ApiModelProperty(value = "分类和章节关联的信息")
private List<ClassifyGroupVO> data;
}
package com.yizhi.course.application.vo;
import com.yizhi.course.application.vo.domain.ClassifyEntityVo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* <p>
* 课程分类组基本信息表
* </p>
*
* @author xiehaijun
* @since 2019-12-13
*/
@Data
@ApiModel(value="ClassifyGroupInfo对象", description="课程分类组基本信息表")
public class ClassifyGroupStudentVO {
@ApiModelProperty(value = "主键")
private Long id;
@ApiModelProperty(value = "分类组名称")
private String name;
@ApiModelProperty(value = "分类描述")
private String desc;
@ApiModelProperty(value = "模版类型(1 平铺;2 两级分类;3 三级分类")
private int templateType;
@ApiModelProperty(value = "模版子类型(模版类型=2时候,该值1为一级二级分类,2 为二级分类三级分类)")
private Integer templateSubType;
@ApiModelProperty(value = "其他字段")
private String othen;
@ApiModelProperty(value = "分类信息")
private List<ClassifyEntityVo> classifyData;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* <p>
* 分类组和分类的关联信息表
* </p>
*
* @author xiehaijun
* @since 2019-12-13
*/
@Data
@ApiModel(value="ClassifyGroup对象", description="分类组和分类的关联信息表")
public class ClassifyGroupVO {
@ApiModelProperty(value = "分类id")
private long classifyId;
@ApiModelProperty(value = "分类层级")
private int layer;
@ApiModelProperty(value = "分类组的唯一id")
private long classifyGroupInfoId;
@ApiModelProperty(value = "是否是删除,true表示删除的数据")
private Boolean isDelete;
}
package com.yizhi.course.application.vo;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.enums.FieldFill;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* Created with IntelliJ. IDEA
* User:zhuwenwen
* Date: 2018/3/19
* Time: 17:31
**/
@Data
public class ClassifyVo {
@ApiModelProperty(value = "主键")
private Long id;
@ApiModelProperty(value = "层级")
private Integer layer;
@ApiModelProperty(value = "名称")
private String name;
@ApiModelProperty(value = "分类编码")
private String code;
@ApiModelProperty(value = "状态")
private Integer status;
@TableField(value = "create_time", fill = FieldFill.INSERT)
private String createTime;
private Integer total;
@ApiModelProperty(value = "状态")
private Integer sort;
@ApiModelProperty(value = "描述")
private String description;
@ApiModelProperty(value = "是否存在子节点")
private Boolean existChildNode = false;
}
package com.yizhi.course.application.vo;
import lombok.Data;
import java.io.Serializable;
@Data
public class CommentGradeVo {
private Long courseId;
private String content;
private Integer level;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
@Data
public class CommentVo {
@ApiModelProperty(value = "评论人")
private String commentator;
@ApiModelProperty(value = "评论内容")
private String content;
List<ReplyVo> replyVos = new ArrayList<ReplyVo>();
}
package com.yizhi.course.application.vo;
import java.util.List;
import lombok.Data;
@Data
public class CourseAccountReport {
private Long courseId;
private List<Long> orgIds;
private List<Long> accountIds;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* <p>
* 课程指定用户
* </p>
*
* @author 谢海军
* @since 2018-06-26
*/
@Data
@Api(tags = "CourseAccountVO", description = "课程指定用户")
public class CourseAccountVO {
@ApiModelProperty(value = "唯一主键")
private Long id;
@ApiModelProperty(value = "指定的对象id")
private Long relationId;
@ApiModelProperty(value = "指定的对象名")
private String name;
@ApiModelProperty(value = "课程id")
private Long courseId;
@ApiModelProperty(value = "1.部门,2.用户,3.用户组")
private Integer type;
@ApiModelProperty(value = "站点id")
private Long siteId;
@ApiModelProperty(value = "用户名")
private String fullName;
@ApiModelProperty(value = "工号")
private String workNum;
}
package com.yizhi.course.application.vo;
import com.yizhi.course.application.vo.domain.ChapterEntityVo;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* 获得课程所有的信息,章节列表,包括评论等
*/
@Data
public class CourseAllVo {
private CourseVo courseVo;
//章节
private List<ChapterEntityVo> chapterVos = new ArrayList<ChapterEntityVo>();
//评论加回复
private List<CommentVo> commentVos = new ArrayList<CommentVo>();
//评分
private List<CourseGradeVO> courseGrades = new ArrayList<CourseGradeVO>();
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Api(tags = {"CourseCertificateVo"}, description = "课程证书")
@Data
public class CourseCertificateVo {
@ApiModelProperty(value = "证书id")
private Long id;
@ApiModelProperty(value = "证书名")
private String name;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "评论分页参数说明")
public class CourseCommentVo {
@ApiModelProperty(value = "课程Id 必传",required = true)
Long courseId;
@ApiModelProperty(value = "评论分页参数")
Integer pageNo = 1;
@ApiModelProperty(value = "评论分页参数")
Integer pageSize = 10;
@ApiModelProperty(value = "回复列表分页参数")
Integer replyPageNo = 1;
@ApiModelProperty(value = "回复列表分页参数")
Integer replyPageSize = 5;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
@Data
@ApiModel(value = "CourseDashboardParam", description = "课程dashboardVO参数")
public class CourseDashboardParam {
@ApiModelProperty(value = "")
private Long siteId;
@ApiModelProperty(value = "开始时间")
private Date startDate;
@ApiModelProperty(value = "结束时间")
private Date endDate;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.HashSet;
import java.util.Set;
@Data
@ApiModel(value = "CourseDashboardVO", description = "课程dashboardVO")
public class CourseDashboardVO {
@ApiModelProperty(value = "课程时长(s)")
private Long courseTime = 0L;
@ApiModelProperty(value = "累计学习时间(s)")
private Long courseStudyTime = 0L;
@ApiModelProperty(value = "完成课程id集合")
private Set<Long> courseIds = new HashSet<>();
@ApiModelProperty(value = "完成课程数")
private Integer courseFinishNum = 0;
}
/**
* FileName: CourseDeleteVo
* Author: wenjunlong
* Date: 2018/4/27 16:45
* Description: 课程删除vo
* History:
* <author> <time> <version> <desc>
* 作者姓名 修改时间 版本号 描述
*/
package com.yizhi.course.application.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* 〈一句话功能简述〉<br>
* 〈课程删除vo〉
*
* @author wenjunlong
* @create 2018/4/27
* @since 1.0.0
*/
@Data
public class CourseDeleteVo {
@ApiModelProperty(value = "ids 课程主键 可传入多个 用逗号, 分割")
private String ids;
}
/**
* FileName: CourseDetailsVo
* Author: wenjunlong
* Date: 2018/4/18 11:26
* Description: 课程详情Vo
* History:
* <author> <time> <version> <desc>
* 作者姓名 修改时间 版本号 描述
*/
package com.yizhi.course.application.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* 〈一句话功能简述〉<br>
* 〈课程详情Vo〉
*
* @author wenjunlong
* @create 2018/4/18
* @since 1.0.0
*/
@Data
public class CourseDetailsVo {
@ApiModelProperty(value = "课程对象")
private CourseVo courseVo;
@ApiModelProperty(value = "章节列表")
private List<ChapterDetailsVo> chapterVos = new ArrayList<ChapterDetailsVo>();
@ApiModelProperty(value = "课程类型1音频 2 视频 3 文本 4 富媒体 5 Scrom")
private Integer type;
@ApiModelProperty(value = "素材内容")
private MaterialVo materialVo;
@ApiModelProperty(value = "课程平均分")
private String level;
@ApiModelProperty(value = "当前用户对该课程的平分")
private String myLevel;
@ApiModelProperty(value = "是否收藏 0 未收藏 1 已收藏")
private String isFavorite;
@ApiModelProperty(value = "音频视频是否缓存 0 否 1 是")
private String isCache = "1";
@ApiModelProperty(value = "学校课程的总时长")
private Integer duration;
@ApiModelProperty(value = "课程浏览人次")
private Integer viewCount;
@ApiModelProperty("课程学习状态 0:表示未完成,1表示已完成 ,-1 未开始")
private Integer studentStatus;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* @Author: XieHaijun
* @Description:
* @Date: Created in 20:04 2018/5/8
* @Modified By
*/
@ApiModel(
value = "CourseForwardUserVo",
description = "营销课程转发用户统计"
)
@Data
public class CourseForwardUserReq {
@ApiModelProperty(value = "课程ID")
private long courseId;
@ApiModelProperty(value = "用户名(用户转发统计)")
private String loginName;
@ApiModelProperty(value = "开始时间(课程转发统计)")
private Date startDate;
@ApiModelProperty(value = "结束时间(课程转发统计)")
private Date endDate;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @Author: XieHaijun
* @Description:
* @Date: Created in 20:04 2018/5/8
* @Modified By
*/
@ApiModel(
value = "CourseForwardUserVo",
description = "营销课程转发用户统计"
)
@Data
public class CourseForwardUserVo {
@ApiModelProperty(value = "用户名")
private String loginName;
@ApiModelProperty(value = "用户姓名")
private String userName;
@ApiModelProperty(value = "手机号")
private String tel;
@ApiModelProperty(value = "分享次数/转发次数")
private long forwardCount;
@ApiModelProperty(value = "转发用户数")
private long forwardUserCount;
@ApiModelProperty(value = "时间")
private String dateStr;
@ApiModelProperty(value = "阅读人数")
private String readUserNam;
@ApiModelProperty(value = "阅读次数")
private String readNam;
@ApiModelProperty(value = "(营销)渠道名称")
private String marketingChannel;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* <p>
* 课程星级
* </p>
*
* @author fulan123
* @since 2018-03-19
*/
@Data
@Api(tags = "CourseGradeVO", description = "课程星级")
public class CourseGradeVO {
private static final long serialVersionUID = 1L;
private Long id;
@ApiModelProperty(value = "星级")
private Integer level;
@ApiModelProperty(value = "账号")
private Long accountId;
@ApiModelProperty(value = "课程id")
private Long courseId;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
@Data
public class CourseListExportVO {
private Long id;
private String code;
private String name;
private String classify;
private Integer score;
private Integer shelves;
private Date createTime;
private Long classifyId;
private Integer courseType;
@ApiModelProperty(value = "课程学时")
private Float totalDuration;
@ApiModelProperty(value = "课程总时长=素材时长和hh:mm:ss类型")
private String totalHourString;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author Ding
* @className CourseLogoVO
* @description TODO
* @date 2019/6/10
**/
@Api(
tags = {"CourseLogoVO"},
description = "logo获取vo"
)
@Data
public class CourseLogoVO {
@ApiModelProperty(value = "课程id")
private Long courseId;
@ApiModelProperty(value = "课程logourl")
private String courseLogoUrl;
}
package com.yizhi.course.application.vo;
import lombok.Data;
/**
* 错误信息返回类
* @date 2018-11-5 13:57:40
* @author lilingye
*/
@Data
public class CourseRespVO {
/*
返回码
1 成功
0 失败
*/
private int code;
// 返回信息
private String msg;
}
package com.yizhi.course.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* @Author: XieHaijun
* @Description:
* @Date: Created in 13:30 2018/4/9
* @Modified By
*/
@ApiModel(
value = "CourseShareVo",
description = "课程分享对象"
)
@Data
public class CourseShareVo {
@ApiModelProperty(value = "主键id")
private Long id;
@ApiModelProperty(value = "课程ID")
private Long courseId;
@ApiModelProperty(value = "分享用户ID")
private Long accountId;
@ApiModelProperty(value = "分享的url")
private String shareUrl;
@ApiModelProperty(value = "分享时间")
private Date shareTime;
@ApiModelProperty(value = "被浏览次数")
private Long readCount;
@ApiModelProperty(value = "被浏览人次")
private Integer readUserCount;
@ApiModelProperty(value = "被推介人次")
private Integer shareUserCount;
@ApiModelProperty(value = "课程名称")
private String courseName;
@ApiModelProperty(value = "课程图片")
private String courseImage;
@ApiModelProperty(value = "分享用户名")
private String name;
@ApiModelProperty(value = "分享用户的姓名")
private String fullName;
@ApiModelProperty(value = "分享用户联系号码")
private String tel;
@ApiModelProperty(value = "第一级分享人openId(下级分享人)")
private String firstShareId;
@ApiModelProperty(value = "第二级分享人openId(下级分享人)")
private String secondShareId;
@ApiModelProperty(value = "微信头像")
private String avatar;
@ApiModelProperty(value = "是否有下级推介人")
private Boolean hasNext = false;
}
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