瀏覽代碼

查询老师列表接口修改

liweifan 3 年之前
父節點
當前提交
c04944f72d

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/TempBuyFreeLiveTheoryCourseDao.java

@@ -12,4 +12,6 @@ public interface TempBuyFreeLiveTheoryCourseDao extends BaseDAO<Integer, TempBuy
     int countByUserId(@Param("userId") Integer userId);
 
     List<TempBuyFreeLiveTheoryCourse> list(@Param("param") TempBuyFreeLiveTheoryCourse tempBuyFreeLiveTheoryCourse);
+
+
 }

+ 3 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/TempLiveTeacherCardDao.java

@@ -2,6 +2,7 @@ package com.ym.mec.biz.dal.dao;
 
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.biz.dal.entity.TempLiveTeacherCard;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
 
@@ -9,4 +10,6 @@ public interface TempLiveTeacherCardDao extends BaseDAO<Integer, TempLiveTeacher
 
 
     List<TempLiveTeacherCard> list(TempLiveTeacherCard teacherCard);
+
+    TempLiveTeacherCard getBySubjectIdAndLevel(@Param("subjectId") String subjectId, @Param("level") String level);
 }

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

@@ -10,7 +10,9 @@ public enum TemplateTypeEnum implements BaseEnum<String, TemplateTypeEnum> {
     OA_QUIT_MUSIC_GROUP("OA_QUIT_MUSIC_GROUP", "乐团退费模板"),
     EXTERNAL_STUDENT_IMPORT_MUSIC_GROUP("EXTERNAL_STUDENT_IMPORT_MUSIC_GROUP", "外部学生入团导入模板"),
 
-    BUY_FREE_LIVE_THEORY_COURSE("BUY_FREE_LIVE_THEORY_COURSE", "直播临时活动学员购买导入模板");
+    BUY_FREE_LIVE_THEORY_COURSE("BUY_FREE_LIVE_THEORY_COURSE", "直播临时活动学员购买导入模板"),
+    LIVE_TEACHER_CARD("LIVE_TEACHER_CARD","直播临时活动上课老师名片导入模板"),
+    ;
 
 
     private String code;

+ 2 - 0
mec-biz/src/main/java/com/ym/mec/biz/service/TempBuyFreeLiveTheoryCourseService.java

@@ -9,4 +9,6 @@ import java.util.List;
 public interface TempBuyFreeLiveTheoryCourseService extends BaseService<Integer, TempBuyFreeLiveTheoryCourse> {
 
     List<String> importBuyFreeLiveTheoryCourse(MultipartFile file, Integer id) throws Exception;
+
+    List<String> importLiveTeacherCard(MultipartFile file, Integer id) throws Exception;
 }

+ 114 - 38
mec-biz/src/main/java/com/ym/mec/biz/service/impl/TempBuyFreeLiveTheoryCourseServiceImpl.java

@@ -1,7 +1,9 @@
 package com.ym.mec.biz.service.impl;
 
 import com.alibaba.fastjson.JSONObject;
+import com.ym.mec.biz.dal.dao.TempLiveTeacherCardDao;
 import com.ym.mec.biz.dal.entity.Goods;
+import com.ym.mec.biz.dal.entity.TempLiveTeacherCard;
 import com.ym.mec.biz.dal.enums.*;
 import com.ym.mec.common.dal.BaseDAO;
 import com.ym.mec.common.entity.UploadReturnBean;
@@ -23,6 +25,7 @@ import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
 import org.springframework.web.multipart.MultipartFile;
 
+import javax.annotation.Resource;
 import java.io.ByteArrayInputStream;
 import java.io.InputStream;
 import java.util.ArrayList;
@@ -36,6 +39,9 @@ public class TempBuyFreeLiveTheoryCourseServiceImpl extends BaseServiceImpl<Inte
     @Autowired
     private TempBuyFreeLiveTheoryCourseDao tempBuyFreeLiveTheoryCourseDao;
 
+    @Resource
+    private TempLiveTeacherCardDao tempLiveTeacherCardDao;
+
     @Override
     public BaseDAO<Integer, TempBuyFreeLiveTheoryCourse> getDAO() {
         return tempBuyFreeLiveTheoryCourseDao;
@@ -50,50 +56,47 @@ public class TempBuyFreeLiveTheoryCourseServiceImpl extends BaseServiceImpl<Inte
         List<TempBuyFreeLiveTheoryCourse> tempList = new ArrayList<>();
 
         List<String> errMsg = new ArrayList();
-        for (String e : sheetsListMap.keySet()) {
-            List<Map<String, Object>> sheet = sheetsListMap.get(e);
-            valueIsNull:
-            for (int i = 0; i < sheet.size(); i++) {
-                Map<String, Object> row = sheet.get(i);
-                if (row.size() == 0) {
+        List<Map<String, Object>> sheet = sheetsListMap.get("Sheet0");
+
+        for (int i = 0; i < sheet.size(); i++) {
+            Map<String, Object> row = sheet.get(i);
+            if (row.size() == 0) {
+                continue;
+            }
+            JSONObject objectMap = new JSONObject();
+            for (String s : row.keySet()) {
+                String columnValue = columns.get(s);
+                if (StringUtils.isEmpty(columnValue)) {
                     continue;
                 }
-                JSONObject objectMap = new JSONObject();
-                for (String s : row.keySet()) {
-                    String columnValue = columns.get(s);
-                    if (StringUtils.isEmpty(columnValue)) {
-                        continue;
-                    }
-                    if (null == row.get(s)) {
-                        continue;
-                    }
-                    objectMap.put(columnValue, row.get(s));
-                }
-                String err = "";
-                //校验
-                Integer tempId = objectMap.getInteger("id");
-                if (null == tempId) {
-                    err += "ID不能为空/";
-                }
-                String recommendLevel = objectMap.getString("recommendLevel");
-                if (StringUtils.isNotEmpty(recommendLevel) && null == LevelEnum.getByName(recommendLevel.trim())) {
-                    err += "老师推荐级别列,数据异常(可选值:初级 中级 高级)/";
-                }
-                if (StringUtils.isNotEmpty(err)) {
-                    err = "第" + (i + 1) + "行数据异常:" +err.substring(0, err.length() - 1);
-                    errMsg.add(err);
+                if (null == row.get(s)) {
+                    continue;
                 }
+                objectMap.put(columnValue, row.get(s));
+            }
+            String err = "";
+            //校验
+            Integer tempId = objectMap.getInteger("id");
+            if (null == tempId) {
+                err += "ID不能为空/";
+            }
+            String recommendLevel = objectMap.getString("recommendLevel");
+            if (StringUtils.isNotEmpty(recommendLevel) && null == LevelEnum.getByName(recommendLevel.trim())) {
+                err += "老师推荐级别列,数据异常(可选值:初级 中级 高级)/";
+            }
+            if (StringUtils.isNotEmpty(err)) {
+                err = "第" + (i + 1) + "行数据异常:" + err.substring(0, err.length() - 1);
+                errMsg.add(err);
+            }
 
-                TempBuyFreeLiveTheoryCourse course = null;
-                try {
-                    course = JSONObject.parseObject(objectMap.toJSONString(), TempBuyFreeLiveTheoryCourse.class);
-                    tempList.add(course);
-                } catch (Exception ex) {
-                    throw new BizException("导入数据出错", ex);
-                }
+            try {
+                TempBuyFreeLiveTheoryCourse course = JSONObject.parseObject(objectMap.toJSONString(), TempBuyFreeLiveTheoryCourse.class);
+                tempList.add(course);
+            } catch (Exception ex) {
+                throw new BizException("导入数据出错", ex);
             }
         }
-        if(!CollectionUtils.isEmpty(errMsg)){
+        if (!CollectionUtils.isEmpty(errMsg)) {
             return errMsg;
         }
         //导入数据库
@@ -108,4 +111,77 @@ public class TempBuyFreeLiveTheoryCourseServiceImpl extends BaseServiceImpl<Inte
         }
         return null;
     }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class, isolation = Isolation.READ_COMMITTED)
+    public List<String> importLiveTeacherCard(MultipartFile file, Integer id) throws Exception {
+        Map<String, List<Map<String, Object>>> sheetsListMap = POIUtil.importExcel(new ByteArrayInputStream(file.getBytes()), 2, file.getOriginalFilename());
+        InputStream inputStream = new ClassPathResource("columnMapper.ini").getInputStream();
+        Map<String, String> columns = IniFileUtil.readIniFile(inputStream, TemplateTypeEnum.LIVE_TEACHER_CARD.getMsg());
+        List<TempLiveTeacherCard> tempList = new ArrayList<>();
+
+        List<String> errMsg = new ArrayList();
+        List<Map<String, Object>> sheet = sheetsListMap.get(0);
+        for (int i = 0; i < sheet.size(); i++) {
+            Map<String, Object> row = sheet.get(i);
+            if (row.size() == 0) {
+                continue;
+            }
+            JSONObject objectMap = new JSONObject();
+            for (String s : row.keySet()) {
+                String columnValue = columns.get(s);
+                if (StringUtils.isEmpty(columnValue)) {
+                    continue;
+                }
+                if (null == row.get(s)) {
+                    continue;
+                }
+                objectMap.put(columnValue, row.get(s));
+            }
+            String err = "";
+            //校验
+            Integer subjectId = objectMap.getInteger("subjectId");
+            if (null == subjectId) {
+                err += "声部id不能为空/";
+            }
+            String level = objectMap.getString("level");
+            if (StringUtils.isNotEmpty(level) && null == LevelEnum.getByName(level.trim())) {
+                err += "老师推荐级别列,数据异常(可选值:初级 中级 高级)/";
+            }
+            if (StringUtils.isNotEmpty(err)) {
+                err = "第" + (i + 1) + "行数据异常:" + err.substring(0, err.length() - 1);
+                errMsg.add(err);
+            }
+
+            try {
+                TempLiveTeacherCard course = JSONObject.parseObject(objectMap.toJSONString(), TempLiveTeacherCard.class);
+                tempList.add(course);
+            } catch (Exception ex) {
+                throw new BizException("导入数据出错", ex);
+            }
+        }
+        if (!CollectionUtils.isEmpty(errMsg)) {
+            return errMsg;
+        }
+        //导入数据库
+        for (TempLiveTeacherCard temp : tempList) {
+            if (null == temp.getId()) {
+                continue;
+            }
+            LevelEnum byName = LevelEnum.getByName(temp.getLevel());
+            if(null == byName){
+                continue;
+            }
+            TempLiveTeacherCard card = tempLiveTeacherCardDao.getBySubjectIdAndLevel(temp.getSubjectId(), byName.getCode());
+            if (null == card) {
+                continue;
+            }
+            card.setUsername(temp.getUsername());
+            card.setAvatar(temp.getAvatar());
+            card.setIntroduction(temp.getIntroduction());
+            card.setMusicNames(temp.getMusicNames());
+            tempLiveTeacherCardDao.update(card);
+        }
+        return null;
+    }
 }

+ 28 - 17
mec-biz/src/main/resources/config/mybatis/SysUserCashAccountMapper.xml

@@ -21,24 +21,31 @@
 
     <!-- 根据主键查询一条记录 -->
     <select id="get" resultMap="SysUserCashAccount">
-		SELECT * FROM sys_user_cash_account WHERE user_id_ = #{userId} 
-	</select>
-	
+        SELECT *
+        FROM sys_user_cash_account
+        WHERE user_id_ = #{userId}
+    </select>
+
     <select id="getLocked" resultMap="SysUserCashAccount" useCache="false" flushCache="true">
-		SELECT * FROM sys_user_cash_account WHERE user_id_ = #{userId} for update
-	</select>
+        SELECT *
+        FROM sys_user_cash_account
+        WHERE user_id_ = #{userId} for update
+    </select>
 
     <!-- 全查询 -->
     <select id="findAll" resultMap="SysUserCashAccount">
-		SELECT * FROM sys_user_cash_account where tenant_id_ = #{tenantId} ORDER BY user_id_
-	</select>
+        SELECT *
+        FROM sys_user_cash_account
+        where tenant_id_ = #{tenantId}
+        ORDER BY user_id_
+    </select>
 
     <!-- 向数据库增加一条记录 -->
     <insert id="insert" parameterType="com.ym.mec.biz.dal.entity.SysUserCashAccount" useGeneratedKeys="true"
             keyColumn="id" keyProperty="id">
         INSERT INTO sys_user_cash_account
-        (user_id_,currency_,create_time_,update_time,tenant_id_)
-        VALUES(#{userId},#{currency},now(),now(),#{tenantId})
+            (user_id_, currency_, create_time_, update_time, tenant_id_)
+        VALUES (#{userId}, #{currency}, now(), now(), #{tenantId})
     </insert>
 
     <!-- 根据主键查询一条记录 -->
@@ -75,8 +82,10 @@
 
     <!-- 根据主键删除一条记录 -->
     <delete id="delete">
-		DELETE FROM sys_user_cash_account WHERE user_id_ = #{userId} 
-	</delete>
+        DELETE
+        FROM sys_user_cash_account
+        WHERE user_id_ = #{userId}
+    </delete>
 
     <!-- 分页查询 -->
     <select id="queryPage" resultMap="SysUserCashAccount" parameterType="map">
@@ -86,8 +95,10 @@
 
     <!-- 查询当前表的总记录数 -->
     <select id="queryCount" resultType="int">
-		SELECT COUNT(*) FROM sys_user_cash_account where tenant_id_ = #{tenantId}
-	</select>
+        SELECT COUNT(*)
+        FROM sys_user_cash_account
+        where tenant_id_ = #{tenantId}
+    </select>
     <select id="findByUserIds" resultMap="SysUserCashAccount">
         SELECT * FROM sys_user_cash_account WHERE user_id_ IN
         <foreach collection="userIds" item="userId" open="(" close=")" separator=",">
@@ -100,10 +111,10 @@
         SELECT SUM(suca.balance_) FROM sys_user_cash_account suca
         LEFT JOIN sys_user su ON su.id_ = suca.user_id_
         <where>
-        suca.tenant_id_ = #{tenantId}
-        <if test="organId != null">
-            and FIND_IN_SET(su.organ_id_,#{organId})
-        </if>
+            suca.tenant_id_ = #{tenantId}
+            <if test="organId != null">
+                and FIND_IN_SET(su.organ_id_,#{organId})
+            </if>
         </where>
     </select>
 

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

@@ -120,4 +120,10 @@
         where FIND_IN_SET(subject_id_,#{subjectId})
         order by field(t.level_,'low','medium','high')
     </select>
+
+    <select id="getBySubjectIdAndLevel" resultMap="TempLiveTeacherCard">
+        SELECT *
+        FROM temp_live_teacher_card
+        WHERE subject_id_ = #{subjectId} and level_ = #{level}
+    </select>
 </mapper>

+ 15 - 0
mec-web/src/main/java/com/ym/mec/web/controller/ImportController.java

@@ -196,6 +196,21 @@ public class ImportController extends BaseController {
         } else {
             return failed(StringUtils.join(errMsg, ","));
         }
+    }
 
+    @ApiOperation(value = "直播临时活动--上课老师名片信息")
+    @PostMapping(value = "importLiveTeacherCard")
+    @PreAuthorize("@pcs.hasPermissions('import/importLiveTeacherCard')")
+    public HttpResponseResult<List<String>> importLiveTeacherCard(@RequestParam("file") MultipartFile file) throws Exception {
+        SysUser sysUser = sysUserFeignService.queryUserInfo();
+        if (sysUser == null) {
+            return failed("用户信息获取失败");
+        }
+        List<String> errMsg = liveTheoryCourseService.importLiveTeacherCard(file, sysUser.getId());
+        if (CollectionUtils.isEmpty(errMsg)) {
+            return succeed();
+        } else {
+            return failed(StringUtils.join(errMsg, ","));
+        }
     }
 }

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

@@ -67,4 +67,12 @@
 ID = id
 用户ID = userId
 购买学生姓名 = studentName
-老师推荐级别(初级/中级/高级) = recommendLevel
+老师推荐级别(初级/中级/高级) = recommendLevel
+
+[直播临时活动上课老师名片导入模板]
+声部id = subjectId
+级别 = level
+老师名称 = username
+老师介绍 = introduction
+教学曲目 = musicNames
+头像地址 = avatar

+ 8 - 0
mec-web/src/main/resources/logback-spring.xml

@@ -71,6 +71,14 @@
     </logger>
 
     <!--开发环境:打印控制台 -->
+    <springProfile name="local">
+        <root level="INFO">
+            <appender-ref ref="stdout"/>
+            <appender-ref ref="file"/>
+        </root>
+    </springProfile>
+
+    <!--开发环境:打印控制台 -->
     <springProfile name="dev">
         <root level="INFO">
             <appender-ref ref="stdout"/>