anncic-apihelper 3.4.87 → 3.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1,567 @@
1
- function a23_0x160d(){const _0x1e91fc=['mkdirSync','/pages/','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','\x22\x20:limit=\x221\x22\x20','\x20\x20\x20\x20\x20\x20\x20\x20router.back();\x0a','<dialog-add-vue\x20ref=\x22refDialogAdd\x22\x20@save=\x22LoadDatas()\x22\x20/>','\x22\x20type=\x22primary\x22\x20text>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20编辑\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</el-button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<el-button\x20v-if=\x22$hasPrem(`post@/','14ePKrhJ','\x20\x20\x20\x20</page-main>\x0a','EditRule\x20}\x20from\x20\x27../interface\x27;\x0a','<template\x20#reference>','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','datetime','\x0aimport\x20{\x20','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','开始时间\x22\x20type=\x22datetime\x22\x20value-format=\x22YYYY-MM-DD\x20HH:mm:ss\x22/>','apply','import\x20{\x20','\x22\x20align=\x22center\x22\x20fixed=\x22left\x22\x20/>','string','(((.+)+)+)+$','3qRSVzx','开始时间\x22\x20type=\x22date\x22\x20value-format=\x22YYYY-MM-DD\x22/>','thumbs','285789uWMlXD','default','Edit(item.','longtext','thumb','</template>\x0a','结束时间\x22\x20type=\x22date\x22\x20value-format=\x22YYYY-MM-DD\x22/>','displayorder','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','1399548opgtnF','defineExpose({\x20open\x20})\x0a','}\x0a\x0a\x0a','\x22\x20type=\x22date\x22\x20value-format=\x22YYYY-MM-DD\x22/>','Add\x20}\x20from\x20\x27@/apis/','<el-form-item\x20label=\x22排序\x22\x20prop=\x22displayorder\x22>','Detail\x20}\x20from\x20\x27@/apis/','cwd','</el-form-item>','deleted_at','img','4584816LPwVpY',',\x20{\x20[field]:\x20item[field]\x20}).then(res\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20if(\x20typeof(res?.data)\x20!=\x20\x27undefined\x27\x20){\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20item\x20=\x20res.data;\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20}\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20false,\x20$notify.success(res?.message\x20||\x20\x27操作成功\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20}).catch(err\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20false,\x20$notify.error(err\x20||\x20\x27操作失败\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20})\x0a\x20\x20\x20\x20}\x0a}\x0a\x0a/**\x0a\x20*\x20加载数据\x0a\x20*\x20**/\x0aLoadDatas()\x0a\x0a</script>','existsSync',')\x20{\x0a','Detail(','Comment','getProp','<el-popover\x20placement=\x22bottom\x22\x20trigger=\x22click\x22>','apps/','const\x20loading\x20=\x20ref(false),\x20router\x20=\x20useRouter();\x0a\x0a','updated_at','/edit/:','\x22\x20value=\x22','\x22\x20target=\x22_blank\x22\x20title=\x22查看最大化图片\x22>','5VlOfpA','\x22\x20clearable/>','\x22\x20split=\x22-\x22\x20clearable/>','/pages/apps/','<template>\x0a','timestamp',':\x20item.','\x22\x20lakey=\x22id\x22\x20\x20label=\x22id\x22\x20clearable/>','<el-input-number\x20v-model=\x22formdata.','\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<el-table-column\x20label=\x22排序\x22\x20prop=\x22displayorder\x22\x20align=\x22center\x22\x20width=\x2280\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<template\x20#default=\x22scope\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<el-input\x20v-model=\x22scope.row.displayorder\x22\x20type=\x22number\x22\x20@change=\x22handlerFieldChange(scope.row,\x27displayorder\x27)\x22></el-input>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</template>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</el-table-column>\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<el-table-column\x20label=\x22操作\x22\x20align=\x22center\x22\x20fixed=\x22right\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<template\x20#default=\x22scope\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<el-button\x20v-if=\x22$hasPrem(`get@/','\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20true,\x20','const\x20loading\x20=\x20ref(false),\x20refDialog\x20=\x20ref(null),\x20refForm\x20=\x20ref(null),\x20formdata\x20=\x20ref<any>({}),\x20emits\x20=\x20defineEmits([\x27save\x27]),\x20open\x20=\x20(',')\x20=>\x20{\x0a','\x22\x20:limit=\x225\x22\x20','<dialog-edit-vue\x20ref=\x22refDialogEdit\x22\x20@save=\x22LoadDatas()\x22/>','\x22\x20:model=\x22formdata\x22\x20:rules=\x22','\x22\x20align=\x27center\x27\x20sortable=\x22custom\x22>','\x22\x20\x20placeholder=\x22请输入','<el-date-picker\x20v-model=\x22props.search.','<el-form-item\x20label=\x22','935752IHmQVc','/list/','Type','\x22\x20align=\x27center\x27\x20sortable=\x22custom\x22\x20show-overflow-tooltip\x20/>','\x20\x20\x20\x20\x20\x20\x20\x20$notify.error(err\x20||\x20\x27网络请求错误\x27)\x0a','43532YqQFEg','\x22\x20placeholder=\x22请输入','_ids','dirname','logo','Edit,\x20','342KibIoT','defineProperty','_start\x22\x20placeholder=\x22选择','\x0a</template>\x0a<script\x20lang=\x22ts\x22\x20setup>\x0aconst\x20props\x20=\x20defineProps({\x0a\x20\x20\x20\x20search:\x20{type:\x20Object\x20,default:\x20()=>{return\x20{}}},\x0a})\x0a</script>','add','\x20\x20\x20\x20\x20\x20\x20\x20formdata.value\x20=\x20res?.data\x20||\x20{},\x20refDialog?.value?.open();\x0a','\x20\x20\x20\x20<page-main>\x0a','\x20\x20\x20\x20}\x20else\x20{\x0a','\x20/>','\x20\x20\x20\x20\x20\x20\x20\x20})\x0a','_end\x22\x20placeholder=\x22选择','getEnum','__esModule','List(Object.assign({},\x20route?.query\x20||\x20{},\x20table.search\x20||\x20{},\x20sortable)).then(res\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20false,\x20table.data\x20=\x20res.data\x20||\x20[],\x20table.search\x20=\x20{\x20...table.search,\x20...res?.extra?.pageinfo\x20||\x20{},\x20_count:\x20res?.extra?.pagetotal\x20||\x200\x20};\x0a\x20\x20\x20\x20}).catch(err\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20false,\x20$notify.error(err\x20||\x20\x27网络请求错误\x27);\x0a\x20\x20\x20\x20});\x0a}\x0a\x0a/**\x0a\x20*\x20删除数据\x0a\x20*\x20**/\x0aconst\x20handlerRemove\x20=\x20(item:any)\x20=>\x20{\x0a\x20\x20\x20\x20loading.value\x20=\x20true,\x20$confirm(`确定删除数据吗?`,\x20\x27提示\x27,\x20{\x20confirmButtonText:\x20\x27确定\x27,\x20cancelButtonText:\x20\x27取消\x27,\x20type:\x20\x27warning\x27\x20}).then(()\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20','AddRule\x20}\x20from\x20\x27../interface\x27;\x0a','\x22\x20\x20type=\x22primary\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20添加\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</el-button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</template>\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<template\x20#column>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','edit/:','<el-date-picker\x20v-model=\x22formdata.','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20false,\x20$notify.error(err\x20||\x20\x27网络请求错误\x27),\x20router.back();\x0a','created_at',').then(res\x20=>\x20{\x0a','Add','}`)','\x27;\x0a\x0a','padEnd','\x22\x20placeholder=\x22请选择','\x20as\x20unknown\x20as\x20','\x20\x20\x20\x20','//\x20保存数据\x0a','item).then(res=>{\x0a','}\x0a\x0a','indexOf','<template\x20#default=\x22scope\x22>','<tinymce-editor\x20v-model=\x22formdata.','\x22\x20placeholder=\x22选择','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','<el-input\x20v-model=\x22formdata.','const\x20handlerSave\x20=\x20()=>{\x0a','217662fgerqh','<el-select\x20v-model=\x22formdata.','<template>\x0a\x20\x20\x20\x20',')\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20true,\x20','Field','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20false,\x20$notify.success(res?.message\x20||\x20\x27操作成功\x27),\x20emits(\x27save\x27),\x20refDialog?.value?.close()\x0a','\x20\x20\x20\x20\x20\x20\x20\x20}).catch(err\x20=>\x20{\x0a','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</template>\x0a','Rule\x22\x20:loading=\x22loading\x22\x20:disabled=\x22!$hasPrem(`post@/','import\x20dialogAddVue\x20from\x20\x27./components/dialog-add.vue\x27;','$refs?.refDialogEdit?.open(scope.row.id)','\x22\x20api=\x22','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20','\x22\x20style=\x22cursor:pointer\x22/>','<template>\x0a\x20\x20\x20\x20<page-main>\x0a\x20\x20\x20\x20\x20\x20\x20\x20<elplus-table\x20:datas=\x22table.data\x22\x20:pageinfo=\x22table.search\x22\x20:loading=\x22loading\x22\x20@transform=\x22LoadDatas\x22>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<template\x20#search>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<search\x20v-model:search=\x22table.search\x22\x20/>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</template>\x0a\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<template\x20#header>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<el-button\x20v-if=\x22$hasPrem(`get@/','mediumtext','`)\x22>\x0a','<el-table-column\x20prop=','</a>','num','index.vue','\x22\x20:min=\x221\x22\x20controls-position=\x22right\x22\x20/>','path','utf-8','number','<elplus-select-search\x20v-model=\x22formdata.','\x20label=\x22','\x0a\x20\x20\x20\x20</page-main>\x0a</template>\x0a<script\x20lang=\x22ts\x22\x20setup>\x0aimport\x20search\x20from\x20\x27./components/search.vue\x27;\x0a','\x20\x20\x20\x20\x20\x20\x20\x20}).catch(err=>{\x0a','\x22\x20/>','tags','\x20\x20\x20\x20})\x0a','\x22\x20type=\x22datetime\x22\x20value-format=\x22YYYY-MM-DD\x20HH:mm:ss\x22/>','length','\x22\x20type=\x22textarea\x22\x20:rows=\x224\x22/>','module=\x22','edit','\x22\x20placeholder=\x22请输入或选择','\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20true,\x20formdata.value\x20=\x20{};\x0a','Detail,\x20','<script\x20lang=\x22ts\x22\x20setup>\x0a','`)\x22\x20type=\x22primary\x22\x20@click=\x22handlerSave()\x22>保存</el-button>\x0a','\x0a\x20\x20\x20\x20\x20\x20\x20\x20','Edit','11WzgWvk','\x22\x20class=\x22block\x22>','<a\x20:href=\x22scope.row.','\x22\x20clearable>','const\x20getDetail\x20=\x20(','<el-input-number\x20v-model=\x22formdata.displayorder\x22\x20placeholder=\x22请输入排序权重\x22\x20controls-position=\x22right\x22/>','</script>\x0a','/remove`)\x22\x20@click=\x22handlerRemove(scope.row)\x22\x20type=\x22danger\x22\x20text>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20删除\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</el-button>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</template>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</el-table-column>\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20</template>\x0a\x20\x20\x20\x20\x20\x20\x20\x20</elplus-table>\x0a\x20\x20\x20\x20\x20\x20\x20\x20','\x20\x20\x20\x20formdata.value\x20=\x20{},\x20refDialog?.value?.open();\x0a','item.','\x20\x20\x20\x20\x20\x20\x20\x20','writeFileSync','</el-table-column>','search','</template>','substring','\x22>\x0a','\x20\x20\x20\x20\x20\x20\x20\x20</template>\x0a','/vue','\x22\x20prop=\x22','<elplus-select-tags\x20v-model=\x22formdata.','Remove({\x20','//\x20获取详情\x0a','\x20\x20\x20\x20\x20\x20\x20\x20<elplus-form\x20ref=\x22refForm\x22\x20title=\x22','\x27;\x0a\x0aconst\x20loading\x20=\x20ref(false),\x20route\x20=\x20useRoute(),\x20table\x20=\x20reactive({\x0a\x20\x20\x20\x20data:\x20[],\x0a\x20\x20\x20\x20select:\x20[],\x0a\x20\x20\x20\x20search:\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20_page:\x201,\x0a\x20\x20\x20\x20\x20\x20\x20\x20_size:\x2020,\x0a\x20\x20\x20\x20\x20\x20\x20\x20_count:\x200,\x0a\x20\x20\x20\x20}\x0a})\x0a\x0a\x0a/**\x0a\x20*\x20获取数据列表\x0a\x20*\x20@param\x20page\x20分页-当前页\x0a\x20*\x20@param\x20size\x20分页-每页数量\x0a\x20*\x20**/\x0aconst\x20LoadDatas\x20=\x20(page?:\x20number,\x20size?:\x20number,\x20sortable\x20=\x20{})\x20=>\x20{\x0a\x20\x20\x20\x20loading.value\x20=\x20true,\x20page\x20&&\x20(table.search._page\x20=\x20page),\x20size\x20&&\x20(table.search._size\x20=\x20size);\x0a\x20\x20\x20\x20','.vue','$router.push(`add`)','import\x20dialogEditVue\x20from\x20\x27./components/dialog-edit.vue\x27;','date','enum','<el-input-number\x20v-model=\x22props.search.','/add`)\x22\x20@click=\x22','<attachment-image\x20v-model=\x22formdata.','=${scope.row.','\x20\x20\x20\x20formdata.value\x20=\x20{},\x20','Edit\x20}\x20from\x20\x27@/apis/','\x20\x20\x20\x20<elplus-dialog\x20ref=\x22refDialog\x22\x20:loading=\x22loading\x22\x20title=\x22','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<template\x20#footer>\x0a','\x20\x20\x20\x20\x20\x20\x20\x20<template\x20#footer>\x0a','endsWith','117370fYnwZN','substr','<elplus-select-search\x20v-model=\x22props.search.','\x20\x20\x20\x20\x20\x20\x20\x20</elplus-form>\x0a','/components/dialog-','toString','\x20\x20\x20\x20refForm.value?.validate().then((item:\x20any)\x20=>\x20{\x0a','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20false,\x20$notify.success(res?.message\x20||\x20\x27操作成功\x27),\x20router.back();\x0a','/index.vue','_id','$refs?.refDialogAdd?.open()','\x20}).then(res\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20false,\x20$notify.success(res?.message\x20||\x20\x27删除成功\x27),\x20LoadDatas();\x0a\x20\x20\x20\x20\x20\x20\x20\x20}).catch(err\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20false,\x20$notify.error(err\x20||\x20\x27删除失败\x27);\x0a\x20\x20\x20\x20\x20\x20\x20\x20})\x0a\x20\x20\x20\x20}).catch(()\x20=>\x20{\x0a\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20false;\x0a\x20\x20\x20\x20})\x0a}\x0a\x0a/**\x0a\x20*\x20修改字段状态\x0a\x20*\x20**/\x0a\x20const\x20handlerFieldChange\x20=\x20(item:\x20any,\x20field:string)=>{\x0a\x20\x20\x20\x20if\x20(item.','tinyint','</el-select>','\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20false,\x20formdata.value\x20=\x20res.data;\x0a','text','<el-option\x20label=\x22','<el-input\x20v-model=\x22props.search.','\x20\x20\x20\x20if\x20('];a23_0x160d=function(){return _0x1e91fc;};return a23_0x160d();}const a23_0x37a181=a23_0x61ca;(function(_0x59daf8,_0x13303d){const _0x269794=a23_0x61ca,_0x1d33ca=_0x59daf8();while(!![]){try{const _0x4ad8a8=parseInt(_0x269794(0x11f))/0x1+-parseInt(_0x269794(0xa0))/0x2+-parseInt(_0x269794(0x11c))/0x3*(parseInt(_0x269794(0x15a))/0x4)+-parseInt(_0x269794(0x141))/0x5*(-parseInt(_0x269794(0x128))/0x6)+-parseInt(_0x269794(0x10e))/0x7*(parseInt(_0x269794(0x155))/0x8)+-parseInt(_0x269794(0x160))/0x9*(-parseInt(_0x269794(0xf4))/0xa)+parseInt(_0x269794(0xcc))/0xb*(-parseInt(_0x269794(0x133))/0xc);if(_0x4ad8a8===_0x13303d)break;else _0x1d33ca['push'](_0x1d33ca['shift']());}catch(_0x2004c2){_0x1d33ca['push'](_0x1d33ca['shift']());}}}(a23_0x160d,0x37fd5));const a23_0x4ebf11=(function(){let _0x4a90a7=!![];return function(_0xce4af1,_0x4e42e9){const _0x249bcb=_0x4a90a7?function(){const _0x1cdf66=a23_0x61ca;if(_0x4e42e9){const _0x17d08d=_0x4e42e9[_0x1cdf66(0x117)](_0xce4af1,arguments);return _0x4e42e9=null,_0x17d08d;}}:function(){};return _0x4a90a7=![],_0x249bcb;};}()),a23_0x51387d=a23_0x4ebf11(this,function(){const _0x3df235=a23_0x61ca;return a23_0x51387d[_0x3df235(0xf9)]()[_0x3df235(0xd9)](_0x3df235(0x11b))[_0x3df235(0xf9)]()['constructor'](a23_0x51387d)['search'](_0x3df235(0x11b));});a23_0x51387d();'use strict';Object[a23_0x37a181(0x161)](exports,a23_0x37a181(0x16c),{'value':!![]}),exports[a23_0x37a181(0x120)]=default_1;const fs=require('fs'),path_1=require(a23_0x37a181(0xb6)),helper_1=require('../helper');async function default_1({moduleName:_0x1fd82b,controller:_0x4af841,tablestartUpShort:_0x37a6a2,tablestartUpShort2:_0x5d2f13,Primary:_0x3f90fd,Fields:_0x5b4ac0,apporbasic:_0x29d59e,Comment:_0x56cbdd,vuedialog:_0x24dc22}){const _0x257cfd=a23_0x37a181;await createIndex({'moduleName':_0x1fd82b,'controller':_0x4af841,'tablestartUpShort':_0x37a6a2,'tablestartUpShort2':_0x5d2f13,'Primary':_0x3f90fd,'Fields':_0x5b4ac0,'apporbasic':_0x29d59e,'vuedialog':_0x24dc22}),await createSearch({'moduleName':_0x1fd82b,'controller':_0x4af841,'tablestartUpShort2':_0x5d2f13,'Primary':_0x3f90fd,'Fields':_0x5b4ac0,'apporbasic':_0x29d59e,'vuedialog':_0x24dc22}),!_0x24dc22?(await createAddOrEdit({'moduleName':_0x1fd82b,'controller':_0x4af841,'tablestartUpShort':_0x37a6a2,'tablestartUpShort2':_0x5d2f13,'Primary':_0x3f90fd,'Fields':_0x5b4ac0,'apporbasic':_0x29d59e,'Comment':_0x56cbdd},_0x257cfd(0x164)),await createAddOrEdit({'moduleName':_0x1fd82b,'controller':_0x4af841,'tablestartUpShort':_0x37a6a2,'tablestartUpShort2':_0x5d2f13,'Primary':_0x3f90fd,'Fields':_0x5b4ac0,'apporbasic':_0x29d59e,'Comment':_0x56cbdd},_0x257cfd(0xc4))):(await createAddOrEditDialog({'moduleName':_0x1fd82b,'controller':_0x4af841,'tablestartUpShort':_0x37a6a2,'tablestartUpShort2':_0x5d2f13,'Primary':_0x3f90fd,'Fields':_0x5b4ac0,'apporbasic':_0x29d59e,'Comment':_0x56cbdd},_0x257cfd(0x164)),await createAddOrEditDialog({'moduleName':_0x1fd82b,'controller':_0x4af841,'tablestartUpShort':_0x37a6a2,'tablestartUpShort2':_0x5d2f13,'Primary':_0x3f90fd,'Fields':_0x5b4ac0,'apporbasic':_0x29d59e,'Comment':_0x56cbdd},_0x257cfd(0xc4)));}function a23_0x61ca(_0x4d6b82,_0x45facb){const _0xa531a1=a23_0x160d();return a23_0x61ca=function(_0x51387d,_0x4ebf11){_0x51387d=_0x51387d-0x8b;let _0x160d58=_0xa531a1[_0x51387d];return _0x160d58;},a23_0x61ca(_0x4d6b82,_0x45facb);}async function createIndex({moduleName:_0xe15d35,controller:_0x5cb756,tablestartUpShort:_0x58830e,tablestartUpShort2:_0x409b9c,Primary:_0x5275cb,Fields:_0xf66d3c,apporbasic:_0x27ba99,vuedialog:_0x3c5c23}){const _0x2c9eb3=a23_0x37a181;let _0x546bcf=process['cwd']()+_0x2c9eb3(0xde)+(typeof _0x5cb756==_0x2c9eb3(0x11a)?'/'+_0x5cb756:'');_0xe15d35?_0x546bcf=_0x546bcf+(_0x2c9eb3(0x144)+_0xe15d35+'/'+_0x409b9c+(!_0x3c5c23?_0x2c9eb3(0x156):'/')+_0x2c9eb3(0xb4)):_0x546bcf=_0x546bcf+(_0x2c9eb3(0x108)+_0x27ba99+'/'+_0x409b9c+(!_0x3c5c23?'/list/':'/')+_0x2c9eb3(0xb4));if(!fs[_0x2c9eb3(0x135)](_0x546bcf)){let _0x5db95c=_0x2c9eb3(0xb1)+('\x22'+_0x5275cb['Field']+'\x22')[_0x2c9eb3(0x92)](0x14)+(_0x2c9eb3(0xba)+(_0x5275cb[_0x2c9eb3(0x138)]||'编号')+_0x2c9eb3(0x119));for(let _0x52078c in _0xf66d3c){const _0x5b4bca=_0xf66d3c[_0x52078c];if([_0x2c9eb3(0x8d),_0x2c9eb3(0x13d),_0x2c9eb3(0x131),'displayorder']['indexOf'](_0x52078c)!=-0x1)continue;if(_0x52078c[_0x2c9eb3(0xdb)](_0x52078c[_0x2c9eb3(0xc1)]-0x3)==_0x2c9eb3(0x132)||_0x52078c['substring'](_0x52078c[_0x2c9eb3(0xc1)]-0x5)=='thumb'||_0x52078c==_0x2c9eb3(0x123)||_0x52078c[_0x2c9eb3(0xdb)](_0x52078c[_0x2c9eb3(0xc1)]-0x4)==_0x2c9eb3(0x15e)||_0x52078c==_0x2c9eb3(0x15e))_0x5db95c+='\x0a'+_0x2c9eb3(0x127)+_0x2c9eb3(0xb1)+('\x22'+_0x52078c+'\x22')[_0x2c9eb3(0x92)](0x14)+('\x20label=\x22'+(_0x5b4bca[_0x2c9eb3(0x138)]||_0x5b4bca[_0x2c9eb3(0xa4)])+'\x22\x20align=\x27center\x27\x20show-overflow-tooltip>'),_0x5db95c+='\x0a'+_0x2c9eb3(0x115)+_0x2c9eb3(0x9a),_0x5db95c+='\x0a'+_0x2c9eb3(0x109)+_0x2c9eb3(0x13a),_0x5db95c+='\x0a'+_0x2c9eb3(0x112)+(_0x2c9eb3(0xce)+_0x52078c+_0x2c9eb3(0x140)),_0x5db95c+='\x0a'+_0x2c9eb3(0xac)+('<img\x20:src=\x22scope.row.'+_0x52078c+'\x22\x20style=\x22width:\x20100%;max-width:500px\x22\x20/>'),_0x5db95c+='\x0a'+_0x2c9eb3(0x112)+_0x2c9eb3(0xb2),_0x5db95c+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x2c9eb3(0x111),_0x5db95c+='\x0a'+_0x2c9eb3(0xac)+('<el-avatar\x20:src=\x22scope.row.'+_0x52078c+_0x2c9eb3(0xad)),_0x5db95c+='\x0a'+_0x2c9eb3(0x112)+'</template>',_0x5db95c+='\x0a'+_0x2c9eb3(0x109)+'</el-popover>',_0x5db95c+='\x0a'+_0x2c9eb3(0x115)+_0x2c9eb3(0xda),_0x5db95c+='\x0a'+_0x2c9eb3(0x127)+_0x2c9eb3(0xd8);else{if([_0x2c9eb3(0x100)][_0x2c9eb3(0x99)]((0x0,helper_1[_0x2c9eb3(0x139)])(_0x5b4bca[_0x2c9eb3(0x157)]))!=-0x1)_0x5db95c+='\x0a'+_0x2c9eb3(0x127)+'<el-table-column\x20prop='+('\x22'+_0x52078c+'\x22')[_0x2c9eb3(0x92)](0x14)+(_0x2c9eb3(0xba)+(_0x5b4bca['Comment']||_0x5b4bca[_0x2c9eb3(0xa4)])+_0x2c9eb3(0x151)),_0x5db95c+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x2c9eb3(0x9a),_0x5db95c+='\x0a'+_0x2c9eb3(0x109)+('<elplus-switch\x20v-model=\x22scope.row\x22\x20field=\x22'+_0x52078c+'\x22\x20active-text=\x22启用\x22\x20inactive-text=\x22禁用\x22\x20@change=\x22handlerFieldChange\x22\x20/>'),_0x5db95c+='\x0a'+_0x2c9eb3(0x115)+_0x2c9eb3(0xda),_0x5db95c+='\x0a'+_0x2c9eb3(0x127)+'</el-table-column>';else[_0x2c9eb3(0x103)][_0x2c9eb3(0x99)]((0x0,helper_1[_0x2c9eb3(0x139)])(_0x5b4bca[_0x2c9eb3(0x157)]))==-0x1&&(_0x5db95c+='\x0a'+_0x2c9eb3(0x127)+_0x2c9eb3(0xb1)+('\x22'+_0x52078c+'\x22')[_0x2c9eb3(0x92)](0x14)+(_0x2c9eb3(0xba)+(_0x5b4bca[_0x2c9eb3(0x138)]||_0x5b4bca[_0x2c9eb3(0xa4)])+_0x2c9eb3(0x158)));}}const _0x2e176e=''+(typeof _0x5cb756=='string'?_0x5cb756+'/':'')+(_0xe15d35?_0xe15d35+'/':'')+_0x409b9c;fs[_0x2c9eb3(0x107)]((0x0,path_1[_0x2c9eb3(0x15d)])(_0x546bcf),{'recursive':!![]}),fs[_0x2c9eb3(0xd7)](_0x546bcf,_0x2c9eb3(0xae)+_0x2e176e+_0x2c9eb3(0xeb)+(!_0x3c5c23?_0x2c9eb3(0xe6):_0x2c9eb3(0xfe))+_0x2c9eb3(0x16f)+_0x5db95c+_0x2c9eb3(0x14a)+_0x2e176e+_0x2c9eb3(0x13e)+_0x5275cb['Field']+'`)\x22\x20@click=\x22'+(!_0x3c5c23?'$router.push(`edit?'+_0x5275cb[_0x2c9eb3(0xa4)]+_0x2c9eb3(0xed)+_0x5275cb['Field']+_0x2c9eb3(0x90):_0x2c9eb3(0xaa))+_0x2c9eb3(0x10d)+_0x2e176e+_0x2c9eb3(0xd3)+(!_0x3c5c23?'':_0x2c9eb3(0x10c))+_0x2c9eb3(0xca)+(!_0x3c5c23?'':_0x2c9eb3(0x14f))+_0x2c9eb3(0xbb)+(!_0x3c5c23?'':_0x2c9eb3(0xa9))+'\x0a'+(!_0x3c5c23?'':_0x2c9eb3(0xe7))+_0x2c9eb3(0x114)+_0x58830e+'List,\x20'+_0x58830e+'Remove,\x20'+_0x58830e+_0x2c9eb3(0xef)+(_0xe15d35?_0x2c9eb3(0x13b)+_0xe15d35:''+_0x27ba99)+'/'+_0x58830e+_0x2c9eb3(0xe4)+_0x58830e+_0x2c9eb3(0x16d)+_0x58830e+_0x2c9eb3(0xe1)+_0x5275cb['Field']+_0x2c9eb3(0x147)+_0x5275cb[_0x2c9eb3(0xa4)]+_0x2c9eb3(0xff)+_0x5275cb[_0x2c9eb3(0xa4)]+_0x2c9eb3(0xa3)+_0x58830e+_0x2c9eb3(0x121)+_0x5275cb['Field']+_0x2c9eb3(0x134),_0x2c9eb3(0xb7));}}async function createSearch({moduleName:_0x2a857e,tablestartUpShort2:_0x24faf3,controller:_0x134ec8,Primary:_0x18c8c9,Fields:_0x3ac377,apporbasic:_0x305b15,vuedialog:_0x474eed}){const _0x4eeee4=a23_0x37a181;let _0x4cfeb9=process[_0x4eeee4(0x12f)]()+_0x4eeee4(0xde)+(typeof _0x134ec8==_0x4eeee4(0x11a)?'/'+_0x134ec8:'');_0x2a857e?_0x4cfeb9=_0x4cfeb9+('/pages/apps/'+_0x2a857e+'/'+_0x24faf3+(!_0x474eed?'/list/':'/')+'components/search.vue'):_0x4cfeb9=_0x4cfeb9+(_0x4eeee4(0x108)+_0x305b15+'/'+_0x24faf3+(!_0x474eed?'/list/':'/')+'components/search.vue');if(!fs['existsSync'](_0x4cfeb9)){let _0x25f576='';_0x25f576+='\x0a'+_0x4eeee4(0x95)+(_0x4eeee4(0x154)+(_0x18c8c9[_0x4eeee4(0x138)]||'编号')+'\x22>'),_0x25f576+='\x0a'+_0x4eeee4(0xd6)+('<el-input\x20v-model=\x22props.search.'+_0x18c8c9['Field']+'\x22\x20placeholder=\x22请输入'+(_0x18c8c9[_0x4eeee4(0x138)]||'编号')+'\x22\x20clearable/>'),_0x25f576+='\x0a'+'\x20\x20\x20\x20'+_0x4eeee4(0x130);for(let _0x3fd17a in _0x3ac377){const _0x3939e2=_0x3ac377[_0x3fd17a];if(['updated_at','deleted_at','displayorder'][_0x4eeee4(0x99)](_0x3fd17a)!=-0x1)continue;if(_0x3fd17a[_0x4eeee4(0xdb)](_0x3fd17a[_0x4eeee4(0xc1)]-0x3)==_0x4eeee4(0x132)||_0x3fd17a[_0x4eeee4(0xdb)](_0x3fd17a[_0x4eeee4(0xc1)]-0x5)==_0x4eeee4(0x123)||_0x3fd17a==_0x4eeee4(0x123)||_0x3fd17a[_0x4eeee4(0xdb)](_0x3fd17a[_0x4eeee4(0xc1)]-0x4)==_0x4eeee4(0x15e)||_0x3fd17a==_0x4eeee4(0x15e))continue;if(_0x3fd17a[_0x4eeee4(0xdb)](_0x3fd17a[_0x4eeee4(0xc1)]-0x3)==_0x4eeee4(0xb3))_0x25f576+='\x0a'+_0x4eeee4(0x95)+(_0x4eeee4(0x154)+(_0x3939e2[_0x4eeee4(0x138)]||_0x3939e2[_0x4eeee4(0xa4)])+'\x22>'),_0x25f576+='\x0a'+_0x4eeee4(0xd6)+(_0x4eeee4(0xea)+_0x3fd17a+_0x4eeee4(0x15b)+_0x3939e2['Comment']+'\x22\x20:min=\x221\x22\x20controls-position=\x22right\x22\x20clearable/>'),_0x25f576+='\x0a'+_0x4eeee4(0x95)+'</el-form-item>'+'\x0a';else{if(_0x3fd17a[_0x4eeee4(0xf3)](_0x4eeee4(0xfd))){let _0x1907c4=''+(typeof _0x134ec8==_0x4eeee4(0x11a)?_0x134ec8+'/':'')+(_0x2a857e?_0x2a857e+'/':'')+_0x24faf3;_0x25f576+='\x0a'+_0x4eeee4(0xd6)+(_0x4eeee4(0x154)+(_0x3939e2[_0x4eeee4(0x138)]||_0x3939e2[_0x4eeee4(0xa4)])+'\x22>'),_0x25f576+='\x0a'+_0x4eeee4(0x9d)+(_0x4eeee4(0xf6)+_0x3fd17a+_0x4eeee4(0xab)+_0x1907c4+'\x22\x20lakey=\x22id\x22\x20\x20label=\x22id\x22\x20clearable/>'),_0x25f576+='\x0a'+_0x4eeee4(0xd6)+_0x4eeee4(0x130)+'\x0a';}else switch((0x0,helper_1['getProp'])(_0x3939e2[_0x4eeee4(0x157)])){case _0x4eeee4(0xe9):_0x25f576+='\x0a'+_0x4eeee4(0x95)+('<el-form-item\x20label=\x22'+(_0x3939e2[_0x4eeee4(0x138)]||_0x3939e2[_0x4eeee4(0xa4)])+'\x22>'),_0x25f576+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20'+('<el-select\x20v-model=\x22props.search.'+_0x3fd17a+'\x22\x20placeholder=\x22请选择'+_0x3939e2[_0x4eeee4(0x138)]+_0x4eeee4(0xcf));for(let _0x5cda29 of(0x0,helper_1[_0x4eeee4(0x16b)])(_0x3939e2['Type'])){_0x25f576+='\x0a'+_0x4eeee4(0x9d)+(_0x4eeee4(0x104)+_0x5cda29+_0x4eeee4(0x13f)+_0x5cda29+_0x4eeee4(0xbd));}_0x25f576+='\x0a'+_0x4eeee4(0xd6)+'</el-select>',_0x25f576+='\x0a'+_0x4eeee4(0x95)+_0x4eeee4(0x130)+'\x0a';break;case _0x4eeee4(0xe8):_0x25f576+='\x0a'+_0x4eeee4(0x95)+(_0x4eeee4(0x154)+(_0x3939e2[_0x4eeee4(0x138)]||_0x3939e2[_0x4eeee4(0xa4)])+'\x22>'),_0x25f576+='\x0a'+_0x4eeee4(0xd6)+(_0x4eeee4(0x153)+_0x3fd17a+'_start\x22\x20placeholder=\x22选择'+_0x3939e2['Comment']+_0x4eeee4(0x11d)),_0x25f576+='\x0a'+'\x20\x20\x20\x20'+_0x4eeee4(0x130)+'\x0a',_0x25f576+='\x0a'+_0x4eeee4(0x95)+(_0x4eeee4(0x154)+(_0x3939e2['Comment']||_0x3939e2['Field'])+'\x22>'),_0x25f576+='\x0a'+_0x4eeee4(0xd6)+('<el-date-picker\x20v-model=\x22props.search.'+_0x3fd17a+_0x4eeee4(0x16a)+_0x3939e2[_0x4eeee4(0x138)]+_0x4eeee4(0x125)),_0x25f576+='\x0a'+'\x20\x20\x20\x20'+'</el-form-item>'+'\x0a';break;case _0x4eeee4(0x113):_0x25f576+='\x0a'+_0x4eeee4(0x95)+('<el-form-item\x20label=\x22'+(_0x3939e2[_0x4eeee4(0x138)]||_0x3939e2[_0x4eeee4(0xa4)])+'\x22>'),_0x25f576+='\x0a'+_0x4eeee4(0xd6)+(_0x4eeee4(0x153)+_0x3fd17a+_0x4eeee4(0x162)+_0x3939e2[_0x4eeee4(0x138)]+_0x4eeee4(0x116)),_0x25f576+='\x0a'+_0x4eeee4(0x95)+'</el-form-item>'+'\x0a',_0x25f576+='\x0a'+_0x4eeee4(0x95)+('<el-form-item\x20label=\x22'+(_0x3939e2[_0x4eeee4(0x138)]||_0x3939e2['Field'])+'\x22>'),_0x25f576+='\x0a'+_0x4eeee4(0xd6)+(_0x4eeee4(0x153)+_0x3fd17a+_0x4eeee4(0x16a)+_0x3939e2[_0x4eeee4(0x138)]+'结束时间\x22\x20type=\x22datetime\x22\x20value-format=\x22YYYY-MM-DD\x20HH:mm:ss\x22/>'),_0x25f576+='\x0a'+_0x4eeee4(0x95)+'</el-form-item>'+'\x0a';break;case _0x4eeee4(0x146):_0x25f576+='\x0a'+'\x20\x20\x20\x20'+(_0x4eeee4(0x154)+(_0x3939e2[_0x4eeee4(0x138)]||_0x3939e2['Field'])+'\x22>'),_0x25f576+='\x0a'+_0x4eeee4(0xd6)+(_0x4eeee4(0x153)+_0x3fd17a+_0x4eeee4(0x162)+_0x3939e2[_0x4eeee4(0x138)]+'开始时间\x22\x20type=\x22datetime\x22\x20value-format=\x22YYYY-MM-DD\x20HH:mm:ss\x22/>'),_0x25f576+='\x0a'+_0x4eeee4(0x95)+'</el-form-item>'+'\x0a',_0x25f576+='\x0a'+_0x4eeee4(0x95)+('<el-form-item\x20label=\x22'+(_0x3939e2[_0x4eeee4(0x138)]||_0x3939e2['Field'])+'\x22>'),_0x25f576+='\x0a'+_0x4eeee4(0xd6)+(_0x4eeee4(0x153)+_0x3fd17a+_0x4eeee4(0x16a)+_0x3939e2[_0x4eeee4(0x138)]+'结束时间\x22\x20type=\x22datetime\x22\x20value-format=\x22YYYY-MM-DD\x20HH:mm:ss\x22/>'),_0x25f576+='\x0a'+_0x4eeee4(0x95)+_0x4eeee4(0x130)+'\x0a';break;case _0x4eeee4(0x11a):_0x25f576+='\x0a'+_0x4eeee4(0x95)+(_0x4eeee4(0x154)+(_0x3939e2[_0x4eeee4(0x138)]||_0x3939e2[_0x4eeee4(0xa4)])+'\x22>'),_0x25f576+='\x0a'+_0x4eeee4(0xd6)+(_0x4eeee4(0x105)+_0x3fd17a+'\x22\x20placeholder=\x22请输入'+_0x3939e2[_0x4eeee4(0x138)]+_0x4eeee4(0x142)),_0x25f576+='\x0a'+_0x4eeee4(0x95)+_0x4eeee4(0x130)+'\x0a';}}}fs[_0x4eeee4(0x107)]((0x0,path_1[_0x4eeee4(0x15d)])(_0x4cfeb9),{'recursive':!![]}),fs[_0x4eeee4(0xd7)](_0x4cfeb9,_0x4eeee4(0xa2)+_0x25f576+_0x4eeee4(0x163),'utf-8');}}async function createAddOrEdit({moduleName:_0x590fa9,controller:_0x2c04bd,tablestartUpShort:_0x3608fc,tablestartUpShort2:_0x3c765d,Primary:_0x14138c,Fields:_0x42dbcd,apporbasic:_0x1636e0,Comment:_0x27a074},_0x1e4321=a23_0x37a181(0x164)){const _0x3954c4=a23_0x37a181;let _0x1d2b0e=process[_0x3954c4(0x12f)]()+'/vue'+(typeof _0x2c04bd==_0x3954c4(0x11a)?'/'+_0x2c04bd:'');_0x590fa9?_0x1d2b0e=_0x1d2b0e+('/pages/apps/'+_0x590fa9+'/'+_0x3c765d+'/'+_0x1e4321+_0x3954c4(0xfc)):_0x1d2b0e=_0x1d2b0e+(_0x3954c4(0x108)+_0x1636e0+'/'+_0x3c765d+'/'+_0x1e4321+'/index.vue');if(!fs[_0x3954c4(0x135)](_0x1d2b0e)){const _0x488bdc=[_0x3954c4(0x103),_0x3954c4(0xaf),_0x3954c4(0x11a)]['indexOf']((0x0,helper_1[_0x3954c4(0x139)])(_0x14138c['Type']))==-0x1,_0x1f05b6=''+(typeof _0x2c04bd=='string'?_0x2c04bd+'/':'')+(_0x590fa9?_0x590fa9+'/':'')+_0x3c765d;let _0x1c33ab='';for(let _0x305de4 in _0x42dbcd){const _0x4f2a5e=_0x42dbcd[_0x305de4];if([_0x3954c4(0x8d),_0x3954c4(0x13d),_0x3954c4(0x131),_0x3954c4(0x126)]['indexOf'](_0x305de4)!=-0x1)continue;if(_0x305de4[_0x3954c4(0xdb)](_0x305de4[_0x3954c4(0xc1)]-0x4)=='imgs'||_0x305de4[_0x3954c4(0xdb)](_0x305de4[_0x3954c4(0xc1)]-0x6)=='thumbs')_0x1c33ab+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x3954c4(0x154)+(_0x4f2a5e[_0x3954c4(0x138)]||_0x4f2a5e[_0x3954c4(0xa4)])+_0x3954c4(0xdf)+_0x305de4+'\x22\x20class=\x22block\x22>'),_0x1c33ab+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x3954c4(0xec)+_0x305de4+'\x22\x20:limit=\x225\x22\x20'+(_0x590fa9?'module=\x22'+_0x590fa9+'\x22':'')+_0x3954c4(0x168)),_0x1c33ab+='\x0a'+_0x3954c4(0x9d)+_0x3954c4(0x130)+'\x0a';else{if(_0x305de4[_0x3954c4(0xdb)](_0x305de4[_0x3954c4(0xc1)]-0x3)==_0x3954c4(0x132)||_0x305de4['substring'](_0x305de4['length']-0x5)==_0x3954c4(0x123)||_0x305de4==_0x3954c4(0x123)||_0x305de4[_0x3954c4(0xdb)](_0x305de4[_0x3954c4(0xc1)]-0x4)==_0x3954c4(0x15e)||_0x305de4=='logo')_0x1c33ab+='\x0a'+_0x3954c4(0x9d)+(_0x3954c4(0x154)+(_0x4f2a5e[_0x3954c4(0x138)]||_0x4f2a5e['Field'])+_0x3954c4(0xdf)+_0x305de4+_0x3954c4(0xcd)),_0x1c33ab+='\x0a'+_0x3954c4(0x127)+(_0x3954c4(0xec)+_0x305de4+_0x3954c4(0x10a)+(_0x590fa9?_0x3954c4(0xc3)+_0x590fa9+'\x22':'')+'/>'),_0x1c33ab+='\x0a'+_0x3954c4(0x9d)+_0x3954c4(0x130)+'\x0a';else{if(_0x305de4[_0x3954c4(0xdb)](_0x305de4[_0x3954c4(0xc1)]-0x4)==_0x3954c4(0xbe)||_0x305de4[_0x3954c4(0xdb)](_0x305de4[_0x3954c4(0xc1)]-0x3)=='tag')_0x1c33ab+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x3954c4(0x154)+(_0x4f2a5e[_0x3954c4(0x138)]||_0x4f2a5e['Field'])+_0x3954c4(0xdf)+_0x305de4+'\x22>'),_0x1c33ab+='\x0a'+_0x3954c4(0x127)+('<elplus-select-tags\x20v-model=\x22formdata.'+_0x305de4+'\x22\x20placeholder=\x22请输入或选择'+_0x4f2a5e[_0x3954c4(0x138)]+'\x22\x20split=\x22-\x22\x20clearable/>'),_0x1c33ab+='\x0a'+_0x3954c4(0x9d)+'</el-form-item>'+'\x0a';else{if(_0x305de4['substr'](-0x3)=='num')_0x1c33ab+='\x0a'+_0x3954c4(0x9d)+(_0x3954c4(0x154)+(_0x4f2a5e[_0x3954c4(0x138)]||_0x4f2a5e['Field'])+'\x22\x20prop=\x22'+_0x305de4+'\x22>'),_0x1c33ab+='\x0a'+_0x3954c4(0x127)+(_0x3954c4(0x149)+_0x305de4+'\x22\x20placeholder=\x22请输入'+_0x4f2a5e[_0x3954c4(0x138)]+'\x22\x20:min=\x221\x22\x20controls-position=\x22right\x22\x20/>'),_0x1c33ab+='\x0a'+_0x3954c4(0x9d)+_0x3954c4(0x130)+'\x0a';else{if(_0x305de4['substr'](-0x4)==_0x3954c4(0x15c))_0x1c33ab+='\x0a'+_0x3954c4(0x9d)+(_0x3954c4(0x154)+(_0x4f2a5e['Comment']||_0x4f2a5e[_0x3954c4(0xa4)])+'\x22\x20prop=\x22'+_0x305de4+'\x22>'),_0x1c33ab+='\x0a'+_0x3954c4(0x127)+(_0x3954c4(0x9e)+_0x305de4+_0x3954c4(0x15b)+_0x4f2a5e[_0x3954c4(0x138)]+_0x3954c4(0x142)),_0x1c33ab+='\x0a'+_0x3954c4(0x9d)+_0x3954c4(0x130)+'\x0a';else{if(_0x305de4[_0x3954c4(0xf5)](-0x3)==_0x3954c4(0xfd)){let _0x1348ed=''+(typeof _0x2c04bd=='string'?_0x2c04bd+'/':'')+(_0x590fa9?_0x590fa9+'/':'')+_0x3c765d;_0x1c33ab+='\x0a'+_0x3954c4(0x9d)+(_0x3954c4(0x154)+(_0x4f2a5e[_0x3954c4(0x138)]||_0x4f2a5e['Field'])+'\x22\x20prop=\x22'+_0x305de4+'\x22>'),_0x1c33ab+='\x0a'+_0x3954c4(0x127)+(_0x3954c4(0xb9)+_0x305de4+_0x3954c4(0xab)+_0x1348ed+_0x3954c4(0x148)),_0x1c33ab+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x3954c4(0x130)+'\x0a';}else switch((0x0,helper_1[_0x3954c4(0x139)])(_0x4f2a5e[_0x3954c4(0x157)])){case _0x3954c4(0xb8):_0x1c33ab+='\x0a'+_0x3954c4(0x9d)+(_0x3954c4(0x154)+(_0x4f2a5e['Comment']||_0x4f2a5e[_0x3954c4(0xa4)])+_0x3954c4(0xdf)+_0x305de4+'\x22>'),_0x1c33ab+='\x0a'+_0x3954c4(0x127)+('<el-input-number\x20v-model=\x22formdata.'+_0x305de4+_0x3954c4(0x15b)+_0x4f2a5e[_0x3954c4(0x138)]+'\x22\x20:min=\x221\x22\x20controls-position=\x22right\x22\x20/>'),_0x1c33ab+='\x0a'+_0x3954c4(0x9d)+_0x3954c4(0x130)+'\x0a';break;case _0x3954c4(0xe9):_0x1c33ab+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x3954c4(0x154)+(_0x4f2a5e[_0x3954c4(0x138)]||_0x4f2a5e['Field'])+_0x3954c4(0xdf)+_0x305de4+'\x22>'),_0x1c33ab+='\x0a'+_0x3954c4(0x127)+(_0x3954c4(0xa1)+_0x305de4+_0x3954c4(0x93)+_0x4f2a5e[_0x3954c4(0x138)]+'\x22\x20clearable>');for(let _0x12ca25 of(0x0,helper_1['getEnum'])(_0x4f2a5e[_0x3954c4(0x157)])){_0x1c33ab+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x3954c4(0x104)+_0x12ca25+_0x3954c4(0x13f)+_0x12ca25+'\x22\x20/>');}_0x1c33ab+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x3954c4(0x101),_0x1c33ab+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x3954c4(0x130)+'\x0a';break;case _0x3954c4(0x103):_0x1c33ab+='\x0a'+_0x3954c4(0x9d)+(_0x3954c4(0x154)+(_0x4f2a5e[_0x3954c4(0x138)]||_0x4f2a5e[_0x3954c4(0xa4)])+_0x3954c4(0xdf)+_0x305de4+_0x3954c4(0xcd)),_0x1c33ab+='\x0a'+_0x3954c4(0x127)+('<el-input\x20v-model=\x22formdata.'+_0x305de4+_0x3954c4(0x152)+_0x4f2a5e[_0x3954c4(0x138)]+_0x3954c4(0xc2)),_0x1c33ab+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x3954c4(0x130)+'\x0a';break;case _0x3954c4(0x122):_0x1c33ab+='\x0a'+_0x3954c4(0x9d)+('<el-form-item\x20label=\x22'+(_0x4f2a5e[_0x3954c4(0x138)]||_0x4f2a5e['Field'])+'\x22\x20prop=\x22'+_0x305de4+'\x22\x20class=\x22block\x22>'),_0x1c33ab+='\x0a'+_0x3954c4(0x127)+(_0x3954c4(0x9b)+_0x305de4+'\x22\x20'+(_0x590fa9?'module=\x22'+_0x590fa9+'\x22':'')+'/>'),_0x1c33ab+='\x0a'+_0x3954c4(0x9d)+_0x3954c4(0x130)+'\x0a';break;case _0x3954c4(0xaf):_0x1c33ab+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+('<el-form-item\x20label=\x22'+(_0x4f2a5e[_0x3954c4(0x138)]||_0x4f2a5e[_0x3954c4(0xa4)])+_0x3954c4(0xdf)+_0x305de4+_0x3954c4(0xcd)),_0x1c33ab+='\x0a'+_0x3954c4(0x127)+(_0x3954c4(0x9b)+_0x305de4+'\x22\x20'+(_0x590fa9?'module=\x22'+_0x590fa9+'\x22':'')+'/>'),_0x1c33ab+='\x0a'+_0x3954c4(0x9d)+_0x3954c4(0x130)+'\x0a';break;case _0x3954c4(0xe8):_0x1c33ab+='\x0a'+_0x3954c4(0x9d)+(_0x3954c4(0x154)+(_0x4f2a5e['Comment']||_0x4f2a5e[_0x3954c4(0xa4)])+'\x22\x20prop=\x22'+_0x305de4+'\x22>'),_0x1c33ab+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x3954c4(0x8b)+_0x305de4+_0x3954c4(0x9c)+_0x4f2a5e[_0x3954c4(0x138)]+_0x3954c4(0x12b)),_0x1c33ab+='\x0a'+_0x3954c4(0x9d)+_0x3954c4(0x130)+'\x0a';break;case _0x3954c4(0x113):_0x1c33ab+='\x0a'+_0x3954c4(0x9d)+(_0x3954c4(0x154)+(_0x4f2a5e[_0x3954c4(0x138)]||_0x4f2a5e[_0x3954c4(0xa4)])+_0x3954c4(0xdf)+_0x305de4+'\x22>'),_0x1c33ab+='\x0a'+_0x3954c4(0x127)+(_0x3954c4(0x8b)+_0x305de4+'\x22\x20placeholder=\x22选择'+_0x4f2a5e['Comment']+_0x3954c4(0xc0)),_0x1c33ab+='\x0a'+_0x3954c4(0x9d)+_0x3954c4(0x130)+'\x0a';break;case _0x3954c4(0x146):_0x1c33ab+='\x0a'+_0x3954c4(0x9d)+('<el-form-item\x20label=\x22'+(_0x4f2a5e[_0x3954c4(0x138)]||_0x4f2a5e[_0x3954c4(0xa4)])+_0x3954c4(0xdf)+_0x305de4+'\x22>'),_0x1c33ab+='\x0a'+_0x3954c4(0x127)+(_0x3954c4(0x8b)+_0x305de4+'\x22\x20placeholder=\x22选择'+_0x4f2a5e[_0x3954c4(0x138)]+'\x22\x20type=\x22datetime\x22\x20value-format=\x22YYYY-MM-DD\x20HH:mm:ss\x22/>'),_0x1c33ab+='\x0a'+_0x3954c4(0x9d)+_0x3954c4(0x130)+'\x0a';break;default:_0x1c33ab+='\x0a'+_0x3954c4(0x9d)+(_0x3954c4(0x154)+(_0x4f2a5e[_0x3954c4(0x138)]||_0x4f2a5e['Field'])+'\x22\x20prop=\x22'+_0x305de4+'\x22>'),_0x1c33ab+='\x0a'+_0x3954c4(0x127)+(_0x3954c4(0x9e)+_0x305de4+_0x3954c4(0x15b)+_0x4f2a5e[_0x3954c4(0x138)]+_0x3954c4(0x142)),_0x1c33ab+='\x0a'+_0x3954c4(0x9d)+_0x3954c4(0x130)+'\x0a';}}}}}}}_0x1c33ab+='\x0a'+_0x3954c4(0x9d)+_0x3954c4(0x12d),_0x1c33ab+='\x0a'+_0x3954c4(0x127)+'<el-input-number\x20v-model=\x22formdata.displayorder\x22\x20placeholder=\x22请输入排序权重\x22\x20controls-position=\x22right\x22/>',_0x1c33ab+='\x0a'+_0x3954c4(0x9d)+_0x3954c4(0x130)+'\x0a';let _0x3e162d=_0x3954c4(0x145);_0x3e162d+=_0x3954c4(0x166),_0x3e162d+=_0x3954c4(0xe3)+(_0x1e4321=='add'?'添加'+_0x27a074:'编辑'+_0x27a074)+_0x3954c4(0x150)+_0x3608fc+(_0x1e4321==_0x3954c4(0x164)?'Add':_0x3954c4(0xcb))+'Rule\x22\x20:loading=\x22loading\x22\x20:disabled=\x22!$hasPrem(`post@/'+_0x1f05b6+'/'+(_0x1e4321=='add'?'add':_0x3954c4(0x170)+_0x14138c[_0x3954c4(0xa4)])+_0x3954c4(0xb0),_0x3e162d+='\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x1c33ab+'\x0a\x0a',_0x3e162d+=_0x3954c4(0xf1),_0x3e162d+='\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<el-button\x20v-if=\x22$hasPrem(`post@/'+_0x1f05b6+'/'+(_0x1e4321==_0x3954c4(0x164)?_0x3954c4(0x164):_0x3954c4(0x170)+_0x14138c[_0x3954c4(0xa4)])+'`)\x22\x20type=\x22primary\x22\x20@click=\x22handlerSave()\x22>保存</el-button>\x0a',_0x3e162d+=_0x3954c4(0xa7),_0x3e162d+=_0x3954c4(0xf7),_0x3e162d+=_0x3954c4(0x10f),_0x3e162d+='</template>\x0a',_0x3e162d+=_0x3954c4(0xc8);if(_0x1e4321==_0x3954c4(0x164))_0x3e162d+='import\x20{\x20'+_0x3608fc+_0x3954c4(0x16e),_0x3e162d+='import\x20{\x20'+_0x3608fc+'Add\x20}\x20from\x20\x27@/apis/'+(_0x590fa9?'apps/'+_0x590fa9:''+_0x1636e0)+'/'+_0x3608fc+'\x27;\x0a\x0a';else _0x1e4321=='edit'&&(_0x3e162d+=_0x3954c4(0x118)+_0x3608fc+_0x3954c4(0x110),_0x3e162d+=_0x3954c4(0x118)+_0x3608fc+_0x3954c4(0x15f)+_0x3608fc+_0x3954c4(0x12e)+(_0x590fa9?'apps/'+_0x590fa9:''+_0x1636e0)+'/'+_0x3608fc+'\x27;\x0a\x0a');_0x3e162d+='const\x20refForm\x20=\x20ref(),\x20formdata\x20=\x20ref<any>({});\x0a';if(_0x1e4321==_0x3954c4(0x164))_0x3e162d+=_0x3954c4(0x13c);else _0x1e4321==_0x3954c4(0xc4)&&(_0x3e162d+='const\x20loading\x20=\x20ref(false),\x20router\x20=\x20useRouter(),\x20route\x20=\x20useRoute();\x0a\x0a');_0x3e162d+=_0x3954c4(0x96),_0x3e162d+=_0x3954c4(0x9f),_0x3e162d+=_0x3954c4(0xfa),_0x3e162d+='\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20true,\x20'+_0x3608fc+(_0x1e4321==_0x3954c4(0x164)?_0x3954c4(0x8f):_0x3954c4(0xcb))+'('+(_0x1e4321==_0x3954c4(0xc4)?_0x3954c4(0xd5)+_0x14138c['Field']+',\x20':'')+_0x3954c4(0x97),_0x3e162d+=_0x3954c4(0xfb),_0x3e162d+=_0x3954c4(0xbc),_0x3e162d+='\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20false,\x20$notify.error(err\x20||\x20\x27网络请求错误\x27);\x0a',_0x3e162d+=_0x3954c4(0x169),_0x3e162d+=_0x3954c4(0xbf),_0x3e162d+=_0x3954c4(0x98),_0x1e4321=='edit'&&(_0x3e162d+=_0x3954c4(0xe2),_0x3e162d+=_0x3954c4(0xd0)+_0x14138c[_0x3954c4(0xa4)]+':\x20'+(_0x488bdc?_0x3954c4(0xb8):_0x3954c4(0x11a))+_0x3954c4(0x14d),_0x3e162d+=_0x3954c4(0x106)+_0x14138c['Field']+_0x3954c4(0x136),_0x3e162d+=_0x3954c4(0xc6),_0x3e162d+=_0x3954c4(0xd6)+_0x3608fc+_0x3954c4(0x137)+_0x14138c['Field']+').then(res\x20=>\x20{\x0a',_0x3e162d+=_0x3954c4(0x102),_0x3e162d+=_0x3954c4(0xa6),_0x3e162d+=_0x3954c4(0x8c),_0x3e162d+=_0x3954c4(0x169),_0x3e162d+=_0x3954c4(0x167),_0x3e162d+=_0x3954c4(0x10b),_0x3e162d+='\x20\x20\x20\x20}\x0a',_0x3e162d+=_0x3954c4(0x12a),_0x3e162d+='getDetail(route?.query?.'+_0x14138c['Field']+_0x3954c4(0x94)+(_0x488bdc?_0x3954c4(0xb8):_0x3954c4(0x11a))+')\x0a'),_0x3e162d+='</script>\x0a',fs['mkdirSync']((0x0,path_1[_0x3954c4(0x15d)])(_0x1d2b0e),{'recursive':!![]}),fs[_0x3954c4(0xd7)](_0x1d2b0e,_0x3e162d,_0x3954c4(0xb7));}}async function createAddOrEditDialog({moduleName:_0x3083a8,controller:_0x5af91b,tablestartUpShort:_0x571511,tablestartUpShort2:_0x58e1e3,Primary:_0x59e4c4,Fields:_0xdc983c,apporbasic:_0x8e550b,Comment:_0x29900c},_0x3923cf='add'){const _0x40a884=a23_0x37a181;let _0x11cd29=process[_0x40a884(0x12f)]()+_0x40a884(0xde)+(typeof _0x5af91b==_0x40a884(0x11a)?'/'+_0x5af91b:'');_0x3083a8?_0x11cd29=_0x11cd29+(_0x40a884(0x144)+_0x3083a8+'/'+_0x58e1e3+_0x40a884(0xf8)+_0x3923cf+_0x40a884(0xe5)):_0x11cd29=_0x11cd29+(_0x40a884(0x108)+_0x8e550b+'/'+_0x58e1e3+'/components/dialog-'+_0x3923cf+_0x40a884(0xe5));if(!fs[_0x40a884(0x135)](_0x11cd29)){const _0x34493c=''+(typeof _0x5af91b==_0x40a884(0x11a)?_0x5af91b+'/':'')+(_0x3083a8?_0x3083a8+'/':'')+_0x58e1e3;let _0x5a1118='';for(let _0x4f34b4 in _0xdc983c){const _0x4f5091=_0xdc983c[_0x4f34b4];if([_0x40a884(0x8d),_0x40a884(0x13d),_0x40a884(0x131),_0x40a884(0x126)][_0x40a884(0x99)](_0x4f34b4)!=-0x1)continue;if(_0x4f34b4[_0x40a884(0xdb)](_0x4f34b4[_0x40a884(0xc1)]-0x4)=='imgs'||_0x4f34b4[_0x40a884(0xdb)](_0x4f34b4[_0x40a884(0xc1)]-0x6)==_0x40a884(0x11e))_0x5a1118+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x40a884(0x154)+(_0x4f5091['Comment']||_0x4f5091['Field'])+_0x40a884(0xdf)+_0x4f34b4+_0x40a884(0xcd)),_0x5a1118+='\x0a'+_0x40a884(0x127)+('<attachment-image\x20v-model=\x22formdata.'+_0x4f34b4+_0x40a884(0x14e)+(_0x3083a8?_0x40a884(0xc3)+_0x3083a8+'\x22':'')+_0x40a884(0x168)),_0x5a1118+='\x0a'+_0x40a884(0x9d)+_0x40a884(0x130)+'\x0a';else{if(_0x4f34b4['substring'](_0x4f34b4[_0x40a884(0xc1)]-0x3)=='img'||_0x4f34b4[_0x40a884(0xdb)](_0x4f34b4[_0x40a884(0xc1)]-0x5)==_0x40a884(0x123)||_0x4f34b4=='thumb'||_0x4f34b4['substring'](_0x4f34b4[_0x40a884(0xc1)]-0x4)=='logo'||_0x4f34b4==_0x40a884(0x15e))_0x5a1118+='\x0a'+_0x40a884(0x9d)+(_0x40a884(0x154)+(_0x4f5091[_0x40a884(0x138)]||_0x4f5091['Field'])+_0x40a884(0xdf)+_0x4f34b4+_0x40a884(0xcd)),_0x5a1118+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x40a884(0xec)+_0x4f34b4+_0x40a884(0x10a)+(_0x3083a8?_0x40a884(0xc3)+_0x3083a8+'\x22':'')+'/>'),_0x5a1118+='\x0a'+_0x40a884(0x9d)+_0x40a884(0x130)+'\x0a';else{if(_0x4f34b4[_0x40a884(0xdb)](_0x4f34b4[_0x40a884(0xc1)]-0x4)==_0x40a884(0xbe)||_0x4f34b4['substring'](_0x4f34b4[_0x40a884(0xc1)]-0x3)=='tag')_0x5a1118+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+('<el-form-item\x20label=\x22'+(_0x4f5091[_0x40a884(0x138)]||_0x4f5091[_0x40a884(0xa4)])+'\x22\x20prop=\x22'+_0x4f34b4+'\x22>'),_0x5a1118+='\x0a'+_0x40a884(0x127)+(_0x40a884(0xe0)+_0x4f34b4+_0x40a884(0xc5)+_0x4f5091[_0x40a884(0x138)]+_0x40a884(0x143)),_0x5a1118+='\x0a'+_0x40a884(0x9d)+'</el-form-item>'+'\x0a';else{if(_0x4f34b4[_0x40a884(0xf5)](-0x3)==_0x40a884(0xb3))_0x5a1118+='\x0a'+_0x40a884(0x9d)+(_0x40a884(0x154)+(_0x4f5091['Comment']||_0x4f5091[_0x40a884(0xa4)])+_0x40a884(0xdf)+_0x4f34b4+'\x22>'),_0x5a1118+='\x0a'+_0x40a884(0x127)+(_0x40a884(0x149)+_0x4f34b4+_0x40a884(0x15b)+_0x4f5091['Comment']+'\x22\x20:min=\x221\x22\x20controls-position=\x22right\x22\x20/>'),_0x5a1118+='\x0a'+_0x40a884(0x9d)+'</el-form-item>'+'\x0a';else{if(_0x4f34b4['substr'](-0x4)==_0x40a884(0x15c))_0x5a1118+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x40a884(0x154)+(_0x4f5091['Comment']||_0x4f5091[_0x40a884(0xa4)])+'\x22\x20prop=\x22'+_0x4f34b4+'\x22>'),_0x5a1118+='\x0a'+_0x40a884(0x127)+(_0x40a884(0x9e)+_0x4f34b4+_0x40a884(0x15b)+_0x4f5091['Comment']+_0x40a884(0x142)),_0x5a1118+='\x0a'+_0x40a884(0x9d)+_0x40a884(0x130)+'\x0a';else{if(_0x4f34b4[_0x40a884(0xf5)](-0x3)=='_id'){let _0x4cc754=''+(typeof _0x5af91b==_0x40a884(0x11a)?_0x5af91b+'/':'')+(_0x3083a8?_0x3083a8+'/':'')+_0x58e1e3;_0x5a1118+='\x0a'+_0x40a884(0x9d)+(_0x40a884(0x154)+(_0x4f5091[_0x40a884(0x138)]||_0x4f5091['Field'])+_0x40a884(0xdf)+_0x4f34b4+'\x22>'),_0x5a1118+='\x0a'+_0x40a884(0x127)+(_0x40a884(0xb9)+_0x4f34b4+_0x40a884(0xab)+_0x4cc754+_0x40a884(0x148)),_0x5a1118+='\x0a'+_0x40a884(0x9d)+'</el-form-item>'+'\x0a';}else switch((0x0,helper_1[_0x40a884(0x139)])(_0x4f5091[_0x40a884(0x157)])){case _0x40a884(0xb8):_0x5a1118+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x40a884(0x154)+(_0x4f5091[_0x40a884(0x138)]||_0x4f5091[_0x40a884(0xa4)])+_0x40a884(0xdf)+_0x4f34b4+'\x22>'),_0x5a1118+='\x0a'+_0x40a884(0x127)+(_0x40a884(0x149)+_0x4f34b4+_0x40a884(0x15b)+_0x4f5091[_0x40a884(0x138)]+_0x40a884(0xb5)),_0x5a1118+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x40a884(0x130)+'\x0a';break;case _0x40a884(0xe9):_0x5a1118+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x40a884(0x154)+(_0x4f5091[_0x40a884(0x138)]||_0x4f5091[_0x40a884(0xa4)])+'\x22\x20prop=\x22'+_0x4f34b4+'\x22>'),_0x5a1118+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x40a884(0xa1)+_0x4f34b4+_0x40a884(0x93)+_0x4f5091[_0x40a884(0x138)]+_0x40a884(0xcf));for(let _0x499525 of(0x0,helper_1[_0x40a884(0x16b)])(_0x4f5091[_0x40a884(0x157)])){_0x5a1118+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+(_0x40a884(0x104)+_0x499525+_0x40a884(0x13f)+_0x499525+'\x22\x20/>');}_0x5a1118+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x40a884(0x101),_0x5a1118+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x40a884(0x130)+'\x0a';break;case _0x40a884(0x103):_0x5a1118+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+('<el-form-item\x20label=\x22'+(_0x4f5091[_0x40a884(0x138)]||_0x4f5091[_0x40a884(0xa4)])+_0x40a884(0xdf)+_0x4f34b4+'\x22\x20class=\x22block\x22>'),_0x5a1118+='\x0a'+_0x40a884(0x127)+(_0x40a884(0x9e)+_0x4f34b4+'\x22\x20\x20placeholder=\x22请输入'+_0x4f5091[_0x40a884(0x138)]+_0x40a884(0xc2)),_0x5a1118+='\x0a'+_0x40a884(0x9d)+_0x40a884(0x130)+'\x0a';break;case _0x40a884(0x122):_0x5a1118+='\x0a'+_0x40a884(0x9d)+(_0x40a884(0x154)+(_0x4f5091[_0x40a884(0x138)]||_0x4f5091[_0x40a884(0xa4)])+'\x22\x20prop=\x22'+_0x4f34b4+'\x22\x20class=\x22block\x22>'),_0x5a1118+='\x0a'+_0x40a884(0x127)+(_0x40a884(0x9b)+_0x4f34b4+'\x22\x20'+(_0x3083a8?_0x40a884(0xc3)+_0x3083a8+'\x22':'')+'/>'),_0x5a1118+='\x0a'+_0x40a884(0x9d)+_0x40a884(0x130)+'\x0a';break;case _0x40a884(0xaf):_0x5a1118+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+('<el-form-item\x20label=\x22'+(_0x4f5091[_0x40a884(0x138)]||_0x4f5091[_0x40a884(0xa4)])+_0x40a884(0xdf)+_0x4f34b4+'\x22\x20class=\x22block\x22>'),_0x5a1118+='\x0a'+_0x40a884(0x127)+(_0x40a884(0x9b)+_0x4f34b4+'\x22\x20'+(_0x3083a8?_0x40a884(0xc3)+_0x3083a8+'\x22':'')+'/>'),_0x5a1118+='\x0a'+_0x40a884(0x9d)+_0x40a884(0x130)+'\x0a';break;case _0x40a884(0xe8):_0x5a1118+='\x0a'+_0x40a884(0x9d)+('<el-form-item\x20label=\x22'+(_0x4f5091[_0x40a884(0x138)]||_0x4f5091['Field'])+_0x40a884(0xdf)+_0x4f34b4+'\x22>'),_0x5a1118+='\x0a'+_0x40a884(0x127)+(_0x40a884(0x8b)+_0x4f34b4+_0x40a884(0x9c)+_0x4f5091[_0x40a884(0x138)]+_0x40a884(0x12b)),_0x5a1118+='\x0a'+_0x40a884(0x9d)+_0x40a884(0x130)+'\x0a';break;case _0x40a884(0x113):_0x5a1118+='\x0a'+_0x40a884(0x9d)+('<el-form-item\x20label=\x22'+(_0x4f5091[_0x40a884(0x138)]||_0x4f5091[_0x40a884(0xa4)])+_0x40a884(0xdf)+_0x4f34b4+'\x22>'),_0x5a1118+='\x0a'+_0x40a884(0x127)+(_0x40a884(0x8b)+_0x4f34b4+_0x40a884(0x9c)+_0x4f5091[_0x40a884(0x138)]+_0x40a884(0xc0)),_0x5a1118+='\x0a'+_0x40a884(0x9d)+_0x40a884(0x130)+'\x0a';break;case _0x40a884(0x146):_0x5a1118+='\x0a'+_0x40a884(0x9d)+(_0x40a884(0x154)+(_0x4f5091[_0x40a884(0x138)]||_0x4f5091[_0x40a884(0xa4)])+_0x40a884(0xdf)+_0x4f34b4+'\x22>'),_0x5a1118+='\x0a'+_0x40a884(0x127)+(_0x40a884(0x8b)+_0x4f34b4+'\x22\x20placeholder=\x22选择'+_0x4f5091[_0x40a884(0x138)]+_0x40a884(0xc0)),_0x5a1118+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+'</el-form-item>'+'\x0a';break;default:_0x5a1118+='\x0a'+_0x40a884(0x9d)+(_0x40a884(0x154)+(_0x4f5091[_0x40a884(0x138)]||_0x4f5091[_0x40a884(0xa4)])+_0x40a884(0xdf)+_0x4f34b4+'\x22>'),_0x5a1118+='\x0a'+_0x40a884(0x127)+(_0x40a884(0x9e)+_0x4f34b4+_0x40a884(0x15b)+_0x4f5091[_0x40a884(0x138)]+'\x22\x20clearable/>'),_0x5a1118+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x40a884(0x130)+'\x0a';}}}}}}}_0x5a1118+='\x0a'+_0x40a884(0x9d)+_0x40a884(0x12d),_0x5a1118+='\x0a'+'\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x40a884(0xd1),_0x5a1118+='\x0a'+_0x40a884(0x9d)+_0x40a884(0x130)+'\x0a';let _0x40799a=_0x40a884(0x145);_0x40799a+=_0x40a884(0xf0)+(_0x3923cf==_0x40a884(0x164)?'添加'+_0x29900c:'编辑'+_0x29900c)+_0x40a884(0xdc),_0x40799a+='\x20\x20\x20\x20\x20\x20\x20\x20<elplus-form\x20ref=\x22refForm\x22\x20:model=\x22formdata\x22\x20:rules=\x22'+_0x571511+(_0x3923cf==_0x40a884(0x164)?_0x40a884(0x8f):'Edit')+_0x40a884(0xa8)+_0x34493c+'/'+(_0x3923cf=='add'?_0x40a884(0x164):_0x40a884(0x170)+_0x59e4c4[_0x40a884(0xa4)])+_0x40a884(0xb0),_0x40799a+='\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20'+_0x5a1118+'\x0a\x0a',_0x40799a+='\x20\x20\x20\x20\x20\x20\x20\x20</elplus-form>\x0a',_0x40799a+=_0x40a884(0xf2),_0x40799a+='\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20<el-button\x20v-if=\x22$hasPrem(`post@/'+_0x34493c+'/'+(_0x3923cf==_0x40a884(0x164)?'add':_0x40a884(0x170)+_0x59e4c4['Field'])+_0x40a884(0xc9),_0x40799a+=_0x40a884(0xdd),_0x40799a+='\x20\x20\x20\x20</elplus-dialog>\x0a',_0x40799a+=_0x40a884(0x124),_0x40799a+='<script\x20lang=\x22ts\x22\x20setup>\x0a';if(_0x3923cf==_0x40a884(0x164))_0x40799a+=_0x40a884(0x118)+_0x571511+'AddRule\x20}\x20from\x20\x27../interface\x27;\x0a',_0x40799a+=_0x40a884(0x118)+_0x571511+_0x40a884(0x12c)+(_0x3083a8?_0x40a884(0x13b)+_0x3083a8:''+_0x8e550b)+'/'+_0x571511+_0x40a884(0x91);else _0x3923cf==_0x40a884(0xc4)&&(_0x40799a+=_0x40a884(0x118)+_0x571511+_0x40a884(0x110),_0x40799a+='import\x20{\x20'+_0x571511+_0x40a884(0xc7)+_0x571511+_0x40a884(0xef)+(_0x3083a8?_0x40a884(0x13b)+_0x3083a8:''+_0x8e550b)+'/'+_0x571511+_0x40a884(0x91));if(_0x3923cf==_0x40a884(0x164))_0x40799a+='const\x20loading\x20=\x20ref(false),\x20refDialog\x20=\x20ref(null),\x20refForm\x20=\x20ref(null),\x20formdata\x20=\x20ref<any>({}),\x20emits\x20=\x20defineEmits([\x27save\x27]),\x20open\x20=\x20()\x20=>\x20{\x0a',_0x40799a+=_0x40a884(0xd4),_0x40799a+=_0x40a884(0x98);else _0x3923cf=='edit'&&(_0x40799a+=_0x40a884(0x14c)+_0x59e4c4[_0x40a884(0xa4)]+')\x20=>\x20{\x0a',_0x40799a+=_0x40a884(0xee)+_0x571511+_0x40a884(0x137)+_0x59e4c4[_0x40a884(0xa4)]+_0x40a884(0x8e),_0x40799a+=_0x40a884(0x165),_0x40799a+='\x20\x20\x20\x20}).catch(err\x20=>\x20{\x0a',_0x40799a+=_0x40a884(0x159),_0x40799a+='\x20\x20\x20\x20})\x0a',_0x40799a+=_0x40a884(0x98));;_0x40799a+=_0x40a884(0x96),_0x40799a+=_0x40a884(0x9f),_0x40799a+=_0x40a884(0xfa),_0x40799a+=_0x40a884(0x14b)+_0x571511+(_0x3923cf=='add'?'Add':_0x40a884(0xcb))+'('+(_0x3923cf=='edit'?_0x40a884(0xd5)+_0x59e4c4[_0x40a884(0xa4)]+',\x20':'')+_0x40a884(0x97),_0x40799a+=_0x40a884(0xa5),_0x40799a+='\x20\x20\x20\x20\x20\x20\x20\x20}).catch(err=>{\x0a',_0x40799a+='\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20loading.value\x20=\x20false,\x20$notify.error(err\x20||\x20\x27网络请求错误\x27);\x0a',_0x40799a+='\x20\x20\x20\x20\x20\x20\x20\x20})\x0a',_0x40799a+=_0x40a884(0xbf),_0x40799a+=_0x40a884(0x98),_0x40799a+=_0x40a884(0x129),_0x40799a+=_0x40a884(0xd2),fs[_0x40a884(0x107)]((0x0,path_1[_0x40a884(0x15d)])(_0x11cd29),{'recursive':!![]}),fs['writeFileSync'](_0x11cd29,_0x40799a,_0x40a884(0xb7));}}
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = default_1;
4
+ const fs = require("fs");
5
+ const path_1 = require("path");
6
+ const helper_1 = require("../helper");
7
+ async function default_1({ moduleName, controller, tablestartUpShort, tablestartUpShort2, Primary, Fields, apporbasic, Comment, vuedialog }) {
8
+ await createIndex({ moduleName, controller, tablestartUpShort, tablestartUpShort2, Primary, Fields, apporbasic, vuedialog });
9
+ await createSearch({ moduleName, controller, tablestartUpShort2, Primary, Fields, apporbasic, vuedialog });
10
+ if (!vuedialog) {
11
+ await createAddOrEdit({ moduleName, controller, tablestartUpShort, tablestartUpShort2, Primary, Fields, apporbasic, Comment }, 'add');
12
+ await createAddOrEdit({ moduleName, controller, tablestartUpShort, tablestartUpShort2, Primary, Fields, apporbasic, Comment }, 'edit');
13
+ }
14
+ else {
15
+ await createAddOrEditDialog({ moduleName, controller, tablestartUpShort, tablestartUpShort2, Primary, Fields, apporbasic, Comment }, 'add');
16
+ await createAddOrEditDialog({ moduleName, controller, tablestartUpShort, tablestartUpShort2, Primary, Fields, apporbasic, Comment }, 'edit');
17
+ }
18
+ }
19
+ async function createIndex({ moduleName, controller, tablestartUpShort, tablestartUpShort2, Primary, Fields, apporbasic, vuedialog }) {
20
+ let TmpFilePath = `${process.cwd()}/vue` + (typeof (controller) == 'string' ? `/${controller}` : ``);
21
+ if (moduleName) {
22
+ TmpFilePath = TmpFilePath + `/pages/apps/${moduleName}/${tablestartUpShort2}${!vuedialog ? '/list/' : '/'}index.vue`;
23
+ }
24
+ else {
25
+ TmpFilePath = TmpFilePath + `/pages/${apporbasic}/${tablestartUpShort2}${!vuedialog ? '/list/' : '/'}index.vue`;
26
+ }
27
+ if (!fs.existsSync(TmpFilePath)) {
28
+ let tmpstr = `<el-table-column prop=` + `"${Primary.Field}"`.padEnd(20) + ` label="${Primary.Comment || '编号'}" align="center" fixed="left" />`;
29
+ for (let tableKey in Fields) {
30
+ const Field = Fields[tableKey];
31
+ if (['created_at', 'updated_at', 'deleted_at', 'displayorder'].indexOf(tableKey) != -1) {
32
+ continue;
33
+ }
34
+ if (tableKey.substring(tableKey.length - 3) == 'img' || tableKey.substring(tableKey.length - 5) == 'thumb' || tableKey == 'thumb' || tableKey.substring(tableKey.length - 4) == 'logo' || tableKey == 'logo') {
35
+ tmpstr += "\n" + ' ' + `<el-table-column prop=` + `"${tableKey}"`.padEnd(20) + ` label="${Field.Comment || Field.Field}" align='center' show-overflow-tooltip>`;
36
+ tmpstr += "\n" + ' ' + `<template #default="scope">`;
37
+ tmpstr += "\n" + ' ' + `<el-popover placement="bottom" trigger="click">`;
38
+ tmpstr += "\n" + ' ' + `<a :href="scope.row.${tableKey}" target="_blank" title="查看最大化图片">`;
39
+ tmpstr += "\n" + ' ' + `<img :src="scope.row.${tableKey}" style="width: 100%;max-width:500px" />`;
40
+ tmpstr += "\n" + ' ' + `</a>`;
41
+ tmpstr += "\n" + ' ' + `<template #reference>`;
42
+ tmpstr += "\n" + ' ' + `<el-avatar :src="scope.row.${tableKey}" style="cursor:pointer"/>`;
43
+ tmpstr += "\n" + ' ' + `</template>`;
44
+ tmpstr += "\n" + ' ' + `</el-popover>`;
45
+ tmpstr += "\n" + ' ' + `</template>`;
46
+ tmpstr += "\n" + ' ' + `</el-table-column>`;
47
+ }
48
+ else if (['tinyint'].indexOf((0, helper_1.getProp)(Field.Type)) != -1) {
49
+ tmpstr += "\n" + ' ' + `<el-table-column prop=` + `"${tableKey}"`.padEnd(20) + ` label="${Field.Comment || Field.Field}" align='center' sortable="custom">`;
50
+ tmpstr += "\n" + ' ' + `<template #default="scope">`;
51
+ tmpstr += "\n" + ' ' + `<elplus-switch v-model="scope.row" field="${tableKey}" active-text="启用" inactive-text="禁用" @change="handlerFieldChange" />`;
52
+ tmpstr += "\n" + ' ' + `</template>`;
53
+ tmpstr += "\n" + ' ' + `</el-table-column>`;
54
+ }
55
+ else if (['text'].indexOf((0, helper_1.getProp)(Field.Type)) == -1) {
56
+ tmpstr += "\n" + ' ' + `<el-table-column prop=` + `"${tableKey}"`.padEnd(20) + ` label="${Field.Comment || Field.Field}" align='center' sortable="custom" show-overflow-tooltip />`;
57
+ }
58
+ }
59
+ const apiPrefix = `${typeof (controller) == 'string' ? controller + '/' : ''}${moduleName ? moduleName + '/' : ''}${tablestartUpShort2}`;
60
+ fs.mkdirSync((0, path_1.dirname)(TmpFilePath), { recursive: true });
61
+ fs.writeFileSync(TmpFilePath, `<template>
62
+ <page-main>
63
+ <elplus-table :datas="table.data" :pageinfo="table.search" :loading="loading" @transform="LoadDatas">
64
+ <template #search>
65
+ <search v-model:search="table.search" />
66
+ </template>
67
+
68
+ <template #header>
69
+ <el-button v-if="$hasPrem(\`get@/${apiPrefix}/add\`)" @click="${!vuedialog ? '$router.push(\`add\`)' : '$refs?.refDialogAdd?.open()'}" type="primary">
70
+ 添加
71
+ </el-button>
72
+ </template>
73
+
74
+ <template #column>
75
+ ${tmpstr}
76
+ <el-table-column label="排序" prop="displayorder" align="center" width="80">
77
+ <template #default="scope">
78
+ <el-input v-model="scope.row.displayorder" type="number" @change="handlerFieldChange(scope.row,'displayorder')"></el-input>
79
+ </template>
80
+ </el-table-column>
81
+
82
+ <el-table-column label="操作" align="center" fixed="right">
83
+ <template #default="scope">
84
+ <el-button v-if="$hasPrem(\`get@/${apiPrefix}/edit/:${Primary.Field}\`)" @click="${!vuedialog ? `$router.push(\`edit?${Primary.Field}=\${scope.row.${Primary.Field}}\`)` : `$refs?.refDialogEdit?.open(scope.row.id)`}" type="primary" text>
85
+ 编辑
86
+ </el-button>
87
+ <el-button v-if="$hasPrem(\`post@/${apiPrefix}/remove\`)" @click="handlerRemove(scope.row)" type="danger" text>
88
+ 删除
89
+ </el-button>
90
+ </template>
91
+ </el-table-column>
92
+ </template>
93
+ </elplus-table>
94
+ ${!vuedialog ? `` : `<dialog-add-vue ref="refDialogAdd" @save="LoadDatas()" />`}
95
+ ${!vuedialog ? `` : `<dialog-edit-vue ref="refDialogEdit" @save="LoadDatas()"/>`}
96
+ </page-main>
97
+ </template>
98
+ <script lang="ts" setup>
99
+ import search from './components/search.vue';
100
+ ${!vuedialog ? `` : `import dialogAddVue from './components/dialog-add.vue';`}
101
+ ${!vuedialog ? `` : `import dialogEditVue from './components/dialog-edit.vue';`}
102
+ import { ${tablestartUpShort}List, ${tablestartUpShort}Remove, ${tablestartUpShort}Edit } from '@/apis/${moduleName ? `apps/${moduleName}` : `${apporbasic}`}/${tablestartUpShort}';
103
+
104
+ const loading = ref(false), route = useRoute(), table = reactive({
105
+ data: [],
106
+ select: [],
107
+ search: {
108
+ _page: 1,
109
+ _size: 20,
110
+ _count: 0,
111
+ }
112
+ })
113
+
114
+
115
+ /**
116
+ * 获取数据列表
117
+ * @param page 分页-当前页
118
+ * @param size 分页-每页数量
119
+ * **/
120
+ const LoadDatas = (page?: number, size?: number, sortable = {}) => {
121
+ loading.value = true, page && (table.search._page = page), size && (table.search._size = size);
122
+ ${tablestartUpShort}List(Object.assign({}, route?.query || {}, table.search || {}, sortable)).then(res => {
123
+ loading.value = false, table.data = res.data || [], table.search = { ...table.search, ...res?.extra?.pageinfo || {}, _count: res?.extra?.pagetotal || 0 };
124
+ }).catch(err => {
125
+ loading.value = false, $notify.error(err || '网络请求错误');
126
+ });
127
+ }
128
+
129
+ /**
130
+ * 删除数据
131
+ * **/
132
+ const handlerRemove = (item:any) => {
133
+ loading.value = true, $confirm(\`确定删除数据吗?\`, '提示', { confirmButtonText: '确定', cancelButtonText: '取消', type: 'warning' }).then(() => {
134
+ ${tablestartUpShort}Remove({ ${Primary.Field}: item.${Primary.Field} }).then(res => {
135
+ loading.value = false, $notify.success(res?.message || '删除成功'), LoadDatas();
136
+ }).catch(err => {
137
+ loading.value = false, $notify.error(err || '删除失败');
138
+ })
139
+ }).catch(() => {
140
+ loading.value = false;
141
+ })
142
+ }
143
+
144
+ /**
145
+ * 修改字段状态
146
+ * **/
147
+ const handlerFieldChange = (item: any, field:string)=>{
148
+ if (item.${Primary.Field}) {
149
+ loading.value = true, ${tablestartUpShort}Edit(item.${Primary.Field}, { [field]: item[field] }).then(res => {
150
+ if( typeof(res?.data) != 'undefined' ){
151
+ item = res.data;
152
+ }
153
+ loading.value = false, $notify.success(res?.message || '操作成功');
154
+ }).catch(err => {
155
+ loading.value = false, $notify.error(err || '操作失败');
156
+ })
157
+ }
158
+ }
159
+
160
+ /**
161
+ * 加载数据
162
+ * **/
163
+ LoadDatas()
164
+
165
+ </script>`, 'utf-8');
166
+ }
167
+ }
168
+ async function createSearch({ moduleName, tablestartUpShort2, controller, Primary, Fields, apporbasic, vuedialog }) {
169
+ let TmpFilePath = `${process.cwd()}/vue` + (typeof (controller) == 'string' ? `/${controller}` : ``);
170
+ if (moduleName) {
171
+ TmpFilePath = TmpFilePath + `/pages/apps/${moduleName}/${tablestartUpShort2}${!vuedialog ? '/list/' : '/'}components/search.vue`;
172
+ }
173
+ else {
174
+ TmpFilePath = TmpFilePath + `/pages/${apporbasic}/${tablestartUpShort2}${!vuedialog ? '/list/' : '/'}components/search.vue`;
175
+ }
176
+ if (!fs.existsSync(TmpFilePath)) {
177
+ let tmpstr = '';
178
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Primary.Comment || '编号'}">`;
179
+ tmpstr += "\n" + ' ' + `<el-input v-model="props.search.${Primary.Field}" placeholder="请输入${Primary.Comment || '编号'}" clearable/>`;
180
+ tmpstr += "\n" + ' ' + `</el-form-item>`;
181
+ for (let tableKey in Fields) {
182
+ const Field = Fields[tableKey];
183
+ if (['updated_at', 'deleted_at', 'displayorder'].indexOf(tableKey) != -1) {
184
+ continue;
185
+ }
186
+ if (tableKey.substring(tableKey.length - 3) == 'img' || tableKey.substring(tableKey.length - 5) == 'thumb' || tableKey == 'thumb' || tableKey.substring(tableKey.length - 4) == 'logo' || tableKey == 'logo') {
187
+ continue;
188
+ }
189
+ if (tableKey.substring(tableKey.length - 3) == 'num') {
190
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}">`;
191
+ tmpstr += "\n" + ' ' + `<el-input-number v-model="props.search.${tableKey}" placeholder="请输入${Field.Comment}" :min="1" controls-position="right" clearable/>`;
192
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
193
+ }
194
+ else if (tableKey.endsWith('_id')) {
195
+ let _table_ = `${typeof (controller) == 'string' ? controller + '/' : ''}${moduleName ? moduleName + '/' : ''}${tablestartUpShort2}`;
196
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}">`;
197
+ tmpstr += "\n" + ' ' + `<elplus-select-search v-model="props.search.${tableKey}" api="${_table_}" lakey="id" label="id" clearable/>`;
198
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
199
+ }
200
+ else {
201
+ switch ((0, helper_1.getProp)(Field.Type)) {
202
+ case 'enum':
203
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}">`;
204
+ tmpstr += "\n" + ' ' + `<el-select v-model="props.search.${tableKey}" placeholder="请选择${Field.Comment}" clearable>`;
205
+ for (let _enum of (0, helper_1.getEnum)(Field.Type)) {
206
+ tmpstr += "\n" + ' ' + `<el-option label="${_enum}" value="${_enum}" />`;
207
+ }
208
+ tmpstr += "\n" + ' ' + `</el-select>`;
209
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
210
+ break;
211
+ case 'date':
212
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}">`;
213
+ tmpstr += "\n" + ' ' + `<el-date-picker v-model="props.search.${tableKey}_start" placeholder="选择${Field.Comment}开始时间" type="date" value-format="YYYY-MM-DD"/>`;
214
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
215
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}">`;
216
+ tmpstr += "\n" + ' ' + `<el-date-picker v-model="props.search.${tableKey}_end" placeholder="选择${Field.Comment}结束时间" type="date" value-format="YYYY-MM-DD"/>`;
217
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
218
+ break;
219
+ case 'datetime':
220
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}">`;
221
+ tmpstr += "\n" + ' ' + `<el-date-picker v-model="props.search.${tableKey}_start" placeholder="选择${Field.Comment}开始时间" type="datetime" value-format="YYYY-MM-DD HH:mm:ss"/>`;
222
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
223
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}">`;
224
+ tmpstr += "\n" + ' ' + `<el-date-picker v-model="props.search.${tableKey}_end" placeholder="选择${Field.Comment}结束时间" type="datetime" value-format="YYYY-MM-DD HH:mm:ss"/>`;
225
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
226
+ break;
227
+ case 'timestamp':
228
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}">`;
229
+ tmpstr += "\n" + ' ' + `<el-date-picker v-model="props.search.${tableKey}_start" placeholder="选择${Field.Comment}开始时间" type="datetime" value-format="YYYY-MM-DD HH:mm:ss"/>`;
230
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
231
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}">`;
232
+ tmpstr += "\n" + ' ' + `<el-date-picker v-model="props.search.${tableKey}_end" placeholder="选择${Field.Comment}结束时间" type="datetime" value-format="YYYY-MM-DD HH:mm:ss"/>`;
233
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
234
+ break;
235
+ case 'string':
236
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}">`;
237
+ tmpstr += "\n" + ' ' + `<el-input v-model="props.search.${tableKey}" placeholder=\"请输入${Field.Comment}\" clearable/>`;
238
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
239
+ }
240
+ }
241
+ }
242
+ fs.mkdirSync((0, path_1.dirname)(TmpFilePath), { recursive: true });
243
+ fs.writeFileSync(TmpFilePath, `<template>
244
+ ${tmpstr}
245
+ </template>
246
+ <script lang="ts" setup>
247
+ const props = defineProps({
248
+ search: {type: Object ,default: ()=>{return {}}},
249
+ })
250
+ </script>`, 'utf-8');
251
+ }
252
+ }
253
+ async function createAddOrEdit({ moduleName, controller, tablestartUpShort, tablestartUpShort2, Primary, Fields, apporbasic, Comment }, addOrEdit = 'add') {
254
+ let TmpFilePath = `${process.cwd()}/vue` + (typeof (controller) == 'string' ? `/${controller}` : ``);
255
+ if (moduleName) {
256
+ TmpFilePath = TmpFilePath + `/pages/apps/${moduleName}/${tablestartUpShort2}/${addOrEdit}/index.vue`;
257
+ }
258
+ else {
259
+ TmpFilePath = TmpFilePath + `/pages/${apporbasic}/${tablestartUpShort2}/${addOrEdit}/index.vue`;
260
+ }
261
+ if (!fs.existsSync(TmpFilePath)) {
262
+ const primaryIsInt = ['text', 'mediumtext', 'string'].indexOf((0, helper_1.getProp)(Primary.Type)) == -1;
263
+ const apiPrefix = `${typeof (controller) == 'string' ? controller + '/' : ''}${moduleName ? moduleName + '/' : ''}${tablestartUpShort2}`;
264
+ let tmpstr = '';
265
+ for (let tableKey in Fields) {
266
+ const Field = Fields[tableKey];
267
+ if (['created_at', 'updated_at', 'deleted_at', 'displayorder'].indexOf(tableKey) != -1) {
268
+ continue;
269
+ }
270
+ if (tableKey.substring(tableKey.length - 4) == 'imgs' || tableKey.substring(tableKey.length - 6) == 'thumbs') {
271
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}" class="block">`;
272
+ tmpstr += "\n" + ' ' + `<attachment-image v-model="formdata.${tableKey}" :limit="5" ${moduleName ? `module="${moduleName}"` : ``} />`;
273
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
274
+ }
275
+ else if (tableKey.substring(tableKey.length - 3) == 'img' || tableKey.substring(tableKey.length - 5) == 'thumb' || tableKey == 'thumb' || tableKey.substring(tableKey.length - 4) == 'logo' || tableKey == 'logo') {
276
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}" class="block">`;
277
+ tmpstr += "\n" + ' ' + `<attachment-image v-model="formdata.${tableKey}" :limit="1" ${moduleName ? `module="${moduleName}"` : ``}/>`;
278
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
279
+ }
280
+ else if (tableKey.substring(tableKey.length - 4) == 'tags' || tableKey.substring(tableKey.length - 3) == 'tag') {
281
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
282
+ tmpstr += "\n" + ' ' + `<elplus-select-tags v-model="formdata.${tableKey}" placeholder="请输入或选择${Field.Comment}" split="-" clearable/>`;
283
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
284
+ }
285
+ else if (tableKey.substr(-3) == 'num') {
286
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
287
+ tmpstr += "\n" + ' ' + `<el-input-number v-model="formdata.${tableKey}" placeholder="请输入${Field.Comment}" :min="1" controls-position="right" />`;
288
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
289
+ }
290
+ else if (tableKey.substr(-4) == '_ids') {
291
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
292
+ tmpstr += "\n" + ' ' + `<el-input v-model="formdata.${tableKey}" placeholder=\"请输入${Field.Comment}\" clearable/>`;
293
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
294
+ }
295
+ else if (tableKey.substr(-3) == '_id') {
296
+ let _table_ = `${typeof (controller) == 'string' ? controller + '/' : ''}${moduleName ? moduleName + '/' : ''}${tablestartUpShort2}`;
297
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
298
+ tmpstr += "\n" + ' ' + `<elplus-select-search v-model="formdata.${tableKey}" api="${_table_}" lakey="id" label="id" clearable/>`;
299
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
300
+ }
301
+ else {
302
+ switch ((0, helper_1.getProp)(Field.Type)) {
303
+ case 'number':
304
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
305
+ tmpstr += "\n" + ' ' + `<el-input-number v-model="formdata.${tableKey}" placeholder="请输入${Field.Comment}" :min="1" controls-position="right" />`;
306
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
307
+ break;
308
+ case 'enum':
309
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
310
+ tmpstr += "\n" + ' ' + `<el-select v-model="formdata.${tableKey}" placeholder="请选择${Field.Comment}" clearable>`;
311
+ for (let _enum of (0, helper_1.getEnum)(Field.Type)) {
312
+ tmpstr += "\n" + ' ' + `<el-option label="${_enum}" value="${_enum}" />`;
313
+ }
314
+ tmpstr += "\n" + ' ' + `</el-select>`;
315
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
316
+ break;
317
+ case 'text':
318
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}" class="block">`;
319
+ tmpstr += "\n" + ' ' + `<el-input v-model="formdata.${tableKey}" placeholder="请输入${Field.Comment}" type="textarea" :rows="4"/>`;
320
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
321
+ break;
322
+ case 'longtext':
323
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}" class="block">`;
324
+ tmpstr += "\n" + ' ' + `<tinymce-editor v-model="formdata.${tableKey}" ${moduleName ? `module="${moduleName}"` : ``}/>`;
325
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
326
+ break;
327
+ case 'mediumtext':
328
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}" class="block">`;
329
+ tmpstr += "\n" + ' ' + `<tinymce-editor v-model="formdata.${tableKey}" ${moduleName ? `module="${moduleName}"` : ``}/>`;
330
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
331
+ break;
332
+ case 'date':
333
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
334
+ tmpstr += "\n" + ' ' + `<el-date-picker v-model="formdata.${tableKey}" placeholder="选择${Field.Comment}" type="date" value-format="YYYY-MM-DD"/>`;
335
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
336
+ break;
337
+ case 'datetime':
338
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
339
+ tmpstr += "\n" + ' ' + `<el-date-picker v-model="formdata.${tableKey}" placeholder="选择${Field.Comment}" type="datetime" value-format="YYYY-MM-DD HH:mm:ss"/>`;
340
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
341
+ break;
342
+ case 'timestamp':
343
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
344
+ tmpstr += "\n" + ' ' + `<el-date-picker v-model="formdata.${tableKey}" placeholder="选择${Field.Comment}" type="datetime" value-format="YYYY-MM-DD HH:mm:ss"/>`;
345
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
346
+ break;
347
+ default:
348
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
349
+ tmpstr += "\n" + ' ' + `<el-input v-model="formdata.${tableKey}" placeholder=\"请输入${Field.Comment}\" clearable/>`;
350
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
351
+ }
352
+ }
353
+ }
354
+ tmpstr += "\n" + ' ' + `<el-form-item label="排序" prop="displayorder">`;
355
+ tmpstr += "\n" + ' ' + `<el-input-number v-model="formdata.displayorder" placeholder="请输入排序权重" controls-position="right"/>`;
356
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
357
+ let template = `<template>\n`;
358
+ template += ` <page-main>\n`;
359
+ template += ` <elplus-form ref="refForm" title="${addOrEdit == 'add' ? `添加${Comment}` : `编辑${Comment}`}" :model="formdata" :rules="${tablestartUpShort}${addOrEdit == 'add' ? 'Add' : 'Edit'}Rule" :loading="loading" :disabled="!$hasPrem(\`post@/${apiPrefix}/${addOrEdit == 'add' ? 'add' : `edit/:${Primary.Field}`}\`)">\n`;
360
+ template += ` ${tmpstr}\n\n`;
361
+ template += ` <template #footer>\n`;
362
+ template += ` <el-button v-if="$hasPrem(\`post@/${apiPrefix}/${addOrEdit == 'add' ? `add` : `edit/:${Primary.Field}`}\`)" type="primary" @click="handlerSave()">保存</el-button>\n`;
363
+ template += ` </template>\n`;
364
+ template += ` </elplus-form>\n`;
365
+ template += ` </page-main>\n`;
366
+ template += `</template>\n`;
367
+ template += `<script lang="ts" setup>\n`;
368
+ if (addOrEdit == 'add') {
369
+ template += `import { ${tablestartUpShort}AddRule } from '../interface';\n`;
370
+ template += `import { ${tablestartUpShort}Add } from '@/apis/${moduleName ? `apps/${moduleName}` : `${apporbasic}`}/${tablestartUpShort}';\n\n`;
371
+ }
372
+ else if (addOrEdit == 'edit') {
373
+ template += `import { ${tablestartUpShort}EditRule } from '../interface';\n`;
374
+ template += `import { ${tablestartUpShort}Edit, ${tablestartUpShort}Detail } from '@/apis/${moduleName ? `apps/${moduleName}` : `${apporbasic}`}/${tablestartUpShort}';\n\n`;
375
+ }
376
+ template += `const refForm = ref(), formdata = ref<any>({});\n`;
377
+ if (addOrEdit == 'add') {
378
+ template += `const loading = ref(false), router = useRouter();\n\n`;
379
+ }
380
+ else if (addOrEdit == 'edit') {
381
+ template += `const loading = ref(false), router = useRouter(), route = useRoute();\n\n`;
382
+ }
383
+ template += `// 保存数据\n`;
384
+ template += `const handlerSave = ()=>{\n`;
385
+ template += ` refForm.value?.validate().then((item: any) => {\n`;
386
+ template += ` loading.value = true, ${tablestartUpShort}${addOrEdit == 'add' ? 'Add' : 'Edit'}(${addOrEdit == 'edit' ? `item.${Primary.Field}, ` : ''}item).then(res=>{\n`;
387
+ template += ` loading.value = false, $notify.success(res?.message || '操作成功'), router.back();\n`;
388
+ template += ` }).catch(err=>{\n`;
389
+ template += ` loading.value = false, $notify.error(err || '网络请求错误');\n`;
390
+ template += ` })\n`;
391
+ template += ` })\n`;
392
+ template += `}\n\n`;
393
+ if (addOrEdit == 'edit') {
394
+ template += `// 获取详情\n`;
395
+ template += `const getDetail = (${Primary.Field}: ${primaryIsInt ? 'number' : 'string'}) => {\n`;
396
+ template += ` if (${Primary.Field}) {\n`;
397
+ template += ` loading.value = true, formdata.value = {};\n`;
398
+ template += ` ${tablestartUpShort}Detail(${Primary.Field}).then(res => {\n`;
399
+ template += ` loading.value = false, formdata.value = res.data;\n`;
400
+ template += ` }).catch(err => {\n`;
401
+ template += ` loading.value = false, $notify.error(err || '网络请求错误'), router.back();\n`;
402
+ template += ` })\n`;
403
+ template += ` } else {\n`;
404
+ template += ` router.back();\n`;
405
+ template += ` }\n`;
406
+ template += `}\n\n\n`;
407
+ template += `getDetail(route?.query?.${Primary.Field} as unknown as ${primaryIsInt ? 'number' : 'string'})\n`;
408
+ }
409
+ template += `</script>\n`;
410
+ fs.mkdirSync((0, path_1.dirname)(TmpFilePath), { recursive: true });
411
+ fs.writeFileSync(TmpFilePath, template, 'utf-8');
412
+ }
413
+ }
414
+ async function createAddOrEditDialog({ moduleName, controller, tablestartUpShort, tablestartUpShort2, Primary, Fields, apporbasic, Comment }, addOrEdit = 'add') {
415
+ let TmpFilePath = `${process.cwd()}/vue` + (typeof (controller) == 'string' ? `/${controller}` : ``);
416
+ if (moduleName) {
417
+ TmpFilePath = TmpFilePath + `/pages/apps/${moduleName}/${tablestartUpShort2}/components/dialog-${addOrEdit}.vue`;
418
+ }
419
+ else {
420
+ TmpFilePath = TmpFilePath + `/pages/${apporbasic}/${tablestartUpShort2}/components/dialog-${addOrEdit}.vue`;
421
+ }
422
+ if (!fs.existsSync(TmpFilePath)) {
423
+ const apiPrefix = `${typeof (controller) == 'string' ? controller + '/' : ''}${moduleName ? moduleName + '/' : ''}${tablestartUpShort2}`;
424
+ let tmpstr = '';
425
+ for (let tableKey in Fields) {
426
+ const Field = Fields[tableKey];
427
+ if (['created_at', 'updated_at', 'deleted_at', 'displayorder'].indexOf(tableKey) != -1) {
428
+ continue;
429
+ }
430
+ if (tableKey.substring(tableKey.length - 4) == 'imgs' || tableKey.substring(tableKey.length - 6) == 'thumbs') {
431
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}" class="block">`;
432
+ tmpstr += "\n" + ' ' + `<attachment-image v-model="formdata.${tableKey}" :limit="5" ${moduleName ? `module="${moduleName}"` : ``} />`;
433
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
434
+ }
435
+ else if (tableKey.substring(tableKey.length - 3) == 'img' || tableKey.substring(tableKey.length - 5) == 'thumb' || tableKey == 'thumb' || tableKey.substring(tableKey.length - 4) == 'logo' || tableKey == 'logo') {
436
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}" class="block">`;
437
+ tmpstr += "\n" + ' ' + `<attachment-image v-model="formdata.${tableKey}" :limit="1" ${moduleName ? `module="${moduleName}"` : ``}/>`;
438
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
439
+ }
440
+ else if (tableKey.substring(tableKey.length - 4) == 'tags' || tableKey.substring(tableKey.length - 3) == 'tag') {
441
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
442
+ tmpstr += "\n" + ' ' + `<elplus-select-tags v-model="formdata.${tableKey}" placeholder="请输入或选择${Field.Comment}" split="-" clearable/>`;
443
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
444
+ }
445
+ else if (tableKey.substr(-3) == 'num') {
446
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
447
+ tmpstr += "\n" + ' ' + `<el-input-number v-model="formdata.${tableKey}" placeholder="请输入${Field.Comment}" :min="1" controls-position="right" />`;
448
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
449
+ }
450
+ else if (tableKey.substr(-4) == '_ids') {
451
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
452
+ tmpstr += "\n" + ' ' + `<el-input v-model="formdata.${tableKey}" placeholder=\"请输入${Field.Comment}\" clearable/>`;
453
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
454
+ }
455
+ else if (tableKey.substr(-3) == '_id') {
456
+ let _table_ = `${typeof (controller) == 'string' ? controller + '/' : ''}${moduleName ? moduleName + '/' : ''}${tablestartUpShort2}`;
457
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
458
+ tmpstr += "\n" + ' ' + `<elplus-select-search v-model="formdata.${tableKey}" api="${_table_}" lakey="id" label="id" clearable/>`;
459
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
460
+ }
461
+ else {
462
+ switch ((0, helper_1.getProp)(Field.Type)) {
463
+ case 'number':
464
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
465
+ tmpstr += "\n" + ' ' + `<el-input-number v-model="formdata.${tableKey}" placeholder="请输入${Field.Comment}" :min="1" controls-position="right" />`;
466
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
467
+ break;
468
+ case 'enum':
469
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
470
+ tmpstr += "\n" + ' ' + `<el-select v-model="formdata.${tableKey}" placeholder="请选择${Field.Comment}" clearable>`;
471
+ for (let _enum of (0, helper_1.getEnum)(Field.Type)) {
472
+ tmpstr += "\n" + ' ' + `<el-option label="${_enum}" value="${_enum}" />`;
473
+ }
474
+ tmpstr += "\n" + ' ' + `</el-select>`;
475
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
476
+ break;
477
+ case 'text':
478
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}" class="block">`;
479
+ tmpstr += "\n" + ' ' + `<el-input v-model="formdata.${tableKey}" placeholder="请输入${Field.Comment}" type="textarea" :rows="4"/>`;
480
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
481
+ break;
482
+ case 'longtext':
483
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}" class="block">`;
484
+ tmpstr += "\n" + ' ' + `<tinymce-editor v-model="formdata.${tableKey}" ${moduleName ? `module="${moduleName}"` : ``}/>`;
485
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
486
+ break;
487
+ case 'mediumtext':
488
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}" class="block">`;
489
+ tmpstr += "\n" + ' ' + `<tinymce-editor v-model="formdata.${tableKey}" ${moduleName ? `module="${moduleName}"` : ``}/>`;
490
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
491
+ break;
492
+ case 'date':
493
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
494
+ tmpstr += "\n" + ' ' + `<el-date-picker v-model="formdata.${tableKey}" placeholder="选择${Field.Comment}" type="date" value-format="YYYY-MM-DD"/>`;
495
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
496
+ break;
497
+ case 'datetime':
498
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
499
+ tmpstr += "\n" + ' ' + `<el-date-picker v-model="formdata.${tableKey}" placeholder="选择${Field.Comment}" type="datetime" value-format="YYYY-MM-DD HH:mm:ss"/>`;
500
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
501
+ break;
502
+ case 'timestamp':
503
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
504
+ tmpstr += "\n" + ' ' + `<el-date-picker v-model="formdata.${tableKey}" placeholder="选择${Field.Comment}" type="datetime" value-format="YYYY-MM-DD HH:mm:ss"/>`;
505
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
506
+ break;
507
+ default:
508
+ tmpstr += "\n" + ' ' + `<el-form-item label="${Field.Comment || Field.Field}" prop="${tableKey}">`;
509
+ tmpstr += "\n" + ' ' + `<el-input v-model="formdata.${tableKey}" placeholder=\"请输入${Field.Comment}\" clearable/>`;
510
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
511
+ }
512
+ }
513
+ }
514
+ tmpstr += "\n" + ' ' + `<el-form-item label="排序" prop="displayorder">`;
515
+ tmpstr += "\n" + ' ' + `<el-input-number v-model="formdata.displayorder" placeholder="请输入排序权重" controls-position="right"/>`;
516
+ tmpstr += "\n" + ' ' + `</el-form-item>` + "\n";
517
+ let template = `<template>\n`;
518
+ template += ` <elplus-dialog ref="refDialog" :loading="loading" title="${addOrEdit == 'add' ? `添加${Comment}` : `编辑${Comment}`}">\n`;
519
+ template += ` <elplus-form ref="refForm" :model="formdata" :rules="${tablestartUpShort}${addOrEdit == 'add' ? 'Add' : 'Edit'}Rule" :loading="loading" :disabled="!$hasPrem(\`post@/${apiPrefix}/${addOrEdit == 'add' ? 'add' : `edit/:${Primary.Field}`}\`)">\n`;
520
+ template += ` ${tmpstr}\n\n`;
521
+ template += ` </elplus-form>\n`;
522
+ template += ` <template #footer>\n`;
523
+ template += ` <el-button v-if="$hasPrem(\`post@/${apiPrefix}/${addOrEdit == 'add' ? `add` : `edit/:${Primary.Field}`}\`)" type="primary" @click="handlerSave()">保存</el-button>\n`;
524
+ template += ` </template>\n`;
525
+ template += ` </elplus-dialog>\n`;
526
+ template += `</template>\n`;
527
+ template += `<script lang="ts" setup>\n`;
528
+ if (addOrEdit == 'add') {
529
+ template += `import { ${tablestartUpShort}AddRule } from '../interface';\n`;
530
+ template += `import { ${tablestartUpShort}Add } from '@/apis/${moduleName ? `apps/${moduleName}` : `${apporbasic}`}/${tablestartUpShort}';\n\n`;
531
+ }
532
+ else if (addOrEdit == 'edit') {
533
+ template += `import { ${tablestartUpShort}EditRule } from '../interface';\n`;
534
+ template += `import { ${tablestartUpShort}Detail, ${tablestartUpShort}Edit } from '@/apis/${moduleName ? `apps/${moduleName}` : `${apporbasic}`}/${tablestartUpShort}';\n\n`;
535
+ }
536
+ if (addOrEdit == 'add') {
537
+ template += `const loading = ref(false), refDialog = ref(null), refForm = ref(null), formdata = ref<any>({}), emits = defineEmits(['save']), open = () => {\n`;
538
+ template += ` formdata.value = {}, refDialog?.value?.open();\n`;
539
+ template += `}\n\n`;
540
+ }
541
+ else if (addOrEdit == 'edit') {
542
+ template += `const loading = ref(false), refDialog = ref(null), refForm = ref(null), formdata = ref<any>({}), emits = defineEmits(['save']), open = (${Primary.Field}) => {\n`;
543
+ template += ` formdata.value = {}, ${tablestartUpShort}Detail(${Primary.Field}).then(res => {\n`;
544
+ template += ` formdata.value = res?.data || {}, refDialog?.value?.open();\n`;
545
+ template += ` }).catch(err => {\n`;
546
+ template += ` $notify.error(err || '网络请求错误')\n`;
547
+ template += ` })\n`;
548
+ template += `}\n\n`;
549
+ }
550
+ ;
551
+ template += `// 保存数据\n`;
552
+ template += `const handlerSave = ()=>{\n`;
553
+ template += ` refForm.value?.validate().then((item: any) => {\n`;
554
+ template += ` loading.value = true, ${tablestartUpShort}${addOrEdit == 'add' ? 'Add' : 'Edit'}(${addOrEdit == 'edit' ? `item.${Primary.Field}, ` : ''}item).then(res=>{\n`;
555
+ template += ` loading.value = false, $notify.success(res?.message || '操作成功'), emits('save'), refDialog?.value?.close()\n`;
556
+ template += ` }).catch(err=>{\n`;
557
+ template += ` loading.value = false, $notify.error(err || '网络请求错误');\n`;
558
+ template += ` })\n`;
559
+ template += ` })\n`;
560
+ template += `}\n\n`;
561
+ template += `defineExpose({ open })\n`;
562
+ template += `</script>\n`;
563
+ fs.mkdirSync((0, path_1.dirname)(TmpFilePath), { recursive: true });
564
+ fs.writeFileSync(TmpFilePath, template, 'utf-8');
565
+ }
566
+ }
567
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTGF5b3V0VnVlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3RlbXBsYXRlVnVlVjMvTGF5b3V0VnVlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBSUEsNEJBWUM7QUFoQkQseUJBQXlCO0FBQ3pCLCtCQUE4QjtBQUM5QixzQ0FBNEM7QUFFN0IsS0FBSyxvQkFBVyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRTtJQUU3SSxNQUFNLFdBQVcsQ0FBQyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQTtJQUM1SCxNQUFNLFlBQVksQ0FBQyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsa0JBQWtCLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQTtJQUUxRyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDYixNQUFNLGVBQWUsQ0FBQyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsT0FBTyxFQUFFLEVBQUUsS0FBSyxDQUFDLENBQUE7UUFDckksTUFBTSxlQUFlLENBQUMsRUFBRSxVQUFVLEVBQUUsVUFBVSxFQUFFLGlCQUFpQixFQUFFLGtCQUFrQixFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxFQUFFLE1BQU0sQ0FBQyxDQUFBO0lBQzFJLENBQUM7U0FBSSxDQUFDO1FBQ0YsTUFBTSxxQkFBcUIsQ0FBQyxFQUFFLFVBQVUsRUFBRSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsa0JBQWtCLEVB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