Skip to content
This repository has been archived by the owner on Aug 29, 2023. It is now read-only.

Commit

Permalink
fixed some bugs !
Browse files Browse the repository at this point in the history
  • Loading branch information
DroidZed committed Mar 15, 2021
1 parent f2b0929 commit 81dc27f
Show file tree
Hide file tree
Showing 7 changed files with 59 additions and 31 deletions.
Expand Up @@ -2,21 +2,21 @@

import com.wevioo.fileback.model.Needs;
import com.wevioo.fileback.service.NeedsService;
import lombok.AllArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;

@RestController
@AllArgsConstructor
@RequestMapping(path = "/need")
public class NeedsController {

@Autowired
private NeedsService needsService;
private final NeedsService needsService;

@PostMapping(path = "/add-new-need")
public void addNewNeed (@RequestBody Needs needs){
this.needsService.injectNewNeed(needs);
@PostMapping(path = "/add-new-need/user/{userid}/category/{catid}")
public void addNewNeed(@RequestBody Needs needs,
@PathVariable Long catid,
@PathVariable Long userid){
this.needsService.injectNewNeed(needs, catid, userid);
}
}
Expand Up @@ -27,7 +27,6 @@ ResponseEntity<?> inviteUser(@RequestBody String email) {
return this.userManagerLayer.inviteUserByMail(email);
}


@GetMapping(path = "/list")
public @ResponseBody
Page<User> getUsersPaged(@RequestParam(defaultValue = "0") Integer page) {
Expand Down
2 changes: 2 additions & 0 deletions src/main/java/com/wevioo/fileback/model/Category.java
@@ -1,5 +1,6 @@
package com.wevioo.fileback.model;

import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
Expand Down Expand Up @@ -30,6 +31,7 @@ public class Category {
@Column(name = "image")
private byte[] image;

@JsonIgnore
@OneToMany(mappedBy = "category")
private List<Needs> needs;
}
35 changes: 18 additions & 17 deletions src/main/java/com/wevioo/fileback/model/Needs.java
@@ -1,44 +1,45 @@
package com.wevioo.fileback.model;

import lombok.Data;
import lombok.AllArgsConstructor;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import org.hibernate.annotations.Proxy;

import javax.persistence.*;

@Getter
@Setter
@Data
@AllArgsConstructor
@NoArgsConstructor
@Entity
@Table(name = "needs")
@Proxy(lazy = false)
public class Needs {

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "idNeed")
private Long id_need ;
@Column(name = "id_need")
private Long idNeed;

@Column(name="needTiltle")
private String need_title ;
@Column(name="need_title")
private String needTitle;

@Column(name="nbJobber")
private int nb_jobber ;
@Column(name="need_description")
private String needDescription;

@Column(name = "vehicleInfos")
private String vehicle_infos ;
@Column(name="nb_jobber")
private int nbJobber;

@Column(name = "vehicle_infos")
private String vehicleInfos;

@Column(name = "budget")
private int budget;

@ManyToOne(fetch = FetchType.EAGER,cascade = CascadeType.ALL)
@ManyToOne(fetch = FetchType.EAGER,cascade = {CascadeType.MERGE,CascadeType.REFRESH})
@JoinColumn(name = "id_user")
private User user ;
private User user;

@ManyToOne(fetch = FetchType.EAGER,cascade =CascadeType.ALL)
@ManyToOne(fetch = FetchType.EAGER,cascade = {CascadeType.MERGE,CascadeType.REFRESH})
@JoinColumn(name = "id_cat")
private Category category;


}
2 changes: 2 additions & 0 deletions src/main/java/com/wevioo/fileback/model/User.java
@@ -1,6 +1,7 @@
package com.wevioo.fileback.model;


import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
Expand Down Expand Up @@ -56,6 +57,7 @@ public class User {
@JoinColumn(name = "id_act")
private Activity activity;

@JsonIgnore
@OneToMany(mappedBy = "user")
private List<Needs> needs ;

Expand Down
Expand Up @@ -60,6 +60,8 @@ protected void configure(HttpSecurity http) throws Exception {
.permitAll()
.antMatchers("/users/**")
.permitAll()
.antMatchers("/need/**")
.permitAll()
.anyRequest()
.authenticated()
.and()
Expand Down
30 changes: 26 additions & 4 deletions src/main/java/com/wevioo/fileback/service/NeedsService.java
@@ -1,17 +1,39 @@
package com.wevioo.fileback.service;

import com.wevioo.fileback.model.Category;
import com.wevioo.fileback.model.Needs;
import com.wevioo.fileback.model.User;
import com.wevioo.fileback.repository.CategoryRepository;
import com.wevioo.fileback.repository.NeedsRepository;
import org.springframework.beans.factory.annotation.Autowired;
import com.wevioo.fileback.repository.UserRepository;
import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import java.util.Optional;

@Service
@AllArgsConstructor
public class NeedsService {

@Autowired
private NeedsRepository needsRepository;
private final NeedsRepository needsRepository;

private final UserRepository userRepository;

private final CategoryRepository categoryRepository;

@Transactional
public void injectNewNeed (Needs needs, Long catid, Long userid){

Optional<User> optUsr = userRepository.findById(userid);
Optional<Category> optCat = categoryRepository.findById(catid);

if(optUsr.isPresent() && optCat.isPresent())
{
needs.setUser(optUsr.get());
needs.setCategory(optCat.get());
}

public void injectNewNeed (Needs needs){
this.needsRepository.save(needs);
}
}

0 comments on commit 81dc27f

Please sign in to comment.