Browse Source

add 教务端统计乐团回款

river 4 năm trước cách đây
mục cha
commit
9efa2bc29d

+ 13 - 10
mec-web/src/main/java/com/ym/mec/web/controller/education/EduRegisterController.java

@@ -51,7 +51,7 @@ public class EduRegisterController extends BaseController {
 
     @ApiOperation(value = "获取分部报名、回款统计")
     @GetMapping("/getRegAndMoney")
-    public HttpResponseResult<List<MusicGroupRegAndMoneyDto>> getRegAndMoney(String organId,String musicGroupName) {
+    public HttpResponseResult<List<MusicGroupRegAndMoneyDto>> getRegAndMoney(String organId, String musicGroupName) {
         String organIds = null;
         SysUser sysUser = sysUserFeignService.queryUserInfo();
         if (sysUser == null) {
@@ -60,11 +60,11 @@ public class EduRegisterController extends BaseController {
         Employee employee = employeeDao.get(sysUser.getId());
         if (StringUtils.isEmpty(organId)) {
             organIds = employee.getOrganIdList();
-        }else if(StringUtils.isEmpty(employee.getOrganIdList())){
+        } else if (StringUtils.isEmpty(employee.getOrganIdList())) {
             return failed("用户所在分部异常");
-        }else {
+        } else {
             List<String> list = Arrays.asList(employee.getOrganIdList().split(","));
-            if(!list.containsAll(Arrays.asList(organId.split(",")))){
+            if (!list.containsAll(Arrays.asList(organId.split(",")))) {
                 return failed("非法请求");
             }
         }
@@ -73,12 +73,12 @@ public class EduRegisterController extends BaseController {
         List<Integer> userRole = employeeDao.queryUserRole(sysUser.getId());
         if (!sysUser.getIsSuperAdmin() && userRole.contains(SysUserRole.EDUCATIONAL_TEACHER) && !userRole.contains(SysUserRole.SECTION_MANAGER)) {
             List<CooperationOrgan> cooperationOrgans = cooperationOrganDao.getCooperationOrganByEduTeacherId(sysUser.getId());
-            if(cooperationOrgans.size() >0){
+            if (cooperationOrgans.size() > 0) {
                 cooperationOrganIds = cooperationOrgans.stream().map(CooperationOrgan::getId).collect(Collectors.toList());
             }
         }
 
-        List<MusicGroupRegAndMoneyDto> musicGroups = musicGroupDao.getMusicGroupByStatus(organIds, cooperationOrganIds,musicGroupName);
+        List<MusicGroupRegAndMoneyDto> musicGroups = musicGroupDao.getMusicGroupByStatus(organIds, cooperationOrganIds, musicGroupName);
         if (musicGroups.size() <= 0) {
             return succeed();
         }
@@ -90,10 +90,13 @@ public class EduRegisterController extends BaseController {
 
         for (MusicGroupRegAndMoneyDto musicGroup : musicGroups) {
             List<MusicalListDetailDto> musicalList = studentPaymentOrderDetailService.getMusicalListDetail(musicGroup.getMusicGroupId(), null);
-            Long instrumentNum = musicalList.stream().filter(e -> e.getKitGroupPurchaseTypeEnum().equals(KitGroupPurchaseTypeEnum.GROUP)).count();
-            BigDecimal money = musicalList.stream().map(MusicalListDetailDto::getOrderAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
-            musicGroup.setBuyInstrumentNum(instrumentNum.intValue());
-            musicGroup.setMoney(money);
+            if (musicalList != null && musicalList.size() > 0) {
+                Long instrumentNum = musicalList.stream().filter(e -> e.getKitGroupPurchaseTypeEnum().equals(KitGroupPurchaseTypeEnum.GROUP)).count();
+                BigDecimal money = musicalList.stream().filter(e -> e.getOrderAmount() != null).map(MusicalListDetailDto::getOrderAmount).reduce(BigDecimal.ZERO, BigDecimal::add);
+                musicGroup.setBuyInstrumentNum(instrumentNum.intValue());
+                musicGroup.setMoney(money == null ? BigDecimal.ZERO : money);
+            }
+
             for (MusicGroupRegAndMoneyDto preRegister : preRegisters) {
                 if (!musicGroup.getMusicGroupId().equals(preRegister.getMusicGroupId())) continue;
                 musicGroup.setPreRegNum(preRegister.getPreRegNum());