Long 1 ماه پیش
والد
کامیت
7cefb82176

+ 7 - 1
fs-admin/src/main/java/com/fs/course/controller/FsCourseQuestionBankController.java

@@ -14,7 +14,6 @@ import com.fs.course.domain.FsCourseQuestionBank;
 import com.fs.course.dto.FsCourseQuestionBankImportDTO;
 import com.fs.course.service.IFsCourseQuestionBankService;
 
-import com.fs.store.dto.StoreOrderExpressExportDTO;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.*;
@@ -128,4 +127,11 @@ public class FsCourseQuestionBankController extends BaseController
         return AjaxResult.success(message);
     }
 
+    @GetMapping(value = "/getByIds")
+    public AjaxResult getByIds(@RequestParam List<Long> ids)
+    {
+        List<FsCourseQuestionBank> list = fsCourseQuestionBankService.selectFsCourseQuestionBankByIds(ids);
+        return AjaxResult.success(list);
+    }
+
 }

+ 19 - 5
fs-admin/src/main/java/com/fs/course/controller/FsVideoResourceController.java

@@ -10,16 +10,14 @@ import com.fs.common.enums.BusinessType;
 import com.fs.common.utils.DateUtils;
 import com.fs.course.domain.FsVideoResource;
 import com.fs.course.service.IFsVideoResourceService;
+import com.fs.course.vo.FsVideoResourceVO;
 import com.github.pagehelper.PageHelper;
 import lombok.AllArgsConstructor;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.web.bind.annotation.*;
 
 import java.time.LocalDateTime;
-import java.util.Arrays;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 /**
  * 资源库管理
@@ -37,14 +35,18 @@ public class FsVideoResourceController extends BaseController {
     @PreAuthorize("@ss.hasPermi('course:videoResource:list')")
     @GetMapping("/list")
     public TableDataInfo list(@RequestParam(required = false) String resourceName,
+                              @RequestParam(required = false) String fileName,
+                              @RequestParam(required = false) Integer typeId,
                               @RequestParam(required = false, defaultValue = "1") Integer pageNum,
                               @RequestParam(required = false, defaultValue = "10") Integer pageSize)
     {
         Map<String, Object> params = new HashMap<>();
         params.put("resourceName", resourceName);
+        params.put("fileName", fileName);
+        params.put("typeId", typeId);
 
         PageHelper.startPage(pageNum, pageSize);
-        List<FsVideoResource> list = fsVideoResourceService.selectVideoResourceListByMap(params);
+        List<FsVideoResourceVO> list = fsVideoResourceService.selectVideoResourceListByMap(params);
         return getDataTable(list);
     }
 
@@ -98,4 +100,16 @@ public class FsVideoResourceController extends BaseController {
         fsVideoResourceService.update(updateWrapper);
         return AjaxResult.success();
     }
+
+    @PreAuthorize("@ss.hasPermi('course:videoResource:add')")
+    @Log(title = "视频素材库", businessType = BusinessType.INSERT)
+    @PostMapping("/batchAddVideoResource")
+    public AjaxResult batchAddVideoResource(@RequestBody List<FsVideoResource> list) {
+        if (Objects.isNull(list) || list.isEmpty()) {
+            return AjaxResult.error("数据不能为空");
+        }
+        list.forEach(v -> v.setCreateTime(LocalDateTime.now()));
+        fsVideoResourceService.saveBatch(list);
+        return AjaxResult.success();
+    }
 }

+ 10 - 0
fs-service-system/src/main/java/com/fs/course/domain/FsVideoResource.java

@@ -22,6 +22,11 @@ public class FsVideoResource {
      */
     private String resourceName;
 
+    /**
+     * 分类ID
+     */
+    private Long typeId;
+
     /**
      * 文件名称
      */
@@ -75,4 +80,9 @@ public class FsVideoResource {
      * 是否已删除 0未删除 1已删除
      */
     private Integer isDel;
+
+    /**
+     * 课程ID
+     */
+    private String projectIds;
 }

+ 2 - 1
fs-service-system/src/main/java/com/fs/course/mapper/FsVideoResourceMapper.java

@@ -2,6 +2,7 @@ package com.fs.course.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.fs.course.domain.FsVideoResource;
+import com.fs.course.vo.FsVideoResourceVO;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
@@ -15,5 +16,5 @@ public interface FsVideoResourceMapper extends BaseMapper<FsVideoResource> {
      * @param params    参数
      * @return  list
      */
-    List<FsVideoResource> selectVideoResourceListByMap(@Param("params") Map<String, Object> params);
+    List<FsVideoResourceVO> selectVideoResourceListByMap(@Param("params") Map<String, Object> params);
 }

+ 7 - 0
fs-service-system/src/main/java/com/fs/course/service/IFsCourseQuestionBankService.java

@@ -83,4 +83,11 @@ public interface IFsCourseQuestionBankService
      * @return String
      */
     String importData(List<FsCourseQuestionBankImportDTO> list, @Size String nickName);
+
+    /**
+     * 根据ID查询题目
+     * @param ids   ids
+     * @return  list
+     */
+    List<FsCourseQuestionBank> selectFsCourseQuestionBankByIds(List<Long> ids);
 }

