update 修改代码生成模版,日期范围统一采用addDateRange方法

This commit is contained in:
LiuHao 2023-07-17 22:15:06 +08:00
parent 9a53ed796b
commit 66540b5e56
3 changed files with 49 additions and 31 deletions

View File

@ -29,6 +29,10 @@ export interface ${BusinessName}Form extends BaseEntity {
} }
export interface ${BusinessName}Query #if(!${treeCode})extends PageQuery #end{ export interface ${BusinessName}Query #if(!${treeCode})extends PageQuery #end{
/**
* 日期范围参数
*/
params?: any;
#foreach ($column in $columns) #foreach ($column in $columns)
#if($column.query) #if($column.query)
/** /**
@ -42,3 +46,6 @@ export interface ${BusinessName}Query #if(!${treeCode})extends PageQuery #end{
#end #end
#end #end
} }

View File

@ -46,7 +46,7 @@
#elseif($column.htmlType == "datetime" && $column.queryType == "BETWEEN") #elseif($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
<el-form-item label="${comment}" style="width: 308px"> <el-form-item label="${comment}" style="width: 308px">
<el-date-picker <el-date-picker
v-model="daterange${AttrName}" v-model="dateRange${AttrName}"
value-format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss"
type="daterange" type="daterange"
range-separator="-" range-separator="-"
@ -268,9 +268,6 @@
<script setup name="${BusinessName}" lang="ts"> <script setup name="${BusinessName}" lang="ts">
import { list${BusinessName}, get${BusinessName}, del${BusinessName}, add${BusinessName}, update${BusinessName} } from "@/api/${moduleName}/${businessName}"; import { list${BusinessName}, get${BusinessName}, del${BusinessName}, add${BusinessName}, update${BusinessName} } from "@/api/${moduleName}/${businessName}";
import { ${BusinessName}VO, ${BusinessName}Query, ${BusinessName}Form } from '@/api/${moduleName}/${businessName}/types'; import { ${BusinessName}VO, ${BusinessName}Query, ${BusinessName}Form } from '@/api/${moduleName}/${businessName}/types';
import { ComponentInternalInstance } from 'vue';
import { ElForm, ElTable } from 'element-plus';
type ${BusinessName}Option = { type ${BusinessName}Option = {
${treeCode}: number; ${treeCode}: number;
@ -292,9 +289,9 @@ const showSearch = ref(true);
const isExpandAll = ref(true); const isExpandAll = ref(true);
const loading = ref(false); const loading = ref(false);
const queryFormRef = ref(ElForm); const queryFormRef = ref<ElFormInstance>();
const ${businessName}FormRef = ref(ElForm); const ${businessName}FormRef = ref<ElFormInstance>();
const ${businessName}TableRef = ref(ElTable) const ${businessName}TableRef = ref<ElTableInstance>()
const dialog = reactive<DialogOption>({ const dialog = reactive<DialogOption>({
visible: false, visible: false,
@ -304,7 +301,7 @@ const dialog = reactive<DialogOption>({
#foreach ($column in $columns) #foreach ($column in $columns)
#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN") #if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) #set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
const daterange${AttrName} = ref([]); const dateRange${AttrName} = ref<[DateModelType, DateModelType]>(['', '']);
#end #end
#end #end
@ -325,9 +322,20 @@ const data = reactive<PageData<${BusinessName}Form, ${BusinessName}Query>>({
queryParams: { queryParams: {
#foreach ($column in $columns) #foreach ($column in $columns)
#if($column.query) #if($column.query)
#if($column.htmlType != "datetime" || $column.queryType != "BETWEEN")
$column.javaField: undefined#if($foreach.count != $columns.size()),#end $column.javaField: undefined#if($foreach.count != $columns.size()),#end
#end
#end #end
#end #end
params: {
#foreach ($column in $columns)
#if($column.query)
#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
$column.javaField: undefined#if($foreach.count != $columns.size()),#end
#end
#end
#end
}
}, },
rules: { rules: {
#foreach ($column in $columns) #foreach ($column in $columns)
@ -362,10 +370,7 @@ const getList = async () => {
#foreach ($column in $columns) #foreach ($column in $columns)
#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN") #if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) #set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
if (null != daterange${AttrName} && '' != daterange${AttrName}) { proxy?.addDateRange(queryParams.value, dateRange${AttrName}.value, '${AttrName}');
queryParams.value.params["begin${AttrName}"] = daterange${AttrName}.value[0];
queryParams.value.params["end${AttrName}"] = daterange${AttrName}.value[1];
}
#end #end
#end #end
const res = await list${BusinessName}(queryParams.value); const res = await list${BusinessName}(queryParams.value);
@ -394,7 +399,7 @@ const cancel = () => {
// 表单重置 // 表单重置
const reset = () => { const reset = () => {
form.value = {...initFormData} form.value = {...initFormData}
${businessName}FormRef.value.resetFields(); ${businessName}FormRef.value?.resetFields();
} }
/** 搜索按钮操作 */ /** 搜索按钮操作 */
@ -407,10 +412,10 @@ const resetQuery = () => {
#foreach ($column in $columns) #foreach ($column in $columns)
#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN") #if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) #set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
daterange${AttrName}.value = []; dateRange${AttrName}.value = ['', ''];
#end #end
#end #end
queryFormRef.value.resetFields(); queryFormRef.value?.resetFields();
handleQuery(); handleQuery();
} }
@ -438,7 +443,7 @@ const handleToggleExpandAll = () => {
/** 展开/折叠操作 */ /** 展开/折叠操作 */
const toggleExpandAll = (data: ${BusinessName}VO[], status: boolean) => { const toggleExpandAll = (data: ${BusinessName}VO[], status: boolean) => {
data.forEach((item) => { data.forEach((item) => {
${businessName}TableRef.value.toggleRowExpansion(item, status) ${businessName}TableRef.value?.toggleRowExpansion(item, status)
if (item.children && item.children.length > 0) toggleExpandAll(item.children, status) if (item.children && item.children.length > 0) toggleExpandAll(item.children, status)
}) })
} }
@ -467,7 +472,7 @@ const handleUpdate = (row: ${BusinessName}VO) => {
/** 提交按钮 */ /** 提交按钮 */
const submitForm = () => { const submitForm = () => {
${businessName}FormRef.value.validate(async (valid: boolean) => { ${businessName}FormRef.value?.validate(async (valid: boolean) => {
if (valid) { if (valid) {
buttonLoading.value = true; buttonLoading.value = true;
#foreach ($column in $columns) #foreach ($column in $columns)

View File

@ -46,7 +46,7 @@
#elseif($column.htmlType == "datetime" && $column.queryType == "BETWEEN") #elseif($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
<el-form-item label="${comment}" style="width: 308px"> <el-form-item label="${comment}" style="width: 308px">
<el-date-picker <el-date-picker
v-model="daterange${AttrName}" v-model="dateRange${AttrName}"
value-format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss"
type="daterange" type="daterange"
range-separator="-" range-separator="-"
@ -260,8 +260,6 @@
<script setup name="${BusinessName}" lang="ts"> <script setup name="${BusinessName}" lang="ts">
import { list${BusinessName}, get${BusinessName}, del${BusinessName}, add${BusinessName}, update${BusinessName} } from '@/api/${moduleName}/${businessName}'; import { list${BusinessName}, get${BusinessName}, del${BusinessName}, add${BusinessName}, update${BusinessName} } from '@/api/${moduleName}/${businessName}';
import { ${BusinessName}VO, ${BusinessName}Query, ${BusinessName}Form } from '@/api/${moduleName}/${businessName}/types'; import { ${BusinessName}VO, ${BusinessName}Query, ${BusinessName}Form } from '@/api/${moduleName}/${businessName}/types';
import { ComponentInternalInstance } from 'vue';
import { ElForm } from 'element-plus';
const { proxy } = getCurrentInstance() as ComponentInternalInstance; const { proxy } = getCurrentInstance() as ComponentInternalInstance;
#if(${dicts} != '') #if(${dicts} != '')
@ -280,12 +278,12 @@ const total = ref(0);
#foreach ($column in $columns) #foreach ($column in $columns)
#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN") #if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) #set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
const daterange${AttrName} = ref([]); const dateRange${AttrName} = ref<[DateModelType, DateModelType]>(['', '']);
#end #end
#end #end
const queryFormRef = ref(ElForm); const queryFormRef = ref<ElFormInstance>();
const ${businessName}FormRef = ref(ElForm); const ${businessName}FormRef = ref<ElFormInstance>();
const dialog = reactive<DialogOption>({ const dialog = reactive<DialogOption>({
visible: false, visible: false,
@ -310,9 +308,20 @@ const data = reactive<PageData<${BusinessName}Form, ${BusinessName}Query>>({
pageSize: 10, pageSize: 10,
#foreach ($column in $columns) #foreach ($column in $columns)
#if($column.query) #if($column.query)
#if($column.htmlType != "datetime" || $column.queryType != "BETWEEN")
$column.javaField: undefined#if($foreach.count != $columns.size()),#end $column.javaField: undefined#if($foreach.count != $columns.size()),#end
#end
#end #end
#end #end
params: {
#foreach ($column in $columns)
#if($column.query)
#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
$column.javaField: undefined#if($foreach.count != $columns.size()),#end
#end
#end
#end
}
}, },
rules: { rules: {
#foreach ($column in $columns) #foreach ($column in $columns)
@ -347,10 +356,7 @@ const getList = async () => {
#foreach ($column in $columns) #foreach ($column in $columns)
#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN") #if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) #set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
if (null != daterange${AttrName} && '' != daterange${AttrName}) { proxy?.addDateRange(queryParams.value, dateRange${AttrName}.value, '${AttrName}');
queryParams.value.params["begin${AttrName}"] = daterange${AttrName}.value[0];
queryParams.value.params["end${AttrName}"] = daterange${AttrName}.value[1];
}
#end #end
#end #end
const res = await list${BusinessName}(queryParams.value); const res = await list${BusinessName}(queryParams.value);
@ -368,7 +374,7 @@ const cancel = () => {
/** 表单重置 */ /** 表单重置 */
const reset = () => { const reset = () => {
form.value = {...initFormData}; form.value = {...initFormData};
${businessName}FormRef.value.resetFields(); ${businessName}FormRef.value?.resetFields();
} }
/** 搜索按钮操作 */ /** 搜索按钮操作 */
@ -382,10 +388,10 @@ const resetQuery = () => {
#foreach ($column in $columns) #foreach ($column in $columns)
#if($column.htmlType == "datetime" && $column.queryType == "BETWEEN") #if($column.htmlType == "datetime" && $column.queryType == "BETWEEN")
#set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)}) #set($AttrName=$column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})
daterange${AttrName}.value = []; dateRange${AttrName}.value = ['', ''];
#end #end
#end #end
queryFormRef.value.resetFields(); queryFormRef.value?.resetFields();
handleQuery(); handleQuery();
} }
@ -426,7 +432,7 @@ const handleUpdate = (row?: ${BusinessName}VO) => {
/** 提交按钮 */ /** 提交按钮 */
const submitForm = () => { const submitForm = () => {
${businessName}FormRef.value.validate(async (valid: boolean) => { ${businessName}FormRef.value?.validate(async (valid: boolean) => {
if (valid) { if (valid) {
buttonLoading.value = true; buttonLoading.value = true;
#foreach ($column in $columns) #foreach ($column in $columns)