| 
					
				 | 
			
			
				@@ -4,6 +4,7 @@ import cn.hutool.core.util.ObjectUtil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import cn.hutool.poi.excel.ExcelUtil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import cn.hutool.poi.excel.ExcelWriter; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.alibaba.fastjson2.JSON; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.baomidou.mybatisplus.extension.plugins.pagination.Page; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -12,6 +13,8 @@ import com.xunmei.common.core.constant.SecurityConstants; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.xunmei.common.core.domain.edu.domain.SysLearningMaterials; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.xunmei.common.core.domain.edu.dto.SysLearningMaterialsInsertDto; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.xunmei.common.core.domain.edu.dto.SysLearningMaterialsPageDto; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.xunmei.common.core.domain.edu.vo.SysLearningMaterialsDetailVo; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.xunmei.common.core.domain.edu.vo.SysLearningMaterialsFileListVo; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.xunmei.common.core.domain.edu.vo.SysLearningMaterialsPageVo; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.xunmei.common.core.utils.DateHelper; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.xunmei.common.core.utils.DateUtils; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -31,6 +34,7 @@ import javax.servlet.http.HttpServletResponse; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.io.IOException; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.net.URLEncoder; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.util.*; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.util.stream.Collectors; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import java.util.stream.Stream; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 /** 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -88,10 +92,14 @@ public class SysLearningMaterialsServiceImpl extends ServiceImpl<SysLearningMate 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         String fileList = record.getFileList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        List<Map> maps = JSON.parseArray(fileList, Map.class); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        String name = maps.get(0).get("name").toString(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<String> list = JSON.parseArray(fileList, String.class); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<String> arrayList = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        for (String fileStr : list) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            final Map map = JSON.parseObject(fileStr, Map.class); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            arrayList.add(map.get("name").toString()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         // 获取最后一个斜杠后面的字符串 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        record.setFileList(name); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        record.setFileList(String.join(",", arrayList)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     /** 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -101,8 +109,12 @@ public class SysLearningMaterialsServiceImpl extends ServiceImpl<SysLearningMate 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      * @return 学习资料 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-    public SysLearningMaterials selectSysLearningMaterialsById(Long id) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        return sysLearningMaterialsMapper.selectById(id); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public SysLearningMaterialsDetailVo selectSysLearningMaterialsById(Long id) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        final SysLearningMaterials materials = sysLearningMaterialsMapper.selectById(id); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SysLearningMaterialsDetailVo vo = new SysLearningMaterialsDetailVo(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        BeanUtils.copyProperties(materials, vo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        vo.setFileList(ObjectUtil.isNotEmpty(materials.getFileList()) ? JSON.parseArray(materials.getFileList(), String.class) : new ArrayList<>()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return vo; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     /** 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -119,7 +131,7 @@ public class SysLearningMaterialsServiceImpl extends ServiceImpl<SysLearningMate 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      * 新增学习资料 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-     * @param sysLearningMaterials 学习资料 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @param request 学习资料 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      * @return 结果 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				      */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @Override 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -130,6 +142,7 @@ public class SysLearningMaterialsServiceImpl extends ServiceImpl<SysLearningMate 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         sysLearningMaterials.setCreateTime(DateUtils.getNowDate()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         sysLearningMaterials.setUpdateBy(String.valueOf(SecurityUtils.getUserId())); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         sysLearningMaterials.setUpdateTime(DateUtils.getNowDate()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        sysLearningMaterials.setFileList(ObjectUtil.isNotEmpty(request.getFileList())?JSON.toJSONString(request.getFileList()):null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         sysLearningMaterials.setIsOpen(0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         SysOrg sysOrg = remoteOrgService.selectSysOrgById(sysLearningMaterials.getOrgId(), SecurityConstants.INNER); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         if (sysOrg != null) { 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -187,6 +200,26 @@ public class SysLearningMaterialsServiceImpl extends ServiceImpl<SysLearningMate 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public List<SysLearningMaterialsFileListVo> fileList(Long orgId) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        final LambdaQueryWrapper<SysLearningMaterials> wrapper = new LambdaQueryWrapper<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        final SysOrg sysOrg = RemoteCallHandlerExecutor.executeRemoteCall(() -> remoteOrgService.selectOrgById(orgId, SecurityConstants.INNER), ErrorMsgConstants.QUERY_ORG_DATA_ERROR); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        wrapper.eq(SysLearningMaterials::getIsOpen, 1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        wrapper.eq(SysLearningMaterials::getDeleted, 0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        wrapper.isNotNull(SysLearningMaterials::getFileList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        wrapper.likeRight(SysLearningMaterials::getOrgPath, sysOrg.getPath()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        final List<SysLearningMaterials> list = sysLearningMaterialsMapper.selectList(wrapper); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (ObjectUtil.isEmpty(list)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            return new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return list.stream().map(sysLearningMaterials -> { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            final SysLearningMaterialsFileListVo sysLearningMaterialsFileListVo = new SysLearningMaterialsFileListVo(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            BeanUtils.copyProperties(sysLearningMaterials, sysLearningMaterialsFileListVo); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            sysLearningMaterialsFileListVo.setFileList(JSON.parseArray(sysLearningMaterials.getFileList(), String.class)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            return sysLearningMaterialsFileListVo; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }).collect(Collectors.toList()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Override 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     public void export(SysLearningMaterialsPageDto sysLearningMaterials, HttpServletResponse response) throws 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             IOException { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         SysOrg sysOrg = RemoteCallHandlerExecutor.executeRemoteCall(() -> remoteOrgService.selectOrgById(sysLearningMaterials.getOrgId(), SecurityConstants.INNER), ErrorMsgConstants.QUERY_ORG_DATA_ERROR); 
			 |