+ 2 - 1
fs-service-system/src/main/java/com/fs/course/service/IFsVideoResourceService.java

@@ -2,6 +2,7 @@ package com.fs.course.service;
 
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.fs.course.domain.FsVideoResource;
+import com.fs.course.vo.FsVideoResourceVO;
 
 import java.util.List;
 import java.util.Map;
@@ -14,5 +15,5 @@ public interface IFsVideoResourceService extends IService<FsVideoResource> {
      * @param params    参数
      * @return  list
      */
-    List<FsVideoResource> selectVideoResourceListByMap(Map<String, Object> params);
+    List<FsVideoResourceVO> selectVideoResourceListByMap(Map<String, Object> params);
 }

+ 10 - 0
fs-service-system/src/main/java/com/fs/course/service/impl/FsCourseQuestionBankServiceImpl.java

@@ -453,6 +453,16 @@ public class FsCourseQuestionBankServiceImpl implements IFsCourseQuestionBankSer
         return importMsg.toString();
     }
 
+    /**
+     * 根据ID查询题目
+     * @param ids   ids
+     * @return  list
+     */
+    @Override
+    public List<FsCourseQuestionBank> selectFsCourseQuestionBankByIds(List<Long> ids) {
+        return fsCourseQuestionBankMapper.selectFsCourseQuestionBankByIds(ids);
+    }
+
 
     public static String[] convertStringToArray(String inputString) {
         String cleanString = inputString.replaceAll("[\\[\\]\"\\s]", "");

+ 2 - 1
fs-service-system/src/main/java/com/fs/course/service/impl/FsVideoResourceServiceImpl.java

@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.fs.course.domain.FsVideoResource;
 import com.fs.course.mapper.FsVideoResourceMapper;
 import com.fs.course.service.IFsVideoResourceService;
+import com.fs.course.vo.FsVideoResourceVO;
 import org.springframework.stereotype.Service;
 
 import java.util.List;
@@ -19,7 +20,7 @@ public class FsVideoResourceServiceImpl extends ServiceImpl<FsVideoResourceMappe
      * @return  list
      */
     @Override
-    public List<FsVideoResource> selectVideoResourceListByMap(Map<String, Object> params) {
+    public List<FsVideoResourceVO> selectVideoResourceListByMap(Map<String, Object> params) {
         return baseMapper.selectVideoResourceListByMap(params);
     }
 }

+ 88 - 0
fs-service-system/src/main/java/com/fs/course/vo/FsVideoResourceVO.java

@@ -0,0 +1,88 @@
+package com.fs.course.vo;
+
+import lombok.Data;
+
+import java.time.LocalDateTime;
+
+@Data
+public class FsVideoResourceVO {
+
+    /**
+     * 主键ID
+     */
+    private Long id;
+
+    /**
+     * 资源名称
+     */
+    private String resourceName;
+
+    /**
+     * 分类ID
+     */
+    private Long typeId;
+
+    /**
+     * 分类名称
+     */
+    private String typeName;
+
+    /**
+     * 文件名称
+     */
+    private String fileName;
+
+    /**
+     * 缩略图
+     */
+    private String thumbnail;
+
+    /**
+     * 视频URL
+     */
+    private String videoUrl;
+
+    /**
+     * 线路1
+     */
+    private String line1;
+
+    /**
+     * 线路2
+     */
+    private String line2;
+
+    /**
+     * 线路3
+     */
+    private String line3;
+
+    /**
+     * 时长
+     */
+    private Integer duration;
+    /**
+     * 文件大小
+     */
+    private Long fileSize;
+
+    /**
+     * 文件key
+     */
+    private String fileKey;
+
+    /**
+     * 创建时间
+     */
+    private LocalDateTime createTime;
+
+    /**
+     * 是否已删除 0未删除 1已删除
+     */
+    private Integer isDel;
+
+    /**
+     * 课程ID
+     */
+    private String projectIds;
+}

+ 11 - 2
fs-service-system/src/main/resources/mapper/course/FsVideoResourceMapper.xml

@@ -4,13 +4,22 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.fs.course.mapper.FsVideoResourceMapper">
 
-    <select id="selectVideoResourceListByMap" resultType="com.fs.course.domain.FsVideoResource">
+    <select id="selectVideoResourceListByMap" resultType="com.fs.course.vo.FsVideoResourceVO">
         select
-            rr.*
+            rr.*,
+            ucc.cate_name typeName
         from fs_video_resource rr
+        left join fs_user_course_category ucc on ucc.cate_id = rr.type_id
         where rr.is_del = 0
         <if test="params.resourceName != null and params.resourceName != ''">
             and rr.resource_name like concat('%', #{params.resourceName}, '%')
         </if>
+        <if test="params.fileName != null and params.fileName != ''">
+            and rr.file_name like concat('%', #{params.fileName}, '%')
+        </if>
+        <if test="params.typeId != null">
+            and rr.type_id = #{params.typeId}
+        </if>
+        order by rr.create_time desc
     </select>
 </mapper>