Browse Source

Merge remote-tracking branch 'origin/online1' into online1

Joburgess 4 years ago
parent
commit
e6ea7ac425

+ 9 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/MusicGroupDao.java

@@ -5,6 +5,7 @@ import com.ym.mec.biz.dal.dto.CalenderPushDto;
 import com.ym.mec.biz.dal.dto.MusicCardDto;
 import com.ym.mec.biz.dal.dto.MusicGroupRegisterDto;
 import com.ym.mec.biz.dal.dto.RegisterSubjectDto;
+import com.ym.mec.biz.dal.entity.CooperationOrgan;
 import com.ym.mec.biz.dal.entity.MusicGroup;
 import com.ym.mec.biz.dal.entity.School;
 import com.ym.mec.biz.dal.enums.ClassGroupTypeEnum;
@@ -354,8 +355,16 @@ public interface MusicGroupDao extends BaseDAO<String, MusicGroup> {
 
     /**
      * 获取进行中的乐团的教务老师
+     *
      * @param organId
      * @return
      */
     List<SysUser> getMusicGroupEduTeacher(@Param("organId") Integer organId);
+
+    /**
+     * 获取用户的合作单位
+     * @param userId
+     * @return
+     */
+    CooperationOrgan findUserMusicGroupCooperationOrgan(@Param("userId") Integer userId);
 }

+ 13 - 0
mec-biz/src/main/resources/config/mybatis/MusicGroupMapper.xml

@@ -660,4 +660,17 @@
         WHERE mg.organ_id_ = #{organId} AND status_ = 'PROGRESS' AND mg.educational_teacher_id_ >0
         GROUP BY su.id_
     </select>
+
+    <select id="findUserMusicGroupCooperationOrgan" resultMap="com.ym.mec.biz.dal.dao.CooperationOrganDao.CooperationOrgan">
+        SELECT co.name_,s.name_ linkman_
+        FROM music_group mg
+        LEFT JOIN student_registration sr ON sr.music_group_id_ = mg.id_
+        LEFT JOIN cooperation_organ co ON co.id_ = mg.cooperation_organ_id_
+        LEFT JOIN school s ON s.id_ = mg.school_id_
+        WHERE sr.user_id_ = #{userId}
+        AND mg.status_ = 'PROGRESS'
+        AND sr.music_group_status_ = 'NORMAL'
+        ORDER BY sr.id_ ASC
+        LIMIT 1
+    </select>
 </mapper>

+ 29 - 24
mec-web/src/main/java/com/ym/mec/web/controller/ExportController.java

@@ -1163,29 +1163,22 @@ public class ExportController extends BaseController {
                     }
                     row.setDegreeFee(row.getActualAmount().subtract(row.getVipCourseFee()).subtract(row.getPracticeCourseFee()).subtract(row.getTheoryCourseFee()));
                 } else {
-                    if(row.getChargeType() != null && SporadicChargeTypeEnum.LEVEL.getCode().equals(row.getChargeType())){
+                    if (row.getChargeType() != null && SporadicChargeTypeEnum.LEVEL.getCode().equals(row.getChargeType())) {
                         row.setDegreeFee(row.getActualAmount());
-                    }else if(row.getChargeType() != null && SporadicChargeTypeEnum.PRACTICE_GROUP_BUY.getCode().equals(row.getChargeType())){
+                    } else if (row.getChargeType() != null && SporadicChargeTypeEnum.PRACTICE_GROUP_BUY.getCode().equals(row.getChargeType())) {
                         row.setPracticeCourseFee(row.getActualAmount());
                     } else {
                         row.setOtherFee(row.getActualAmount());
-                    }                }
+                    }
+                }
                 if (row.getChargeType() != null) {
                     for (SporadicChargeTypeEnum chargeType : SporadicChargeTypeEnum.values()) {
                         if (!chargeType.getCode().equals(row.getChargeType())) continue;
                         row.setSporadicType(chargeType.getMsg());
                     }
                 }
