Browse Source

Merge branch 'online1' of http://git.dayaedu.com/yonge/mec into mec_update_2021-11-02

zouxuan 3 năm trước cách đây
mục cha
commit
1faff2b815

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

@@ -723,4 +723,13 @@ public interface StudentRegistrationDao extends BaseDAO<Long, StudentRegistratio
     * @date 2021/11/10 17:55
     */
     List<MusicGroup> countInstrument(@Param("musicGroupIds") List<String> musicGroupIds);
+
+    /**
+    * @description: 获取分部缴费总金额
+     * @param musicGroupId
+    * @return java.util.List<java.util.Map<java.lang.Integer,java.math.BigDecimal>>
+    * @author zx
+    * @date 2021/11/16 10:26
+    */
+    List<Map<Long,BigDecimal>> querySubjectAmount(String musicGroupId);
 }

+ 12 - 0
mec-biz/src/main/java/com/ym/mec/biz/dal/dto/SubjectApplyDetailDto.java

@@ -2,6 +2,8 @@ package com.ym.mec.biz.dal.dto;
 
 import io.swagger.annotations.ApiModelProperty;
 
+import java.math.BigDecimal;
+
 /**
  * 乐团声部报名详情
  */
@@ -46,6 +48,16 @@ public class SubjectApplyDetailDto {
     @ApiModelProperty(value = "没买云教练入团人数", required = false)
     private Integer noCloudTeacherStudentNumOfNormal = 0;
 
+    private BigDecimal totalAmount;
+
+    public BigDecimal getTotalAmount() {
+        return totalAmount;
+    }
+
+    public void setTotalAmount(BigDecimal totalAmount) {
+        this.totalAmount = totalAmount;
+    }
+
     public Integer getMusicGroupSubjectPlanId() {
         return musicGroupSubjectPlanId;
     }

+ 6 - 4
mec-biz/src/main/java/com/ym/mec/biz/service/impl/ExportServiceImpl.java

@@ -680,12 +680,14 @@ public class ExportServiceImpl implements ExportService {
                     order.setPracticeCourseFee(BigDecimal.ZERO);
                     order.setTheoryCourseFee(BigDecimal.ZERO);
                     order.setDegreeFee(BigDecimal.ZERO);
+                    order.setMaintenanceFee(BigDecimal.ZERO);
                     order.setCloudTeacherFee(BigDecimal.ZERO);
                     order.setRepairFee(order.getMaintenanceProductFee());
                     continue;
                 } else if (order.getSaleAmount().compareTo(BigDecimal.ZERO) == 0 && order.getServiceAmount().compareTo(BigDecimal.ZERO) > 0) {
                     order.setRepairFee(order.getRepairFee());
                     order.setCloudTeacherFee(order.getCloudTeacherFee());
+                    order.setMaintenanceFee(order.getMaintenanceFee());
                     order.setMusicalFee(BigDecimal.ZERO);
                     order.setTeachingFee(BigDecimal.ZERO);
                     order.setOtherFee(BigDecimal.ZERO);
@@ -714,12 +716,12 @@ public class ExportServiceImpl implements ExportService {
                     theoryCourseFee = order.getTheoryCourseFee().multiply(order.getRouteAmount()).divide(order.getActualAmount(), 2, BigDecimal.ROUND_DOWN);
                     degreeFee = order.getDegreeFee().multiply(order.getRouteAmount()).divide(order.getActualAmount(), 2, BigDecimal.ROUND_DOWN);
                     repairFee = order.getRepairFee().multiply(order.getRouteAmount()).divide(order.getActualAmount(), 2, BigDecimal.ROUND_DOWN);
-                    maintenanceFee = order.getMaintenanceFee().multiply(order.getRouteAmount()).divide(order.getActualAmount(), 2, BigDecimal.ROUND_DOWN);
                     maintenanceProductFee = order.getMaintenanceProductFee().multiply(order.getRouteAmount()).divide(order.getActualAmount(), 2, BigDecimal.ROUND_DOWN);
                     leaseFee = order.getLeaseFee().multiply(order.getRouteAmount()).divide(order.getActualAmount(), 2, BigDecimal.ROUND_DOWN);
                     musicalFee = order.getMusicalFee().multiply(order.getRouteAmount()).divide(order.getActualAmount(), 2, BigDecimal.ROUND_DOWN);
                     teachingFee = order.getTeachingFee().multiply(order.getRouteAmount()).divide(order.getActualAmount(), 2, BigDecimal.ROUND_DOWN);
                     otherFee = order.getOtherFee().multiply(order.getRouteAmount()).divide(order.getActualAmount(), 2, BigDecimal.ROUND_DOWN);
+                    maintenanceFee = order.getMaintenanceFee().multiply(order.getRouteAmount()).divide(order.getActualAmount(), 2, BigDecimal.ROUND_DOWN);
                     cloudTeacherFee = order.getCloudTeacherFee().multiply(order.getRouteAmount()).divide(order.getActualAmount(), 2, BigDecimal.ROUND_DOWN);
                 }
 
@@ -759,13 +761,13 @@ public class ExportServiceImpl implements ExportService {
                     theoryCourseFee = order.getTheoryCourseFee().subtract(routeTheoryCourseFee);
                     degreeFee = order.getDegreeFee().subtract(routeDegreeFee);
                     repairFee = order.getRepairFee().subtract(routeRepairFee);
-                    maintenanceFee = order.getMaintenanceFee().subtract(routeMaintenanceFee);
                     maintenanceProductFee = order.getMaintenanceProductFee().subtract(routeMaintenanceProductFee);
                     leaseFee = order.getLeaseFee().subtract(routeLeaseFee);
                     musicalFee = order.getMusicalFee().subtract(routeMusicalFee);
                     teachingFee = order.getTeachingFee().subtract(routeTeachingFee);
                     otherFee = order.getOtherFee().subtract(routeOtherFee);
                     rechargeFee = order.getRechargeFee().subtract(routeRechargeFee);
+                    maintenanceFee = order.getMaintenanceFee().subtract(routeMaintenanceFee);
                     cloudTeacherFee = order.getCloudTeacherFee().subtract(routeCloudTeacherFee);
                 }
                 j++;
@@ -776,13 +778,13 @@ public class ExportServiceImpl implements ExportService {
                 routeTheoryCourseFee = routeTheoryCourseFee.add(theoryCourseFee);
                 routeDegreeFee = routeDegreeFee.add(degreeFee);
                 routeRepairFee = routeRepairFee.add(repairFee);
-                routeMaintenanceFee = routeMaintenanceFee.add(maintenanceFee);
                 routeMaintenanceProductFee = routeMaintenanceProductFee.add(maintenanceProductFee);
                 routeLeaseFee = routeLeaseFee.add(leaseFee);
                 routeMusicalFee = routeMusicalFee.add(musicalFee);
                 routeTeachingFee = routeTeachingFee.add(teachingFee);
                 routeOtherFee = routeOtherFee.add(otherFee);
                 routeRechargeFee = routeRechargeFee.add(rechargeFee);
+                routeMaintenanceFee = routeMaintenanceFee.add(maintenanceFee);
                 routeCloudTeacherFee = routeCloudTeacherFee.add(cloudTeacherFee);
 
                 order.setMusicGroupCourseFee(musicGroupCourseFee);
@@ -791,13 +793,13 @@ public class ExportServiceImpl implements ExportService {
                 order.setTheoryCourseFee(theoryCourseFee);
                 order.setDegreeFee(degreeFee);
                 order.setRepairFee(repairFee.add(maintenanceProductFee));
-                order.setMaintenanceFee(maintenanceFee);
                 order.setMaintenanceProductFee(maintenanceProductFee);
                 order.setLeaseFee(leaseFee);
                 order.setMusicalFee(musicalFee);
                 order.setTeachingFee(teachingFee);
                 order.setOtherFee(otherFee);
                 order.setRechargeFee(rechargeFee);
+                order.setMaintenanceFee(maintenanceFee);
                 order.setCloudTeacherFee(cloudTeacherFee);
             }
         });

+ 4 - 2
mec-biz/src/main/java/com/ym/mec/biz/service/impl/SubjectServiceImpl.java

@@ -86,13 +86,15 @@ public class SubjectServiceImpl extends BaseServiceImpl<Integer, Subject> implem
         List<SubjectApplyDetailDto> registers = studentRegistrationDao.queryStudentApplyDetail(musicGroupId);
         
         Map<Integer,SubjectApplyDetailDto> map = registers.stream().collect(Collectors.toMap(SubjectApplyDetailDto :: getSubjectId, t -> t));
-        
+
+        Map<Long,BigDecimal> maps = MapUtil.convertIntegerMap(studentRegistrationDao.querySubjectAmount(musicGroupId));
         subApplyDetail.forEach(detail -> {
         	SubjectApplyDetailDto dto = new SubjectApplyDetailDto();
         	if(map.containsKey(detail.getSubjectId())){
         		dto = map.get(detail.getSubjectId());
         	}
-    		detail.setPayNum(dto.getPayNum());
+        	detail.setTotalAmount(maps.get(detail.getSubjectId().longValue()));
+            detail.setPayNum(dto.getPayNum());
             detail.setApplyStudentNum(dto.getApplyStudentNum());
             detail.setPayingNum(dto.getPayingNum());
             detail.setCheckNum(dto.getCheckNum());

+ 0 - 3
mec-biz/src/main/resources/config/mybatis/StudentManageDao.xml

@@ -629,9 +629,6 @@
         <if test="classGroupId != null">
             LEFT JOIN class_group_student_mapper cgsm ON cgsm.music_group_id_ = sr.music_group_id_
         </if>
-        <if test="carePackage != null or comeOnPackage != null">
-            LEFT JOIN student stu ON sr.user_id_ = stu.user_id_
-        </if>
         <if test="hasMember != null">
             <if test="hasMember == 2">
                 LEFT JOIN cloud_teacher_order cto ON cto.student_id_ = sr.user_id_

+ 7 - 0
mec-biz/src/main/resources/config/mybatis/StudentRegistrationMapper.xml

@@ -1846,4 +1846,11 @@
         </foreach>
         GROUP BY sr.music_group_id_
     </select>
+    <select id="querySubjectAmount" resultType="java.util.Map">
+        SELECT sr.actual_subject_id_ 'key',SUM(spo.expect_amount_) 'value' FROM student_payment_order spo
+        LEFT JOIN student_registration sr ON sr.user_id_ = spo.user_id_
+        WHERE spo.group_type_ = 'MUSIC' AND spo.type_ = 'APPLY' AND spo.music_group_id_ = #{musicGroupId}
+        AND spo.status_ = 'SUCCESS' AND sr.music_group_id_ = spo.music_group_id_
+        GROUP BY sr.actual_subject_id_
+    </select>
 </mapper>

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

@@ -2438,10 +2438,6 @@ public class ExportController extends BaseController {
             throw new BizException("用户信息获取失败");
         }
         Employee employee = employeeDao.get(sysUser.getId());
-//        if (StringUtils.isEmpty(queryInfo.getRoutingOrganId())) {
-//            queryInfo.setRoutingOrganId(employee.getOrganIdList());
-//            queryInfo.setOldOrganId(employee.getOrganIdList());
-//        }
         if (StringUtils.isEmpty(queryInfo.getRoutingOrganId()) && queryInfo.getOrderType().equals("3")) {
             queryInfo.setRoutingOrganId(employee.getOrganIdList());
             queryInfo.setOldOrganId(employee.getOrganIdList());