Browse Source

老师信息导入修改

liweifan 3 years ago
parent
commit
be1479a0c8

+ 6 - 6
mec-biz/src/main/java/com/ym/mec/biz/dal/entity/TempLiveTeacherCard.java

@@ -26,12 +26,12 @@ public class TempLiveTeacherCard {
 	private String introduction;
 
 	@ApiModelProperty("曲目名称")
-	private String musicNames;
+	private String musicContent;
 
 	@ApiModelProperty("声部id(单个声部)")
 	private String subjectId;
 
-	@ApiModelProperty("级别 low 初级 medium 中级 high 高级")
+	@ApiModelProperty("级别 one 一级 two 二级 three 三级")
 	private String level;
 
 	@ApiModelProperty("群聊id")
@@ -88,12 +88,12 @@ public class TempLiveTeacherCard {
 		return this.introduction;
 	}
 
-	public void setMusicNames(String musicNames){
-		this.musicNames = musicNames;
+	public String getMusicContent() {
+		return musicContent;
 	}
 
-	public String getMusicNames(){
-		return this.musicNames;
+	public void setMusicContent(String musicContent) {
+		this.musicContent = musicContent;
 	}
 
 	public void setSubjectId(String subjectId){

+ 3 - 3
mec-biz/src/main/java/com/ym/mec/biz/dal/enums/LevelEnum.java

@@ -6,9 +6,9 @@ import com.ym.mec.common.enums.BaseEnum;
  * 学员级别
  */
 public enum LevelEnum implements BaseEnum<String, LevelEnum> {
-    low("初级"),
-    medium("中级"),
-    high("高级");
+    one("一级"),
+    two("二级"),
+    three("三级");
 
     private String code;
     private String msg;

+ 34 - 8
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TempBuyFreeLiveTheoryCourseServiceImpl.java

@@ -13,6 +13,8 @@ import com.ym.mec.util.excel.POIUtil;
 import com.ym.mec.util.ini.IniFileUtil;
 import org.apache.commons.lang3.StringUtils;
 import org.apache.poi.ss.usermodel.PictureData;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
 import com.ym.mec.common.service.impl.BaseServiceImpl;
 import com.ym.mec.biz.dal.entity.TempBuyFreeLiveTheoryCourse;
@@ -28,13 +30,11 @@ import org.springframework.web.multipart.MultipartFile;
 import javax.annotation.Resource;
 import java.io.ByteArrayInputStream;
 import java.io.InputStream;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
+import java.util.*;
 
 @Service
 public class TempBuyFreeLiveTheoryCourseServiceImpl extends BaseServiceImpl<Integer, TempBuyFreeLiveTheoryCourse> implements TempBuyFreeLiveTheoryCourseService {
+    private final static Logger log = LoggerFactory.getLogger(TempBuyFreeLiveTheoryCourseServiceImpl.class);
 
     @Autowired
     private TempBuyFreeLiveTheoryCourseDao tempBuyFreeLiveTheoryCourseDao;
@@ -82,7 +82,7 @@ public class TempBuyFreeLiveTheoryCourseServiceImpl extends BaseServiceImpl<Inte
             }
             String recommendLevel = objectMap.getString("recommendLevel");
             if (StringUtils.isNotEmpty(recommendLevel) && null == LevelEnum.getByName(recommendLevel.trim())) {
-                err += "老师推荐级别列,数据异常(可选值:初级 中级 高级)/";
+                err += "老师推荐级别列,数据异常(可选值:一级 二级 三级)/";
             }
             if (StringUtils.isNotEmpty(err)) {
                 err = "第" + (i + 1) + "行数据异常:" + err.substring(0, err.length() - 1);
@@ -146,7 +146,7 @@ public class TempBuyFreeLiveTheoryCourseServiceImpl extends BaseServiceImpl<Inte
             }
             String level = objectMap.getString("level");
             if (StringUtils.isNotEmpty(level) && null == LevelEnum.getByName(level.trim())) {
-                err += "老师推荐级别列,数据异常(可选值:初级 中级 高级)/";
+                err += "老师推荐级别列,数据异常(可选值:一级 二级 三级)/";
             }
             if (StringUtils.isNotEmpty(err)) {
                 err = "第" + (i + 1) + "行数据异常:" + err.substring(0, err.length() - 1);
@@ -166,7 +166,7 @@ public class TempBuyFreeLiveTheoryCourseServiceImpl extends BaseServiceImpl<Inte
         //导入数据库
         for (TempLiveTeacherCard temp : tempList) {
             LevelEnum byName = LevelEnum.getByName(temp.getLevel());
-            if(null == byName){
+            if (null == byName) {
                 continue;
             }
             TempLiveTeacherCard card = tempLiveTeacherCardDao.getBySubjectIdAndLevel(temp.getSubjectId(), byName.getCode());
@@ -176,9 +176,35 @@ public class TempBuyFreeLiveTheoryCourseServiceImpl extends BaseServiceImpl<Inte
             card.setUsername(temp.getUsername());
             card.setAvatar(temp.getAvatar());
             card.setIntroduction(temp.getIntroduction());
-            card.setMusicNames(temp.getMusicNames());
+
+            //处理曲目内容json
+            String json = getMusicContent(temp.getMusicContent());
+            card.setMusicContent(json);
             tempLiveTeacherCardDao.update(card);
         }
         return null;
     }
+
+    private String getMusicContent(String musicContent) {
+        if (StringUtils.isEmpty(musicContent)) {
+            return null;
+        }
+        musicContent = musicContent.trim();
+        List<String> musicList = Arrays.asList(musicContent.split("\\|"));
+        List<Map<String, String>> mapList = new ArrayList<>();
+        for (String musicStr : musicList) {
+            Map<String, String> musicMap = new HashMap<>();
+            try {
+                String[] split = musicStr.split(",");
+                musicMap.put("coourseDay", split[0]);
+                musicMap.put("coourseTime", split[1]);
+                musicMap.put("musicName", split[2]);
+                mapList.add(musicMap);
+            } catch (Exception e) {
+                log.error("数据转换失败 data is {}", musicContent);
+                e.printStackTrace();
+            }
+        }
+        return JSONObject.toJSONString(mapList);
+    }
 }

+ 5 - 5
mec-biz/src/main/resources/config/mybatis/TempLiveTeacherCardMapper.xml

@@ -12,7 +12,7 @@
         <result column="username_" property="username"/>
         <result column="avatar_" property="avatar"/>
         <result column="introduction_" property="introduction"/>
-        <result column="music_names" property="musicNames"/>
+        <result column="music_content_" property="musicContent"/>
         <result column="subject_id_" property="subjectId"/>
         <result column="level_" property="level"/>
         <result column="im_group_id_" property="imGroupId"/>
@@ -44,8 +44,8 @@
     <insert id="insert" parameterType="com.ym.mec.biz.dal.entity.TempLiveTeacherCard" useGeneratedKeys="true"
             keyColumn="id" keyProperty="id">
         INSERT INTO temp_live_teacher_card
-        (id_,user_id_,username_,avatar_,introduction_,music_names,subject_id_,level_,im_group_id_,live_goods_id_,create_time_,update_time_)
-        VALUES(#{id},#{username},#{userId},#{avatar},#{introduction},#{musicNames},#{subjectId},#{level},#{imGroupId},#{liveGoodsId},#{createTime},#{updateTime})
+        (id_,user_id_,username_,avatar_,introduction_,music_content_,subject_id_,level_,im_group_id_,live_goods_id_,create_time_,update_time_)
+        VALUES(#{id},#{username},#{userId},#{avatar},#{introduction},#{musicContent},#{subjectId},#{level},#{imGroupId},#{liveGoodsId},#{createTime},#{updateTime})
     </insert>
 
     <!-- 根据主键查询一条记录 -->
@@ -70,8 +70,8 @@
             <if test="id != null">
                 id_ = #{id},
             </if>
-            <if test="musicNames != null">
-                music_names = #{musicNames},
+            <if test="musicContent != null">
+                music_content_ = #{musicContent},
             </if>
             <if test="imGroupId != null">
                 im_group_id_ = #{imGroupId},

+ 4 - 8
mec-web/src/main/java/com/ym/mec/web/controller/ExportController.java

@@ -2984,20 +2984,16 @@ public class ExportController extends BaseController {
             if(StringUtils.isEmpty(recommendLevel)){
                 return;
             }
-            //low 初级 medium 中级 high 高级
-            if(recommendLevel.equals("low")){
-                o.setRecommendLevel("初级");
-            }else if(recommendLevel.equals("medium")){
-                o.setRecommendLevel("中级");
-            }else if(recommendLevel.equals("high")){
-                o.setRecommendLevel("高级");
+            LevelEnum levelEnum = LevelEnum.valueOf(recommendLevel);
+            if(null!= levelEnum){
+                o.setRecommendLevel(levelEnum.getMsg());
             }
         });
 
         OutputStream outputStream = response.getOutputStream();
         try {
             String[] header = {
-                    "ID","用户ID","购买学生姓名","老师推荐级别(初级/中级/高级)"};
+                    "ID","用户ID","购买学生姓名","老师推荐级别(一级/二级/三级)"};
             String[] body = {"id","userId","studentName","recommendLevel"};
             HSSFWorkbook workbook = POIUtil.exportExcel(header, body, list);
             response.setContentType("application/octet-stream");

+ 1 - 1
mec-web/src/main/resources/columnMapper.ini

@@ -74,5 +74,5 @@ ID = id
 级别 = level
 老师名称 = username
 老师介绍 = introduction
-教学曲目 = musicNames
+教学曲目 = musicContent
 头像地址 = avatar