- Timestamp:
- 10/01/22 22:57:41 (2 years ago)
- Branches:
- master
- Children:
- 47f4eaf
- Parents:
- fd5b100
- Location:
- phonelux-backend/src/main/java/finki/it/phoneluxbackend/services
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
phonelux-backend/src/main/java/finki/it/phoneluxbackend/services/PhoneOfferService.java
rfd5b100 rffd50db 5 5 import finki.it.phoneluxbackend.repositories.PhoneOfferRepository; 6 6 import finki.it.phoneluxbackend.repositories.PhoneRepository; 7 import org.apache.coyote.Response; 7 8 import org.springframework.http.ResponseEntity; 8 9 import org.springframework.stereotype.Service; … … 126 127 List<PhoneOffer> offers = phoneOfferRepository.findAll(); 127 128 128 return offers.stream() 129 .filter(offer -> offer.getOffer_shop().equalsIgnoreCase(shop)) 129 if(shop.equalsIgnoreCase("mobigo")) 130 shop = "Mobi Go"; 131 132 if(shop.equalsIgnoreCase("mobilezone")) 133 shop = "Mobile Zone"; 134 String finalShop = shop; 135 136 return offers.stream() 137 .filter(offer -> offer.getOffer_shop().stripIndent().equalsIgnoreCase(finalShop.stripIndent())) 130 138 .collect(Collectors.toList()); 131 139 } … … 301 309 .collect(Collectors.toList()); 302 310 } 311 312 public ResponseEntity<Object> addOffer(PhoneOffer offer) { 313 phoneOfferRepository.save(offer); 314 return ResponseEntity.ok().build(); 315 } 316 317 public ResponseEntity<Object> deleteOffer(Long offerId) { 318 boolean exists = phoneOfferRepository.existsById(offerId); 319 320 if(!exists) 321 throw new IllegalStateException("Phone offer with id "+offerId+" does not exist"); 322 323 phoneOfferRepository.deleteById(offerId); 324 325 return ResponseEntity.ok().build(); 326 } 327 328 public List<PhoneOffer> getAllOffers() { 329 return phoneOfferRepository.findAll(); 330 } 331 332 public ResponseEntity<Object> addPhoneModelToOffer(Long offerId, Long phoneId) { 333 boolean exists = phoneOfferRepository.existsById(offerId); 334 335 if(!exists) 336 throw new IllegalStateException("Phone offer with id "+offerId+" does not exist"); 337 338 PhoneOffer offer = phoneOfferRepository.findById(offerId).get(); 339 340 exists = phoneRepository.existsById(phoneId); 341 342 if(!exists) 343 throw new IllegalStateException("Phone with id "+phoneId+" does not exist"); 344 345 Phone phone = phoneRepository.findById(phoneId).get(); 346 347 offer.setPhone(phone); 348 phoneOfferRepository.save(offer); 349 350 return ResponseEntity.ok().build(); 351 } 352 353 public ResponseEntity<Object> changePriceForOffer(Long offerId, int price) { 354 boolean exists = phoneOfferRepository.existsById(offerId); 355 356 if(!exists) 357 throw new IllegalStateException("Phone offer with id "+offerId+" does not exist"); 358 359 PhoneOffer offer = phoneOfferRepository.findById(offerId).get(); 360 offer.setPrice(price); 361 phoneOfferRepository.save(offer); 362 363 return ResponseEntity.ok().build(); 364 } 303 365 } -
phonelux-backend/src/main/java/finki/it/phoneluxbackend/services/PhoneService.java
rfd5b100 rffd50db 2 2 3 3 import finki.it.phoneluxbackend.entities.Phone; 4 import finki.it.phoneluxbackend.entities.PhoneOffer;5 4 import finki.it.phoneluxbackend.repositories.PhoneRepository; 6 import org.springframework.data.domain.PageRequest; 7 import org.springframework.data.domain.Sort; 5 import org.springframework.http.ResponseEntity; 8 6 import org.springframework.stereotype.Service; 9 7 … … 27 25 String ram, String rom, String frontcamera, String backcamera, String chipset, 28 26 String cpu, String operatingsystem, String color, String battery){ 29 List<Phone> phones = phoneRepository.findAll(); 27 List<Phone> phones = phoneRepository.findAll().stream() 28 .filter(phone -> phone.getTotal_offers() > 0) 29 .collect(Collectors.toList()); 30 30 31 31 … … 153 153 } 154 154 155 156 155 phones = phones.stream().sorted(Comparator.comparing(Phone::getTotal_offers).reversed()) 157 156 .collect(Collectors.toList()); … … 228 227 public List<String> getBrands(){ 229 228 return phoneRepository.findAll().stream() 230 .map(Phone::getBrand).distinct() 229 .map(phone -> phone.getBrand().stripIndent()) 230 .distinct() 231 231 .collect(Collectors.toList()); 232 232 } … … 238 238 return phoneRepository.findById(phoneId).get(); 239 239 } 240 241 public Long getTotalOffersForPhone(String phoneModel) { 242 String model = String.join(" ", phoneModel.split("\\*")); 243 boolean exists = phoneRepository.findPhoneByModel(model).isPresent(); 244 245 if(!exists) 246 throw new IllegalStateException("Phone with model "+model+" does not exist"); 247 248 return phoneRepository.findPhoneByModel(model).get().getPhoneOffers().stream().count(); 249 } 250 251 public ResponseEntity<Object> setTotalOffersForPhone(Long phoneId, int totaloffers) { 252 boolean exists = phoneRepository.findById(phoneId).isPresent(); 253 254 if(!exists) 255 throw new IllegalStateException("Phone with id "+phoneId+" does not exist"); 256 257 Phone phone = phoneRepository.findById(phoneId).get(); 258 phone.setTotal_offers(totaloffers); 259 phoneRepository.save(phone); 260 return ResponseEntity.ok().build(); 261 } 262 263 public ResponseEntity<Object> setLowestPriceForPhone(Long phoneId, int lowestPrice) { 264 boolean exists = phoneRepository.findById(phoneId).isPresent(); 265 266 if(!exists) 267 throw new IllegalStateException("Phone with id "+phoneId+" does not exist"); 268 269 Phone phone = phoneRepository.findById(phoneId).get(); 270 phone.setLowestPrice(lowestPrice); 271 phoneRepository.save(phone); 272 return ResponseEntity.ok().build(); 273 } 274 275 276 public ResponseEntity<Object> setImageUrlForPhone(Long phoneId, String newImageUrl) { 277 boolean exists = phoneRepository.findById(phoneId).isPresent(); 278 279 if(!exists) 280 throw new IllegalStateException("Phone with id "+phoneId+" does not exist"); 281 282 Phone phone = phoneRepository.findById(phoneId).get(); 283 phone.setImage_url(newImageUrl); 284 phoneRepository.save(phone); 285 286 return ResponseEntity.ok().build(); 287 } 240 288 }
Note:
See TracChangeset
for help on using the changeset viewer.