浏览代码

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

Joburgess 4 年之前
父节点
当前提交
c9fdb6ae6e

+ 2 - 1
mec-biz/src/main/java/com/ym/mec/biz/dal/dao/StudentPaymentOrderDetailDao.java

@@ -55,7 +55,7 @@ public interface StudentPaymentOrderDetailDao extends BaseDAO<Long, StudentPayme
      * @param musicGroupId
      * @return
      */
-    List<MusicalListDetailDto> getMusicalListDetail(String musicGroupId);
+    List<MusicalListDetailDto> getMusicalListDetail(@Param("musicGroupId") String musicGroupId, @Param("userId") Integer userId);
 
     /**
      * 获取商品名称列表
@@ -139,6 +139,7 @@ public interface StudentPaymentOrderDetailDao extends BaseDAO<Long, StudentPayme
 
     /**
      * 根据订单号获取订单详情
+     *
      * @param orderId
      * @return
      */

+ 1 - 1
mec-biz/src/main/java/com/ym/mec/biz/service/StudentPaymentOrderDetailService.java

@@ -62,7 +62,7 @@ public interface StudentPaymentOrderDetailService extends BaseService<Long, Stud
      * @param musicGroupId
      * @return
      */
-    List<MusicalListDetailDto> getMusicalListDetail(String musicGroupId);
+    List<MusicalListDetailDto> getMusicalListDetail(String musicGroupId,Integer studentId);
 
     /**
      * 获取订单的乐器信息

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

@@ -243,8 +243,8 @@ public class StudentPaymentOrderDetailServiceImpl extends BaseServiceImpl<Long,
     }
 
     @Override
-    public List<MusicalListDetailDto> getMusicalListDetail(String musicGroupId) {
-        List<MusicalListDetailDto> musicalListDetailDtos = studentPaymentOrderDetailDao.getMusicalListDetail(musicGroupId);
+    public List<MusicalListDetailDto> getMusicalListDetail(String musicGroupId,Integer studentId) {
+        List<MusicalListDetailDto> musicalListDetailDtos = studentPaymentOrderDetailDao.getMusicalListDetail(musicGroupId,studentId);
         if (musicalListDetailDtos.size() <= 0) {
             return musicalListDetailDtos;
         }

+ 35 - 8
mec-biz/src/main/java/com/ym/mec/biz/service/impl/StudentRegistrationServiceImpl.java

@@ -20,6 +20,7 @@ import java.util.stream.Collectors;
 
 import javax.annotation.Resource;
 
+import com.ym.mec.biz.dal.dto.*;
 import com.ym.mec.biz.event.source.GroupEventSource;
 import org.apache.commons.lang3.ArrayUtils;
 import org.apache.commons.lang3.StringUtils;
@@ -55,13 +56,6 @@ import com.ym.mec.biz.dal.dao.SubjectDao;
 import com.ym.mec.biz.dal.dao.SysConfigDao;
 import com.ym.mec.biz.dal.dao.SysUserCashAccountDao;
 import com.ym.mec.biz.dal.dao.TeacherDao;
-import com.ym.mec.biz.dal.dto.CourseFormDto;
-import com.ym.mec.biz.dal.dto.StudentAddDto;
-import com.ym.mec.biz.dal.dto.StudentApplyDetailDto;
-import com.ym.mec.biz.dal.dto.StudentFeeDetailDto;
-import com.ym.mec.biz.dal.dto.StudentInfo;
-import com.ym.mec.biz.dal.dto.StudentMusicDetailDto;
-import com.ym.mec.biz.dal.dto.StudentMusicGroupDto;
 import com.ym.mec.biz.dal.entity.ClassGroup;
 import com.ym.mec.biz.dal.entity.ClassGroupStudentMapper;
 import com.ym.mec.biz.dal.entity.CooperationOrgan;
@@ -279,7 +273,40 @@ public class StudentRegistrationServiceImpl extends BaseServiceImpl<Long, Studen
 
     @Override
     public StudentFeeDetailDto queryFeeDetail(Integer studentId, String musicGroupId) {
-        return studentRegistrationDao.queryFeeDetail(studentId, musicGroupId);
+        StudentFeeDetailDto studentFeeDetailDto = new StudentFeeDetailDto();
+        List<MusicalListDetailDto> musicalList = studentPaymentOrderDetailService.getMusicalListDetail(musicGroupId, studentId);
+        if(musicalList.size() <=0){
+            return studentFeeDetailDto;
+        }
+        MusicalListDetailDto detailDto = musicalList.get(0);
+        studentFeeDetailDto.setTotalAmount(detailDto.getOrderAmount());
+        studentFeeDetailDto.setCourseFee(detailDto.getCourseAmount());
+        if (KitGroupPurchaseTypeEnum.LEASE.equals(detailDto.getKitGroupPurchaseTypeEnum())) {
+            studentFeeDetailDto.setDepositFee(detailDto.getMusicalAmount());
+        }
+        List<StudentFeeDto> studentFeeDtos = new ArrayList<>();
+        if (detailDto.getMusicalName() != null) {
+            StudentFeeDto studentFeeDto = new StudentFeeDto();
+            studentFeeDto.setGoodsName(detailDto.getMusicalName());
+            studentFeeDto.setGoodsType("INSTRUMENT");
+            studentFeeDto.setMusicalFee(detailDto.getMusicalAmount());
+            studentFeeDtos.add(studentFeeDto);
+        }
+        if (detailDto.getAccessoriesName() != null) {
+            StudentFeeDto studentFeeDto = new StudentFeeDto();
+            studentFeeDto.setGoodsName(detailDto.getAccessoriesName());
+            studentFeeDto.setGoodsType("ACCESSORIES");
+            studentFeeDto.setMusicalFee(detailDto.getAccessoriesAmount());
+            studentFeeDtos.add(studentFeeDto);
+        }
+        StudentFeeDto studentFeeDto = new StudentFeeDto();
+        studentFeeDto.setGoodsType("COURSE");
+        studentFeeDto.setMusicalFee(detailDto.getCourseAmount());
+        studentFeeDtos.add(studentFeeDto);
+        studentFeeDetailDto.setGoods(studentFeeDtos);
+
+        return studentFeeDetailDto;
+        //return studentRegistrationDao.queryFeeDetail(studentId, musicGroupId);
     }
 
     @Override

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

@@ -160,6 +160,9 @@
         FROM student_payment_order spo
                  LEFT JOIN student_registration sr ON spo.user_id_ = sr.user_id_
         WHERE spo.music_group_id_ = #{musicGroupId}
+        <if test="userId != null">
+            AND spo.user_id_ = #{userId}
+        </if>
           AND spo.status_ = 'SUCCESS'
           AND sr.music_group_id_ = #{musicGroupId}
           AND sr.music_group_status_ != 'QUIT'

+ 14 - 1
mec-web/src/main/java/com/ym/mec/web/controller/ExportController.java

@@ -971,7 +971,7 @@ public class ExportController extends BaseController {
     @PostMapping("order/musicalListDetailExport")
     @PreAuthorize("@pcs.hasPermissions('order/musicalListDetailExport')")
     public void musicalListDetailExport(HttpServletResponse response, String musicGroupId) throws IOException {
-        List<MusicalListDetailDto> musicalList = studentPaymentOrderDetailService.getMusicalListDetail(musicGroupId);
+        List<MusicalListDetailDto> musicalList = studentPaymentOrderDetailService.getMusicalListDetail(musicGroupId,null);
         if (musicalList.size() > 50000) {
             throw new BizException("数据集太大,不能导出.最大数据集不能超过50000");
         }
@@ -1006,6 +1006,19 @@ public class ExportController extends BaseController {
         queryInfo.setRows(49999);
         queryInfo.setIsExport(true);
         List<StudentApplyDetailDto> studentApplyDetail = studentRegistrationService.queryStudentDetailPage(queryInfo).getRows();
+        if (studentApplyDetail.size() <= 0) {
+            throw new BizException("没有可导出的记录");
+        }
+        List<MusicalListDetailDto> musicalListDetails = studentPaymentOrderDetailService.getMusicalListDetail(queryInfo.getMusicGroupId(),null);
+        for (StudentApplyDetailDto studentApplyDetailDto : studentApplyDetail) {
+            for (MusicalListDetailDto musicalListDetail : musicalListDetails) {
+                if (!musicalListDetail.getUserId().equals(studentApplyDetailDto.getStudentId())) continue;
+                studentApplyDetailDto.setKitGroupPurchaseTypeEnum(musicalListDetail.getKitGroupPurchaseTypeEnum());
+            }
+            if (PaymentStatusEnum.YES.equals(studentApplyDetailDto.getPaymentStatus()) && studentApplyDetailDto.getKitGroupPurchaseTypeEnum() == null) {
+                studentApplyDetailDto.setKitGroupPurchaseTypeEnum(KitGroupPurchaseTypeEnum.OWNED);
+            }
+        }
         OutputStream outputStream = response.getOutputStream();
         try {
             HSSFWorkbook workbook = POIUtil.exportExcel(new String[]{"学生姓名", "家长姓名", "年级", "班级", "性别", "服从调剂", "报名专业", "实际专业", "联系电话", "学员缴费状态", "乐器购买方式"}, new String[]{