- Timestamp:
- 01/05/22 21:51:57 (2 years ago)
- Branches:
- master
- Children:
- a64f926
- Parents:
- b8dc761
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/main/java/it/finki/charitable/controller/UserProfileController.java
rb8dc761 r6fa3d09 14 14 import org.springframework.web.bind.annotation.RequestParam; 15 15 16 import java.time.Duration; 17 import java.time.LocalDate; 18 import java.time.LocalDateTime; 16 19 import java.util.List; 17 20 … … 116 119 post.getFundsCollected().add(funds); 117 120 post.setTotalFundsCollected(post.getTotalFundsCollected() + amount); 121 post.setRiskFactor(getRisk(post)); 118 122 donationPostService.save(post); 119 123 } … … 130 134 return null; 131 135 } 136 private Integer getRisk(DonationPost post) { 137 int risk; 138 if(post.getFundsNeeded() <= post.getTotalFundsCollected()) { 139 risk = 102; 140 } 141 else 142 { 143 if (LocalDate.now().isAfter(post.getDateDue())) 144 { 145 risk=0; 146 } 147 else 148 { 149 float dailyAverage = post.getTotalFundsCollected() / (Duration.between(post.getCreatedAt().atTime(0, 0, 0), LocalDate.now().atTime(0, 0, 0)).toDays()+1); 150 float neededAverage = (post.getFundsNeeded() - post.getTotalFundsCollected()) / (Duration.between(LocalDate.now().atTime(0, 0, 0), post.getDateDue().atTime(0, 0, 0)).toDays()+1); 151 152 if(Duration.between(LocalDate.now().atTime(0, 0, 0), post.getDateDue().atTime(0, 0, 0)).toDays() == 0) { 153 float hour=(float) LocalDateTime.now().getHour(); 154 float mins=(float) LocalDateTime.now().getMinute(); 155 hour=hour+(mins/(float)60); 156 float hourlyAverage=(dailyAverage/(float)24); 157 float neededhourlyAverage=(post.getFundsNeeded() - post.getTotalFundsCollected())/((float)24-hour); 158 risk = (int) (hourlyAverage/neededhourlyAverage*100); 159 if (risk>100) 160 { 161 risk=100; 162 } 163 164 } 165 else 166 { 167 System.out.println(dailyAverage + " " + neededAverage); 168 risk = (int) (dailyAverage / neededAverage * 100); 169 170 if(risk > 100) { 171 risk = 100; 172 } 173 } 174 } 175 } 176 return risk; 177 } 132 178 } 179
Note:
See TracChangeset
for help on using the changeset viewer.