diff --git a/src/main/java/osm/surveyor/task/city/CitymeshController.java b/src/main/java/osm/surveyor/task/city/CitymeshController.java index 8e7f036..9c701aa 100644 --- a/src/main/java/osm/surveyor/task/city/CitymeshController.java +++ b/src/main/java/osm/surveyor/task/city/CitymeshController.java @@ -2,10 +2,13 @@ import java.util.List; +import org.springframework.security.core.annotation.AuthenticationPrincipal; +import org.springframework.security.core.userdetails.UserDetails; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestParam; import lombok.RequiredArgsConstructor; import osm.surveyor.task.city.model.City; @@ -25,4 +28,15 @@ model.addAttribute("meshes", tasks); return "meshes"; } + + @GetMapping("/usertask") + public String userTask(@AuthenticationPrincipal UserDetails user, Model model, + @RequestParam(name="user") String username) + { + List meshes = meshRepository.serchByUser(username); + model.addAttribute("username", username); + model.addAttribute("meshes", meshes); + return "meshlist"; + } + } diff --git a/src/main/java/osm/surveyor/task/city/CitymeshRepository.java b/src/main/java/osm/surveyor/task/city/CitymeshRepository.java index 693fbef..34f62db 100644 --- a/src/main/java/osm/surveyor/task/city/CitymeshRepository.java +++ b/src/main/java/osm/surveyor/task/city/CitymeshRepository.java @@ -3,6 +3,8 @@ import java.util.List; import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.data.jpa.repository.Query; +import org.springframework.data.repository.query.Param; import osm.surveyor.task.city.model.Citymesh; import osm.surveyor.task.city.model.CitymeshPK; @@ -10,4 +12,7 @@ public interface CitymeshRepository extends JpaRepository { List findByCitycode(String citycode); + + @Query("SELECT m FROM Citymesh m WHERE m.username = :username OR m.validator = :username order by citycode,meshcode") + List serchByUser(@Param("username")String username); } diff --git a/src/main/resources/templates/fragments/sidebar.html b/src/main/resources/templates/fragments/sidebar.html index c6cfacf..dee8d7f 100644 --- a/src/main/resources/templates/fragments/sidebar.html +++ b/src/main/resources/templates/fragments/sidebar.html @@ -30,31 +30,12 @@