Mock Dependencies Manually
@RestController
@RequestMapping("/api")
public class PromoCodeController {
@Autowired
private UserRepository userRepository;
// Generate promo code based on userId
private String generatePromoCode(Long userId) {
String uniquePart = UUID.randomUUID().toString().split("-")[0]; // Take the first part of a UUID
return "PROMO-" + uniquePart + "-" + userId;
}
@PostMapping("/generate_promo_code")
public ResponseEntity<?> generatePromoCode(@RequestBody UserRequest userRequest) {
// Retrieve user from the database using emailId
User user = userRepository.findByEmailId(userRequest.getEmailId());
if (user == null) {
return ResponseEntity.status(404).body("User not found");
}
// Generate promo code
String promoCode = generatePromoCode(user.getId());
return ResponseEntity.ok(new PromoCodeResponse(promoCode));
}
}


Last updated