Commit 02c0e5c2 by liangkaiping

copy

parent a039ee34
# caselibrary
案例库
\ No newline at end of file
<?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>caselibrary</artifactId>
<groupId>com.yizhi</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>library-api</artifactId>
<packaging>jar</packaging>
<name>library-api</name>
<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>
</dependency>
<dependency>
<groupId>com.yizhi</groupId>
<artifactId>cloud-util</artifactId>
<version>1.0-SNAPSHOT</version>
</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>
package com.yizhi.library.application.enums;
public enum ProductCoverEnums {
PRODUCT_COVER_ON(80,"作品封面必填"),
PRODUCT_COVER_OFF(40,"作品封面选填"),
;
private Integer type;
private String value;
ProductCoverEnums(Integer type, String value) {
this.type = type;
this.value = value;
}
public Integer getType() {
return type;
}
public void setType(Integer type) {
this.type = type;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = value;
}
}
package com.yizhi.library.application.feign;
import com.yizhi.library.application.vo.ClassifyListVO;
import com.yizhi.library.application.vo.ClassifyVO;
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 dingxiaowei123
* @since 2019-07-03
*/
@FeignClient(name = "caselibrary", contextId = "CaseLibraryClassifyClient")
public interface CaseLibraryClassifyClient {
/**
* 插入分类
*
* @param classify
* @return
*/
@PostMapping("/classify/insert")
Integer insertClassify(@RequestBody ClassifyVO classify);
/**
* 删除分类
*
* @param classifyId
* @return
*/
@GetMapping("/classify/delete")
boolean deleteClassify(@RequestParam("classifyId") Long classifyId);
/**
* 分类下架
*
* @param classifyId
* @return
*/
@GetMapping("/classify/putDown")
boolean putDownClassify(@RequestParam("classifyId") Long classifyId);
/**
* 分类上架
*
* @param classifyId
* @return
*/
@GetMapping("/classify/release")
boolean releaseClassify(@RequestParam("classifyId") Long classifyId);
/**
* 获取分类列表
*
* @return
*/
@GetMapping("/classify/list")
List<ClassifyListVO> getClassifyList();
/**
* 修改分类信息
*
* @param classifyId
* @param name
* @param description
* @return
*/
@GetMapping("/classify/update")
boolean updateClassify(@RequestParam(name = "classifyId") Long classifyId,
@RequestParam(name = "name", required = false) String name,
@RequestParam(name = "description", required = false) String description);
/**
* 上移下移
* @param classifyId
* @param parentId
* @param sort
* @param type
* @return
*/
@GetMapping("/classify/move")
Integer moveClassify(@RequestParam(name = "classifyId") Long classifyId,
@RequestParam(name = "parentId") Long parentId,
@RequestParam(name = "sort") Integer sort,
@RequestParam(name = "type") Integer type);
}
package com.yizhi.library.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.core.application.vo.DroolsVo;
import com.yizhi.library.application.param.RelateProjectParam;
import com.yizhi.library.application.vo.CaseLibraryVO;
import com.yizhi.library.application.vo.CaselibraryAuthorizeVO;
import com.yizhi.library.application.vo.ClassifyVO;
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 Ding
* @className CaseLibraryClient
* @description TODO
* @date 2019/7/3
**/
@FeignClient(name = "caselibrary", contextId = "CaseLibraryClient")
public interface CaseLibraryClient {
/**
* 获取活动管理列表
*
* @param name
* @param state
* @param pageNo
* @param pageSize
* @return
*/
@GetMapping("/caseLibrary/list")
Page<CaseLibraryVO> getCaseLibraryList(@RequestParam(name = "name", required = false) String name,
@RequestParam(name = "state", required = false) Integer state,
@RequestParam(name = "pageNo") Integer pageNo,
@RequestParam(name = "pageSize") Integer pageSize);
/**
* 新建案例活动
*
* @param caseLibraryVO
* @return
*/
@PostMapping("/caseLibrary/insert")
Long insertCaseLibrary(@RequestBody CaseLibraryVO caseLibraryVO);
/**
* 新建案例活动获取维度列表
*
* @param caseLibraryId
* @return
*/
@GetMapping("/caseLibrary/getClassify")
List<ClassifyVO> getClassify(@RequestParam(name = "caseLibraryId", required = false) Long caseLibraryId);
/**
* 案例活动审核对象导入
*
* @param caseLibraryId
* @param url
* @return
*/
@GetMapping("/caseLibrary/importAuditor")
String importAuditor(@RequestParam("caseLibraryId") Long caseLibraryId, @RequestParam("url") String url);
/**
* 案例活动必须提交人导入
*
* @param caseLibraryId
* @param url
* @return
*/
@GetMapping("/caseLibrary/importScorer")
String importScorer(@RequestParam("caseLibraryId") Long caseLibraryId, @RequestParam("url") String url);
/**
* 案例活动评分对象导入
*
* @param caseLibraryId
* @param url
* @return
*/
@GetMapping("/caseLibrary/importSubmitter")
String importSubmitter(@RequestParam("caseLibraryId") Long caseLibraryId, @RequestParam("url") String url);
/**
* 案例活动修改获取信息
*
* @param caseLibraryId
* @return
*/
@GetMapping("/caseLibrary/view")
CaseLibraryVO viewCaseLibrary(@RequestParam("caseLibraryId") Long caseLibraryId);
/**
* 更新案例活动
*
* @param caseLibraryVO
* @return
*/
@PostMapping("/caseLibrary/update")
boolean updateCaseLibrary(@RequestBody CaseLibraryVO caseLibraryVO);
/**
* 案例活动移除分类维度
*
* @param id
* @return
*/
@GetMapping("/caseLibrary/relatedClassify/delete")
boolean deleteRelatedClassify(@RequestParam("id") Long id);
/**
* 案例活动发布上架
*
* @param caseLibraryId
* @return
*/
@GetMapping("/caseLibrary/release")
boolean releaseCaseLibrary(@RequestParam("caseLibraryId") Long caseLibraryId);
/**
* 案例活动发布下架
*
* @param caseLibraryId
* @return
*/
@GetMapping("/caseLibrary/putDown")
boolean putDownCaseLibrary(@RequestParam("caseLibraryId") Long caseLibraryId);
/**
* 案例活动草稿状态下删除
*
* @param caseLibraryId
* @return
*/
@GetMapping("/caseLibrary/delete")
boolean deleteCaseLibrary(@RequestParam("caseLibraryId") Long caseLibraryId);
/**
* 案例活动关联培训项目
*
* @param relateProjectParam
* @return
*/
@PostMapping("/caseLibrary/relateProject")
boolean relateProject(@RequestBody RelateProjectParam relateProjectParam);
/**
* 案例活动取消关联培训项目
*
* @param caseLibraryId
* @return
*/
@GetMapping("/caseLibrary/cancelRelateProject")
boolean cancelRelateProject(@RequestParam("caseLibraryId") Long caseLibraryId);
/**
* 培训项目关联案例活动获取列表
*
* @param name
* @param pageNo
* @param pageSize
* @return
*/
@GetMapping("/caseLibrary/getProjectList")
Page<CaseLibraryVO> getProjectList(@RequestParam(value = "name", required = false) String name,
@RequestParam("pageNo") Integer pageNo,
@RequestParam("pageSize") Integer pageSize);
@PostMapping("/caseLibrary/insertAuthorizes")
boolean insertAuthorizes(@RequestBody List<CaselibraryAuthorizeVO> caseLibraryAuthorizeList);
@GetMapping("/caseLibrary/getAuthorize")
List<CaselibraryAuthorizeVO> getAuthorize(@RequestParam("caselibraryId") Long caselibraryId);
/**
* 获取案例活动信息
* @param caselibraryId
* @return
*/
@GetMapping("/caseLibrary/getCaseLibrary")
CaseLibraryVO getCaseLibrary(@RequestParam("caselibraryId") Long caselibraryId);
/**
* 管理端首页配置上传案例获取案例活动列表
* @param pageNo
* @param pageSize
* @return
*/
@GetMapping("/caseLibrary/getHomeList")
Page<CaseLibraryVO> getHomeList(@RequestParam("pageNo") Integer pageNo,
@RequestParam("pageSize") Integer pageSize);
/**
* 规则搜索下拉框分页数据
* @param field
* @param value
* @param pageNo
* @param pageSize
* @return
*/
@GetMapping("/caseLibrary/getPageByDrools")
Page<DroolsVo> getPageByDrools(@RequestParam("field") String field,
@RequestParam(value = "value", required = false) String value,
@RequestParam("pageNo") Integer pageNo,
@RequestParam("pageSize") Integer pageSize);
}
package com.yizhi.library.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.library.application.vo.CommentReplyVO;
import com.yizhi.library.application.vo.CommentVO;
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 Ding
* @className CommentManageClient
* @description TODO
* @date 2019/7/15
**/
@FeignClient(name = "caselibrary", contextId = "CommentManageClient")
public interface CommentManageClient {
/**
* 获取评论管理列表
*
* @param studentCaseId
* @param name
* @param state
* @param pageNo
* @param pageSize
* @return
*/
@GetMapping("/comment/manage/list")
Page<CommentVO> getCommentManageList(@RequestParam(name = "studentCaseId", required = true) Long studentCaseId,
@RequestParam(name = "name", required = false) String name,
@RequestParam(name = "state", required = false) Integer state,
@RequestParam("pageNo") Integer pageNo,
@RequestParam("pageSize") Integer pageSize);
/**
* 下载评论信息
*
* @param studentCaseId
* @param name
* @param state
* @return
*/
@GetMapping("/comment/manage/downloadList")
String downloadList(@RequestParam(name = "studentCaseId", required = true) Long studentCaseId,
@RequestParam(name = "name", required = false) String name,
@RequestParam(name = "state", required = false) Integer state);
/**
* 获取评论回复列表
*
* @param name
* @param state
* @param commentId
* @return
*/
@GetMapping("/comment/manage/replyList")
List<CommentReplyVO> getCommentReplyList(@RequestParam(name = "name", required = false) String name,
@RequestParam(name = "state", required = false) Integer state,
@RequestParam("commentId") Long commentId);
/**
* 评论/回复下架
*
* @param id
* @param type
* @return
*/
@GetMapping("/comment/manage/putDown")
boolean putDown(@RequestParam(name = "id", required = true) Long id,
@RequestParam(name = "type", required = true) Integer type);
/**
* 评论/回复上架
*
* @param id
* @param type
* @return
*/
@GetMapping("/comment/manage/release")
boolean release(@RequestParam(name = "id", required = true) Long id,
@RequestParam(name = "type", required = true) Integer type);
/**
* 获取评论回复删除
*
* @param id
* @param type
* @return
*/
@GetMapping("/comment/manage/delete")
boolean delete(@RequestParam(name = "id", required = true) Long id,
@RequestParam(name = "type", required = true) Integer type);
}
package com.yizhi.library.application.feign;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
@FeignClient(name = "caselibrary", contextId = "StatisticStudentCaseClient")
public interface StatisticStudentCaseClient {
@GetMapping("/statistic/insert/all")
public void insertAll();
}
package com.yizhi.library.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.core.application.vo.DroolsVo;
import com.yizhi.library.application.param.*;
import com.yizhi.library.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 Ding
* @className StudentCaseClient
* @description TODO
* @date 2019/7/9
**/
@FeignClient(name = "caselibrary", contextId = "StudentCaseClient")
public interface StudentCaseClient {
/**
* pc端,移动端我的案例列表
*
* @param pageNo
* @param pageSize
* @return
*/
@GetMapping("/studentCase/myCaseLibrary/list")
Page<CaseLibraryVO> myCaseLibraryList(@RequestParam("pageNo") Integer pageNo, @RequestParam("pageSize") Integer pageSize);
/**
* pc端,移动端我的案例记录总数
*
* @return
*/
@GetMapping("/studentCase/myCaseLibrary/total")
Integer myCaseLibraryTotal();
/**
* 学员提交案例获取案例库信息
*
* @param caseLibraryId
* @return
*/
@GetMapping("/studentCase/submit/prepare")
StudentCaseVO prepareStudentCase(@RequestParam("caseLibraryId") Long caseLibraryId);
/**
* 学员提交案例
*
* @param studentCaseParam
* @return
*/
@PostMapping("/studentCase/submit")
boolean submitStudentCase(@RequestBody StudentCaseParam studentCaseParam);
/**
* 获取学员案例提交记录列表
*
* @param caseLibraryId
* @param endTime
* @return
*/
@GetMapping("/studentCase/getSubmitRecords")
StudentCaseRecordListVO getSubmitRecords(@RequestParam("caseLibraryId") Long caseLibraryId,
@RequestParam("endTime") String endTime);
/**
* 学员案例提交记录中提交
*
* @param studentCaseId
* @return
*/
@GetMapping("/studentCase/record/studentCaseRecordSubmit")
boolean studentCaseRecordSubmit(@RequestParam("studentCaseId") Long studentCaseId);
/**
* 学员案例提交记录中撤回
*
* @param studentCaseId
* @return
*/
@GetMapping("/studentCase/record/studentCaseRecall")
boolean studentCaseRecall(@RequestParam("studentCaseId") Long studentCaseId);
/**
* 学员案例记录查看或者编辑获得信息
*
* @param studentCaseId
* @param type
* @return
*/
@GetMapping("/studentCase/record/studentCaseView")
StudentCaseViewVO studentCaseView(@RequestParam(name = "studentCaseId") Long studentCaseId,
@RequestParam(name = "type", required = false) Integer type);
/**
* 学员案例审核,评分获取案例列表
*
* @param type
* @param name
* @param pageSize
* @param pageNo
* @return
*/
@GetMapping("/studentCase/getAuditList")
Page<StudentCaseStudyVO> getAuditList(@RequestParam("type") Integer type,
@RequestParam(value = "name", required = false) String name,
@RequestParam("pageNo") Integer pageNo,
@RequestParam("pageSize") Integer pageSize);
/**
* 学员案例学习获取案例信息/审核,评分获取案例信息
*
* @param studentCaseId
* @param type
* @return
*/
@GetMapping("/studentCase/studyStudentCase")
StudentCaseStudyVO studyStudentCase(@RequestParam("studentCaseId") Long studentCaseId,
@RequestParam("type") Integer type,
@RequestParam(name = "number", required = false) Integer number,
@RequestParam(name = "name", required = false) String name);
/**
* 学员案例审核提交
*
* @param studentCaseAuditParam
* @return
*/
@PostMapping("/studentCase/audit")
boolean studentCaseAudit(@RequestBody StudentCaseAuditParam studentCaseAuditParam);
/**
* 学员案例批量审核
*
* @param studentCaseAuditParam
* @return
*/
@PostMapping("/studentCase/batchAudit")
boolean studentCaseBatchAudit(@RequestBody StudentCaseAuditParam studentCaseAuditParam);
/**
* 学员案例评分提交
*
* @param studentCaseAuditParam
* @return
*/
@PostMapping("/studentCase/score")
boolean studentCaseScore(@RequestBody StudentCaseAuditParam studentCaseAuditParam);
/**
* 学员案例批量评分
*
* @param studentCaseAuditParam
* @return
*/
@PostMapping("/studentCase/batchScore")
boolean studentCaseBatchScore(@RequestBody StudentCaseAuditParam studentCaseAuditParam);
/**
* 学员案例审核/评分导出案例
*
* @param studentCaseAuditParam
* @return
*/
@PostMapping("/studentCase/batchExport")
String studentCaseBatchExport(@RequestBody StudentCaseAuditParam studentCaseAuditParam);
/**
* 首页配置获取列表
*
* @param homeListParam
* @return
*/
@PostMapping("/studentCase/homeList")
Page<StudentCaseVO> getStudentCaseHomeList(@RequestBody HomeListParam homeListParam);
/**
* 首页配置获取学员案例信息
*
* @param studentCaseId
* @return
*/
@GetMapping("/studentCase/getStudentCaseDetails")
StudentCaseStudyVO getStudentCaseDetails(@RequestParam("studentCaseId") Long studentCaseId);
/**
* 管理端修改学员案例新增可见范围用户,部门
*
* @param studentCaseAuthorizeList
* @return
*/
@PostMapping("/studentCase/insertAuthorizes")
boolean insertAuthorizes(@RequestBody List<StudentCaseAuthorizeVO> studentCaseAuthorizeList);
/**
* 获取指定范围列表
*
* @param studentCaseId
* @return
*/
@GetMapping("/studentCase/getAuthorize")
List<StudentCaseAuthorizeVO> getAuthorize(@RequestParam("studentCaseId") Long studentCaseId);
/**
* 获取我的收藏案例列表
*
* @param pageNo
* @param pageSize
* @return
*/
@GetMapping("/studentCase/getFavorites")
Page<FavoriteVO> getFavorites(@RequestParam("pageNo") Integer pageNo,
@RequestParam("pageSize") Integer pageSize,
@RequestParam(value = "name", required = false) String name);
/**
* 首页获取案例点赞总数
*
* @param companyId
* @param siteId
* @param accountId
* @return
*/
@GetMapping("/studentCase/getFavoritesCount")
Integer getFavoritesCount(@RequestParam("companyId") Long companyId,
@RequestParam("siteId") Long siteId,
@RequestParam("accountId") Long accountId);
/**
* 培训项目关联精选案例获取列表
*
* @param name
* @param pageNo
* @param pageSize
* @return
*/
@GetMapping("/studentCase/getProjectList")
Page<StudentCaseStudyVO> getProjectList(@RequestParam(value = "name", required = false) String name,
@RequestParam("pageNo") Integer pageNo,
@RequestParam("pageSize") Integer pageSize);
/**
* 精选案例搜索页获取列表
*
* @param selectionStudentCaseParam
* @return
*/
@PostMapping("/studentCase/selectionList")
Page<FavoriteVO> getSelectionStudentCaseList(@RequestBody SelectionStudentCaseParam selectionStudentCaseParam);
/**
* 首页获取精选案例信息
*
* @param studentCaseId
* @return
*/
@GetMapping("/studentCase/getStudentCaseDetail")
FavoriteVO getStudentCaseDetail(@RequestParam(value = "studentCaseId") Long studentCaseId);
@GetMapping("/studentCase/VisibleRange")
List<StudentCaseAuthorizeVO> VisibleRange(@RequestParam(value = "studentCaseId") Long studentCaseId);
/**
* 学员端审核案例修改关联分类
* @param param
* @return
*/
@PostMapping("/studentCase/updateClassify")
boolean modifyRlatedClassifys(@RequestBody UpdateCaseRelatedClassifyParam param);
/**
* 通知案例微服务该附件是视频/音频文件,等待转码
* @param ids
* @return
*/
@PostMapping("/studentCase/verifyVedio")
boolean verifyVedio(@RequestBody List<Long> ids);
/**
* 更新视频/音频转码url
* @param map
* @return
*/
@PostMapping("/studentCase/updateTranscodeUrl")
public boolean updateTranscodeUrl(@RequestBody Map<String, String> map);
/**
* 规则搜索下拉框分页数据
* @param field
* @param value
* @param pageNo
* @param pageSize
* @return
*/
@GetMapping("/studentCase/getPageByDrools")
Page<DroolsVo> getPageByDrools(@RequestParam("field") String field,
@RequestParam(value = "value", required = false) String value,
@RequestParam("pageNo") Integer pageNo,
@RequestParam("pageSize") Integer pageSize);
}
package com.yizhi.library.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.library.application.param.ExportAuditListParam;
import com.yizhi.library.application.vo.SelectionCaseListVO;
import com.yizhi.library.application.vo.StudentCaseManageListVO;
import com.yizhi.library.application.vo.StudentCaseStudyVO;
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 Ding
* @className StudentCaseManageClient
* @description TODO
* @date 2019/7/25
**/
@FeignClient(name = "caselibrary", contextId = "StudentCaseManageClient")
public interface StudentCaseManageClient {
/**
* 所有学员案例管理列表/审核评分管理列表
*
* @param studentCaseName
* @param accountName
* @param state
* @param pageNo
* @param pageSize
* @param caseLibraryId
* @param orgName
* @return
*/
@GetMapping("/manage/studentCase/list")
Page<StudentCaseManageListVO> studentCaseManageList(@RequestParam(name = "caseLibraryId", required = true) Long caseLibraryId,
@RequestParam(name = "studentCaseName", required = false) String studentCaseName,
@RequestParam(name = "accountName", required = false) String accountName,
@RequestParam(name = "state", required = false) Integer state,
@RequestParam(name = "orgName", required = false) String orgName,
@RequestParam(name = "pageNo", required = true) Integer pageNo,
@RequestParam(name = "pageSize", required = true) Integer pageSize);
/**
* 审核评分管理列表下载报表
*
* @param caseLibraryName
* @param trainingProjectName
* @param caseLibraryId
* @param studentCaseName
* @param accountName
* @param state
* @return
*/
@GetMapping("/manage/studentCase/list/export")
String exportStudentCaseManageList(@RequestParam(name = "caseLibraryName", required = false) String caseLibraryName,
@RequestParam(name = "trainingProjectName", required = false) String trainingProjectName,
@RequestParam(name = "caseLibraryId", required = true) Long caseLibraryId,
@RequestParam(name = "studentCaseName", required = false) String studentCaseName,
@RequestParam(name = "accountName", required = false) String accountName,
@RequestParam(name = "state", required = false) Integer state);
/**
* 学员案例审核/评分获取学员案例信息
*
* @param studentCaseName
* @param accountName
* @param state
* @param number
* @param caseLibraryId
* @param orgName
* @return
*/
@GetMapping("/manage/studentCase/auditOrScore")
StudentCaseStudyVO studentCaseManageAuditOrScoreView(@RequestParam(name = "studentCaseId", required = true) Long studentCaseId,
@RequestParam(name = "caseLibraryId", required = false) Long caseLibraryId,
@RequestParam(name = "studentCaseName", required = false) String studentCaseName,
@RequestParam(name = "accountName", required = false) String accountName,
@RequestParam(name = "state", required = false) Integer state,
@RequestParam(name = "orgName", required = false) String orgName,
@RequestParam(name = "number", required = false) Integer number);
/**
* 导出待审核案例
*
* @param param
* @return
*/
@PostMapping("/manage/studentCase/auditList/export")
String exportAuditList(@RequestBody ExportAuditListParam param);
/**
* 导入审核结果
*
* @param ossUrl
* @return
*/
@GetMapping("/manage/studentCase/auditList/import")
String importAuditList(@RequestParam("ossUrl") String ossUrl);
/**
* 导出待评分案例
*
* @param param
* @return
*/
@PostMapping("/manage/studentCase/scoreList/export")
String exportScoreList(@RequestBody ExportAuditListParam param);
/**
* 导入评分结果
*
* @param ossUrl
* @return
*/
@GetMapping("/manage/studentCase/scoreList/import")
String importScoreList(@RequestParam("ossUrl") String ossUrl);
/**
* 精选案例管理列表
*
* @param studentCaseName
* @param accountName
* @param state
* @param pageNo
* @param pageSize
* @return
*/
@GetMapping("/manage/studentCase/selectionList")
Page<SelectionCaseListVO> getSelectionList(@RequestParam(name = "studentCaseName", required = false) String studentCaseName,
@RequestParam(name = "accountName", required = false) String accountName,
@RequestParam(name = "state", required = false) Integer state,
@RequestParam("pageNo") Integer pageNo,
@RequestParam("pageSize") Integer pageSize);
/**
* 精选案例管理列表下载报表
*
* @param studentCaseName
* @param accountName
* @param state
* @return
*/
@GetMapping("/manage/studentCase/selectionList/export")
String selectionListExport(@RequestParam(name = "studentCaseName", required = false) String studentCaseName,
@RequestParam(name = "accountName", required = false) String accountName,
@RequestParam(name = "state", required = false) Integer state);
/**
* 举报记录列表
*
* @param studentCaseName
* @param accountName
* @param pageNo
* @param pageSize
* @return
*/
@GetMapping("/manage/studentCase/informList")
Page<StudentCaseManageListVO> getInformList(@RequestParam(name = "studentCaseName", required = false) String studentCaseName,
@RequestParam(name = "accountName", required = false) String accountName,
@RequestParam("pageNo") Integer pageNo,
@RequestParam("pageSize") Integer pageSize);
/**
* 举报记录列表导出
*
* @param studentCaseName
* @param accountName
* @return
*/
@GetMapping("/manage/studentCase/informList/export")
String informListExport(@RequestParam(name = "studentCaseName", required = false) String studentCaseName,
@RequestParam(name = "accountName", required = false) String accountName);
/**
* 举报记录查看
*
* @param informRecordId
* @return
*/
@GetMapping("/manage/studentCase/informList/view")
StudentCaseStudyVO informListView(@RequestParam("informRecordId") Long informRecordId);
/**
* 案例管理列表获取记录数
*
* @param caseLibraryId
* @return
*/
@GetMapping("/manage/studentCase/list/getCount")
Map<String, Object> getManageListCount(@RequestParam("caseLibraryId") Long caseLibraryId);
/**
* 学员案例下架
*
* @param studentCaseId
* @return
*/
@GetMapping("/manage/studentCase/putDown")
boolean putDown(@RequestParam("studentCaseId") Long studentCaseId);
/**
* 学员案例上架
*
* @param studentCaseId
* @return
*/
@GetMapping("/manage/studentCase/release")
boolean release(@RequestParam("studentCaseId") Long studentCaseId);
/**
* 学员案例删除
* @param studentCaseId
* @return
*/
@GetMapping("/manage/studentCase/delete")
boolean delete(@RequestParam("studentCaseId") Long studentCaseId);
/**
* 举报记录移除
*
* @param informRecordId
* @return
*/
@GetMapping("/manage/studentCase/informRecordRemove")
boolean informRecordRemove(@RequestParam("informRecordId") Long informRecordId);
}
package com.yizhi.library.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.library.application.vo.StatisticStudentCaseVO;
import com.yizhi.library.application.vo.StudentCaseAccountExportVO;
import com.yizhi.library.application.vo.StudentCaseOrgExportVO;
import io.swagger.annotations.ApiParam;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestParam;
import java.util.Map;
@FeignClient(name = "caselibrary", contextId = "StudentCaseReportClient")
public interface StudentCaseReportClient {
@GetMapping("/studentCaseReport/list/org")
public Page<StudentCaseOrgExportVO> studentCaseByOrg(
@ApiParam(value = "查询关键字", required = false) @RequestParam(name = "kwd", required = false) String kwd,
@ApiParam(value = "每页条数,默认10", required = false) @RequestParam(name = "pageSize", required = false, defaultValue = "10") Integer pageSize,
@ApiParam(value = "当前页数", required = false) @RequestParam(name = "pageNo", required = false, defaultValue = "1") Integer pageNo);
@GetMapping("/studentCaseReport/list")
public Page<StatisticStudentCaseVO> studentCaseList(
@ApiParam(value = "开始时间(yyyy-mm-dd)", required = false) @RequestParam(name = "startDate", required = false) String startDate,
@ApiParam(value = "结束时间(yyyy-mm-dd)", required = false) @RequestParam(name = "endDate", required = false) String endDate,
@ApiParam(value = "查询关键字", required = false) @RequestParam(name = "kwd", required = false) String kwd,
@ApiParam(value = "每页条数,默认10", required = false) @RequestParam(name = "pageSize", required = false, defaultValue = "10") Integer pageSize,
@ApiParam(value = "当前页数", required = false) @RequestParam(name = "pageNo", required = false, defaultValue = "1") Integer pageNo);
@GetMapping("/studentCaseReport/list/account")
public Page<StudentCaseAccountExportVO> studentCaseByAccount(
@ApiParam(value = "查询关键字", required = false) @RequestParam(name = "kwd", required = false) String kwd,
@ApiParam(value = "每页条数,默认10", required = false) @RequestParam(name = "pageSize", required = false, defaultValue = "10") Integer pageSize,
@ApiParam(value = "当前页数", required = false) @RequestParam(name = "pageNo", required = false, defaultValue = "1") Integer pageNo);
@GetMapping("/studentCaseReport/list/account/export")
public Map<String, Object> studentCaseExportByAccount(@ApiParam(value = "查询关键字", required = false) @RequestParam(name = "kwd", required = false) String kwd);
@GetMapping("/studentCaseReport/list/org/export")
public Map<String, Object> studentCaseExportByOrg(@ApiParam(value = "查询关键字", required = false) @RequestParam(name = "kwd", required = false) String kwd);
@GetMapping("/studentCaseReport/list/export")
public Map<String, Object> studentCaseExport(@ApiParam(value = "开始时间(yyyy-mm-dd)", required = false) @RequestParam(name = "startDate", required = false) String startDate,
@ApiParam(value = "结束时间(yyyy-mm-dd)", required = false) @RequestParam(name = "endDate", required = false) String endDate,
@ApiParam(value = "查询关键字", required = false) @RequestParam(name = "kwd", required = false) String kwd);
}
package com.yizhi.library.application.feign;
import com.baomidou.mybatisplus.plugins.Page;
import com.yizhi.library.application.param.CommentParam;
import com.yizhi.library.application.param.InformParam;
import com.yizhi.library.application.vo.CommentReplyVO;
import com.yizhi.library.application.vo.CommentVO;
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 Ding
* @className StudyCaseClient
* @description TODO
* @date 2019/7/12
**/
@FeignClient(name = "caselibrary", contextId = "StudyCaseClient")
public interface StudyCaseClient {
/**
* 学习案例点赞
*
* @param studentCaseId
* @return
*/
@GetMapping("/studentCase/study/admire")
boolean admireStudentCase(@RequestParam("studentCaseId") Long studentCaseId);
/**
* 学习案例取消点赞
*
* @param studentCaseId
* @return
*/
@GetMapping("/studentCase/study/cancelAdmire")
boolean cancelAdmireStudentCase(@RequestParam("studentCaseId") Long studentCaseId);
/**
* 学习案例收藏
*
* @param studentCaseId
* @return
*/
@GetMapping("/studentCase/study/favorite")
boolean favorite(@RequestParam("studentCaseId") Long studentCaseId);
/**
* 学习案例取消收藏
*
* @param studentCaseId
* @return
*/
@GetMapping("/studentCase/study/cancelFavorite")
boolean cancelFavorite(@RequestParam("studentCaseId") Long studentCaseId);
/**
* 学习案例举报
* @param informParam
* @return
*/
@PostMapping("/studentCase/study/inform")
boolean inform(@RequestBody InformParam informParam);
/**
* 发表评论/回复
* @param commentParam
* @return
*/
@PostMapping("/studentCase/study/comment")
boolean comment(@RequestBody CommentParam commentParam);
/**
* 评论点赞
* @param commentId
* @return
*/
@GetMapping("/studentCase/study/comment/admire")
boolean admireComment(@RequestParam("commentId") Long commentId);
/**
* 评论取消点赞
* @param commentId
* @return
*/
@GetMapping("/studentCase/study/comment/cancelAdmire")
boolean cancelAdmireComment(@RequestParam("commentId") Long commentId);
/**
* 获取评论列表
* @param studentCaseId
* @param pageNo
* @param pageSize
* @return
*/
@GetMapping("/studentCase/study/comment/list")
Page<CommentVO> getCommentList(@RequestParam("studentCaseId") Long studentCaseId,
@RequestParam("pageNo") Integer pageNo,
@RequestParam("pageSize") Integer pageSize);
/**
* 获取回复列表
* @param commentId
* @param pageNo
* @param pageSize
* @return
*/
@GetMapping("/studentCase/study/comment/replyList")
Page<CommentReplyVO> getReplyList(@RequestParam("commentId") Long commentId,
@RequestParam("pageNo") Integer pageNo,
@RequestParam("pageSize") Integer pageSize);
}
package com.yizhi.library.application.param;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author Ding
* @className CommentParam
* @description TODO
* @date 2019/7/12
**/
@Data
@ApiModel(value = "CommentParam",description = "评论/回复请求类")
public class CommentParam {
@ApiModelProperty(value = "类型1:评论 2:回复")
private Integer type;
@ApiModelProperty(value = "学员案例id")
private Long studentCaseId;
@ApiModelProperty(value = "评论id")
private Long commentId;
@ApiModelProperty(value = "评论/回复内容")
private String content;
@ApiModelProperty(value = "回复对象id")
private Long replyAccountId;
}
package com.yizhi.library.application.param;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @author Ding
* @className InformParam
* @description TODO
* @date 2019/7/12
**/
@Data
@ApiModel(value = "InformParam", description = "学员案例举报param")
public class ExportAuditListParam {
@ApiModelProperty(value = "学员案例id列表")
private List<Long> studentCaseIds;
@ApiModelProperty(value = "案例活动名称")
private String caseLibraryName;
@ApiModelProperty(value = "所属项目名称")
private String trainingProjectName;
}
package com.yizhi.library.application.param;
import io.swagger.annotations.ApiModel;
import lombok.Data;
import java.util.List;
/**
* @author Ding
* @className HomeListParam
* @description TODO
* @date 2019/7/15
**/
@Data
@ApiModel(value = "HomeListParam",description = "首页配置请求类")
public class HomeListParam {
private Integer pageNo;
private Integer pageSize;
private String key;
List<Long> studentCaseIds;
}
package com.yizhi.library.application.param;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @author Ding
* @className InformParam
* @description TODO
* @date 2019/7/12
**/
@Data
@ApiModel(value = "InformParam",description = "学员案例举报param")
public class InformParam {
@ApiModelProperty(value = "学员案例id")
private Long studentCaseId;
@ApiModelProperty(value = "举报描述")
private String informDescription;
@ApiModelProperty(value = "举报截图")
private List<String> pictureUrlList;
}
package com.yizhi.library.application.param;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @author Ding
* @className ProjectDeleteParam
* @description TODO
* @date 2019/8/21
**/
@Data
@ApiModel(value = "ProjectDeleteParam", description = "培训项目删除活动请求类")
public class ProjectDeleteParam {
private List<Long> ids;
@ApiModelProperty(value = "如果是案例活动,传类型11,以便取消案例活动关联项目")
private Integer type;
}
package com.yizhi.library.application.param;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @author Ding
* @className RelateProjectParam
* @description TODO
* @date 2019/8/12
**/
@Data
@ApiModel(value = "RelateProjectParam",description = "关联培训项目请求类")
public class RelateProjectParam {
@ApiModelProperty(value = "案例活动id")
List<Long> caseLibraryIds;
@ApiModelProperty(value = "培训项目id")
Long projectId;
}
package com.yizhi.library.application.param;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @author Ding
* @className SelectionStudentCaseParam
* @description TODO
* @date 2019/8/13
**/
@Data
@ApiModel(value = "SelectionStudentCaseParam",description = "精选案例搜索请求类")
public class SelectionStudentCaseParam {
@ApiModelProperty(value = "作者或者案例姓名模糊查询")
private String key;
@ApiModelProperty(value = "分类筛选id")
private List<Long> classifyIdList;
@ApiModelProperty("排序类型 1:提交时间由近到远 2:提交时间由远到近 3:学习量由多到少 4:点赞数由多到少 5:评分由高到低")
private Integer sortType;
private Integer pageNo;
private Integer pageSize;
}
package com.yizhi.library.application.param;
import com.yizhi.library.application.vo.StudentCaseDimensionGradeRecordVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @author Ding
* @className StudentCaseAuditParam
* @description TODO
* @date 2019/7/12
**/
@Data
@ApiModel(value = "StudentCaseAuditParam", description = "学生案例,审核/评分提交param")
public class StudentCaseAuditParam {
@ApiModelProperty("是否是管理员评分 1:管理员 不传为非管理员")
private Integer isAdmin;
@ApiModelProperty(value = "学生案例id")
private Long studentCaseId;
@ApiModelProperty(value = "审核是否通过")
private Integer auditState;
@ApiModelProperty(value = "审核反馈")
private String audiEvaluate;
@ApiModelProperty(value = "评分")
private Integer score;
@ApiModelProperty(value = "批量审核/评分案例id")
private List<Long> idList;
@ApiModelProperty(value = "多维度打分,无值按照以前处理,有值按照多维度打分处理")
private List<StudentCaseDimensionGradeRecordVO> studentCaseDimensionGradeRecordVOS;
}
package com.yizhi.library.application.param;
import com.yizhi.library.application.vo.AccessoryUrlVO;
import com.yizhi.library.application.vo.StudentCaseRelatedClassifyVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
* @author Ding
* @className StudentCaseVO
* @description TODO
* @date 2019/7/9
**/
@Data
@ApiModel(value = "StudentCase", description = "学生案例vo")
public class StudentCaseParam {
@ApiModelProperty("如果是管理端代提交,提交人id")
private Long submitterId;
@ApiModelProperty(value = "关联分类list")
private List<StudentCaseRelatedClassifyVO> relatedClassifyList;
@ApiModelProperty(value = "提交类型 0:保存 1:提交 2:管理端修改保存 3:管理端修改上架")
private Integer type;
@ApiModelProperty(value = "附件url")
private List<AccessoryUrlVO> accessoryUrlList;
@ApiModelProperty(value = "外部文档文件名")
private String pdfFileName;
@ApiModelProperty("关键字数组")
private List<String> keywordsList;
private Long id;
private String title;
@ApiModelProperty(value = "关联案列活动id")
private Long caseLibraryId;
private Long accountId;
@ApiModelProperty(value = "学员案例封面url")
private String logoUrl;
@ApiModelProperty("关键字")
private String keywords;
@ApiModelProperty("得分规则")
private Integer scoreRule;
@ApiModelProperty(value = "文本提交类型 1:富文本编辑 2:附件上传")
private Integer textEditType;
@ApiModelProperty(value = "学员案例内容")
private String content;
@ApiModelProperty(value = "学员案例内容")
private String contentFileName;
@ApiModelProperty(value = "外部文档上传阿里云url")
private String pdfOssUrl;
@ApiModelProperty(value = "附件url")
private String accessoryUrl;
@ApiModelProperty(value = "评分状态 0:待评分 1:已评分")
private Integer scoreState;
@ApiModelProperty(value = "是否完成所有评分 0:未完成 1:已完成")
private Integer isFinishedScore;
@ApiModelProperty(value = "得分")
private Integer score;
@ApiModelProperty(value = "学员端显示类型 1:通过后自动上架, 2:通过需要手动上架")
private Integer examine;
@ApiModelProperty(value = "举报状态 0:未举报 1:被举报")
private Integer informState;
@ApiModelProperty(value = "审核状态0:待审核 1:审核通过 2:审核不通过")
private Integer auditState;
@ApiModelProperty(value = "审核反馈")
private String auditEvaluate;
@ApiModelProperty(value = "审核人是否可修改分类 0:不可修改 1:可修改")
private Integer auditorAuthorize;
@ApiModelProperty(value = "可见范围类型 1:全平台可见 2:指定范围")
private Integer visibleRange;
@ApiModelProperty(value = "0:删除,1:提交待审核,2:上架,3:下架,4草稿")
private Integer state;
@ApiModelProperty(value = "审核时间")
private Date auditTime;
@ApiModelProperty(value = "提交时间")
private Date submitTime;
@ApiModelProperty(value = "最近修改时间")
private Date lastModifyTime;
@ApiModelProperty(value = "代提交人id")
private Long diplomaticAgentId;
private Long createById;
private String createByName;
private Date createTime;
private Long updateById;
private String updateByName;
private Date updateTime;
private Long companyId;
private Long siteId;
private Long orgId;
private Long readNum;
private Long admireNum;
}
package com.yizhi.library.application.param;
import com.yizhi.library.application.vo.StudentCaseRelatedClassifyVO;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @author Ding
* @className UpdateCaseRelatedClassifyParam
* @description TODO
* @date 2019/12/5
**/
@Data
@ApiModel(value = "StudentCase", description = "修改学生案例关联分类请求类")
public class UpdateCaseRelatedClassifyParam {
@ApiModelProperty("学员案例id")
private Long studentCaseId;
@ApiModelProperty(value = "关联分类list")
private List<StudentCaseRelatedClassifyVO> relatedClassifyList;
}
package com.yizhi.library.application.vo;
import java.util.Date;
import java.util.List;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.enums.FieldFill;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author Ding
* @className AccessoryUrlVO
* @description TODO
* @date 2019/7/10
**/
@Data
@ApiModel(value = "AccessoryUrlVO", description = "附件VO")
public class AccessoryUrlVO {
@ApiModelProperty(value = "文件大小")
private String fileSize;
@ApiModelProperty(value = "附件url")
private String url;
@ApiModelProperty(value = "前端需要回显")
private String uid;
@ApiModelProperty(value = "pdf图片")
private List<PdfPages> pdfPages;
private Long id;
private String name;
@ApiModelProperty(value = "0:维度, 1:一级分类 2:二级分类")
private Integer level;
@ApiModelProperty(value = "分类描述")
private String description;
@ApiModelProperty(value = "父级id 0为维度没有父级")
private Long parentId;
@ApiModelProperty(value = "分类排序")
private Integer sort;
private Long createById;
private String createByName;
private Date createTime;
private Long updateById;
private String updateByName;
private Date updateTime;
private Long companyId;
private Long siteId;
private Long orgId;
@ApiModelProperty(value = "(0:删除, 1:上架, 2:下架)")
private Integer state;
}
package com.yizhi.library.application.vo;
import lombok.Data;
import java.util.List;
import java.util.Map;
/**
* @author Ding
* @className AccountMapVO
* @description TODO
* @date 2019/7/15
**/
@Data
public class AccountMapVO {
List<Long> accountIds;
Map<Long, ReportAccountRespVO> accountMap;
}
package com.yizhi.library.application.vo;
import com.baomidou.mybatisplus.annotations.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* <p>
* 原创活动多维度打分设置
* </p>
*
* @author shengchenglong123
* @since 2020-08-05
*/
@Data
@ApiModel(value = "CaseLibraryDimensionGradeVO", description = "整体不传为删除该条维度")
public class CaseLibraryDimensionGradeVO{
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "id, 不传为新增,传递为修改")
private Long id;
@ApiModelProperty(value = "维度名称")
private String name;
@ApiModelProperty(value = "分值区间左值")
@TableField("min_score")
private Integer minScore;
@ApiModelProperty(value = "分值区间右值")
@TableField("max_score")
private Integer maxScore;
@ApiModelProperty(value = "排序")
private Integer sort;
@ApiModelProperty("已经获得的分值")
private Integer score;
}
package com.yizhi.library.application.vo;
import com.baomidou.mybatisplus.annotations.TableField;
import com.yizhi.library.application.enums.ProductCoverEnums;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
* @author Ding
* @className CaseLibraryVO
* @description TODO
* @date 2019/7/5
**/
@Data
@ApiModel(value = "CaseLibraryVO", description = "案例活动VO")
public class CaseLibraryVO {
@ApiModelProperty(value = "分类维度列表")
private List<Long> classifyIdList;
@ApiModelProperty(value = "关联项目名称")
private String trainingProjectName;
@ApiModelProperty(value = "案例活动截止时间")
private Date endTime;
@ApiModelProperty(value = "我的列表进行中数量")
private Integer inProgressNum;
@ApiModelProperty(value = "我的列表已完成数量")
private Integer finishNum;
@ApiModelProperty(value = "是否必须提交0:不必须提交 1:必须提交")
private Integer isMustSubmit;
@ApiModelProperty(value = "保存或者上架类型1,不传是下一步")
private Integer type;
@ApiModelProperty(value = "多维度评分VO列表")
private List<CaseLibraryDimensionGradeVO> caseLibraryDimensionGradeVOS;
@ApiModelProperty("是否显示打分:0否,1是")
private Integer showScore;
@ApiModelProperty(value = "评分说明")
private String caseLibraryDimensionGradeDescription;
private Long id;
private String name;
@ApiModelProperty(value = "封面图片url")
@TableField("logo_url")
private String logoUrl;
@ApiModelProperty("开始时间")
private Date startTime;
@ApiModelProperty("可见范围类型 1:全平台可见 2:指定范围")
private Integer visibleRange;
@ApiModelProperty(value = "培训项目id")
private Long trainingProjectId;
@ApiModelProperty(value = "案例要求")
private String explanation;
@ApiModelProperty(value = "文本编辑形式:1文本编辑框, 2导入外部文档格式doc docx pdf")
private Integer textEditType;
@ApiModelProperty(value = "必须提交人导入附件阿里云地址")
private String submitterUrl;
@ApiModelProperty(value = "必须提交人导入附件名称")
private String submitterAccessName;
@ApiModelProperty(value = "审核人导入附件阿里云地址")
private String auditorUrl;
@ApiModelProperty(value = "审核人导入附件名称")
private String auditorAccessName;
@ApiModelProperty("审核人权限 0:不允许修改分类 1:允许修改分类")
private Integer auditorAuthorize;
@ApiModelProperty(value = "评分人导入附件阿里云地址")
private String scorerUrl;
@ApiModelProperty(value = "评分人导入附件名称")
private String scorerAccessName;
@ApiModelProperty(value = "通过审核后 获得积分")
private Integer point;
@ApiModelProperty(value = "学员端显示类型 1:通过后自动上架, 2:通过需要手动上架")
private Integer examine;
private Long createById;
private String createByName;
private Date createTime;
private Long updateById;
private String updateByName;
private Date updateTime;
private Long companyId;
private Long siteId;
private Long orgId;
@ApiModelProperty(value = "0:删除,1:草稿,2:上架,3:下架")
private Integer state;
@ApiModelProperty("得分规则 1:平均分 2:最高分 3:任意一人得分 4:多维度打分")
private Integer scoreRule;
@ApiModelProperty("是否可修改得分规则 0:不可修改 1:可修改")
private Integer canModifyScoreRule;
@ApiModelProperty(value = "作品封面是否必填 80:必填 默认; 40:非必填")
private Integer productCover = ProductCoverEnums.PRODUCT_COVER_ON.getType();
}
package com.yizhi.library.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* @author Ding
* @className StudentCaseAuthorizeVO
* @description TODO
* @date 2019/8/5
**/
@Data
@ApiModel(value = "StudentCaseAuthorize", description = "可见范围vo类")
public class CaselibraryAuthorizeVO {
@ApiModelProperty("用户姓名")
private String accountFullName;
@ApiModelProperty("工号")
private String workNum;
@ApiModelProperty(value = "主键")
private Long id;
@ApiModelProperty(value = "学员案例_ID,外键")
private Long caseLibraryId;
@ApiModelProperty(value = "1:用户 、2:组织")
private Integer type;
@ApiModelProperty(value = "存放人或组织的ID")
private Long relationId;
@ApiModelProperty(value = "角色名称")
private String name;
@ApiModelProperty(value = "0删除 1有效,默认有效")
private Integer state;
@ApiModelProperty(value = "创建时间")
private Date createTime;
@ApiModelProperty(value = "创建人ID")
private Long createById;
@ApiModelProperty(value = "创建人姓名")
private String createByName;
@ApiModelProperty(value = "修改时间")
private Date updateTime;
@ApiModelProperty(value = "修改人ID")
private Long updateById;
@ApiModelProperty(value = "修改人姓名")
private String updateByName;
}
package com.yizhi.library.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @author Ding
* @className ClassifyListVO
* @description TODO
* @date 2019/7/4
**/
@Data
@ApiModel(value = "CaseLibrary", description = "一级分类列表类,包含二级分类列表")
public class ClassifyLevelOneVO extends ClassifyVO{
@ApiModelProperty(value = "是否选择 0:未选中 1:选中")
Integer chooseState;
@ApiModelProperty(value = "二级分类列表")
List<ClassifyVO> children;
@ApiModelProperty(value = "索引")
String key;
@ApiModelProperty(value = "少波需要,跟name值一样")
private String label;
@ApiModelProperty(value = "少波需要,跟id值一样")
private Long value;
@ApiModelProperty(value = "是否可删除 0:不可删除 1:可删除")
private Integer canDelete;
@ApiModelProperty("置灰状态 0:置灰 1:不置灰")
private Integer showState;
private String name;
private Long id;
private Integer state;
}
package com.yizhi.library.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
* @author Ding
* @className ClassifyListVO
* @description TODO
* @date 2019/7/4
**/
@Data
@ApiModel(value = "Classify", description = "分类列表vo")
public class ClassifyListVO extends ClassifyVO {
List<ClassifyLevelOneVO> children;
@ApiModelProperty(value = "学员案例每个维度关联分类主体id(修改关联分类id时候用)")
Long studentCaseRelatedClassifyId;
@ApiModelProperty(value = "该维度下选择的分类id 包括一级,二级")
List<Long> selectList;
@ApiModelProperty(value = "是否可删除 0:不可删除 1:可删除")
Integer canDelete;
private Long id;
private String name;
@ApiModelProperty(value = "0:维度, 1:一级分类 2:二级分类")
private Integer level;
@ApiModelProperty(value = "分类描述")
private String description;
@ApiModelProperty(value = "父级id 0为维度没有父级")
private Long parentId;
@ApiModelProperty(value = "分类排序")
private Integer sort;
private Long createById;
private String createByName;
private Date createTime;
private Long updateById;
private String updateByName;
private Date updateTime;
private Long companyId;
private Long siteId;
private Long orgId;
@ApiModelProperty(value = "(0:删除, 1:上架, 2:下架)")
private Integer state;
}
package com.yizhi.library.application.vo;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.enums.FieldFill;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* @author Ding
* @className ClassifyVO
* @description TODO
* @date 2019/7/8
**/
@Data
@ApiModel(value = "CaseLibraryVO", description = "案例活动VO")
public class ClassifyVO {
@ApiModelProperty(value = "是否选择 0:未选中 1:选中")
Integer chooseState;
@ApiModelProperty(value = "临时索引,前端需要")
String key;
@ApiModelProperty(value = "分类id别名,便于前端使用")
Long classifyId;
@ApiModelProperty(value = "分类名称别名,便于前端使用")
String classifyName;
@ApiModelProperty(value = "少波需要,跟name值一样")
private String label;
@ApiModelProperty(value = "少波需要,跟id值一样")
private Long value;
@ApiModelProperty(value = "是否可删除 0:不可删除 1:可删除")
private Integer canDelete;
@ApiModelProperty("置灰状态 0:置灰 1:不置灰")
private Integer showState;
private Long id;
private String name;
@ApiModelProperty(value = "0:维度, 1:一级分类 2:二级分类")
private Integer level;
@ApiModelProperty(value = "分类描述")
private String description;
@ApiModelProperty(value = "父级id 0为维度没有父级")
@TableField("parent_id")
private Long parentId;
@ApiModelProperty(value = "分类排序")
private Integer sort;
@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("company_id")
private Long companyId;
@TableField("site_id")
private Long siteId;
@TableField("org_id")
private Long orgId;
@ApiModelProperty(value = "(0:删除, 1:上架, 2:下架)")
private Integer state;
}
package com.yizhi.library.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* @author Ding
* @className CommentReplyVO
* @description TODO
* @date 2019/7/15
**/
@Data
@ApiModel(value = "CommentReply", description = "评论回复vo")
public class CommentReplyVO {
@ApiModelProperty(value = "前端需要key值")
private String key;
@ApiModelProperty(value = "回复人头像")
private String headPortrait;
@ApiModelProperty(value = "回复人用户名")
private String commenterName;
@ApiModelProperty(value = "回复人姓名")
private String commenterFullName;
@ApiModelProperty(value = "被回复人用户名")
private String replyAccountName;
@ApiModelProperty(value = "被回复人姓名")
private String replyAccountFullName;
private Long Id;
@ApiModelProperty(value = "评论id")
private Long commentId;
@ApiModelProperty(value = "回复人id(评论人或者回复人)")
private Long commenterId;
@ApiModelProperty(value = "被回复人id")
private Long replyAccountId;
@ApiModelProperty(value = "回复内容")
private String content;
private Long createById;
private String createByName;
private Date createTime;
private Long updateById;
private String updateByName;
private Date updateTime;
@ApiModelProperty(value = "0:删除 1:未删除")
private Integer state;
}
package com.yizhi.library.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
* @author Ding
* @className CommentVO
* @description TODO
* @date 2019/7/12
**/
@Data
@ApiModel(value = "CommentVO", description = "评论VO")
public class CommentVO {
@ApiModelProperty(value = "序号")
private Integer index;
@ApiModelProperty(value = "前端需要key值")
private String key;
@ApiModelProperty(value = "是否点赞 0:未点赞 >0已点赞点赞")
private Integer isAdmire;
@ApiModelProperty(value = "评论人头像")
private String headPortrait;
@ApiModelProperty(value = "评论人用户名")
private String commenterUserName;
@ApiModelProperty(value = "评论人姓名")
private String commenterFullName;
@ApiModelProperty(value = "评论回复数")
private Integer replyNum;
@ApiModelProperty(value = "评论点赞数")
private Integer admireNum;
@ApiModelProperty(value = "被回复人id")
private Long replyAccountId;
@ApiModelProperty(value = "被回复人姓名")
private String replyAccountFullName;
@ApiModelProperty(value = "评论回复列表")
private List<CommentReplyVO> children;
private Long Id;
@ApiModelProperty(value = "评论人id")
private Long accountId;
@ApiModelProperty(value = "学员案例id")
private Long studentCaseId;
@ApiModelProperty(value = "评论内容")
private String content;
private Long createById;
private String createByName;
private Date createTime;
private Long updateById;
private String updateByName;
private Date updateTime;
private Long companyId;
private Long siteId;
private Long orgId;
@ApiModelProperty(value = "0:删除 1:未删除")
private Integer state;
}
package com.yizhi.library.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* @author Ding
* @className FavoriteVO
* @description TODO
* @date 2019/8/7
**/
@Data
@ApiModel(value = "FavoriteVO", description = "我的收藏类")
public class FavoriteVO {
@ApiModelProperty(value = "收藏记录id")
private Long favoriteId;
@ApiModelProperty(value = "学员案例id")
private Long studentCaseId;
@ApiModelProperty(value = "学员案例名称")
private String studentCaseTittle;
@ApiModelProperty(value = "封面logo")
private String studentCaseLogoUrl;
@ApiModelProperty(value = "提交时间")
private Date submitTime;
@ApiModelProperty(value = "作者id")
private Long authorId;
@ApiModelProperty(value = "作者姓名")
private String authorFullName;
@ApiModelProperty(value = "学习量")
private Integer studyNum;
@ApiModelProperty(value = "点赞量")
private Integer admireNum;
@ApiModelProperty(value = "举报数")
private Integer informNum;
@ApiModelProperty(value = "得分")
private Integer score;
@ApiModelProperty(value = "是否是本人")
private boolean self = false;
}
package com.yizhi.library.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author Ding
* @className ImportVO
* @description TODO
* @date 2019/7/8
**/
@Data
@ApiModel(value = "ImportVO", description = "导入vo类")
public class ImportVO {
@ApiModelProperty("行数")
private Integer rowNum;
@ApiModelProperty("必须提交人用户名/审核人用户名/评分人用户名")
private String name;
@ApiModelProperty("被审核人用户名/被评分人用户名")
private String accountName;
}
package com.yizhi.library.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
* @author Ding
* @className InformVO
* @description 案例举报vo
* @date 2019/7/31
**/
@Data
@ApiModel(value = "InformVO",description = "案例举报vo")
public class InformVO {
@ApiModelProperty(value = "举报人id")
private Long informerId;
@ApiModelProperty(value = "举报人姓名")
private String informerFullName;
@ApiModelProperty(value = "举报理由")
private String informDescription;
@ApiModelProperty(value = "举报截图组成一个字符串")
private String pictureUrl;
@ApiModelProperty(value = "举报截图")
private List<String> pictureUrlList;
@ApiModelProperty(value = "举报时间")
private Date informTime;
}
package com.yizhi.library.application.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @Date 2020/9/29 7:13 下午
* @Author lvjianhui
**/
@Data
public class PdfPages {
private Long id;
@ApiModelProperty(value = "页数")
private Integer pdfPage;
@ApiModelProperty(value = "业务id")
private Long bizId;
@ApiModelProperty(value = "业务类型")
private Integer bizType;
@ApiModelProperty(value = "图片地址")
private String imageUrl;
}
package com.yizhi.library.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
import java.util.Map;
/**
* @author Ding
* @className RangeAccountsVO
* @description TODO
* @date 2019/7/25
**/
@Data
@ApiModel(value = "RangeAccountsVO", description = "模糊查询/管辖区查询用户信息返回类")
public class RangeAccountsVO {
@ApiModelProperty(name = "是否是全站点用户")
Boolean isAllAccount;
@ApiModelProperty(name = "筛选出的用户id")
List<Long> accountIds;
@ApiModelProperty(name = "筛选出的用户map")
Map<Long, ReportAccountRespVO> accountMap;
}
package com.yizhi.library.application.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
* @Date 2020/9/23 9:28 下午
* @Author lvjianhui
**/
@Data
public class ReportAccountRespVO {
@ApiModelProperty("用户id")
private Long userId;
@ApiModelProperty("头像")
private String headPortrait;
@ApiModelProperty("用户名")
private String userName;
@ApiModelProperty("用户姓名")
private String userFullName;
@ApiModelProperty("部门id")
private Long orgId;
@ApiModelProperty("部门名称")
private String orgName;
@ApiModelProperty("部门code")
private String orgCode;
@ApiModelProperty("用户状态:1:启用,0:停用")
private Integer status;
@ApiModelProperty("创建时间")
private Date createTime;
@ApiModelProperty("账户邮箱")
private String email;
@ApiModelProperty("企业id")
private Long companyId;
@ApiModelProperty("父节组织名称")
private List<String> parentOrgNames;
@ApiModelProperty("工号")
private String workNum;
private String mobile;
@ApiModelProperty("职位")
private String position;
}
package com.yizhi.library.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.apache.commons.lang3.math.NumberUtils;
import java.math.RoundingMode;
import java.util.Date;
/**
* @author Ding
* @className SelectionCaseVO
* @description TODO
* @date 2019/7/30
**/
@Data
@ApiModel(value = "SelectionCaseListVO", description = "精选案例管理列表VO")
public class SelectionCaseListVO {
@ApiModelProperty(value = "学员案例id")
private Long id;
@ApiModelProperty(value = "学员案例名称")
private String tittle;
@ApiModelProperty(value = "案例活动名称")
private String caseLibraryName;
private Long caseLibraryId;
@ApiModelProperty(value = "用户id")
private Long accountId;
@ApiModelProperty(value = "用户名")
private String accountName;
@ApiModelProperty(value = "姓名")
private String accountFullName;
@ApiModelProperty(value = "提交时间")
private Date submitTime;
@ApiModelProperty(value = "得分")
private Integer score;
@ApiModelProperty(value = "状态")
private String state;
private Integer scoreRule;
@ApiModelProperty("多维度评分")
private Double dimensionScore;
@ApiModelProperty(value = "作品封面是否必填 80:必填 默认; 40:非必填")
private Integer productCover;
public Double getDimensionScore() {
if (this.dimensionScore != null) {
this.dimensionScore = NumberUtils.toScaledBigDecimal(dimensionScore, 2, RoundingMode.HALF_UP).doubleValue();
}
return this.dimensionScore;
}
}
package com.yizhi.library.application.vo;
import com.baomidou.mybatisplus.annotations.TableField;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
@Data
public class StatisticStudentCaseVO {
private static final long serialVersionUID = 1L;
private Long id;
/**
*学员案例id
*/
@ApiModelProperty(value = "学员案例id")
private Long studentCaseId;
/**
* 标题
*/
@ApiModelProperty(value = "标题")
private String title;
/**
* 用户id
*/
@ApiModelProperty(value = "用户id")
private Long accountId;
/**
* 账号名称
*/
@ApiModelProperty(value = "账号名称")
private String accountName;
/**
* 姓名
*/
@ApiModelProperty(value = "姓名")
private String fullName;
/**
* 提交时间
*/
@ApiModelProperty(value = "提交时间")
private Date time;
/**
* 用户状态
*/
@ApiModelProperty(value = "用户状态")
@TableField("state")
private String state;
/**
* 获赞数
*/
@ApiModelProperty(value = "获赞数")
private Long upNum;
/**
* 举报数
*/
@ApiModelProperty(value = "举报数")
@TableField("inform_num")
private Long informNum;
/**
* 学习量
*/
@ApiModelProperty(value = "学习量")
private Long studyNum;
/**
* 企业id
*/
@ApiModelProperty(value = "企业id")
private Long companyId;
/**
* 站点id
*/
@ApiModelProperty(value = "站点id")
private Long siteId;
/**
* 部门id
*/
@ApiModelProperty(value = "部门id")
private Long orgId;
@ApiModelProperty(value = "所属部门")
private String orgName;
@ApiModelProperty(value = "所在组织架构")
private String orgNames;
/**
* 创建时间
*/
@ApiModelProperty(value = "创建时间")
private Date createTime;
}
package com.yizhi.library.application.vo;
import com.baomidou.mybatisplus.annotations.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
@Data
@ApiModel(value = "StudentCaseAccountExportVO", description = "按用户统计学 员案例导出报表信息")
public class StudentCaseAccountExportVO {
private Long id;
/**
* 用户id
*/
@ApiModelProperty(value = "用户id")
@TableField("account_id")
private Long accountId;
/**
* 用户名
*/
@ApiModelProperty(value = "用户名")
@TableField("account_name")
private String accountName;
/**
* 姓名
*/
@ApiModelProperty(value = "姓名")
@TableField("full_name")
private String fullName;
/**
*职务
*/
@ApiModelProperty(value = "职务")
@TableField("position")
private String position;
/**
* 部门id
*/
@ApiModelProperty(value = "部门id")
@TableField("org_id")
private Long orgId;
/**
* 部门名称
*/
@ApiModelProperty(value = "部门名称")
@TableField("org_name")
private String orgName;
/**
* 父部门/当前部门
*/
@ApiModelProperty(value = " 父部门/当前部门")
@TableField("org_names")
private String orgNames;
/**
* 必须提交数
*/
@ApiModelProperty(value = "必须提交数")
@TableField("must_submit_num")
private Long mustSubmitNum;
/**
* 实际提交数
*/
@ApiModelProperty(value = "实际提交数")
@TableField("submit_num")
private Long submitNum;
/**
* 精选案例数
*/
@ApiModelProperty(value = "精选案例数")
@TableField("case_num")
private Long caseNum;
/**
* 点赞数
*/
@ApiModelProperty(value = "点赞数")
@TableField("ups")
private Long ups;
/**
* 获赞数
*/
@ApiModelProperty(value = "获赞数")
@TableField("up_num")
private Long upNum;
/**
* 举报数
*/
@ApiModelProperty(value = "举报数")
@TableField("informs")
private Long informs;
/**
* 举报数
*/
@ApiModelProperty(value = "被举报数")
@TableField("inform_num")
private Long informNum;
/**
* 学习量
*/
@ApiModelProperty(value = "学习量")
@TableField("study_num")
private Long studyNum;
/**
* 用户状态
*/
@ApiModelProperty(value = "用户状态")
@TableField("status")
private String status;
/**
* 待审核数
*/
@ApiModelProperty(value = "待审核数")
@TableField("audit_num")
private Long auditNum;
/**
* 不通过数
*/
@ApiModelProperty(value = "不通过数")
@TableField("no_audit_num")
private Long noAuditNum;
/**
* 待评分数
*/
@ApiModelProperty(value = "待评分数")
@TableField("no_score_num")
private Long noScoreNum;
/**
* 已评分数
*/
@ApiModelProperty(value = "已评分数")
@TableField("score_num")
private Long scoreNum;
/**
*企业id
*/
@ApiModelProperty(value = "企业id")
@TableField("company_id")
private Long companyId;
/**
* 站点id
*/
@ApiModelProperty(value = "站点id")
@TableField("site_id")
private Long siteId;
/**
* 创建时间
*/
@ApiModelProperty(value = "创建时间")
@TableField("create_time")
private Date createTime;
/**
* 需提交数
*/
@ApiModelProperty(value = "需提交数")
private Long needSubmitNum;
}
package com.yizhi.library.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* @author Ding
* @className StudentCaseAuthorizeVO
* @description TODO
* @date 2019/8/5
**/
@Data
@ApiModel(value = "StudentCaseAuthorize", description = "可见范围vo类")
public class StudentCaseAuthorizeVO {
@ApiModelProperty("用户姓名")
private String accountFullName;
@ApiModelProperty("工号")
private String workNum;
@ApiModelProperty(value = "主键")
private Long id;
@ApiModelProperty(value = "学员案例_ID,外键")
private Long studentCaseId;
@ApiModelProperty(value = "1:用户 、2:组织")
private Integer type;
@ApiModelProperty(value = "存放人或组织的ID")
private Long relationId;
@ApiModelProperty(value = "角色名称")
private String name;
@ApiModelProperty(value = "0删除 1有效,默认有效")
private Integer state;
@ApiModelProperty(value = "创建时间")
private Date createTime;
@ApiModelProperty(value = "创建人ID")
private Long createById;
@ApiModelProperty(value = "创建人姓名")
private String createByName;
@ApiModelProperty(value = "修改时间")
private Date updateTime;
@ApiModelProperty(value = "修改人ID")
private Long updateById;
@ApiModelProperty(value = "修改人姓名")
private String updateByName;
}
package com.yizhi.library.application.vo;
import com.baomidou.mybatisplus.annotations.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* <p>
*
* </p>
*
* @author shengchenglong123
* @since 2020-08-05
*/
@Data
@ApiModel(value = "StudentCaseDimensionGradeRecord", description = "给学员进行维度打分")
public class StudentCaseDimensionGradeRecordVO {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "必传:维度id")
private Long caseLibraryDimensionGradeId;
@ApiModelProperty(value = "维度名称")
private String name;
@ApiModelProperty(value = "评分说明")
private String description;
@ApiModelProperty(value = "分值区间左值")
@TableField("min_score")
private Integer minScore;
@ApiModelProperty(value = "分值区间右值")
@TableField("max_score")
private Integer maxScore;
@ApiModelProperty(value = "必传:得分")
private Integer score;
}
package com.yizhi.library.application.vo;
import java.util.Date;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "StudentCaseExportVO", description = "学员案例导出报表信息")
public class StudentCaseExportVO {
/**
* id
*/
@ApiModelProperty(value = "id")
private Long id;
/**
* 标题
*/
@ApiModelProperty(value = "标题")
private String title;
/**
* 用户id
*/
@ApiModelProperty(value = "用户id")
private Long accountId;
/**
* 用户名
*/
@ApiModelProperty(value = "用户名")
private String accountName;
/**
* 姓名
*/
@ApiModelProperty(value = "姓名")
private String fullName;
/**
* 提交时间
*/
@ApiModelProperty(value = "提交时间")
private Date time;
/**
* 状态
*/
@ApiModelProperty(value = "状态")
private String state;
/**
* 获赞数
*/
@ApiModelProperty(value = "获赞数")
private Long upNum;
/**
* 举报数
*/
@ApiModelProperty(value = "举报数")
private Long informNum;
/**
* 学习量
*/
@ApiModelProperty(value = "学习量")
private Long studyNum;
}
package com.yizhi.library.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
* @author Ding
* @className StudentCaseMangeListVO
* @description
* @date 2019/7/25
**/
@Data
@ApiModel(value = "StudentCaseMangeListVO",description = "学员案例管理列表vo")
public class StudentCaseManageListVO {
@ApiModelProperty(value = "学员案例id")
private Long studentCaseId;
@ApiModelProperty(value = "学员案例标题")
private String studentCaseTitle;
@ApiModelProperty(value = "案例活动id")
private Long caseLibraryId;
@ApiModelProperty(value = "案例活动名称")
private String caseLibraryName;
@ApiModelProperty(value = "作者id")
private Long accountId;
@ApiModelProperty(value = "作者用户名")
private String accountName;
@ApiModelProperty(value = "作者姓名")
private String accountFullName;
@ApiModelProperty(value = "作者所属部门id")
private Long orgId;
@ApiModelProperty(value = "作者所属部门")
private String orgName;
@ApiModelProperty(value = "提交时间")
private Date submitTime;
@ApiModelProperty(value = "审核时间")
private Date auditTime;
@ApiModelProperty(value = "审核人id")
private List<Long> auditorIds;
@ApiModelProperty(value = "审核人姓名(前端显示)")
private String auditorFullNames;
@ApiModelProperty(value = "评分人id")
private List<Long> scorerIds;
@ApiModelProperty(value = "得分人姓名(前端显示)")
private String scorerFullNames;
@ApiModelProperty(value = "举报记录id")
private Long informRecordId;
@ApiModelProperty(value = "举报人id")
private Long informerId;
@ApiModelProperty(value = "举报人姓名")
private String informerFullName;
@ApiModelProperty(value = "举报时间")
private Date informTime;
@ApiModelProperty(value = "第几条数据,上一条下一条需要")
private Integer number;
@ApiModelProperty(value = "举报内容")
private String informDescription;
@ApiModelProperty(value = "待审核记录数")
private Integer waitAuditNumber;
@ApiModelProperty(value = "待评分记录数")
private Integer waitScoreNumber;
@ApiModelProperty(value = "审核状态(内部逻辑处理使用)")
private Integer auditState;
@ApiModelProperty(value = "评分状态(内部逻辑处理使用)")
private Integer scoreState;
@ApiModelProperty(value = "案例状态(前端显示)")
private String state;
@ApiModelProperty(value = "操作状态 1:审核,评分 2:审核")
private Integer handleType;
@ApiModelProperty(value = "第几条数据(临时索引,审核,评分需要)")
private Integer Number;
@ApiModelProperty(value = "学员案例关联分类")
private List<StudentRelatedClassifyVO> relatedClassifyList;
private Integer scoreRule;
}
package com.yizhi.library.application.vo;
import com.baomidou.mybatisplus.annotations.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
@Data
@ApiModel(value = "StudentCaseOrgExportVO", description = "按部门统计学 员案例导出报表信息")
public class StudentCaseOrgExportVO {
private Long id;
/**
* 部门id
*/
@ApiModelProperty(value = "部门id")
@TableField("org_id")
private Long orgId;
/**
* 部门名称
*/
@ApiModelProperty(value = "部门名称")
@TableField("org_name")
private String orgName;
/**
* 提交数
*/
@ApiModelProperty(value = "提交数")
@TableField("submit_num")
private Long submitNum;
/**
* 待审核数
*/
@ApiModelProperty(value = "待审核数")
@TableField("audit_num")
private Long auditNum;
/**
* 不通过数
*/
@ApiModelProperty(value = "不通过数")
@TableField("no_audit_num")
private Long noAuditNum;
/**
* 未评分数
*/
@ApiModelProperty(value = "未评分数")
@TableField("no_score_num")
private Long noScoreNum;
/**
* 已评分数
*/
@ApiModelProperty(value = "已评分数")
@TableField("score_num")
private Long scoreNum;
/**
* 精选案例数
*/
@ApiModelProperty(value = "精选案例数")
@TableField("case_num")
private Long caseNum;
/**
* 点赞数
*/
@ApiModelProperty(value = "点赞数")
@TableField("up_num")
private Long upNum;
/**
* 学习量
*/
@ApiModelProperty(value = "学习量")
@TableField("study_num")
private Long studyNum;
/**
* 企业id
*/
@ApiModelProperty(value = "企业id")
@TableField("company_id")
private Long companyId;
/**
* 站点id
*/
@ApiModelProperty(value = "站点id")
@TableField("site_id")
private Long siteId;
/**
* 创建时间
*/
@ApiModelProperty(value = "创建时间")
@TableField("create_time")
private Date createTime;
}
package com.yizhi.library.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @author Ding
* @className StudentCaseRecordListVO
* @description TODO
* @date 2019/7/10
**/
@Data
@ApiModel(value = "StudentCaseRecordListVO", description = "案例记录列表VO")
public class StudentCaseRecordListVO {
@ApiModelProperty(value = "案例活动名称")
private String caseLibraryName;
@ApiModelProperty(value = "案例活动要求")
private String explanation;
@ApiModelProperty(value = "学员案例记录列表")
List<StudentCaseRecordVO> studentCaseRecordList;
@ApiModelProperty("学员案例状态 0:已过期 1:待提交 2:待审核 3:(审核通过)待评分 4:(审核通过)已评分 5:审核不通过")
private Integer state;
@ApiModelProperty("案例活动状态 1:未过期 2:已过期")
private Integer caseLibraryState;
}
package com.yizhi.library.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* @author Ding
* @className StudentCaseRecordVO
* @description TODO
* @date 2019/7/10
**/
@Data
@ApiModel(value = "StudentCaseRecordVO", description = "案例记录VO")
public class StudentCaseRecordVO {
@ApiModelProperty(value = "学员案例id")
private Long studentCaseId;
@ApiModelProperty(value = "学员案例主题")
private String title;
@ApiModelProperty(value = "学员案例logourl")
private String logoUrl;
@ApiModelProperty(value = "最近修改时间")
private Date lastModifyTime;
@ApiModelProperty("案例活动开始时间")
private Date startTime;
@ApiModelProperty("案例活动截止时间")
private Date endTime;
@ApiModelProperty("学员案例状态 0:已过期 1:待提交 2:待审核 3:(审核通过)待评分 4:(审核通过)已评分 5:审核不通过")
private Integer state;
}
package com.yizhi.library.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
* <p>
* 学生案例关联分类表
* </p>
*
* @author dingxiaowei123
* @since 2019-07-09
*/
@Data
@ApiModel(value = "StudentCaseRelatedClassify", description = "学生案例关联分类表")
public class StudentCaseRelatedClassifyVO {
private static final long serialVersionUID = 1L;
private Long id;
@ApiModelProperty(value = "学生案例id")
private Long studentCaseId;
@ApiModelProperty(value = "一级或者二级,分类id")
private Long classifyId;
@ApiModelProperty(value = "1:一级分类 2:二级分类")
private Integer level;
@ApiModelProperty(value = "父级分类id")
private Long classifyParentId;
@ApiModelProperty(value = "维度id")
private Long rootId;
private Long createById;
private String createByName;
private Date createTime;
private Long updateById;
private String updateByName;
private Date updateTime;
private Long companyId;
private Long siteId;
private Long orgId;
@ApiModelProperty(value = "0:删除,1:未删除")
private Integer state;
}
package com.yizhi.library.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.apache.commons.lang3.math.NumberUtils;
import java.math.RoundingMode;
import java.util.Date;
import java.util.List;
/**
* @author Ding
* @className StudentCaseStudyVO
* @description TODO
* @date 2019/7/11
**/
@Data
@ApiModel(value = "StudentCaseStudyVO", description = "学员案例学习/审核/评分VO")
public class StudentCaseStudyVO {
@ApiModelProperty(value = "学员案例id")
private Long studentCaseId;
@ApiModelProperty(value = "学员案例id")
private Long caseId;
@ApiModelProperty(value = "案例活动名称")
private String caseName;
@ApiModelProperty(value = "logourl")
private String logoUrl;
@ApiModelProperty(value = "学员案例主题")
private String title;
@ApiModelProperty(value = "作者id")
private Long authorId;
@ApiModelProperty(value = "作者用户名")
private String authorUserName;
@ApiModelProperty(value = "作者姓名")
private String authorName;
@ApiModelProperty(value = "部门名称")
private String orgName;
@ApiModelProperty(value = "创建时间")
private Date createTime;
@ApiModelProperty(value = "提交时间")
private Date submitTime;
@ApiModelProperty(value = "举报时间")
private Date auditTime;
@ApiModelProperty(value = "内容")
private String content;
@ApiModelProperty(value = "附件url")
private String accessoryUrl;
@ApiModelProperty(value = "附件list")
private List<AccessoryUrlVO> accessoryUrlList;
@ApiModelProperty(value = "审核状态 0:不通过 1:通过")
private Integer auditState;
@ApiModelProperty(value = "审核反馈内容")
private String auditEvaluate;
@ApiModelProperty(value = "评分")
private Integer score;
@ApiModelProperty(value = "评分状态")
private Integer scoreState;
@ApiModelProperty(value = "学员案例状态")
private Integer state;
@ApiModelProperty(value = "查询结果状态 0:学员案例已经删除")
private Integer resultState;
@ApiModelProperty(value = "点赞状态 0:未点赞 1:已点赞")
private Integer admireState;
@ApiModelProperty(value = "收藏状态 0:取消收藏 1:已收藏")
private Integer favoriteState;
@ApiModelProperty(value = "举报状态 0:未举报 1:已举报")
private Integer informState;
@ApiModelProperty(value = "举报时间")
private Date informTime;
@ApiModelProperty(value = "前一篇id(审核,评分需要)")
private Long prefixId;
@ApiModelProperty(value = "后一篇id(审核,评分需要)")
private Long suffixId;
private Integer scoreRule;
private Long caseLibraryId;
private List<InformVO> informVOList;
@ApiModelProperty("多维度评分")
private Double dimensionScore;
@ApiModelProperty("维度打分的维度vo列表")
private List<CaseLibraryDimensionGradeVO> caseLibraryDimensionGradeVOS;
@ApiModelProperty("是否显示打分:0否,1是")
private Integer showScore;
@ApiModelProperty(value = "评分说明")
private String caseLibraryDimensionGradeDescription;
@ApiModelProperty(value = "作品封面是否必填 80:必填 默认; 40:非必填")
private Integer productCover;
public Double getDimensionScore() {
if (this.dimensionScore != null) {
this.dimensionScore = NumberUtils.toScaledBigDecimal(dimensionScore, 2, RoundingMode.HALF_UP).doubleValue();
}
return this.dimensionScore;
}
}
package com.yizhi.library.application.vo;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.enums.FieldFill;
import com.yizhi.library.application.enums.ProductCoverEnums;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
import java.util.List;
/**
* @author Ding
* @className StudentCaseVO
* @description TODO
* @date 2019/7/9
**/
@Data
@ApiModel(value = "StudentCase", description = "学生案例vo")
public class StudentCaseVO {
@ApiModelProperty(value = "案例活动主题")
private String caseLibraryName;
@ApiModelProperty(value = "案例要求")
private String explanation;
@ApiModelProperty(value = "案例库关联维度及下级分类列表")
private List<ClassifyListVO> classifyListVOList;
@ApiModelProperty(value = "结果状态 0:该活动已下架")
Integer resultState;
private Long id;
private String title;
@ApiModelProperty(value = "关联案列活动id")
@TableField("case_library_id")
private Long caseLibraryId;
@TableField("account_id")
private Long accountId;
@ApiModelProperty(value = "学员案例封面url")
@TableField("logo_url")
private String logoUrl;
@ApiModelProperty("关键字")
@TableField("keywords")
private String keywords;
@ApiModelProperty("得分规则")
@TableField("score_rule")
private Integer scoreRule;
@ApiModelProperty(value = "文本提交类型 1:富文本编辑 2:附件上传")
@TableField("text_edit_type")
private Integer textEditType;
@ApiModelProperty(value = "学员案例内容")
private String content;
@ApiModelProperty(value = "学员案例内容")
@TableField("content_file_name")
private String contentFileName;
@ApiModelProperty(value = "外部文档上传阿里云url")
@TableField("pdf_oss_url")
private String pdfOssUrl;
@ApiModelProperty(value = "附件url")
@TableField("accessory_url")
private String accessoryUrl;
@ApiModelProperty(value = "评分状态 0:待评分 1:已评分")
@TableField("score_state")
private Integer scoreState;
@ApiModelProperty(value = "是否完成所有评分 0:未完成 1:已完成")
@TableField("is_finished_score")
private Integer isFinishedScore;
@ApiModelProperty(value = "得分")
private Integer score;
@ApiModelProperty(value = "学员端显示类型 1:通过后自动上架, 2:通过需要手动上架")
private Integer examine;
@ApiModelProperty(value = "举报状态 0:未举报 1:被举报")
@TableField("inform_state")
private Integer informState;
@ApiModelProperty(value = "审核状态0:待审核 1:审核通过 2:审核不通过")
@TableField("audit_state")
private Integer auditState;
@ApiModelProperty(value = "审核反馈")
@TableField("audit_evaluate")
private String auditEvaluate;
@ApiModelProperty(value = "审核人是否可修改分类 0:不可修改 1:可修改")
@TableField("auditor_authorize")
private Integer auditorAuthorize;
@ApiModelProperty(value = "可见范围类型 1:全平台可见 2:指定范围")
@TableField("visible_range")
private Integer visibleRange;
@ApiModelProperty(value = "0:删除,1:提交待审核,2:上架,3:下架,4草稿")
private Integer state;
@ApiModelProperty(value = "审核时间")
@TableField("audit_time")
private Date auditTime;
@ApiModelProperty(value = "提交时间")
@TableField("submit_time")
private Date submitTime;
@ApiModelProperty(value = "最近修改时间")
@TableField("last_modify_time")
private Date lastModifyTime;
@ApiModelProperty(value = "代提交人id")
@TableField("diplomatic_agent_id")
private Long diplomaticAgentId;
@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("company_id")
private Long companyId;
@TableField("site_id")
private Long siteId;
@TableField("org_id")
private Long orgId;
@TableField("read_num")
private Long readNum;
@TableField("admire_num")
private Long admireNum;
@ApiModelProperty(value = "作品封面是否必填 80:必填 默认; 40:非必填")
private Integer productCover;
}
package com.yizhi.library.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.apache.commons.lang3.math.NumberUtils;
import java.math.RoundingMode;
import java.util.Date;
import java.util.List;
/**
* @author Ding
* @className StudentCaseViewVO
* @description TODO
* @date 2019/7/10
**/
@Data
@ApiModel(value = "StudentCaseViewVO", description = "学生案例查看VO")
public class StudentCaseViewVO {
private Long id;
private String title;
@ApiModelProperty(value = "关联案列活动id")
private Long caseLibraryId;
@ApiModelProperty(value = "学员案例封面url")
private String logoUrl;
@ApiModelProperty("关键字")
private String keywords;
@ApiModelProperty(value = "文本提交类型 1:富文本编辑 2:附件上传")
private Integer textEditType;
@ApiModelProperty(value = "学员案例内容")
private String content;
@ApiModelProperty(value = "学员案例内容")
private String contentFileName;
@ApiModelProperty(value = "外部文档上传阿里云url")
private String pdfOssUrl;
@ApiModelProperty(value = "附件url")
private String accessoryUrl;
@ApiModelProperty(value = "评分状态 0:待评分 1:已评分")
private Integer scoreState;
@ApiModelProperty(value = "是否完成所有评分 0:未完成 1:已完成")
private Integer isFinishedScore;
@ApiModelProperty(value = "得分")
private Integer score;
@ApiModelProperty(value = "学员端显示类型 1:通过后自动上架, 2:通过需要手动上架")
private Integer examine;
@ApiModelProperty(value = "举报状态 0:未举报 1:被举报")
private Integer informState;
@ApiModelProperty(value = "审核状态0:待审核 1:审核通过 2:审核不通过")
private Integer auditState;
@ApiModelProperty(value = "审核反馈")
private String auditEvaluate;
@ApiModelProperty(value = "审核人是否可修改分类 0:不可修改 1:可修改")
private Integer auditorAuthorize;
@ApiModelProperty(value = "可见范围类型 1:全平台可见 2:指定范围")
private Integer visibleRange;
@ApiModelProperty(value = "0:删除,1:提交待审核,2:上架,3:下架,4草稿")
private Integer state;
@ApiModelProperty(value = "审核时间")
private Date auditTime;
@ApiModelProperty(value = "提交时间")
private Date submitTime;
@ApiModelProperty(value = "最近修改时间")
private Date lastModifyTime;
@ApiModelProperty(value = "代提交人id")
private Long diplomaticAgentId;
private Long createById;
private String createByName;
private Date createTime;
private Long updateById;
private String updateByName;
private Date updateTime;
private Long companyId;
private Long siteId;
private Long orgId;
private Long readNum;
private Long admireNum;
@ApiModelProperty(value = "案例活动主题")
private String caseLibraryName;
@ApiModelProperty(value = "案例要求")
private String explanation;
@ApiModelProperty(value = "附件list")
private List<AccessoryUrlVO> accessoryUrlList;
@ApiModelProperty(value = "案例库关联维度及下级分类列表以及选中的分类")
private List<ClassifyListVO> classifyListVOList;
@ApiModelProperty(value = "学员案例已选择的分类列表")
private List<StudentRelatedClassifyVO> selectedList;
@ApiModelProperty("关键字数组")
private List<String> keywordsList;
@ApiModelProperty(value = "pdf图片")
private List<PdfPages> pdfPages;
@ApiModelProperty("得分规则 1:平均分 2:最高分 3:任意一人得分 4:多维度打分。只有在4的时候,需要单独处理,否则原来逻辑不动")
private Integer scoreRule;
private Long accountId;
@ApiModelProperty("维度打分的维度vo列表")
private List<CaseLibraryDimensionGradeVO> caseLibraryDimensionGradeVOS;
@ApiModelProperty("是否显示打分:0否,1是")
private Integer showScore;
@ApiModelProperty(value = "评分说明")
private String caseLibraryDimensionGradeDescription;
@ApiModelProperty("多维度评分")
private Double dimensionScore;
@ApiModelProperty(value = "作品封面是否必填 80:必填 默认; 40:非必填")
private Integer productCover;
public Double getDimensionScore() {
if (this.dimensionScore != null) {
this.dimensionScore = NumberUtils.toScaledBigDecimal(dimensionScore, 2, RoundingMode.HALF_UP).doubleValue();
}
return this.dimensionScore;
}
}
package com.yizhi.library.application.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author Ding
* @className StudentRelatedClassifyVO
* @description TODO
* @date 2019/8/5
**/
@Data
@ApiModel(value = "StudentRelatedClassifyVO", description = "学员案例关联分类VO")
public class StudentRelatedClassifyVO {
private Long id;
@ApiModelProperty(value = "学生案例id")
private Long studentCaseId;
@ApiModelProperty(value = "一级或者二级,分类id")
private Long classifyId;
@ApiModelProperty(value = "一级或者二级,分类名称")
private String classifyName;
@ApiModelProperty(value = "1:一级分类 2:二级分类")
private Integer level;
@ApiModelProperty(value = "父级分类id")
private Long classifyParentId;
@ApiModelProperty("父级分类名称")
private String classifyParentName;
@ApiModelProperty(value = "维度id")
private Long rootId;
@ApiModelProperty(value = "维度名称")
private String rootName;
}
package com.fulan.caselibrary;
import static org.junit.Assert.assertTrue;
import org.junit.Test;
/**
* Unit test for simple App.
*/
public class AppTest
{
/**
* Rigorous Test :-)
*/
@Test
public void shouldAnswerWithTrue()
{
assertTrue( true );
}
}
<?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>caselibrary</artifactId>
<groupId>com.yizhi</groupId>
<version>1.0-SNAPSHOT</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>library</artifactId>
<packaging>jar</packaging>
<name>library</name>
<dependencies>
<dependency>
<groupId>com.yizhi</groupId>
<artifactId>library-api</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.yizhi</groupId>
<artifactId>cloud-orm</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.yizhi</groupId>
<artifactId>cloud-core</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.yizhi</groupId>
<artifactId>cloud-orm</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.yizhi</groupId>
<artifactId>cloud-system-api</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.yizhi</groupId>
<artifactId>cloud-system-api</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.yizhi</groupId>
<artifactId>cloud-comment-api</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.yizhi</groupId>
<artifactId>cloud-training-project-api</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.yizhi</groupId>
<artifactId>cloud-point-api</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.yizhi</groupId>
<artifactId>cloud-orm</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
</dependencies>
<build>
<plugins>
<!-- deploy 时跳过该模块 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
</plugins>
</build>
</project>
package com.yizhi.library.application;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cache.annotation.EnableCaching;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.openfeign.EnableFeignClients;
import org.springframework.context.annotation.ComponentScan;
/**
* @author Ding
* @className CaseLibraryApplication
* @description TODO
* @date 2019/7/1
**/
@SpringBootApplication
@EnableDiscoveryClient
@EnableCaching
@EnableFeignClients(basePackages = {"com.yizhi"})
@ComponentScan(basePackages = {"com.yizhi"})
public class CaseLibraryApplication {
public static void main(String[] args) {
SpringApplication.run(CaseLibraryApplication.class, args);
}
}
package com.yizhi.library.application.asynchronousTask;
import com.yizhi.core.application.context.RequestContext;
import com.yizhi.core.application.context.TaskContext;
import com.yizhi.core.application.file.constant.FileConstant;
import com.yizhi.core.application.file.task.AbstractDefaultTask;
import com.yizhi.core.application.file.util.OssUpload;
import com.yizhi.library.application.param.ExportAuditListParam;
import com.yizhi.library.application.util.Util;
import com.yizhi.library.application.vo.StudentCaseManageListVO;
import com.yizhi.library.application.service.IStudentCaseService;
import com.yizhi.system.application.system.remote.OrganizationClient;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.ss.usermodel.Font;
import org.apache.poi.ss.usermodel.HorizontalAlignment;
import org.apache.poi.ss.util.CellRangeAddress;
import org.apache.poi.xssf.usermodel.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.io.File;
import java.io.FileOutputStream;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
* @author Ding
* @className ExportAuditList
* @description 导出待审核案例
* @date 2019/7/29
**/
@Component
public class ExportAuditList extends AbstractDefaultTask<Map, Map<String, Object>> {
private static final Logger LOGGER = LoggerFactory.getLogger(ExportAuditList.class);
@Autowired
private IStudentCaseService studentCaseService;
@Autowired
private OrganizationClient organizationClient;
@Autowired
private Util util;
@Override
protected Map execute(Map<String, Object> map) {
//从map中取信息
RequestContext res = (RequestContext) map.get("res");
String serialNo = (String) map.get("serialNo");
String taskName = (String) map.get("taskName");
Long taskId = (Long) map.get("taskId");
ExportAuditListParam param = (ExportAuditListParam) map.get("param");
//开始异步任务
TaskContext taskContext = new TaskContext(taskId, serialNo, taskName,
res.getAccountId(), new Date(), res.getSiteId(), res.getCompanyId());
working(taskContext);
List<StudentCaseManageListVO> list = null;
//获取导出数据
try {
list = studentCaseService.exportAuditList(param.getStudentCaseIds(), res);
if (CollectionUtils.isEmpty(list)) {
success(taskContext, "未找到数据", "");
}
} catch (Exception e) {
LOGGER.error("获取数据过程中出现错误", e);
fail(taskContext, "获取数据过程中出现错误");
}
//生成excel,上传阿里云返回url
try {
//获取案例活动及项目活动名称
Map<String, Object> map1 = util.getCaseLibraryAndProjectName(null, param.getStudentCaseIds().get(0));
String caseLibraryName = (String) map1.get("caseLibraryName");
String trainingProjectName = (String) map1.get("trainingProjectName");
//创建excel文件
XSSFWorkbook wb = new XSSFWorkbook();
//创建报表页
XSSFSheet sheet = wb.createSheet("待审核案例列表");
//创建表头
XSSFRow row = sheet.createRow(0);
//设置格式(水平垂直居中,加粗,字体大小14号)
XSSFCellStyle style = wb.createCellStyle();
style.setAlignment(HorizontalAlignment.CENTER);
XSSFFont font = wb.createFont();
font.setBold(true);
font.setFontHeightInPoints((short) 14);
style.setFont(font);
CellRangeAddress cra = new CellRangeAddress(0, 0, 0, 7);
//表头合并单元格
sheet.addMergedRegion(cra);
XSSFCell cell = row.createCell(0);
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
//填写表头名
cell.setCellValue(caseLibraryName + "案例活动统计");
//表头居中
cell.setCellStyle(style);
cra = new CellRangeAddress(1, 1, 0, 7);
//第二行合并单元格合并单元格
sheet.addMergedRegion(cra);
row = sheet.createRow(1);
row.createCell(0).setCellValue("所属项目: " + trainingProjectName);
row = sheet.createRow(2);
//重新设置格式(只加粗)
style = wb.createCellStyle();
font = wb.createFont();
font.setBold(true);
style.setFont(font);
cell = row.createCell(0);
cell.setCellStyle(style);
cell.setCellValue("案例ID");
cell = row.createCell(1);
cell.setCellStyle(style);
cell.setCellValue("案例标题");
cell = row.createCell(2);
cell.setCellStyle(style);
cell.setCellValue("用户名");
cell = row.createCell(3);
cell.setCellStyle(style);
cell.setCellValue("姓名");
cell = row.createCell(4);
cell.setCellStyle(style);
cell.setCellValue("所在部门");
cell = row.createCell(5);
cell.setCellStyle(style);
cell.setCellValue("提交时间");
cell = row.createCell(6);
cell.setCellStyle(style);
cell.setCellValue("审核人");
cell = row.createCell(7);
style = wb.createCellStyle();
font = wb.createFont();
font.setBold(true);
font.setColor(Font.COLOR_RED);
style.setFont(font);
cell.setCellStyle(style);
cell.setCellValue("审核结果");
//组装数据
if (CollectionUtils.isNotEmpty(list)) {
for (int i = 0; i < list.size(); i++) {
StudentCaseManageListVO listVO = list.get(i);
row = sheet.createRow(i + 3);
row.createCell(0).setCellValue(listVO.getStudentCaseId().toString());
row.createCell(1).setCellValue(listVO.getStudentCaseTitle());
row.createCell(2).setCellValue(listVO.getAccountName());
row.createCell(3).setCellValue(listVO.getAccountFullName() == null ?
"--" : listVO.getAccountFullName());
//获取部门及所有父级部门名称
List<String> orgNames = organizationClient.getChiefOrgNames(listVO.getOrgId(), res.getCompanyId());
if (CollectionUtils.isNotEmpty(orgNames)) {
row.createCell(4).setCellValue(Util.orgNamesToString(orgNames));
} else {
row.createCell(4).setCellValue("--");
}
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy/M/dd HH:mm:ss");
row.createCell(5).setCellValue(sdf1.format(listVO.getSubmitTime()));
//审核人,评分人如果有多个则用逗号隔开
if (StringUtils.isNotBlank(listVO.getAuditorFullNames())) {
row.createCell(6).setCellValue(listVO.getAuditorFullNames());
} else {
row.createCell(6).setCellValue("--");
}
}
}
String fileName = caseLibraryName + "待审核案例列表" + sdf.format(new Date()) + ".xlsx";
// String requestPath = "/Users/dingxiaowei/aaa";
String requestPath = FileConstant.SAVE_PATH;
File fileDir = new File(requestPath);
if (!fileDir.exists()) {
fileDir.mkdir();
}
String path = requestPath + "/" + fileName;
FileOutputStream os = null;
File file = null;
try {
os = new FileOutputStream(path);
wb.write(os);
//阿里云返回url
String uploadUrl = OssUpload.upload(path, fileName);
file = new File(path);
success(taskContext, "成功导出" + list.size() + "条记录", uploadUrl);
} catch (Exception e2) {
e2.printStackTrace();
fail(taskContext, "导出待审核案例写入过程中发生错误");
LOGGER.error("导出待审核案例写入过程中发生错误");
} finally {
if (os != null) {
os.close();
}
if (wb != null) {
wb.close();
}
if (file != null) {
file.delete();
}
}
} catch (Exception e) {
e.printStackTrace();
fail(taskContext, "导出待审核案例下载发生错误");
LOGGER.error("导出待审核案例下载发生错误,请查看日志");
}
return null;
}
}
package com.yizhi.library.application.asynchronousTask;
import com.baomidou.mybatisplus.toolkit.CollectionUtils;
import com.yizhi.core.application.context.RequestContext;
import com.yizhi.core.application.context.TaskContext;
import com.yizhi.core.application.file.constant.FileConstant;
import com.yizhi.core.application.file.task.AbstractDefaultTask;
import com.yizhi.core.application.file.util.OssUpload;
import com.yizhi.library.application.domain.StudentCase;
import com.yizhi.library.application.vo.CommentVO;
import com.yizhi.library.application.service.ICommentService;
import com.yizhi.library.application.service.IStudentCaseService;
import org.apache.poi.ss.usermodel.HorizontalAlignment;
import org.apache.poi.ss.util.CellRangeAddress;
import org.apache.poi.xssf.usermodel.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.io.File;
import java.io.FileOutputStream;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
* @author Ding
* @className ExportCommentList
* @description TODO
* @date 2019/7/16
**/
@Component
public class ExportCommentList extends AbstractDefaultTask<Map, Map<String, Object>> {
private static final Logger LOGGER = LoggerFactory.getLogger(ExportCommentList.class);
@Autowired
private ICommentService commentService;
@Autowired
private IStudentCaseService studentCaseService;
@Override
protected Map execute(Map<String, Object> map) {
//从map中取信息
RequestContext res = (RequestContext) map.get("res");
String serialNo = (String) map.get("serialNo");
String taskName = (String) map.get("taskName");
Long taskId = (Long) map.get("taskId");
Long studentCaseId = (Long) map.get("studentCaseId");
Integer state = (Integer) map.get("state");
String name = (String) map.get("name");
//开始异步任务
TaskContext taskContext = new TaskContext(taskId, serialNo, taskName,
res.getAccountId(), new Date(), res.getSiteId(), res.getCompanyId());
working(taskContext);
List<CommentVO> commentVOList = new ArrayList<>();
StudentCase studentCase = null;
//获取导出数据
try {
studentCase = studentCaseService.selectById(studentCaseId);
commentVOList = commentService.downloadList(res, studentCaseId, name, state);
} catch (Exception e) {
LOGGER.error("获取数据过程中出现错误", e);
fail(taskContext, "获取数据过程中出现错误");
}
//生成excel,上传阿里云返回url
try {
if (null == studentCase || CollectionUtils.isEmpty(commentVOList)) {
success(taskContext, "未找到数据", "");
}
//创建excel文件
XSSFWorkbook wb = new XSSFWorkbook();
//创建报表页
XSSFSheet sheet = wb.createSheet("案例评论记录导出");
//创建表头
XSSFRow row = sheet.createRow(0);
XSSFCellStyle style = wb.createCellStyle();
style.setAlignment(HorizontalAlignment.CENTER);
CellRangeAddress cra = new CellRangeAddress(0, 0, 0, 6);
//表头合并单元格
sheet.addMergedRegion(cra);
XSSFCell cell = row.createCell(0);
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
//填写表头名
cell.setCellValue(studentCase.getTitle() + "案例评论记录" + sdf.format(new Date()));
//表头居中
cell.setCellStyle(style);
row = sheet.createRow(1);
row.createCell(0).setCellValue("评论/回复人");
row.createCell(1).setCellValue("姓名");
row.createCell(2).setCellValue("评论对象");
row.createCell(3).setCellValue("评论内容");
row.createCell(4).setCellValue("提交时间");
row.createCell(5).setCellValue("点赞数");
row.createCell(6).setCellValue("状态");
if (CollectionUtils.isNotEmpty(commentVOList)) {
for (int i = 0; i < commentVOList.size(); i++) {
CommentVO commentVO = commentVOList.get(i);
row = sheet.createRow(i + 2);
row.createCell(0).setCellValue(commentVO.getCommenterUserName());
row.createCell(1).setCellValue(commentVO.getCommenterFullName());
row.createCell(2).setCellValue(commentVO.getReplyAccountFullName() == null ?
"--" : commentVO.getReplyAccountFullName());
row.createCell(3).setCellValue(commentVO.getContent());
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy/M/dd HH:mm:ss");
row.createCell(4).setCellValue(sdf1.format(commentVO.getCreateTime()));
row.createCell(5).setCellValue(commentVO.getAdmireNum() == null ? "--" : commentVO.getAdmireNum().toString());
row.createCell(6).setCellValue(commentVO.getState() == 1 ? "已上架" : "已下架");
}
}
String fileName = "案例评论记录" + sdf.format(new Date()) + ".xlsx";
// String requestPath = "/Users/dingxiaowei/aaa";
String requestPath = FileConstant.SAVE_PATH;
File fileDir = new File(requestPath);
if (!fileDir.exists()) {
fileDir.mkdir();
}
String path = requestPath + "/" + fileName;
FileOutputStream os = null;
File file = null;
try {
os = new FileOutputStream(path);
wb.write(os);
//阿里云返回url
String uploadUrl = OssUpload.upload(path, fileName);
file = new File(path);
success(taskContext, "成功导出" + commentVOList.size() + "条记录", uploadUrl);
} catch (Exception e2) {
e2.printStackTrace();
fail(taskContext, "案例评论记录写入过程中发生错误");
LOGGER.error("案例评论记录写入过程中发生错误");
} finally {
if (os != null) {
os.close();
}
if (wb != null) {
wb.close();
}
if (file != null) {
file.delete();
}
}
} catch (Exception e) {
e.printStackTrace();
fail(taskContext, "案例评论记录下载发生错误");
LOGGER.error("案例评论记录下载发生错误,请查看日志");
}
return null;
}
}
package com.yizhi.library.application.asynchronousTask;
import com.yizhi.core.application.context.RequestContext;
import com.yizhi.core.application.context.TaskContext;
import com.yizhi.core.application.file.constant.FileConstant;
import com.yizhi.core.application.file.task.AbstractDefaultTask;
import com.yizhi.core.application.file.util.OssUpload;
import com.yizhi.library.application.param.ExportAuditListParam;
import com.yizhi.library.application.util.Util;
import com.yizhi.library.application.vo.StudentCaseManageListVO;
import com.yizhi.library.application.mapper.CaseLibraryDimensionGradeMapper;
import com.yizhi.library.application.service.IStudentCaseService;
import com.yizhi.system.application.system.remote.OrganizationClient;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.ss.usermodel.Font;
import org.apache.poi.ss.usermodel.HorizontalAlignment;
import org.apache.poi.ss.util.CellRangeAddress;
import org.apache.poi.xssf.usermodel.*;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.io.File;
import java.io.FileOutputStream;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
* @author Ding
* @className ExportAuditList
* @description 导出待审核案例
* @date 2019/7/29
**/
@Component
public class ExportScoreList extends AbstractDefaultTask<Map, Map<String, Object>> {
private static final Logger LOGGER = LoggerFactory.getLogger(ExportScoreList.class);
@Autowired
private IStudentCaseService studentCaseService;
@Autowired
private OrganizationClient organizationClient;
@Autowired
private CaseLibraryDimensionGradeMapper caseLibraryDimensionGradeMapper;
@Autowired
private Util util;
@Override
protected Map execute(Map<String, Object> map) {
//从map中取信息
RequestContext res = (RequestContext) map.get("res");
String serialNo = (String) map.get("serialNo");
String taskName = (String) map.get("taskName");
Long taskId = (Long) map.get("taskId");
ExportAuditListParam param = (ExportAuditListParam) map.get("param");
//开始异步任务
TaskContext taskContext = new TaskContext(taskId, serialNo, taskName,
res.getAccountId(), new Date(), res.getSiteId(), res.getCompanyId());
working(taskContext);
List<StudentCaseManageListVO> list = null;
//获取导出数据
try {
list = studentCaseService.exportScoreList(param.getStudentCaseIds(), res);
if (CollectionUtils.isEmpty(list)) {
success(taskContext, "未找到数据", "");
}
} catch (Exception e) {
LOGGER.error("获取数据过程中出现错误", e);
fail(taskContext, "获取数据过程中出现错误");
}
//生成excel,上传阿里云返回url
try {
//获取案例活动及项目活动名称
Map<String, Object> map1 = util.getCaseLibraryAndProjectName(null, param.getStudentCaseIds().get(0));
String caseLibraryName = (String) map1.get("caseLibraryName");
String trainingProjectName = (String) map1.get("trainingProjectName");
//创建excel文件
XSSFWorkbook wb = new XSSFWorkbook();
//创建报表页
XSSFSheet sheet = wb.createSheet("待评分案例列表");
//创建表头
XSSFRow row = sheet.createRow(0);
//设置格式(水平垂直居中,加粗,字体大小14号)
XSSFCellStyle style = wb.createCellStyle();
style.setAlignment(HorizontalAlignment.CENTER);
XSSFFont font = wb.createFont();
font.setBold(true);
font.setFontHeightInPoints((short) 14);
style.setFont(font);
CellRangeAddress cra = new CellRangeAddress(0, 0, 0, 7);
//表头合并单元格
sheet.addMergedRegion(cra);
XSSFCell cell = row.createCell(0);
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
//填写表头名
cell.setCellValue(caseLibraryName + "案例活动统计");
//表头居中
cell.setCellStyle(style);
cra = new CellRangeAddress(1, 1, 0, 7);
//第二行合并单元格合并单元格
sheet.addMergedRegion(cra);
row = sheet.createRow(1);
row.createCell(0).setCellValue("所属项目: " + trainingProjectName);
row = sheet.createRow(2);
//重新设置格式(只加粗)
style = wb.createCellStyle();
font = wb.createFont();
font.setBold(true);
style.setFont(font);
cell = row.createCell(0);
cell.setCellStyle(style);
cell.setCellValue("案例ID");
cell = row.createCell(1);
cell.setCellStyle(style);
cell.setCellValue("案例标题");
cell = row.createCell(2);
cell.setCellStyle(style);
cell.setCellValue("用户名");
cell = row.createCell(3);
cell.setCellStyle(style);
cell.setCellValue("姓名");
cell = row.createCell(4);
cell.setCellStyle(style);
cell.setCellValue("所在部门");
cell = row.createCell(5);
cell.setCellStyle(style);
cell.setCellValue("提交时间");
cell = row.createCell(6);
cell.setCellStyle(style);
cell.setCellValue("评分人");
cell = row.createCell(7);
style = wb.createCellStyle();
font = wb.createFont();
font.setBold(true);
font.setColor(Font.COLOR_RED);
style.setFont(font);
cell.setCellStyle(style);
cell.setCellValue("得分");
//组装数据
if (CollectionUtils.isNotEmpty(list)) {
for (int i = 0; i < list.size(); i++) {
StudentCaseManageListVO listVO = list.get(i);
row = sheet.createRow(i + 3);
row.createCell(0).setCellValue(listVO.getStudentCaseId().toString());
row.createCell(1).setCellValue(listVO.getStudentCaseTitle());
row.createCell(2).setCellValue(listVO.getAccountName());
row.createCell(3).setCellValue(listVO.getAccountFullName() == null ?
"--" : listVO.getAccountFullName());
//获取部门及所有父级部门名称
List<String> orgNames = organizationClient.getChiefOrgNames(listVO.getOrgId(), res.getCompanyId());
if (CollectionUtils.isNotEmpty(orgNames)) {
row.createCell(4).setCellValue(Util.orgNamesToString(orgNames));
} else {
row.createCell(4).setCellValue("--");
}
SimpleDateFormat sdf1 = new SimpleDateFormat("yyyy/M/dd HH:mm:ss");
row.createCell(5).setCellValue(sdf1.format(listVO.getSubmitTime()));
//审核人,评分人如果有多个则用逗号隔开
if (StringUtils.isNotBlank(listVO.getScorerFullNames())) {
row.createCell(6).setCellValue(listVO.getScorerFullNames());
} else {
row.createCell(6).setCellValue("--");
}
}
}
String fileName = caseLibraryName + "待评分案例列表" + sdf.format(new Date()) + ".xlsx";
// String requestPath = "/Users/dingxiaowei/aaa";
String requestPath = FileConstant.SAVE_PATH;
File fileDir = new File(requestPath);
if (!fileDir.exists()) {
fileDir.mkdir();
}
String path = requestPath + "/" + fileName;
FileOutputStream os = null;
File file = null;
try {
os = new FileOutputStream(path);
wb.write(os);
//阿里云返回url
String uploadUrl = OssUpload.upload(path, fileName);
file = new File(path);
success(taskContext, "成功导出" + list.size() + "条记录", uploadUrl);
} catch (Exception e2) {
e2.printStackTrace();
fail(taskContext, "导出待评分案例写入过程中发生错误");
LOGGER.error("导出待评分案例写入过程中发生错误");
} finally {
if (os != null) {
os.close();
}
if (wb != null) {
wb.close();
}
if (file != null) {
file.delete();
}
}
} catch (Exception e) {
e.printStackTrace();
fail(taskContext, "导出待评分案例下载发生错误");
LOGGER.error("导出待评分案例下载发生错误,请查看日志");
}
return null;
}
}
package com.yizhi.library.application.asynchronousTask;
import com.yizhi.core.application.context.RequestContext;
import com.yizhi.core.application.context.TaskContext;
import com.yizhi.core.application.file.task.AbstractDefaultTask;
import com.yizhi.library.application.domain.StudentCase;
import com.yizhi.library.application.mapper.StudentCaseMapper;
import com.yizhi.library.application.service.IStudentCaseService;
import com.yizhi.library.application.util.DownloadOssUrl;
import com.yizhi.library.application.util.Util;
import org.apache.commons.collections.CollectionUtils;
import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
* @author Ding
* @className ImportAuditList
* @description 导入审核结果
* @date 2019/7/29
**/
@Component
public class ImportAuditList extends AbstractDefaultTask<Map, Map<String, Object>> {
private static final Logger LOGGER = LoggerFactory.getLogger(ImportAuditList.class);
@Autowired
private IStudentCaseService studentCaseService;
@Autowired
private StudentCaseMapper studentCaseMapper;
@Override
protected Map execute(Map<String, Object> map) {
RequestContext res = (RequestContext) map.get("res");
Long taskId = (Long) map.get("taskId");
String serialNo = (String) map.get("serialNo");
String taskName = (String) map.get("taskName");
String url = (String) map.get("url");
TaskContext taskContext = new TaskContext(taskId, serialNo, taskName, res.getAccountId(), new Date(), res.getSiteId(), res.getCompanyId());
working(taskContext);
//解析url
Workbook workbook = DownloadOssUrl.getWorkBook(url);
if (null == workbook) {
LOGGER.error("创建workbook对象失败");
fail(taskContext, "创建workbook对象失败");
}
Sheet sheet = workbook.getSheetAt(0);
Row row;
Cell cell0;
Cell cell7;
int lastRowNum = sheet.getLastRowNum();
List<StudentCase> studentCaseList = new ArrayList<>();
Integer errNum = 0;
for (int i = 3; i <= lastRowNum; i++) {
row = sheet.getRow(i);
cell0 = row.getCell(0);
cell7 = row.getCell(7);
Long id = null;
Integer auditState = null;
String result = null;
if (null != cell0) {
id = Util.getLongFromCell(cell0);
}
if (null != cell7) {
result = Util.getStringFromCell(cell7);
}
if (null != id) {
if (null != result) {
if (result.equals("通过")) {
auditState = 1;
} else if (result.equals("不通过")) {
auditState = 2;
}
}
if (null != auditState) {
StudentCase studentCase = new StudentCase();
studentCase.setId(id);
studentCase.setAuditState(auditState);
studentCaseList.add(studentCase);
} else {
taskDetail(taskId, "第" + i + 1 + "行格式有误");
errNum++;
}
} else {
taskDetail(taskId, "第" + i + 1 + "行格式有误");
errNum++;
}
}
Date date = new Date();
//导入数据
if (CollectionUtils.isNotEmpty(studentCaseList)) {
//获取通过审核后上架规则
Map<String, Object> map1 = studentCaseMapper.getExamine(studentCaseList.get(0).getId());
Integer examine = (Integer) map1.get("examine");
for (StudentCase studentCase : studentCaseList) {
if (studentCase.getAuditState() == 1) {
if (examine == 1) {
studentCase.setState(2);
} else if (examine == 2) {
studentCase.setState(3);
}
studentCase.setScoreState(0);
} else if (studentCase.getAuditState() == 2) {
studentCase.setState(3);
}
studentCase.setAuditTime(date);
}
studentCaseService.updateBatchById(studentCaseList);
success(taskContext, "成功导入" + studentCaseList.size() + "条," + "失败" + errNum + "条", url);
} else {
success(taskContext, "成功导入0条", url);
}
return null;
}
}
This source diff could not be displayed because it is too large. You can view the blob instead.
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