fix: 修复代码生成模板时间查询问题 #28
This commit is contained in:
@@ -118,12 +118,12 @@ class {{ BusinessName }}Dao:
|
||||
{{ ClassName }}.{{ field }} <= query_object.{{ field }} if query_object.{{ field }} else True,
|
||||
{% elif column.query_type == "LIKE" %}
|
||||
{{ ClassName }}.{{ field }}.like(f'%{% raw %}{{% endraw %}query_object.{{ field }}{% raw %}}{% endraw %}%') if query_object.{{ field }} else True,
|
||||
{% elif column.query_type == "BETWEEN" %}
|
||||
{% elif column.html_type == "datetime" and column.query_type == "BETWEEN" %}
|
||||
{{ ClassName }}.{{ field }}.between(
|
||||
datetime.combine(datetime.strptime(query_object.begin_time, '%Y-%m-%d'), time(00, 00, 00)),
|
||||
datetime.combine(datetime.strptime(query_object.end_time, '%Y-%m-%d'), time(23, 59, 59)),
|
||||
datetime.combine(datetime.strptime(query_object.begin_{{ column.column_name }}, '%Y-%m-%d'), time(00, 00, 00)),
|
||||
datetime.combine(datetime.strptime(query_object.end_{{ column.column_name }}, '%Y-%m-%d'), time(23, 59, 59)),
|
||||
)
|
||||
if query_object.begin_time and query_object.end_time
|
||||
if query_object.begin_{{ column.column_name }} and query_object.end_{{ column.column_name }}
|
||||
else True,
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
@@ -3,10 +3,14 @@
|
||||
{% set pkParentheseIndex = pkColumn.column_comment.find("(") %}
|
||||
{% set pk_field_comment = pkColumn.column_comment[:pkParentheseIndex] if pkParentheseIndex != -1 else pkColumn.column_comment %}
|
||||
{% set vo_field_required = namespace(has_required=False) %}
|
||||
{% set vo_field_daterange = namespace(has_daterange=False) %}
|
||||
{% for column in columns %}
|
||||
{% if column.required %}
|
||||
{% set vo_field_required.has_required = True %}
|
||||
{% endif %}
|
||||
{% if column.html_type == "datetime" and column.query_type == "BETWEEN" %}
|
||||
{% set vo_field_daterange.has_daterange = True %}
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{% set sub_vo_field_required = namespace(has_required=False) %}
|
||||
{% if table.sub %}
|
||||
@@ -142,9 +146,16 @@ class {{ BusinessName }}QueryModel({% if table.sub %}{{ BusinessName }}BaseModel
|
||||
"""
|
||||
{{ functionName }}不分页查询模型
|
||||
"""
|
||||
|
||||
begin_time: Optional[str] = Field(default=None, description='开始时间')
|
||||
end_time: Optional[str] = Field(default=None, description='结束时间')
|
||||
{% if vo_field_daterange.has_daterange %}
|
||||
{% for column in columns %}
|
||||
{% if column.html_type == "datetime" and column.query_type == "BETWEEN" %}
|
||||
begin_{{ column.column_name }}: Optional[str] = Field(default=None, description='开始{{ column.column_comment }}')
|
||||
end_{{ column.column_name }}: Optional[str] = Field(default=None, description='结束{{ column.column_comment }}')
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{% else %}
|
||||
pass
|
||||
{% endif %}
|
||||
|
||||
|
||||
@as_query
|
||||
|
@@ -351,8 +351,8 @@ export default {
|
||||
{% if column.html_type == "datetime" and column.query_type == "BETWEEN" %}
|
||||
{% set AttrName = column.python_field[0] | upper + column.python_field[1:] %}
|
||||
if (null != this.daterange{{ AttrName }} && '' != this.daterange{{ AttrName }}) {
|
||||
this.queryParams.params["begin{{ AttrName }}"] = this.daterange{{ AttrName }}[0];
|
||||
this.queryParams.params["end{{ AttrName }}"] = this.daterange{{ AttrName }}[1];
|
||||
this.queryParams.begin{{ AttrName }} = this.daterange{{ AttrName }}[0];
|
||||
this.queryParams.end{{ AttrName }} = this.daterange{{ AttrName }}[1];
|
||||
}
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
|
@@ -426,8 +426,8 @@ export default {
|
||||
{% if column.html_type == "datetime" and column.query_type == "BETWEEN" %}
|
||||
{% set AttrName = column.python_field[0] | upper + column.python_field[1:] %}
|
||||
if (null != this.daterange{{ AttrName }} && '' != this.daterange{{ AttrName }}) {
|
||||
this.queryParams.params["begin{{ AttrName }}"] = this.daterange{{ AttrName }}[0];
|
||||
this.queryParams.params["end{{ AttrName }}"] = this.daterange{{ AttrName }}[1];
|
||||
this.queryParams.begin{{ AttrName }} = this.daterange{{ AttrName }}[0];
|
||||
this.queryParams.end{{ AttrName }} = this.daterange{{ AttrName }}[1];
|
||||
}
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
|
@@ -315,8 +315,8 @@ function getList() {
|
||||
{% if column.html_type == "datetime" and column.query_type == "BETWEEN" %}
|
||||
{% set AttrName = column.python_field[0] | upper + column.python_field[1:] %}
|
||||
if (null != daterange{{ AttrName }} && '' != daterange{{ AttrName }}) {
|
||||
queryParams.value.params["begin{{ AttrName }}"] = daterange{{ AttrName }}.value[0];
|
||||
queryParams.value.params["end{{ AttrName }}"] = daterange{{ AttrName }}.value[1];
|
||||
queryParams.value.begin{{ AttrName }} = daterange{{ AttrName }}.value[0];
|
||||
queryParams.value.end{{ AttrName }} = daterange{{ AttrName }}.value[1];
|
||||
}
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
|
@@ -397,8 +397,8 @@ function getList() {
|
||||
{% if column.html_type == "datetime" and column.query_type == "BETWEEN" %}
|
||||
{% set AttrName = column.python_field[0] | upper + column.python_field[1:] %}
|
||||
if (null != daterange{{ AttrName }} && '' != daterange{{ AttrName }}) {
|
||||
queryParams.value.params["begin{{ AttrName }}"] = daterange{{ AttrName }}.value[0];
|
||||
queryParams.value.params["end{{ AttrName }}"] = daterange{{ AttrName }}.value[1];
|
||||
queryParams.value.begin{{ AttrName }} = daterange{{ AttrName }}.value[0];
|
||||
queryParams.value.end{{ AttrName }} = daterange{{ AttrName }}.value[1];
|
||||
}
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
|
Reference in New Issue
Block a user