public ResponseFuncTreeGet FuncTreeGet([FromBody] RequestFuncTreeGet request) { try { FunctionBLL bll = new FunctionBLL(); return(bll.FuncTreeGet(request)); } catch (Exception ex) { throw new HttpResponseException( Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex.Message)); } }
public ResponseFuncTreeGet FuncTreeGet(RequestFuncTreeGet request) { ResponseFuncTreeGet response = new ResponseFuncTreeGet(); using (cnn = GetConnection()) { try { string sql = @"WITH CTE(id, name, img, PARENTID,seq) AS (SELECT id,name,img, PARENTID,seq FROM tks_fas_function WHERE id = @Id UNION ALL SELECT B.id,B.name,B.img,B.PARENTID,B.Seq FROM tks_fas_function B INNER JOIN CTE ON B.PARENTID = CTE.id) SELECT * FROM CTE order by seq"; var funcs = cnn.Query <TKS_FAS_Function>(sql, new { Id = "-" }); TKS_FAS_TreeItem root = new TKS_FAS_TreeItem(); var first = funcs.Where(p => p.Id == "-").FirstOrDefault(); root = Trans2TreeItem(first); CreateTree(funcs.ToList(), ref root); response.Data = new List <TKS_FAS_TreeItem>(); response.Data.Add(root); response.IsSuccess = true; response.Message = "加载完毕"; return(response); } catch (Exception ex) { return(this.DealException(response, ex) as ResponseFuncTreeGet); } } }