@@ -98,18 +98,18 @@ public final String editTaskGet(
9898 Locale locale , Model model
9999 ) {
100100 log .info ("editTaskGet" );
101- UserAccount userAccount = userAccountLoginSuccessService .retrieveCurrentUser ();
102- List <Context > contexts = contextService .getAllForUser (userAccount );
103101 if (task != null ) {
104- Project thisProject = null ;
105- if (task .getProject () == null ) {
102+ UserAccount userAccount = userAccountLoginSuccessService .retrieveCurrentUser ();
103+ List <Context > contexts = contextService .getAllForUser (userAccount );
104+ Project thisProject ;
105+ if (task .getContext () == null ) {
106106 thisProject = new Project ();
107107 thisProject .setId (0L );
108108 } else {
109109 thisProject = task .getProject ();
110110 }
111111 Context thisContext = task .getContext ();
112- Breadcrumb breadcrumb = breadcrumbService .getBreadcrumbForShowOneProject ( thisProject ,locale );
112+ Breadcrumb breadcrumb = breadcrumbService .getBreadcrumbForTaskstate ( task . getTaskState () ,locale );
113113 model .addAttribute ("breadcrumb" , breadcrumb );
114114 model .addAttribute ("thisProject" , thisProject );
115115 model .addAttribute ("thisContext" , thisContext );
@@ -131,63 +131,38 @@ public final String editTaskPost(
131131 Model model
132132 ) {
133133 log .info ("editTaskPost" );
134- if (result .hasErrors () || taskId != task .getId ()) {
135- if (result .hasErrors ()) {
136- log .warn ("result.hasErrors" );
137- for (ObjectError e : result .getAllErrors ()) {
138- log .error (e .toString ());
139- }
140- }
141- if (taskId != task .getId ()) {
142- log .error ("taskId " +taskId +" != task.getId " +task .getId ());
134+ if (result .hasErrors () ) {
135+ log .warn ("result.hasErrors" );
136+ for (ObjectError e : result .getAllErrors ()) {
137+ log .error (e .toString ());
143138 }
144139 Task persistentTask = taskService .findOne (taskId );
145- if (task .getId ()!= persistentTask .getId ()){
146- log .error ("task.getId()!= persistentTask.getId()" );
147- }
148- if (persistentTask .isInRootProject ()) {
149- Breadcrumb breadcrumb = breadcrumbService .getBreadcrumbForShowRootProject (locale );
150- model .addAttribute ("breadcrumb" , breadcrumb );
151- task .setRootProject ();
140+ persistentTask .merge (task );
141+ task = persistentTask ;
142+ UserAccount userAccount = userAccountLoginSuccessService .retrieveCurrentUser ();
143+ List <Context > contexts = contextService .getAllForUser (userAccount );
144+ Project thisProject ;
145+ if (task .getContext () == null ) {
146+ thisProject = new Project ();
147+ thisProject .setId (0L );
152148 } else {
153- Breadcrumb breadcrumb = breadcrumbService .getBreadcrumbForShowOneProject (persistentTask .getProject (),locale );
154- model .addAttribute ("breadcrumb" , breadcrumb );
155- task .setProject (persistentTask .getProject ());
149+ thisProject = task .getProject ();
156150 }
151+ Context thisContext = task .getContext ();
152+ Breadcrumb breadcrumb = breadcrumbService .getBreadcrumbForShowOneProject (thisProject ,locale );
153+ model .addAttribute ("breadcrumb" , breadcrumb );
154+ model .addAttribute ("thisProject" , thisProject );
155+ model .addAttribute ("thisContext" , thisContext );
157156 model .addAttribute ("task" , task );
157+ model .addAttribute ("areas" , contexts );
158158 return "taskstate/task/edit" ;
159159 } else {
160- /*
161- Task persistentTask = taskService.findOne(taskId);
162- persistentTask.updateTo(task);
163- persistentTask.switchTaskState(task.getTaskState(), task.getContext(), task.getDueDate(), thisProject); if(task.getDueDate()==null){
164- persistentTask.setDueDate(null);
165- if(persistentTask.getTaskState().compareTo(TaskState.SCHEDULED)==0){
166- persistentTask.setTaskState(task.getTaskState());
167- }
168- } else {
169- persistentTask.setDueDate(task.getDueDate());
170- persistentTask.setTaskState(TaskState.SCHEDULED);
171- }
172- boolean contextChanged = persistentTask.getContext().equalsById();
173- if(contextChanged){
174- persistentTask.setContext(task.getContext());
175- if(thisProject.getId()==0L) {
176- persistentTask.setRootProject();
177- } else if(thisProject.getContext().equalsById(task.getContext())){
178- persistentTask.setProject(thisProject);
179- }
180- userSession.setContextId(task.getContext().getId());
181- model.addAttribute("userSession", userSession);
182- return "redirect:/project/root";
183- }
184- */
185160 task .unsetFocus ();
186161 task .setRootProject ();
187162 Task persistentTask = taskService .findOne (task .getId ());
188163 persistentTask .merge (task );
189164 task = taskService .updatedViaTaskstate (persistentTask );
190- return "redirect:" + task .getTaskState ().getUrl ();
165+ return task .getTaskState ().getUrl ();
191166 }
192167 }
193168
0 commit comments