package external import ( "fmt" "github.com/kataras/iris/v12" "go.mod/services" "go.mod/web/viewmodels" ) type JlBb struct { Ctx iris.Context ServiceTree services.TreeService ServiceProject services.ProjectService } // @Summary 获得合同目录和标段 // @Tags 合同管理 // @Description 获得合同目录和标段 // @Accept json // @Produce json // @Param code path string true "项目编号" // @Success 200 {object} viewmodels.FolderContract "{code:0成功,-1参数类错误,data:viewmodels.ProjectAccount,msg:错误信息}" // @Router /api/contract/folder [get] func (c *JlBb) GetFolder() { // 1.获得数据 data := &viewmodels.Jl{} if err := c.Ctx.ReadForm(data); err != nil { c.Ctx.JSON(iris.Map{"code": -1, "msg": fmt.Sprintf("%s", err)}) return } // 1-1.校验是否存在code if err := data.ValidateCode(); err != nil { c.Ctx.JSON(iris.Map{"code": -1, "msg": fmt.Sprintf("%s", err)}) return } // 1-2.验证jwt // _, err := utils.ValidateJwt(data.Token) // if err != nil { // c.Ctx.JSON(iris.Map{"code": -1, "msg": fmt.Sprintf("%s", err)}) // return // } // 获得项目ID projectDetail := c.ServiceProject.GetNameBs(data.Code) if projectDetail.Id == 0 { c.Ctx.JSON(iris.Map{ "code": -1, "msg": "项目不存在", }) return } // 获得层级文件夹 FolderData := c.ServiceTree.GetAllContractByJL(projectDetail.Id) c.Ctx.JSON(iris.Map{ "code": 0, "msg": "", "data": FolderData, }) }