新增多时间范围查询

This commit is contained in:
不做码农 2021-12-06 22:50:50 +08:00
parent baa0f9b4e5
commit 74635e79b9
5 changed files with 36 additions and 11 deletions

View File

@ -23,12 +23,12 @@ ${end}
public class ${replaceDto.ModelTypeName}QueryDto : PagerInfo
{
$foreach(item in genTable.Columns)
$if(item.IsQuery)
$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; }
$end
${end}
public DateTime? BeginTime { get; set; }
public DateTime? EndTime { get; set; }
}
}

View File

@ -103,8 +103,12 @@ $foreach(item in genTable.Columns)
$if((item.HtmlType == "radio" || item.HtmlType == "select"))
// ${item.ColumnComment}选项列表
${item.ColumnName}Options: [],
$elseif(item.HtmlType == "datetime")
//${item.ColumnComment}时间范围
dateRange${item.CsharpField}: [],
$end
$end
$if(genTable.SortField != "")
// 是否显示编辑排序
showEditSort: false,
@ -130,6 +134,9 @@ $if((item.HtmlType == "radio" || item.HtmlType == "select") && item.DictType !=
this.getDicts("${item.DictType}").then((response) => {
this.${item.ColumnName}Options = response.data;
})
$elseif(item.HtmlType == "datetime")
this.queryParams["begin${item.CsharpField}"] = this.addDateRange2(this.dateRange${item.CsharpField}, 0);
this.queryParams["end${item.CsharpField}"] = this.addDateRange2(this.dateRange${item.CsharpField}, 1);
$end
$end
},
@ -137,7 +144,7 @@ $end
// 查询数据
getList() {
console.log(JSON.stringify(this.queryParams));
list${genTable.BusinessName}(this.addDateRange(this.queryParams, this.timeRange)).then(res => {
list${genTable.BusinessName}(this.queryParams).then(res => {
if (res.code == 200) {
this.dataList = res.data.result;
this.total = res.data.totalNum;
@ -163,6 +170,12 @@ $end
/** 重置查询操作 */
resetQuery() {
this.timeRange = [];
$foreach(item in genTable.Columns)
if(item.HtmlType == "datetime")
//${item.ColumnComment}时间范围
dateRange${item.CsharpField}= [];
$end
$end
this.resetForm("queryForm");
this.queryParams = {
pageNum: 1,

View File

@ -34,8 +34,8 @@ namespace ZR.CodeGenerator
//时间类型
if (tbColumn.CsharpType == GenConstants.TYPE_DATE)
{
replaceDto.QueryCondition += $" predicate = predicate.AndIF(parm.BeginTime != null, it => it.{tbColumn.CsharpField} >= parm.BeginTime);\n";
replaceDto.QueryCondition += $" predicate = predicate.AndIF(parm.EndTime != null, it => it.{tbColumn.CsharpField} <= parm.EndTime);\n";
replaceDto.QueryCondition += $" predicate = predicate.AndIF(parm.Begin{tbColumn.CsharpField} != null, it => it.{tbColumn.CsharpField} >= parm.Begin{tbColumn.CsharpField});\n";
replaceDto.QueryCondition += $" predicate = predicate.AndIF(parm.End{tbColumn.CsharpField} != null, it => it.{tbColumn.CsharpField} <= parm.End{tbColumn.CsharpField});\n";
}
}
}
@ -199,7 +199,7 @@ namespace ZR.CodeGenerator
if (dbFieldInfo.HtmlType == GenConstants.HTML_DATETIME)
{
sb.AppendLine($" <el-form-item label=\"{labelName}\">");
sb.AppendLine(" <el-date-picker v-model=\"timeRange\" size=\"small\" value-format=\"yyyy-MM-dd\" type=\"daterange\" range-separator=\"-\" start-placeholder=\"开始日期\"");
sb.AppendLine($" <el-date-picker v-model=\"dateRange{dbFieldInfo.CsharpField}\" size=\"small\" value-format=\"yyyy-MM-dd\" type=\"daterange\" range-separator=\"-\" start-placeholder=\"开始日期\"");
sb.AppendLine(" end-placeholder=\"结束日期\"></el-date-picker>");
sb.AppendLine(" </el-form-item>");
}
@ -245,9 +245,9 @@ namespace ZR.CodeGenerator
string showToolTip = dbFieldInfo.CsharpType == "string" ? ":show-overflow-tooltip=\"true\"" : "";
string formatter = !string.IsNullOrEmpty(dbFieldInfo.DictType) ? $" :formatter=\"{columnName}Format\"" : "";
StringBuilder sb = new StringBuilder();
var sortField = genTable?.SortField ?? "";
//有排序字段
if (!string.IsNullOrEmpty(genTable?.SortField.ToString()) && genTable?.SortField.ToString() == dbFieldInfo.CsharpField)
if (!string.IsNullOrEmpty(sortField.ToString()) && sortField.ToString() == dbFieldInfo.CsharpField)
{
sb.AppendLine($@" <el-table-column prop=""{columnName}"" label=""{label}"" width=""90"" sortable align=""center"">");
sb.AppendLine(@" <template slot-scope=""scope"">");

View File

@ -16,7 +16,7 @@ import './assets/icons' // icon
import './permission' // permission control
import { getDicts } from "@/api/system/dict/data";
import { getConfigKey } from "@/api/system/config";
import { parseTime, resetForm, addDateRange, selectDictLabel, selectDictLabels, download, handleTree } from "@/utils/ruoyi";
import { parseTime, resetForm, addDateRange, addDateRange2, selectDictLabel, selectDictLabels, download, handleTree } from "@/utils/ruoyi";
//分页组件
import Pagination from "@/components/Pagination";
//自定义表格工具扩展
@ -36,6 +36,7 @@ Vue.prototype.getConfigKey = getConfigKey
Vue.prototype.parseTime = parseTime
Vue.prototype.resetForm = resetForm
Vue.prototype.addDateRange = addDateRange
Vue.prototype.addDateRange2 = addDateRange2
Vue.prototype.selectDictLabel = selectDictLabel
Vue.prototype.selectDictLabels = selectDictLabels
Vue.prototype.download = download

View File

@ -65,6 +65,17 @@ export function addDateRange(params, dateRange) {
return search;
}
export function addDateRange2(dateRange, index) {
console.log(dateRange);
var time = "";
if (null != dateRange && '' != dateRange) {
if (dateRange.length <= 2) {
time = dateRange[index];
}
}
return time;
}
// 回显数据字典
export function selectDictLabel(datas, value) {
var actions = [];