Commit 91a9f517 authored by luzhuang's avatar luzhuang

a

parent a821e8d6
...@@ -16,6 +16,7 @@ import org.rcisoft.business.bchapter.dto.ScoreInfoDTO; ...@@ -16,6 +16,7 @@ import org.rcisoft.business.bchapter.dto.ScoreInfoDTO;
import org.rcisoft.business.bchapter.entity.BChapter; import org.rcisoft.business.bchapter.entity.BChapter;
import org.rcisoft.business.bchapter.enums.IsCompleteEnum; import org.rcisoft.business.bchapter.enums.IsCompleteEnum;
import org.rcisoft.business.bchapter.service.BChapterService; import org.rcisoft.business.bchapter.service.BChapterService;
import org.rcisoft.business.bfile.dto.uploadDTO;
import org.rcisoft.business.bfile.entity.BFile; import org.rcisoft.business.bfile.entity.BFile;
import org.rcisoft.common.component.Global; import org.rcisoft.common.component.Global;
import org.rcisoft.common.controller.PaginationController; import org.rcisoft.common.controller.PaginationController;
...@@ -72,8 +73,8 @@ public class BChapterController extends PaginationController<BChapter> { ...@@ -72,8 +73,8 @@ public class BChapterController extends PaginationController<BChapter> {
@ApiImplicitParam(name = "chapterLevel", value = "等级,1:章 2:节", required = true, dataType = "varchar"), @ApiImplicitParam(name = "chapterLevel", value = "等级,1:章 2:节", required = true, dataType = "varchar"),
@ApiImplicitParam(name = "isTest", value = "课件类型(单选) 1视频 2音频 3PPT 4pdf 5资料", required = true, dataType = "varchar")}) @ApiImplicitParam(name = "isTest", value = "课件类型(单选) 1视频 2音频 3PPT 4pdf 5资料", required = true, dataType = "varchar")})
@PostMapping(value = "/add") @PostMapping(value = "/add")
public Result add(CurUser curUser, @Valid BChapter bChapter, BindingResult bindingResult) { public Result add(CurUser curUser, @Valid BChapter bChapter, BindingResult bindingResult, uploadDTO dto) {
PersistModel data = bChapterService.persist(bChapter,curUser.getCorpId()); PersistModel data = bChapterService.persist(bChapter,curUser.getCorpId(),dto);
return Result.builder(data, return Result.builder(data,
MessageConstant.MESSAGE_ALERT_SUCCESS, MessageConstant.MESSAGE_ALERT_SUCCESS,
MessageConstant.MESSAGE_ALERT_ERROR, MessageConstant.MESSAGE_ALERT_ERROR,
......
...@@ -4,6 +4,7 @@ package org.rcisoft.business.bchapter.service; ...@@ -4,6 +4,7 @@ package org.rcisoft.business.bchapter.service;
import org.rcisoft.business.bchapter.dto.*; import org.rcisoft.business.bchapter.dto.*;
import org.rcisoft.business.bchapter.entity.BChapter; import org.rcisoft.business.bchapter.entity.BChapter;
import org.rcisoft.business.bchapter.vo.StudentChapterScoreVO; import org.rcisoft.business.bchapter.vo.StudentChapterScoreVO;
import org.rcisoft.business.bfile.dto.uploadDTO;
import org.rcisoft.business.bfile.entity.BFile; import org.rcisoft.business.bfile.entity.BFile;
import org.rcisoft.core.aop.PageUtil; import org.rcisoft.core.aop.PageUtil;
import org.rcisoft.core.model.PersistModel; import org.rcisoft.core.model.PersistModel;
...@@ -56,7 +57,7 @@ public interface BChapterService{ ...@@ -56,7 +57,7 @@ public interface BChapterService{
* @param model * @param model
* @return * @return
*/ */
PersistModel persist(BChapter model, String corpId); PersistModel persist(BChapter model, String corpId, uploadDTO dto);
/** /**
* 修改 * 修改
......
...@@ -11,6 +11,7 @@ import org.rcisoft.business.bchapter.enums.HasMarkEnum; ...@@ -11,6 +11,7 @@ import org.rcisoft.business.bchapter.enums.HasMarkEnum;
import org.rcisoft.business.bchapter.enums.StateEnum; import org.rcisoft.business.bchapter.enums.StateEnum;
import org.rcisoft.business.bchapter.service.BChapterService; import org.rcisoft.business.bchapter.service.BChapterService;
import org.rcisoft.business.bchapter.vo.StudentChapterScoreVO; import org.rcisoft.business.bchapter.vo.StudentChapterScoreVO;
import org.rcisoft.business.bfile.dto.uploadDTO;
import org.rcisoft.business.bfile.util.GetVideoTime; import org.rcisoft.business.bfile.util.GetVideoTime;
import org.rcisoft.business.blesson.dao.BLessonRepository; import org.rcisoft.business.blesson.dao.BLessonRepository;
import org.rcisoft.business.blesson.entity.BLesson; import org.rcisoft.business.blesson.entity.BLesson;
...@@ -71,8 +72,8 @@ public class BChapterServiceImpl implements BChapterService { ...@@ -71,8 +72,8 @@ public class BChapterServiceImpl implements BChapterService {
} }
@Override @Override
public List<QueryChapterListResDTO> queryBChaptersByPagination(PageUtil pageUtil, QueryChapterListDTO model,String corpId) { public List<QueryChapterListResDTO> queryBChaptersByPagination(PageUtil pageUtil, QueryChapterListDTO model, String corpId) {
return queryChapterListResDTO(model,corpId); return queryChapterListResDTO(model, corpId);
} }
@Override @Override
...@@ -81,23 +82,24 @@ public class BChapterServiceImpl implements BChapterService { ...@@ -81,23 +82,24 @@ public class BChapterServiceImpl implements BChapterService {
} }
@Override @Override
public List<QueryChapterListResDTO> queryBChapters(QueryChapterListDTO model,String corpId) { public List<QueryChapterListResDTO> queryBChapters(QueryChapterListDTO model, String corpId) {
return queryChapterListResDTO(model,corpId); return queryChapterListResDTO(model, corpId);
} }
@Override @Override
public Map queryBChaptersWithProgress(QueryChapterListDTO model,String corpId) { public Map queryBChaptersWithProgress(QueryChapterListDTO model, String corpId) {
List<QueryChapterListResDTO> queryChapterListResDTOS = queryChapterListResDTO(model,corpId); List<QueryChapterListResDTO> queryChapterListResDTOS = queryChapterListResDTO(model, corpId);
queryChapterListResDTOS.stream().forEach(queryChapterListResDTO -> { queryChapterListResDTOS.stream().forEach(queryChapterListResDTO -> {
queryChapterListResDTO.getChildList().stream().forEach(childList -> { queryChapterListResDTO.getChildList().stream().forEach(childList -> {
List<BRStudentChapter> brStudentChapterList = brStudentChapterRepository.queryByStuIdAndChapter(childList.getBusinessId(),model.getStudentId()); List<BRStudentChapter> brStudentChapterList = brStudentChapterRepository.queryByStuIdAndChapter(childList.getBusinessId(), model.getStudentId());
if (null != brStudentChapterList && brStudentChapterList.size()>0){ if (null != brStudentChapterList && brStudentChapterList.size() > 0) {
childList.setProgress(brStudentChapterList.get(0).getProgress()); childList.setProgress(brStudentChapterList.get(0).getProgress());
} }
}); });
}); });
Map map = new HashMap(); Map map = new HashMap();
map.put("chapterList",queryChapterListResDTOS); map.put("chapterList", queryChapterListResDTOS);
map.put("lessonInfo",bLessonRepository.selectByPrimaryKey(model.getLessonId())); map.put("lessonInfo", bLessonRepository.selectByPrimaryKey(model.getLessonId()));
return map; return map;
} }
...@@ -107,20 +109,25 @@ public class BChapterServiceImpl implements BChapterService { ...@@ -107,20 +109,25 @@ public class BChapterServiceImpl implements BChapterService {
* @param model * @param model
* @return * @return
*/ */
public List<QueryChapterListResDTO> queryChapterListResDTO(QueryChapterListDTO model,String corpId) { public List<QueryChapterListResDTO> queryChapterListResDTO(QueryChapterListDTO model, String corpId) {
Map param = new HashMap<String, Object>(); Map param = new HashMap<String, Object>();
if (model.getLessonId() != null && !"".equals(model.getLessonId())) { if (model.getLessonId() != null && !"".equals(model.getLessonId())) {
param.put("lessonId", model.getLessonId()); param.put("lessonId", model.getLessonId());
} }
param.put("corpId",corpId); param.put("corpId", corpId);
return bChapterRepository.queryBChapters(param); return bChapterRepository.queryBChapters(param);
} }
@Transactional(propagation = Propagation.REQUIRED, readOnly = false) @Transactional(propagation = Propagation.REQUIRED, readOnly = false)
@Override @Override
public PersistModel persist(BChapter model,String corpId) { public PersistModel persist(BChapter model, String corpId, uploadDTO dto) {
int line = 0; int line = 0;
BFile bFile = new BFile();
bFile.setFileName(dto.getFileName());
bFile.setVideoUrl(dto.getVideoUrl());
bFile.setType(dto.getType());
if (model.getBusinessId() == null) { if (model.getBusinessId() == null) {
UserUtil.setCurrentPersistOperation(model); UserUtil.setCurrentPersistOperation(model);
...@@ -139,8 +146,11 @@ public class BChapterServiceImpl implements BChapterService { ...@@ -139,8 +146,11 @@ public class BChapterServiceImpl implements BChapterService {
int sort = bChapterRepository.selectMaxSort(model.getPid(), model.getLessonId()); int sort = bChapterRepository.selectMaxSort(model.getPid(), model.getLessonId());
model.setSort(sort); model.setSort(sort);
model.setCorpId(corpId); model.setCorpId(corpId);
bFile.setChapterId(model.getBusinessId());
bFile.setLessonId(model.getLessonId());
UserUtil.setCurrentPersistOperation(bFile);
line = bChapterRepository.insertSelective(model); line = bChapterRepository.insertSelective(model);
int x = bFileRepository.insertUploadFile(bFile);
bChapterRepository.updateClassHourInLesson(model.getLessonId());//更新b_lesson表中 class_hour bChapterRepository.updateClassHourInLesson(model.getLessonId());//更新b_lesson表中 class_hour
} else { } else {
UserUtil.setCurrentMergeOperation(model); UserUtil.setCurrentMergeOperation(model);
......
...@@ -5,6 +5,7 @@ import io.swagger.annotations.ApiImplicitParam; ...@@ -5,6 +5,7 @@ import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.apache.commons.io.IOUtils; import org.apache.commons.io.IOUtils;
import org.rcisoft.business.bfile.dto.uploadDTO;
import org.rcisoft.business.bfile.entity.BFile; import org.rcisoft.business.bfile.entity.BFile;
import org.rcisoft.business.bfile.service.BFileService; import org.rcisoft.business.bfile.service.BFileService;
import org.rcisoft.common.component.Global; import org.rcisoft.common.component.Global;
...@@ -44,13 +45,12 @@ public class BFileController extends PaginationController<BFile> { ...@@ -44,13 +45,12 @@ public class BFileController extends PaginationController<BFile> {
@ApiImplicitParams({@ApiImplicitParam(name = "type", value = "0视频 1音频 2ppt 3pdf 4附件", required = true, dataType = "varchar"), @ApiImplicitParams({@ApiImplicitParam(name = "type", value = "0视频 1音频 2ppt 3pdf 4附件", required = true, dataType = "varchar"),
@ApiImplicitParam(name = "file", value = "视频文件", required = true, dataType = "MultipartFile")}) @ApiImplicitParam(name = "file", value = "视频文件", required = true, dataType = "MultipartFile")})
@PostMapping(value = "/upload") @PostMapping(value = "/upload")
public Result uploadVideo(String type, HttpServletRequest request) { public Result uploadVideo(String type, MultipartFile file) {
List<MultipartFile> list = ((MultipartHttpServletRequest)request).getFiles("file"); uploadDTO data = bFileService.uploadVideoToServer(file, type);
Map<String,String> map = bFileService.uploadVideoToServer(list, type);
return Result.builder(new PersistModel(1), return Result.builder(new PersistModel(1),
"上传成功", "上传成功",
MessageConstant.MESSAGE_ALERT_ERROR, MessageConstant.MESSAGE_ALERT_ERROR,
map); data);
} }
// /** // /**
......
...@@ -51,5 +51,15 @@ public interface BFileRepository extends BaseMapper<BFile> { ...@@ -51,5 +51,15 @@ public interface BFileRepository extends BaseMapper<BFile> {
@ResultMap(value = "BaseResultMap" ) @ResultMap(value = "BaseResultMap" )
BFile queryBVideoByChapterId(String chapterId); BFile queryBVideoByChapterId(String chapterId);
/**
* 添加文件信息到file表
* @return
*/
@Insert("INSERT INTO `b_file` " +
"(business_id,lesson_id,chapter_id,file_name,video_url,file_url,type,flag,del_flag,remarks,create_by,update_by,update_date,create_date) " +
"VALUES (#{businessId}, #{lessonId}, #{chapterId}, #{fileName}, #{videoUrl}, #{fileUrl}, #{type}, #{flag}, #{delFlag}, #{remarks}, #{createBy}, #{updateBy}, #{updateDate}, #{createDate})")
int insertUploadFile(BFile bFile);
} }
package org.rcisoft.business.bfile.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.hibernate.validator.constraints.Length;
@Data
public class uploadDTO {
@ApiModelProperty(value = "文件名称")
@Length(min = 1,max = 256,message = "长度最小为1,最大为200")
private String fileName;
@ApiModelProperty(value = "文件路径")
@Length(min = 1,max = 256,message = "长度最小为1,最大为200")
private String videoUrl;
@ApiModelProperty(value = "0视频 1音频 2ppt 3pdf 4附件")
private String type;
}
...@@ -25,7 +25,7 @@ public class BFile extends IdEntity<BFile> { ...@@ -25,7 +25,7 @@ public class BFile extends IdEntity<BFile> {
/*视频名称*/ /*视频名称*/
@Length(min = 1,max = 256,message = "长度最小为1,最大为200") @Length(min = 1,max = 256,message = "长度最小为1,最大为200")
@NotBlank @NotBlank
private String videoName; private String fileName;
/*视频地址*/ /*视频地址*/
@Length(min = 1,max = 256,message = "长度最小为1,最大为200") @Length(min = 1,max = 256,message = "长度最小为1,最大为200")
...@@ -39,23 +39,10 @@ public class BFile extends IdEntity<BFile> { ...@@ -39,23 +39,10 @@ public class BFile extends IdEntity<BFile> {
@NotBlank @NotBlank
private String fileUrl; private String fileUrl;
@Length(min = 1,max = 256,message = "长度最小为1,最大为200")
@NotBlank
private String audioUrl;
@Length(min = 1,max = 256,message = "长度最小为1,最大为200")
@NotBlank
private String pptUrl;
@Length(min = 1,max = 256,message = "长度最小为1,最大为200")
@NotBlank
private String pdfUrl;
@Length(min = 1,max = 64,message = "长度最小为1,最大为50") @Length(min = 1,max = 64,message = "长度最小为1,最大为50")
@NotBlank @NotBlank
private String lessonId;//课程ID private String lessonId;//课程ID
@Length(min = 1,max = 64,message = "长度最小为1,最大为50") @Length(min = 1,max = 64,message = "长度最小为1,最大为50")
@NotBlank @NotBlank
private String chapterId;//节ID private String chapterId;//节ID
......
package org.rcisoft.business.bfile.service; package org.rcisoft.business.bfile.service;
import org.rcisoft.business.bfile.dto.uploadDTO;
import org.rcisoft.business.bfile.entity.BFile; import org.rcisoft.business.bfile.entity.BFile;
import org.rcisoft.core.aop.PageUtil; import org.rcisoft.core.aop.PageUtil;
import org.rcisoft.core.model.PersistModel; import org.rcisoft.core.model.PersistModel;
...@@ -49,7 +50,7 @@ public interface BFileService { ...@@ -49,7 +50,7 @@ public interface BFileService {
*/ */
PersistModel removeBVideo(String id); PersistModel removeBVideo(String id);
public Map<String,String> uploadVideoToServer(List<MultipartFile> list, String type); public uploadDTO uploadVideoToServer(MultipartFile file, String type);
public BFile queryFileUrlByChapterId(String chapterId); public BFile queryFileUrlByChapterId(String chapterId);
......
...@@ -14,7 +14,7 @@ import javax.validation.constraints.NotBlank; ...@@ -14,7 +14,7 @@ import javax.validation.constraints.NotBlank;
* Created by gaowenfeng on 2017/8/9. * Created by gaowenfeng on 2017/8/9.
*/ */
@Data @Data
@Table(name = "s_role") @Table(name = "tm_admin_role")
@NoArgsConstructor @NoArgsConstructor
@AllArgsConstructor @AllArgsConstructor
public class SysRole extends IdEntity<SysRole> { public class SysRole extends IdEntity<SysRole> {
......
...@@ -50,6 +50,9 @@ public class SysUser extends IdEntity<SysUser> { ...@@ -50,6 +50,9 @@ public class SysUser extends IdEntity<SysUser> {
private String gitLabUsername; //gitLab账号 private String gitLabUsername; //gitLab账号
private String gitLabImpressionToken; //gitLab账号模拟令牌 private String gitLabImpressionToken; //gitLab账号模拟令牌
private String depart;
private String position;
/** /**
* 角色ID * 角色ID
*/ */
......
...@@ -3,6 +3,8 @@ package org.rcisoft.sys.user.service.impl; ...@@ -3,6 +3,8 @@ package org.rcisoft.sys.user.service.impl;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.rcisoft.common.component.Global; import org.rcisoft.common.component.Global;
import org.rcisoft.common.util.feignClient.ContactFeignClient;
import org.rcisoft.common.util.outClient.MTCotactApiRequestClient;
import org.rcisoft.core.aop.PageUtil; import org.rcisoft.core.aop.PageUtil;
import org.rcisoft.core.exception.ServiceException; import org.rcisoft.core.exception.ServiceException;
import org.rcisoft.core.result.ResultServiceEnums; import org.rcisoft.core.result.ResultServiceEnums;
...@@ -35,12 +37,21 @@ public class SysUserServiceImpl implements SysUserService { ...@@ -35,12 +37,21 @@ public class SysUserServiceImpl implements SysUserService {
@Autowired @Autowired
private SysMenuRepository sysMenuRepository; private SysMenuRepository sysMenuRepository;
@Autowired
private MTCotactApiRequestClient mtCotactApiRequestClient;
@Autowired @Autowired
private Global global; private Global global;
@Override @Override
public List<SysUser> queryUsersByPagination(PageUtil pageUtil, QuerySysUserDTO dto) { public List<SysUser> queryUsersByPagination(PageUtil pageUtil, QuerySysUserDTO dto) {
return sysUserMapper.queryUsers(dto); List<SysUser> users = sysUserMapper.queryUsers(dto);
List<String> list = new ArrayList<>();
for(SysUser user:users){
list.add(user.getBusinessId());
}
return users;
} }
@Override @Override
......
...@@ -10,12 +10,9 @@ ...@@ -10,12 +10,9 @@
<result column="update_by" jdbcType="VARCHAR" property="updateBy"/> <result column="update_by" jdbcType="VARCHAR" property="updateBy"/>
<result column="update_date" jdbcType="TIMESTAMP" property="updateDate"/> <result column="update_date" jdbcType="TIMESTAMP" property="updateDate"/>
<result column="create_date" jdbcType="TIMESTAMP" property="createDate"/> <result column="create_date" jdbcType="TIMESTAMP" property="createDate"/>
<result column="video_name" jdbcType="VARCHAR" property="videoName"/> <result column="file_name" jdbcType="VARCHAR" property="fileName"/>
<result column="video_url" jdbcType="VARCHAR" property="videoUrl"/> <result column="video_url" jdbcType="VARCHAR" property="videoUrl"/>
<result column="audio_url" jdbcType="VARCHAR" property="audioUrl"/>
<result column="file_url" jdbcType="VARCHAR" property="fileUrl"/> <result column="file_url" jdbcType="VARCHAR" property="fileUrl"/>
<result column="ppt_url" jdbcType="VARCHAR" property="pptUrl"/>
<result column="pdf_url" jdbcType="VARCHAR" property="pdfUrl"/>
<result column="type" jdbcType="VARCHAR" property="type"/> <result column="type" jdbcType="VARCHAR" property="type"/>
<result column="chapter_id" jdbcType="VARCHAR" property="chapterId"/> <result column="chapter_id" jdbcType="VARCHAR" property="chapterId"/>
<result column="lesson_id" jdbcType="VARCHAR" property="lessonId"/> <result column="lesson_id" jdbcType="VARCHAR" property="lessonId"/>
......
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