ContractController.java 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. package com.bosshand.virgo.api.controller;
  2. import com.bosshand.virgo.api.model.Contract;
  3. import com.bosshand.virgo.api.model.Tag;
  4. import com.bosshand.virgo.api.service.ContractService;
  5. import com.bosshand.virgo.api.service.ProjectItemTargetRoomService;
  6. import com.bosshand.virgo.core.response.Response;
  7. import io.swagger.annotations.Api;
  8. import io.swagger.annotations.ApiOperation;
  9. import org.springframework.beans.factory.annotation.Autowired;
  10. import org.springframework.web.bind.annotation.*;
  11. import java.util.ArrayList;
  12. import java.util.List;
  13. @RestController
  14. @RequestMapping({"contract"})
  15. @Api(tags = {"合同管理"})
  16. public class ContractController {
  17. @Autowired
  18. ContractService contractService;
  19. @Autowired
  20. ProjectItemTargetRoomService projectItemTargetRoomService;
  21. @ApiOperation("保存")
  22. @RequestMapping(value = "", method = RequestMethod.POST)
  23. public Response insert(@RequestBody Contract contract) {
  24. contractService.insert(contract);
  25. return Response.ok();
  26. }
  27. @ApiOperation("获取")
  28. @RequestMapping(value = "/list", method = RequestMethod.POST)
  29. public Response getList(@RequestBody Contract contract) {
  30. List<Contract> list = contractService.getList(contract);
  31. List<Tag> tags = new ArrayList<>();
  32. for (Contract ct : list) {
  33. tags.clear();
  34. if (ct.getTagIds() != null) {
  35. for (String tagId : ct.getTagIds().split(",")) {
  36. tags.add(projectItemTargetRoomService.getTag(Long.parseLong(tagId)));
  37. }
  38. }
  39. ct.setTagList(tags);
  40. }
  41. return Response.ok(list);
  42. }
  43. @ApiOperation("更新")
  44. @RequestMapping(value = "/update", method = RequestMethod.PUT)
  45. public Response update(@RequestBody Contract contract) {
  46. contractService.update(contract);
  47. return Response.ok();
  48. }
  49. @ApiOperation("删除")
  50. @RequestMapping(value = "/delete/{id}", method = RequestMethod.DELETE)
  51. public Response delete(@PathVariable long id) {
  52. contractService.delete(id);
  53. return Response.ok();
  54. }
  55. @ApiOperation("详情")
  56. @RequestMapping(value = "/{id}", method = RequestMethod.GET)
  57. public Response get(@PathVariable long id) {
  58. Contract contract = contractService.get(id);
  59. List<Tag> tags = new ArrayList<>();
  60. String tagIds = contract.getTagIds();
  61. if (tagIds != null) {
  62. for (String tagId : tagIds.split(",")) {
  63. tags.add(projectItemTargetRoomService.getTag(Long.parseLong(tagId)));
  64. }
  65. }
  66. contract.setTagList(tags);
  67. return Response.ok(contract);
  68. }
  69. }