|  | @@ -40,7 +40,7 @@ public class OperatingReportServiceImpl extends BaseServiceImpl<Integer, Operati
 | 
											
												
													
														|  |      @Transactional(rollbackFor = Exception.class)
 |  |      @Transactional(rollbackFor = Exception.class)
 | 
											
												
													
														|  |      public Boolean statistics() {
 |  |      public Boolean statistics() {
 | 
											
												
													
														|  |          Date nowDate = new Date();
 |  |          Date nowDate = new Date();
 | 
											
												
													
														|  | -        Date startTime = DateUtil.getFirstDayOfMonth( DateUtil.addDays1(nowDate, -1));
 |  | 
 | 
											
												
													
														|  | 
 |  | +        Date startTime = DateUtil.getFirstDayOfMonth(DateUtil.addDays1(nowDate, -1));
 | 
											
												
													
														|  |          Date endTime = DateUtil.getLastDayOfMonth(startTime);
 |  |          Date endTime = DateUtil.getLastDayOfMonth(startTime);
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |          Map<Integer, OperatingReport> cooperationOperating = new HashMap<>();
 |  |          Map<Integer, OperatingReport> cooperationOperating = new HashMap<>();
 | 
											
										
											
												
													
														|  | @@ -52,7 +52,7 @@ public class OperatingReportServiceImpl extends BaseServiceImpl<Integer, Operati
 | 
											
												
													
														|  |          for (OrganFullJobResourceNumDto organFullJobResource : organFullJobResources) {
 |  |          for (OrganFullJobResourceNumDto organFullJobResource : organFullJobResources) {
 | 
											
												
													
														|  |              OperatingReport operatingReport = new OperatingReport();
 |  |              OperatingReport operatingReport = new OperatingReport();
 | 
											
												
													
														|  |              operatingReport.setOrganId(organFullJobResource.getOrganId());
 |  |              operatingReport.setOrganId(organFullJobResource.getOrganId());
 | 
											
												
													
														|  | -            operatingReport.setDistributionAmount(new BigDecimal(organFullJobResource.getNum()).multiply(fullJobFee).divide(new BigDecimal(12),2,BigDecimal.ROUND_HALF_UP));
 |  | 
 | 
											
												
													
														|  | 
 |  | +            operatingReport.setDistributionAmount(new BigDecimal(organFullJobResource.getNum()).multiply(fullJobFee).divide(new BigDecimal(12), 2, BigDecimal.ROUND_HALF_UP));
 | 
											
												
													
														|  |              organOperating.put(organFullJobResource.getOrganId(), operatingReport);
 |  |              organOperating.put(organFullJobResource.getOrganId(), operatingReport);
 | 
											
												
													
														|  |          }
 |  |          }
 | 
											
												
													
														|  |  
 |  |  
 | 
											
										
											
												
													
														|  | @@ -117,8 +117,8 @@ public class OperatingReportServiceImpl extends BaseServiceImpl<Integer, Operati
 | 
											
												
													
														|  |              cooperationOperatingReport.setServiceAmount(cooperationOperatingReport.getServiceAmount().add(serviceAmount));
 |  |              cooperationOperatingReport.setServiceAmount(cooperationOperatingReport.getServiceAmount().add(serviceAmount));
 | 
											
												
													
														|  |              cooperationOperatingReport.setSellAmount(cooperationOperatingReport.getSellAmount().add(musicReport.getSellAmount()));
 |  |              cooperationOperatingReport.setSellAmount(cooperationOperatingReport.getSellAmount().add(musicReport.getSellAmount()));
 | 
											
												
													
														|  |              cooperationOperatingReport.setSellCost(cooperationOperatingReport.getSellCost().add(musicReport.getSellCost()));
 |  |              cooperationOperatingReport.setSellCost(cooperationOperatingReport.getSellCost().add(musicReport.getSellCost()));
 | 
											
												
													
														|  | -            organOperating.put(cooperationOperatingReport.getOrganId(), organOperatingReport);
 |  | 
 | 
											
												
													
														|  | -            cooperationOperating.put(cooperationOperatingReport.getCooperationOrganId(), cooperationOperatingReport);
 |  | 
 | 
											
												
													
														|  | 
 |  | +            organOperating.put(musicReport.getOrganId(), organOperatingReport);
 | 
											
												
													
														|  | 
 |  | +            cooperationOperating.put(musicReport.getCooperationOrganId(), cooperationOperatingReport);
 | 
											
												
													
														|  |          }
 |  |          }
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |          //3.2、VIP、网管课订单的统计(关联学生注册取一条记录)
 |  |          //3.2、VIP、网管课订单的统计(关联学生注册取一条记录)
 | 
											
										
											
												
													
														|  | @@ -183,7 +183,28 @@ public class OperatingReportServiceImpl extends BaseServiceImpl<Integer, Operati
 | 
											
												
													
														|  |              }
 |  |              }
 | 
											
												
													
														|  |          }
 |  |          }
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  | -        //3.4、乐器维修
 |  | 
 | 
											
												
													
														|  | 
 |  | +        //3.4、乐器维修、商品销售
 | 
											
												
													
														|  | 
 |  | +        List<OperatingReport> repairGoodsSellReports = sellOrderDao.getRepairGoodsSellGroupMonthReport(startTime, endTime);
 | 
											
												
													
														|  | 
 |  | +        for (OperatingReport repairGoodsSellReport : repairGoodsSellReports) {
 | 
											
												
													
														|  | 
 |  | +            OperatingReport organOperatingReport = new OperatingReport();
 | 
											
												
													
														|  | 
 |  | +            if (organOperating.containsKey(repairGoodsSellReport.getOrganId())) {
 | 
											
												
													
														|  | 
 |  | +                organOperatingReport = organOperating.get(repairGoodsSellReport.getOrganId());
 | 
											
												
													
														|  | 
 |  | +            }
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +            organOperatingReport.setOrganId(repairGoodsSellReport.getOrganId());
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +            if (repairGoodsSellReport.getSellAmount() == null) {
 | 
											
												
													
														|  | 
 |  | +                repairGoodsSellReport.setSellAmount(BigDecimal.ZERO);
 | 
											
												
													
														|  | 
 |  | +                repairGoodsSellReport.setSellCost(BigDecimal.ZERO);
 | 
											
												
													
														|  | 
 |  | +            }
 | 
											
												
													
														|  | 
 |  | +            BigDecimal serviceAmount = repairGoodsSellReport.getIncomeTotal().subtract(repairGoodsSellReport.getSellAmount());
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +            organOperatingReport.setServiceAmount(organOperatingReport.getServiceAmount().add(serviceAmount));
 | 
											
												
													
														|  | 
 |  | +            organOperatingReport.setSellAmount(organOperatingReport.getSellAmount().add(repairGoodsSellReport.getSellAmount()));
 | 
											
												
													
														|  | 
 |  | +            organOperatingReport.setSellCost(organOperatingReport.getSellCost().add(repairGoodsSellReport.getSellCost()));
 | 
											
												
													
														|  | 
 |  | +
 | 
											
												
													
														|  | 
 |  | +            organOperating.put(repairGoodsSellReport.getOrganId(), organOperatingReport);
 | 
											
												
													
														|  | 
 |  | +        }
 | 
											
												
													
														|  |  
 |  |  
 | 
											
												
													
														|  |          //3.5、零星支付充值
 |  |          //3.5、零星支付充值
 | 
											
												
													
														|  |          List<OperatingReport> rechargeReports = sellOrderDao.getRechargeMonthReport(startTime, endTime);
 |  |          List<OperatingReport> rechargeReports = sellOrderDao.getRechargeMonthReport(startTime, endTime);
 | 
											
										
											
												
													
														|  | @@ -247,7 +268,7 @@ public class OperatingReportServiceImpl extends BaseServiceImpl<Integer, Operati
 | 
											
												
													
														|  |              updateReport(operatingReport, params);
 |  |              updateReport(operatingReport, params);
 | 
											
												
													
														|  |          });
 |  |          });
 | 
											
												
													
														|  |          cooperationOperating.forEach((organId, operatingReport) -> {
 |  |          cooperationOperating.forEach((organId, operatingReport) -> {
 | 
											
												
													
														|  | -            operatingReport.setDistributionAmount(fullJobFee.divide(new BigDecimal(12),2,BigDecimal.ROUND_HALF_UP));
 |  | 
 | 
											
												
													
														|  | 
 |  | +            operatingReport.setDistributionAmount(fullJobFee.divide(new BigDecimal(12), 2, BigDecimal.ROUND_HALF_UP));
 | 
											
												
													
														|  |              operatingReport.setMonth(startTime);
 |  |              operatingReport.setMonth(startTime);
 | 
											
												
													
														|  |              operatingReport.setCreateTime(nowDate);
 |  |              operatingReport.setCreateTime(nowDate);
 | 
											
												
													
														|  |              updateReport(operatingReport, params);
 |  |              updateReport(operatingReport, params);
 |