public async Task <IEnumerable <SysRolesResponeModel> > GetModelsAsync(SysRolesRequestModel queryParameter, IEnumerable <string> fields = null) { using (var conn = DbContext.CreateConnection()) { var strWhere = GetQuery(queryParameter); var strFieldNames = DbContext.GetFieldsToString <SysRolesModel>("b1", fields); var dataQuery = $"SELECT b1_result.*{joinFiles} FROM (SELECT {strFieldNames} FROM {tableName} b1 WHERE 1=1 {strWhere}) b1_result {joinTable} ORDER BY b1_result.role_id ASC";//内查询,可以做连接查询 直接join return(await conn.QueryAsync <SysRolesResponeModel>(dataQuery, queryParameter)); } }
public async Task <IEnumerable <SysRolesModel> > GetCurrentModelsAsync(SysRolesRequestModel queryParameter, IEnumerable <string> fields = null) { using (var conn = DbContext.CreateConnection()) { var strWhere = GetQuery(queryParameter); var strFieldNames = DbContext.GetFieldsToString <SysRolesModel>("b1", fields); var dataQuery = $"SELECT {strFieldNames} FROM {tableName} b1 WHERE 1=1 {strWhere} ORDER BY b1.role_id ASC"; return(await conn.QueryAsync <SysRolesModel>(dataQuery, queryParameter)); } }
private string GetQuery(SysRolesRequestModel queryParameter, string table = null) { switch (table) { default: { var sb = new StringBuilder(); //如果需要模糊查询请处理参数值添加% sb.Append(DbContext.GetSqlQueryString <SysRolesModel>(queryParameter)); return(sb.ToString()); } } }
public async Task <IActionResult> Post([FromBody] SysRolesRequestModel parameter) { var apiResult = new ApiResultModel(ErrorCodeType.Success); var model = new SysRolesModel(); parameter.CloneTo(model); if (await sysRolesService.CreateAsync(model)) { return(Created($"{route}/{parameter.role_id}", apiResult)); } apiResult.Code = ErrorCodeType.PostError; return(BadRequest(apiResult)); }
public async Task <IEnumerable <SysRolesResponeModel> > GetModelsAsync(PagingModel pagingModel, SysRolesRequestModel queryParameter, IEnumerable <string> fields = null) { var strWhere = GetQuery(queryParameter); var strFieldNames = DbContext.GetFieldsToString <SysRolesModel>("b1", fields); var querySql = "SELECT {0} " + $"FROM (SELECT {strFieldNames} FROM {tableName} b1 WHERE 1=1 {strWhere} ORDER BY role_id ASC) b1_result {joinTable}";//内查询,可以做连接查询 直接join var countQuery = string.Format(querySql, "COUNT(1)"); var pagingSql = $" LIMIT {pagingModel.StartIndex()},{pagingModel.PageSize}";//分页 var dataQuery = string.Format(querySql, $"b1_result.*{joinFiles}") + pagingSql; using (var conn = DbContext.CreateConnection()) { pagingModel.TotalCount = await conn.ExecuteScalarAsync <long>(countQuery, queryParameter); return(await conn.QueryAsync <SysRolesResponeModel>(dataQuery, queryParameter)); } }
public async Task <IActionResult> Get([FromQuery] int oprator, [FromQuery] PagingModel paging, [FromQuery] SysRolesRequestModel queryParameter) { var apiResult = new ApiResultModel(ErrorCodeType.Success); switch (paging.Oprator) { case 1: { //获取不分页数据集合 var data = await sysRolesService.GetModelsAsync(queryParameter); apiResult.Result = data; return(Ok(apiResult)); } case 10: { //角色树 var data = await sysRolesService.GetCurrentModelsAsync(queryParameter, new string[] { "role_id", "role_name" }); apiResult.Result = data.Select(a => new { title = a.role_name, id = a.role_id, data = a, spread = true }); return(Ok(apiResult)); } default: { var data = await sysRolesService.GetModelsAsync(paging, queryParameter); apiResult.Result = new { paging, data }; return(Ok(apiResult)); } } }
public async Task <IEnumerable <SysRolesResponeModel> > GetModelsAsync(PagingModel pagingModel, SysRolesRequestModel queryParameter, IEnumerable <string> fields = null) { return(await sysRolesRepository.GetModelsAsync(pagingModel, queryParameter, fields)); }
public async Task <IEnumerable <SysRolesModel> > GetCurrentModelsAsync(SysRolesRequestModel queryParameter, IEnumerable <string> fields = null) { return(await sysRolesRepository.GetCurrentModelsAsync(queryParameter, fields)); }