jl_bb.go 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. package external
  2. import (
  3. "fmt"
  4. "github.com/kataras/iris/v12"
  5. "go.mod/services"
  6. "go.mod/web/viewmodels"
  7. )
  8. type JlBb struct {
  9. Ctx iris.Context
  10. ServiceTree services.TreeService
  11. ServiceProject services.ProjectService
  12. }
  13. // @Summary 获得合同目录和标段
  14. // @Tags 合同管理
  15. // @Description 获得合同目录和标段
  16. // @Accept json
  17. // @Produce json
  18. // @Param code path string true "项目编号"
  19. // @Success 200 {object} viewmodels.FolderContract "{code:0成功,-1参数类错误,data:viewmodels.ProjectAccount,msg:错误信息}"
  20. // @Router /api/contract/folder [get]
  21. func (c *JlBb) GetFolder() {
  22. // 1.获得数据
  23. data := &viewmodels.Jl{}
  24. if err := c.Ctx.ReadForm(data); err != nil {
  25. c.Ctx.JSON(iris.Map{"code": -1, "msg": fmt.Sprintf("%s", err)})
  26. return
  27. }
  28. // 1-1.校验是否存在code
  29. if err := data.ValidateCode(); err != nil {
  30. c.Ctx.JSON(iris.Map{"code": -1, "msg": fmt.Sprintf("%s", err)})
  31. return
  32. }
  33. // 1-2.验证jwt
  34. // _, err := utils.ValidateJwt(data.Token)
  35. // if err != nil {
  36. // c.Ctx.JSON(iris.Map{"code": -1, "msg": fmt.Sprintf("%s", err)})
  37. // return
  38. // }
  39. // 获得项目ID
  40. projectDetail := c.ServiceProject.GetNameBs(data.Code)
  41. if projectDetail.Id == 0 {
  42. c.Ctx.JSON(iris.Map{
  43. "code": -1,
  44. "msg": "项目不存在",
  45. })
  46. return
  47. }
  48. // 获得层级文件夹
  49. FolderData := c.ServiceTree.GetAllContractByJL(projectDetail.Id)
  50. c.Ctx.JSON(iris.Map{
  51. "code": 0,
  52. "msg": "",
  53. "data": FolderData,
  54. })
  55. }