feat: created categories initializer
This commit is contained in:
parent
d9142c7492
commit
e5901bc63a
3 changed files with 71 additions and 1 deletions
|
@ -0,0 +1,61 @@
|
||||||
|
package com.application.munera.initializers;
|
||||||
|
|
||||||
|
import com.application.munera.data.Category;
|
||||||
|
import com.application.munera.services.CategoryService;
|
||||||
|
import jakarta.annotation.PostConstruct;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class CategoryInitializer {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private CategoryService categoryService;
|
||||||
|
|
||||||
|
@PostConstruct
|
||||||
|
public void init() {
|
||||||
|
if (categoryService.count() == 0) {
|
||||||
|
// Create and save the Food category
|
||||||
|
Category foodCategory = new Category();
|
||||||
|
foodCategory.setName("Food");
|
||||||
|
foodCategory.setDescription("All expenses related to food");
|
||||||
|
categoryService.save(foodCategory);
|
||||||
|
|
||||||
|
// Create and save the Travel category
|
||||||
|
Category travelCategory = new Category();
|
||||||
|
travelCategory.setName("Travel");
|
||||||
|
travelCategory.setDescription("Expenses related to traveling, including transport and accommodation");
|
||||||
|
categoryService.save(travelCategory);
|
||||||
|
|
||||||
|
// Create and save the Electronics category
|
||||||
|
Category electronicsCategory = new Category();
|
||||||
|
electronicsCategory.setName("Electronics");
|
||||||
|
electronicsCategory.setDescription("All expenses related to electronic devices and gadgets");
|
||||||
|
categoryService.save(electronicsCategory);
|
||||||
|
|
||||||
|
// Create and save the Events category
|
||||||
|
Category eventsCategory = new Category();
|
||||||
|
eventsCategory.setName("Events");
|
||||||
|
eventsCategory.setDescription("Expenses related to attending or organizing events");
|
||||||
|
categoryService.save(eventsCategory);
|
||||||
|
|
||||||
|
// Create and save the Clothing category
|
||||||
|
Category clothingCategory = new Category();
|
||||||
|
clothingCategory.setName("Clothing");
|
||||||
|
clothingCategory.setDescription("Expenses related to clothes and accessories");
|
||||||
|
categoryService.save(clothingCategory);
|
||||||
|
|
||||||
|
// Create and save the Bills category
|
||||||
|
Category billsCategory = new Category();
|
||||||
|
billsCategory.setName("Bills");
|
||||||
|
billsCategory.setDescription("Recurring expenses like utilities, internet, and other bills");
|
||||||
|
categoryService.save(billsCategory);
|
||||||
|
|
||||||
|
// Create and save the Rent category
|
||||||
|
Category rentCategory = new Category();
|
||||||
|
rentCategory.setName("Rent");
|
||||||
|
rentCategory.setDescription("Expenses related to rental payments for housing or office space");
|
||||||
|
categoryService.save(rentCategory);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -1,6 +1,7 @@
|
||||||
package com.application.munera.security;
|
package com.application.munera.initializers;
|
||||||
|
|
||||||
import com.application.munera.data.User;
|
import com.application.munera.data.User;
|
||||||
|
import com.application.munera.security.AdminProperties;
|
||||||
import com.application.munera.services.UserService;
|
import com.application.munera.services.UserService;
|
||||||
import jakarta.annotation.PostConstruct;
|
import jakarta.annotation.PostConstruct;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
@ -37,4 +37,12 @@ public class CategoryService {
|
||||||
public Page<Category> list(Pageable pageable){
|
public Page<Category> list(Pageable pageable){
|
||||||
return categoryRepository.findAll(pageable);
|
return categoryRepository.findAll(pageable);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Long count() {
|
||||||
|
return this.categoryRepository.count();
|
||||||
|
}
|
||||||
|
|
||||||
|
public Category save(Category category) {
|
||||||
|
return this.categoryRepository.save(category);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue