Wizard üzerinden Entity eklenebiliyor

This commit is contained in:
Sedat Öztürk 2026-06-04 23:25:19 +03:00
parent 20e7fae481
commit 97a2a4b38d
3 changed files with 50 additions and 6 deletions

View file

@ -1,6 +1,19 @@
{ {
"commit": "0d4703c", "commit": "dc293fc",
"releases": [ "releases": [
{
"version": "1.1.04",
"buildDate": "2026-06-04",
"commit": "20e7fae481ce69e9a678508ce03b5ed7831aea9f",
"changeLog": [
"- Settingde yapılan ayarlar Auth komponentlerine uygulandı.",
"- Public home ve diğer sayfaların tasarım değişikliği yapıldı.",
"- Route Type Dinamik ve Normal olarak ayrıldı.",
"- Form Devexpress DefaultValue özelliği eklendi.",
"- Devexpress DarkModa uygun şekilde güncellendi.",
"- Grid, Tree ve FormDevexpress setReadonly özelliği eklendi."
]
},
{ {
"version": "1.1.03", "version": "1.1.03",
"buildDate": "2026-05-30", "buildDate": "2026-05-30",
@ -137,4 +150,4 @@
] ]
} }
] ]
} }

View file

@ -676,7 +676,10 @@ const Wizard = () => {
/> />
<div className="mb-6 mt-2"> <div className="mb-6 mt-2">
<Steps current={currentStep}> <Steps
current={currentStep}
className="flex flex-row flex-wrap !justify-start gap-y-2 lg:flex-nowrap lg:!justify-between"
>
<Steps.Item title={translate('::ListForms.Wizard.MenuInfo') || 'Menu Info'} /> <Steps.Item title={translate('::ListForms.Wizard.MenuInfo') || 'Menu Info'} />
<Steps.Item <Steps.Item
title={translate('::ListForms.Wizard.ListFormSettings') || 'List Form Settings'} title={translate('::ListForms.Wizard.ListFormSettings') || 'List Form Settings'}
@ -770,6 +773,7 @@ const Wizard = () => {
onDataSourceNewChange={setIsDataSourceNew} onDataSourceNewChange={setIsDataSourceNew}
dbObjects={dbObjects} dbObjects={dbObjects}
isLoadingDbObjects={isLoadingDbObjects} isLoadingDbObjects={isLoadingDbObjects}
onDbObjectsRefresh={loadDbObjects}
selectCommandColumns={selectCommandColumns} selectCommandColumns={selectCommandColumns}
isLoadingColumns={isLoadingColumns} isLoadingColumns={isLoadingColumns}
selectedColumns={selectedColumns} selectedColumns={selectedColumns}

View file

@ -3,10 +3,12 @@ import { SelectCommandTypeEnum } from '@/proxy/form/models'
import type { DatabaseColumnDto, SqlObjectExplorerDto } from '@/proxy/sql-query-manager/models' import type { DatabaseColumnDto, SqlObjectExplorerDto } from '@/proxy/sql-query-manager/models'
import { SelectBoxOption } from '@/types/shared' import { SelectBoxOption } from '@/types/shared'
import { Field, FieldProps, FormikErrors, FormikTouched } from 'formik' import { Field, FieldProps, FormikErrors, FormikTouched } from 'formik'
import { useState } from 'react'
import CreatableSelect from 'react-select/creatable' import CreatableSelect from 'react-select/creatable'
import { FaArrowLeft, FaArrowRight } from 'react-icons/fa' import { FaArrowLeft, FaArrowRight, FaPlus } from 'react-icons/fa'
import { dbSourceTypeOptions, listFormDefaultLayoutOptions, selectCommandTypeOptions, sqlDataTypeToDbType } from '../edit/options' import { dbSourceTypeOptions, listFormDefaultLayoutOptions, selectCommandTypeOptions, sqlDataTypeToDbType } from '../edit/options'
import { ListFormWizardDto } from '@/proxy/admin/wizard/models' import { ListFormWizardDto } from '@/proxy/admin/wizard/models'
import SqlTableDesignerDialog from '@/views/developerKit/SqlTableDesignerDialog'
// ─── Props ──────────────────────────────────────────────────────────────────── // ─── Props ────────────────────────────────────────────────────────────────────
@ -23,6 +25,7 @@ export interface WizardStep2Props {
// DB Objects // DB Objects
dbObjects: SqlObjectExplorerDto | null dbObjects: SqlObjectExplorerDto | null
isLoadingDbObjects: boolean isLoadingDbObjects: boolean
onDbObjectsRefresh: (dsCode: string) => void | Promise<void>
// Columns // Columns
selectCommandColumns: DatabaseColumnDto[] selectCommandColumns: DatabaseColumnDto[]
isLoadingColumns: boolean isLoadingColumns: boolean
@ -50,6 +53,7 @@ const WizardStep2 = ({
onDataSourceNewChange, onDataSourceNewChange,
dbObjects, dbObjects,
isLoadingDbObjects, isLoadingDbObjects,
onDbObjectsRefresh,
selectCommandColumns, selectCommandColumns,
isLoadingColumns, isLoadingColumns,
selectedColumns, selectedColumns,
@ -61,6 +65,8 @@ const WizardStep2 = ({
onBack, onBack,
onNext, onNext,
}: WizardStep2Props) => { }: WizardStep2Props) => {
const [showTableDesignerDialog, setShowTableDesignerDialog] = useState(false)
const step2Missing = [ const step2Missing = [
!values.listFormCode && translate('::App.Listform.ListformField.ListFormCode'), !values.listFormCode && translate('::App.Listform.ListformField.ListFormCode'),
!values.dataSourceCode && translate('::ListForms.Wizard.Step4.DataSource'), !values.dataSourceCode && translate('::ListForms.Wizard.Step4.DataSource'),
@ -217,7 +223,9 @@ const WizardStep2 = ({
] ]
: [] : []
return ( return (
<Select <div className="flex items-center gap-2">
<div className="flex-1 min-w-0">
<Select
field={field} field={field}
form={form} form={form}
isClearable isClearable
@ -256,7 +264,18 @@ const WizardStep2 = ({
form.setFieldTouched('keyFieldName', false) form.setFieldTouched('keyFieldName', false)
onClearColumns() onClearColumns()
}} }}
/> />
</div>
<Button
type="button"
variant="solid"
icon={<FaPlus />}
disabled={!values.dataSourceCode}
onClick={() => setShowTableDesignerDialog(true)}
>
New Table
</Button>
</div>
) )
}} }}
</Field> </Field>
@ -785,6 +804,14 @@ const WizardStep2 = ({
</div> </div>
</div> </div>
</div> </div>
<SqlTableDesignerDialog
isOpen={showTableDesignerDialog}
onClose={() => setShowTableDesignerDialog(false)}
dataSource={values.dataSourceCode}
initialTableData={null}
onDeployed={() => onDbObjectsRefresh(values.dataSourceCode)}
/>
</div> </div>
) )
} }