-
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
9 changed files
with
325 additions
and
16 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
97 changes: 97 additions & 0 deletions
97
...e-management/src/main/java/com/trackerforce/management/controller/TemplateController.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,97 @@ | ||
package com.trackerforce.management.controller; | ||
|
||
import java.util.LinkedList; | ||
import java.util.Map; | ||
|
||
import org.springframework.beans.factory.annotation.Autowired; | ||
import org.springframework.http.ResponseEntity; | ||
import org.springframework.web.bind.annotation.CrossOrigin; | ||
import org.springframework.web.bind.annotation.DeleteMapping; | ||
import org.springframework.web.bind.annotation.GetMapping; | ||
import org.springframework.web.bind.annotation.PatchMapping; | ||
import org.springframework.web.bind.annotation.PathVariable; | ||
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.RequestParam; | ||
import org.springframework.web.bind.annotation.RestController; | ||
|
||
import com.trackerforce.common.model.response.ErrorResponse; | ||
import com.trackerforce.common.service.exception.ServiceException; | ||
import com.trackerforce.common.tenant.model.AbstractProcedure; | ||
import com.trackerforce.management.model.Procedure; | ||
import com.trackerforce.management.model.request.TemplateRequest; | ||
import com.trackerforce.management.service.TemplateService; | ||
|
||
@CrossOrigin(allowedHeaders = { "X-Tenant" }) | ||
@RestController | ||
@RequestMapping("management/template") | ||
public class TemplateController { | ||
|
||
@Autowired | ||
private TemplateService templateService; | ||
|
||
@PostMapping(value = "/v1/create") | ||
public ResponseEntity<?> create(@RequestBody TemplateRequest templateRequest) { | ||
try { | ||
return ResponseEntity.ok(templateService.create(templateRequest)); | ||
} catch (ServiceException e) { | ||
return ResponseEntity.badRequest().body(new ErrorResponse(e.getMessage())); | ||
} | ||
} | ||
|
||
@GetMapping(value = "/v1/") | ||
public ResponseEntity<Map<String, Object>> findAll( | ||
@RequestParam(required = false) String description, | ||
@RequestParam(required = false) String sortBy, | ||
@RequestParam(required = false) String output, | ||
@RequestParam(defaultValue = "0") int page, | ||
@RequestParam(defaultValue = "10") int size) { | ||
return ResponseEntity.ok(templateService.findAllProjectedBy(description, sortBy, output, page, size)); | ||
} | ||
|
||
@GetMapping(value = "/v1/{id}") | ||
public ResponseEntity<?> findOne(@PathVariable(value="id") String id, String output) { | ||
return ResponseEntity.ok(templateService.findByIdProjectedBy(id, output)); | ||
} | ||
|
||
@PatchMapping(value = "/v1/{id}") | ||
public ResponseEntity<?> update( | ||
@PathVariable(value="id") String id, | ||
@RequestBody Map<String, Object> updates) { | ||
try { | ||
return ResponseEntity.ok(templateService.update(id, updates)); | ||
} catch (ServiceException e) { | ||
return ResponseEntity.badRequest().body(new ErrorResponse(e.getMessage())); | ||
} | ||
} | ||
|
||
@PostMapping(value = "/v1/{id}/procedure/reorder") | ||
public ResponseEntity<LinkedList<AbstractProcedure>> reorderProcedure( | ||
@PathVariable(value="id") String id, | ||
@RequestParam(required = true) int from, | ||
@RequestParam(required = true) int to) { | ||
return ResponseEntity.ok(templateService.reorderProcedure(id, from, to)); | ||
} | ||
|
||
@PostMapping(value = "/v1/{id}/procedure/add/{procedureId}") | ||
public ResponseEntity<Procedure> addProcedure( | ||
@PathVariable(value="id") String id, | ||
@PathVariable(value="procedureId") String procedureId) { | ||
return ResponseEntity.ok(templateService.updateProcedures(id, procedureId, true)); | ||
} | ||
|
||
@PostMapping(value = "/v1/{id}/procedure/remove/{procedureId}") | ||
public ResponseEntity<Procedure> removeProcedure( | ||
@PathVariable(value="id") String id, | ||
@PathVariable(value="procedureId") String procedureId) { | ||
return ResponseEntity.ok(templateService.updateProcedures(id, procedureId, false)); | ||
} | ||
|
||
@DeleteMapping(value = "/v1/{id}") | ||
public ResponseEntity<?> delete(@PathVariable(value="id") String id) { | ||
templateService.delete(id); | ||
return ResponseEntity.ok().build(); | ||
} | ||
|
||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
28 changes: 28 additions & 0 deletions
28
...e-management/src/main/java/com/trackerforce/management/model/request/TemplateRequest.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,28 @@ | ||
package com.trackerforce.management.model.request; | ||
|
||
import com.trackerforce.common.tenant.model.ComponentHelper; | ||
import com.trackerforce.management.model.Template; | ||
|
||
public class TemplateRequest { | ||
|
||
private Template template; | ||
|
||
private ComponentHelper helper; | ||
|
||
public Template getTemplate() { | ||
return template; | ||
} | ||
|
||
public void setTemplate(Template procedure) { | ||
this.template = procedure; | ||
} | ||
|
||
public ComponentHelper getHelper() { | ||
return helper; | ||
} | ||
|
||
public void setHelper(ComponentHelper helper) { | ||
this.helper = helper; | ||
} | ||
|
||
} |
9 changes: 9 additions & 0 deletions
9
...e-management/src/main/java/com/trackerforce/management/repository/TemplateRepository.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
package com.trackerforce.management.repository; | ||
|
||
import org.springframework.data.mongodb.repository.MongoRepository; | ||
|
||
import com.trackerforce.management.model.Template; | ||
|
||
public interface TemplateRepository extends MongoRepository<Template, String> { | ||
|
||
} |
27 changes: 27 additions & 0 deletions
27
...anagement/src/main/java/com/trackerforce/management/repository/TemplateRepositoryDao.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
package com.trackerforce.management.repository; | ||
|
||
import org.springframework.beans.factory.annotation.Autowired; | ||
import org.springframework.stereotype.Repository; | ||
|
||
import com.trackerforce.common.tenant.repository.AbstractProjectedDao; | ||
import com.trackerforce.management.model.Template; | ||
|
||
@Repository | ||
public class TemplateRepositoryDao extends AbstractProjectedDao<Template> { | ||
|
||
@Autowired | ||
private TemplateRepository templateRepository; | ||
|
||
public void delete(final Template procedure) { | ||
this.deleteById(procedure.getId()); | ||
} | ||
|
||
public void deleteById(final String id) { | ||
templateRepository.deleteById(id); | ||
} | ||
|
||
public TemplateRepository getTemplateRepository() { | ||
return templateRepository; | ||
} | ||
|
||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.