-                School userSchool = musicGroupDao.findUserSchool(row.getUserId());
-                if (userSchool != null) {
-                    row.setSchoolName(userSchool.getName());
-                }
             } else if (row.getGroupType().equals(GroupType.PRACTICE)) {
                 row.setPracticeCourseFee(row.getActualAmount());
-                School userSchool = musicGroupDao.findUserSchool(row.getUserId());
-                if (userSchool != null) {
-                    row.setSchoolName(userSchool.getName());
-                }
                 PracticeCourseDto practiceGroup = practiceGroupDao.findByGroupId(Integer.parseInt(row.getMusicGroupId()));
                 if (practiceGroup != null) {
                     row.setSubjectName(practiceGroup.getSubjectName());
@@ -1211,7 +1204,18 @@ public class ExportController extends BaseController {
                     row.setTransferFee(BigDecimal.ZERO);
                 }
             }
-            if (row.getMusicGroupId()!= null && row.getMusicGroupId().equals("null")) {
+            //如果合作单位不存在取学员的第一个乐团的合作单位和教学点
+            if (row.getCooperationOrganName() == null) {
+                CooperationOrgan cooperationOrgan = musicGroupDao.findUserMusicGroupCooperationOrgan(row.getUserId());
+                if (cooperationOrgan != null) {
+                    row.setCooperationOrganName(cooperationOrgan.getName());
+                }
+                if (row.getSchoolName() == null && cooperationOrgan != null) {
+                    //linkman 赋予教学点值
+                    row.setSchoolName(cooperationOrgan.getLinkman());
+                }
+            }
+            if (row.getMusicGroupId() != null && row.getMusicGroupId().equals("null")) {
                 row.setMusicGroupId("");
             }
             String paymentChannel = "";
@@ -2297,11 +2301,11 @@ public class ExportController extends BaseController {
                     }
                     row.setDegreeFee(row.getActualAmount().subtract(row.getVipCourseFee()).subtract(row.getPracticeCourseFee()).subtract(row.getTheoryCourseFee()));
                 } else {
-                    if(row.getChargeType() != null && SporadicChargeTypeEnum.LEVEL.getCode().equals(row.getChargeType())){
+                    if (row.getChargeType() != null && SporadicChargeTypeEnum.LEVEL.getCode().equals(row.getChargeType())) {
                         row.setDegreeFee(row.getActualAmount());
-                    }else if(row.getChargeType() != null && SporadicChargeTypeEnum.PRACTICE_GROUP_BUY.getCode().equals(row.getChargeType())){
+                    } else if (row.getChargeType() != null && SporadicChargeTypeEnum.PRACTICE_GROUP_BUY.getCode().equals(row.getChargeType())) {
                         row.setPracticeCourseFee(row.getActualAmount());
-                    }else {
+                    } else {
                         row.setOtherFee(row.getActualAmount());
                     }
                 }
@@ -2311,16 +2315,8 @@ public class ExportController extends BaseController {
                         row.setSporadicType(chargeType.getMsg());
                     }
                 }
-                School userSchool = musicGroupDao.findUserSchool(row.getUserId());
-                if (userSchool != null) {
-                    row.setSchoolName(userSchool.getName());
-                }
             } else if (row.getGroupType().equals(GroupType.PRACTICE)) {
                 row.setPracticeCourseFee(row.getActualAmount());
-                School userSchool = musicGroupDao.findUserSchool(row.getUserId());
-                if (userSchool != null) {
-                    row.setSchoolName(userSchool.getName());
-                }
                 PracticeCourseDto practiceGroup = practiceGroupDao.findByGroupId(Integer.parseInt(row.getMusicGroupId()));
                 if (practiceGroup != null) {
                     row.setSubjectName(practiceGroup.getSubjectName());
@@ -2346,7 +2342,16 @@ public class ExportController extends BaseController {
                     row.setTransferFee(BigDecimal.ZERO);
                 }
             }
-            if (row.getMusicGroupId()!= null && row.getMusicGroupId().equals("null")) {
+            //如果合作单位不存在取学员的第一个乐团的合作单位和教学点
+            if (row.getCooperationOrganName() == null) {
+                CooperationOrgan cooperationOrgan = musicGroupDao.findUserMusicGroupCooperationOrgan(row.getUserId());
+                row.setCooperationOrganName(cooperationOrgan.getName());
+                if (row.getSchoolName() != null) {
+                    //linkman 赋予教学点值
+                    row.setSchoolName(cooperationOrgan.getLinkman());
+                }
+            }
+            if (row.getMusicGroupId() != null && row.getMusicGroupId().equals("null")) {
                 row.setMusicGroupId("");
             }
             String paymentChannel = "";