优化代码生成Controller 查询条件拼接

This commit is contained in:
不做码农
2021-12-10 22:05:25 +08:00
parent 0f3424de55
commit 1fa9d2aad5
6 changed files with 56 additions and 43 deletions

View File

@@ -51,7 +51,18 @@ namespace ${options.ApiControllerNamespace}.Controllers
var predicate = Expressionable.Create<${replaceDto.ModelTypeName}>();
//搜索条件查询语法参考Sqlsugar
${QueryCondition}
$foreach(column in genTable.Columns)
$if(column.IsQuery)
$if(column.CsharpType == "string")
predicate = predicate.AndIF(!string.IsNullOrEmpty(parm.${column.CsharpField}), ${codeTool.QueryExp(column.CsharpField, column.QueryType)};
$elseif(column.CsharpType == "DateTime")
predicate = predicate.AndIF(parm.Begin${column.CsharpField} != null, it => it.${column.CsharpField} >= parm.Begin${column.CsharpField});
predicate = predicate.AndIF(parm.End${column.CsharpField} != null, it => it.${column.CsharpField} <= parm.End${column.CsharpField});
$elseif(column.CsharpType == "int" || column.CsharpType == "long")
predicate = predicate.AndIF(parm.${column.CsharpField} != null, ${codeTool.QueryExp(column.CsharpField, column.QueryType)};
$end
$end
$end
$if(genTable.SortField != "" && genTable.SortField != null)
var response = _${replaceDto.ModelTypeName}Service.GetPages(predicate.ToExpression(), parm, x => x.${genTable.SortField}, "${genTable.SortType}");
$else

View File

@@ -14,7 +14,7 @@ $foreach(item in genTable.Columns)
$if((item.IsInsert || item.IsEdit || item.IsPk || item.IsIncrement))
public $item.CsharpType$item.RequiredStr $item.CsharpField { get; set; }
$end
${end}
$end
}
/// <summary>
@@ -27,8 +27,8 @@ $if(item.IsQuery && item.htmlType == "datetime")
public DateTime? Begin$item.CsharpField { get; set; }
public DateTime? End$item.CsharpField { get; set; }
$elseif(item.IsQuery)
public $item.CsharpType $item.CsharpField { get; set; }
public $item.CsharpType$if(item.CsharpType != "string")?$end $item.CsharpField { get; set; }
$end
$end
${end}
}
}

View File

@@ -8,7 +8,6 @@ ${vueQueryFormHtml}
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-row>
</el-form>
<!-- 工具区域 -->
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
@@ -93,7 +92,12 @@ export default {
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 20
pageSize: 20,
$foreach(item in genTable.Columns)
$if(item.IsQuery == true)
${item.columnName}: undefined,
$end
$end
},
// 弹出层标题
title: "",
@@ -101,8 +105,6 @@ export default {
open: false,
// 表单参数
form: {},
// 时间范围数组
timeRange: [],
columns: [
$set(index = 0)
$foreach(column in genTable.Columns)