Form Fields sütun ekleme işlemi güncellendi
This commit is contained in:
parent
73cb479e50
commit
cb77dd2109
3 changed files with 43 additions and 24 deletions
|
|
@ -74,8 +74,8 @@ const FormEdit = () => {
|
||||||
const [langOptions, setLangOptions] = useState<SelectBoxOption[]>([])
|
const [langOptions, setLangOptions] = useState<SelectBoxOption[]>([])
|
||||||
const [roleList, setRoleList] = useState<SelectBoxOption[]>([])
|
const [roleList, setRoleList] = useState<SelectBoxOption[]>([])
|
||||||
const [userList, setUserList] = useState<SelectBoxOption[]>([])
|
const [userList, setUserList] = useState<SelectBoxOption[]>([])
|
||||||
const [workflowColumns, setWorkflowColumns] = useState<DatabaseColumnDto[]>([])
|
const [columns, setColumns] = useState<DatabaseColumnDto[]>([])
|
||||||
const [isLoadingWorkflowColumns, setIsLoadingWorkflowColumns] = useState(false)
|
const [isLoadingColumns, setIsLoadingColumns] = useState(false)
|
||||||
|
|
||||||
const languages: LanguageInfo[] | undefined = useStoreState(
|
const languages: LanguageInfo[] | undefined = useStoreState(
|
||||||
(state) => state.abpConfig.config?.localization.languages,
|
(state) => state.abpConfig.config?.localization.languages,
|
||||||
|
|
@ -152,11 +152,11 @@ const FormEdit = () => {
|
||||||
const selectCommand = listFormValues?.selectCommand
|
const selectCommand = listFormValues?.selectCommand
|
||||||
|
|
||||||
if (!dataSourceCode || !selectCommand) {
|
if (!dataSourceCode || !selectCommand) {
|
||||||
setWorkflowColumns([])
|
setColumns([])
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
setIsLoadingWorkflowColumns(true)
|
setIsLoadingColumns(true)
|
||||||
try {
|
try {
|
||||||
const objectsResponse = await sqlObjectManagerService.getAllObjects(dataSourceCode)
|
const objectsResponse = await sqlObjectManagerService.getAllObjects(dataSourceCode)
|
||||||
const objects = objectsResponse.data
|
const objects = objectsResponse.data
|
||||||
|
|
@ -167,7 +167,7 @@ const FormEdit = () => {
|
||||||
)
|
)
|
||||||
|
|
||||||
if (!objectInfo) {
|
if (!objectInfo) {
|
||||||
setWorkflowColumns([])
|
setColumns([])
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -176,11 +176,11 @@ const FormEdit = () => {
|
||||||
objectInfo.schemaName,
|
objectInfo.schemaName,
|
||||||
objectInfo.objectName,
|
objectInfo.objectName,
|
||||||
)
|
)
|
||||||
setWorkflowColumns(columnsResponse.data ?? [])
|
setColumns(columnsResponse.data ?? [])
|
||||||
} catch {
|
} catch {
|
||||||
setWorkflowColumns([])
|
setColumns([])
|
||||||
} finally {
|
} finally {
|
||||||
setIsLoadingWorkflowColumns(false)
|
setIsLoadingColumns(false)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -448,8 +448,8 @@ const FormEdit = () => {
|
||||||
<FormTabWorkflow
|
<FormTabWorkflow
|
||||||
listFormCode={listFormCode}
|
listFormCode={listFormCode}
|
||||||
userList={userList}
|
userList={userList}
|
||||||
selectCommandColumns={workflowColumns}
|
selectCommandColumns={columns}
|
||||||
isLoadingSelectCommandColumns={isLoadingWorkflowColumns}
|
isLoadingSelectCommandColumns={isLoadingColumns}
|
||||||
onSubmit={onSubmit}
|
onSubmit={onSubmit}
|
||||||
/>
|
/>
|
||||||
</TabContent>
|
</TabContent>
|
||||||
|
|
@ -459,6 +459,7 @@ const FormEdit = () => {
|
||||||
langOptions={langOptions}
|
langOptions={langOptions}
|
||||||
roleList={roleList}
|
roleList={roleList}
|
||||||
userList={userList}
|
userList={userList}
|
||||||
|
columns={columns}
|
||||||
></FormFields>
|
></FormFields>
|
||||||
</TabContent>
|
</TabContent>
|
||||||
<TabContent value="customization" className="px-2">
|
<TabContent value="customization" className="px-2">
|
||||||
|
|
|
||||||
|
|
@ -74,11 +74,13 @@ function FormFields({
|
||||||
langOptions,
|
langOptions,
|
||||||
roleList,
|
roleList,
|
||||||
userList,
|
userList,
|
||||||
|
columns,
|
||||||
}: {
|
}: {
|
||||||
listFormCode: string
|
listFormCode: string
|
||||||
langOptions: SelectBoxOption[]
|
langOptions: SelectBoxOption[]
|
||||||
roleList: SelectBoxOption[]
|
roleList: SelectBoxOption[]
|
||||||
userList: SelectBoxOption[]
|
userList: SelectBoxOption[]
|
||||||
|
columns: DatabaseColumnDto[]
|
||||||
}) {
|
}) {
|
||||||
const { translate } = useLocalization()
|
const { translate } = useLocalization()
|
||||||
const [fields, setFields] = useState<ColumnFormatEditDto[]>()
|
const [fields, setFields] = useState<ColumnFormatEditDto[]>()
|
||||||
|
|
@ -94,6 +96,13 @@ function FormFields({
|
||||||
const [allDbColumns, setAllDbColumns] = useState<DatabaseColumnDto[]>([])
|
const [allDbColumns, setAllDbColumns] = useState<DatabaseColumnDto[]>([])
|
||||||
const [isAddingAllColumns, setIsAddingAllColumns] = useState(false)
|
const [isAddingAllColumns, setIsAddingAllColumns] = useState(false)
|
||||||
|
|
||||||
|
const columnOptions: SelectBoxOption[] = columns.length
|
||||||
|
? columns.map((column) => ({
|
||||||
|
value: column.columnName,
|
||||||
|
label: `${column.columnName} (${column.dataType})`,
|
||||||
|
}))
|
||||||
|
: []
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
const dsCode = listFormValues?.dataSourceCode
|
const dsCode = listFormValues?.dataSourceCode
|
||||||
const cmd = listFormValues?.selectCommand
|
const cmd = listFormValues?.selectCommand
|
||||||
|
|
@ -564,14 +573,26 @@ function FormFields({
|
||||||
errorMessage={errors.fieldName}
|
errorMessage={errors.fieldName}
|
||||||
asterisk={true}
|
asterisk={true}
|
||||||
>
|
>
|
||||||
<Field
|
<Field type="text" name="fieldName">
|
||||||
type="text"
|
{({ field, form }: FieldProps<SelectBoxOption>) => (
|
||||||
autoFocus={true}
|
<Select
|
||||||
autoComplete="off"
|
field={field}
|
||||||
name="fieldName"
|
form={form}
|
||||||
placeholder={translate('::ListForms.ListFormFieldEdit.FieldName')}
|
options={columnOptions}
|
||||||
component={Input}
|
isClearable={true}
|
||||||
|
value={columnOptions.filter((option) => option.value === values.fieldName)}
|
||||||
|
onChange={(option) => {
|
||||||
|
form.setFieldValue(field.name, option?.value)
|
||||||
|
form.setFieldValue(
|
||||||
|
'sourceDbType',
|
||||||
|
sqlDataTypeToDbType(
|
||||||
|
columns.find((c) => c.columnName === option?.value)?.dataType || '',
|
||||||
|
) as any,
|
||||||
|
)
|
||||||
|
}}
|
||||||
/>
|
/>
|
||||||
|
)}
|
||||||
|
</Field>
|
||||||
</FormItem>
|
</FormItem>
|
||||||
|
|
||||||
<FormItem label={translate('::ListForms.ListFormEdit.CustomValueType')}>
|
<FormItem label={translate('::ListForms.ListFormEdit.CustomValueType')}>
|
||||||
|
|
@ -901,10 +922,7 @@ function FormFields({
|
||||||
</Field>
|
</Field>
|
||||||
</FormItem>
|
</FormItem>
|
||||||
<div className="grid grid-cols-4 gap-4">
|
<div className="grid grid-cols-4 gap-4">
|
||||||
<FormItem
|
<FormItem label={translate('::App.Reports.Search')} labelClass="justify-center">
|
||||||
label={translate('::App.Reports.Search')}
|
|
||||||
labelClass="justify-center"
|
|
||||||
>
|
|
||||||
<Field name="copiedFields.all" component={Checkbox} className="mr-1" />
|
<Field name="copiedFields.all" component={Checkbox} className="mr-1" />
|
||||||
</FormItem>
|
</FormItem>
|
||||||
<FormItem
|
<FormItem
|
||||||
|
|
|
||||||
|
|
@ -174,7 +174,7 @@ function DesignerToolbar({
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="flex flex-wrap justify-end gap-2">
|
<div className="flex flex-wrap justify-end gap-2">
|
||||||
{/* <button
|
<button
|
||||||
type="button"
|
type="button"
|
||||||
className={classNames(designerButtonClass, 'border-gray-300 bg-white text-slate-700')}
|
className={classNames(designerButtonClass, 'border-gray-300 bg-white text-slate-700')}
|
||||||
disabled={busy}
|
disabled={busy}
|
||||||
|
|
@ -183,7 +183,7 @@ function DesignerToolbar({
|
||||||
>
|
>
|
||||||
<FiRefreshCw />
|
<FiRefreshCw />
|
||||||
Demo
|
Demo
|
||||||
</button> */}
|
</button>
|
||||||
<button
|
<button
|
||||||
type="button"
|
type="button"
|
||||||
className={classNames(designerButtonClass, 'border-blue-600 bg-white text-blue-600')}
|
className={classNames(designerButtonClass, 'border-blue-600 bg-white text-blue-600')}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue