Gantt ve Scheduler için AllowAdding vs...
This commit is contained in:
parent
aa3a3c7684
commit
0420f1a3e5
8 changed files with 556 additions and 376 deletions
|
|
@ -63,7 +63,22 @@ public class GanttOptionDto
|
||||||
/// İlerleme ifadesi (örn: "%50")
|
/// İlerleme ifadesi (örn: "%50")
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public string ProgressExpr { get; set; }
|
public string ProgressExpr { get; set; }
|
||||||
|
/// <summary>
|
||||||
|
/// Düzenlemeye izin verilsin mi
|
||||||
|
/// </summary>
|
||||||
|
public bool AllowEditing { get; set; } = false;
|
||||||
|
/// <summary>
|
||||||
|
/// Task eklemeye izin verilsin mi
|
||||||
|
/// </summary>
|
||||||
|
public bool AllowTaskAdding { get; set; } = false;
|
||||||
|
/// <summary>
|
||||||
|
/// Task güncellemeye izin verilsin mi
|
||||||
|
/// </summary>
|
||||||
|
public bool AllowTaskUpdating { get; set; } = false;
|
||||||
|
/// <summary>
|
||||||
|
/// Task silmeye izin verilsin mi
|
||||||
|
/// </summary>
|
||||||
|
public bool AllowTaskDeleting { get; set; } = false;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Bağlantılar için kullanılan field adı (örn: "predecessors")
|
/// Bağlantılar için kullanılan field adı (örn: "predecessors")
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
|
||||||
|
|
@ -45,7 +45,7 @@ public class SchedulerOptionDto
|
||||||
/// Tüm gün panelini gösterme durumu
|
/// Tüm gün panelini gösterme durumu
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public bool ShowAllDayPanel { get; set; } = true;
|
public bool ShowAllDayPanel { get; set; } = true;
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// Hücre süresi (dakika cinsinden, örn: 30)
|
/// Hücre süresi (dakika cinsinden, örn: 30)
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public int CellDuration { get; set; } = 30;
|
public int CellDuration { get; set; } = 30;
|
||||||
|
|
@ -65,4 +65,16 @@ public class SchedulerOptionDto
|
||||||
/// Etkinliklerin sürüklenip bırakılmasına izin verilip verilmediğini belirtir
|
/// Etkinliklerin sürüklenip bırakılmasına izin verilip verilmediğini belirtir
|
||||||
/// </summary>
|
/// </summary>
|
||||||
public bool AllowDragging { get; set; } = false;
|
public bool AllowDragging { get; set; } = false;
|
||||||
|
/// <summary>
|
||||||
|
/// Etkinlik eklemeye izin verilip verilmediğini belirtir
|
||||||
|
/// </summary>
|
||||||
|
public bool AllowDeleting { get; set; } = false;
|
||||||
|
/// <summary>
|
||||||
|
/// Etkinlik güncellemeye izin verilip verilmediğini belirtir
|
||||||
|
/// </summary>
|
||||||
|
public bool AllowUpdating { get; set; } = false;
|
||||||
|
/// <summary>
|
||||||
|
/// Etkinlik eklemeye izin verilip verilmediğini belirtir
|
||||||
|
/// </summary>
|
||||||
|
public bool AllowAdding { get; set; } = false;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -4651,6 +4651,30 @@
|
||||||
"en": "Auto Expand All",
|
"en": "Auto Expand All",
|
||||||
"tr": "Otomatik Tümünü Genişlet"
|
"tr": "Otomatik Tümünü Genişlet"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"resourceName": "Platform",
|
||||||
|
"key": "ListForms.ListFormEdit.AllowEditing",
|
||||||
|
"en": "Allow Editing",
|
||||||
|
"tr": "Düzenlemeye İzin Ver"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"resourceName": "Platform",
|
||||||
|
"key": "ListForms.ListFormEdit.AllowTaskAdding",
|
||||||
|
"en": "Allow Task Adding",
|
||||||
|
"tr": "Görev Ekleme İzni"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"resourceName": "Platform",
|
||||||
|
"key": "ListForms.ListFormEdit.AllowTaskDeleting",
|
||||||
|
"en": "Allow Task Deleting",
|
||||||
|
"tr": "Görev Silme İzni"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"resourceName": "Platform",
|
||||||
|
"key": "ListForms.ListFormEdit.AllowTaskUpdating",
|
||||||
|
"en": "Allow Task Updating",
|
||||||
|
"tr": "Görev Güncelleme İzni"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"resourceName": "Platform",
|
"resourceName": "Platform",
|
||||||
"key": "ListForms.ListFormEdit.AllowDependencyAdding",
|
"key": "ListForms.ListFormEdit.AllowDependencyAdding",
|
||||||
|
|
@ -10165,6 +10189,24 @@
|
||||||
"tr": "Sürüklemeye İzin Ver",
|
"tr": "Sürüklemeye İzin Ver",
|
||||||
"en": "Allow Dragging"
|
"en": "Allow Dragging"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"resourceName": "Platform",
|
||||||
|
"key": "ListForms.SchedulerOptions.AllowAdding",
|
||||||
|
"tr": "Ekleme İzin Ver",
|
||||||
|
"en": "Allow Adding"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"resourceName": "Platform",
|
||||||
|
"key": "ListForms.SchedulerOptions.AllowUpdating",
|
||||||
|
"tr": "Güncellemeye İzin Ver",
|
||||||
|
"en": "Allow Updating"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"resourceName": "Platform",
|
||||||
|
"key": "ListForms.SchedulerOptions.AllowDeleting",
|
||||||
|
"tr": "Silmeye İzin Ver",
|
||||||
|
"en": "Allow Deleting"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"resourceName": "Platform",
|
"resourceName": "Platform",
|
||||||
"key": "ListForms.SchedulerOptions.Day",
|
"key": "ListForms.SchedulerOptions.Day",
|
||||||
|
|
|
||||||
|
|
@ -402,6 +402,10 @@ export interface GanttOptionDto {
|
||||||
endExpr?: string
|
endExpr?: string
|
||||||
progressExpr?: string
|
progressExpr?: string
|
||||||
scaleType: GanttScaleType
|
scaleType: GanttScaleType
|
||||||
|
allowEditing?: boolean
|
||||||
|
allowTaskAdding?: boolean
|
||||||
|
allowTaskUpdating?: boolean
|
||||||
|
allowTaskDeleting?: boolean
|
||||||
allowDependencyAdding?: boolean
|
allowDependencyAdding?: boolean
|
||||||
allowDependencyDeleting?: boolean
|
allowDependencyDeleting?: boolean
|
||||||
allowResourceAdding?: boolean
|
allowResourceAdding?: boolean
|
||||||
|
|
@ -424,6 +428,9 @@ export interface SchedulerOptionDto {
|
||||||
firstDayOfWeek?: number
|
firstDayOfWeek?: number
|
||||||
allowResizing?: boolean
|
allowResizing?: boolean
|
||||||
allowDragging?: boolean
|
allowDragging?: boolean
|
||||||
|
allowDeleting?: boolean
|
||||||
|
allowUpdating?: boolean
|
||||||
|
allowAdding?: boolean
|
||||||
resources?: SchedulerResourceDto[]
|
resources?: SchedulerResourceDto[]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -83,293 +83,376 @@ function FormTabGantt(props: FormEditProps) {
|
||||||
{({ touched, errors, isSubmitting, values }) => (
|
{({ touched, errors, isSubmitting, values }) => (
|
||||||
<Form>
|
<Form>
|
||||||
<FormContainer size="sm">
|
<FormContainer size="sm">
|
||||||
<FormItem
|
<div className="grid grid-cols-1 md:grid-cols-2 gap-3">
|
||||||
label={translate('::ListForms.ListFormEdit.DatabaseDataSourceKeyFieldName')}
|
<Card className="mt-4">
|
||||||
invalid={errors.ganttOptionDto?.keyExpr && touched.ganttOptionDto?.keyExpr}
|
<h5 className="mb-4">{translate('::ListForms.SchedulerOptions.BasicSettings')}</h5>
|
||||||
errorMessage={errors.ganttOptionDto?.keyExpr}
|
<FormItem
|
||||||
>
|
label={translate('::ListForms.ListFormEdit.DatabaseDataSourceKeyFieldName')}
|
||||||
<Field
|
invalid={errors.ganttOptionDto?.keyExpr && touched.ganttOptionDto?.keyExpr}
|
||||||
type="text"
|
errorMessage={errors.ganttOptionDto?.keyExpr}
|
||||||
name="ganttOptionDto.keyExpr"
|
>
|
||||||
placeholder={translate('::ListForms.ListFormEdit.DatabaseDataSourceKeyFieldName')}
|
<Field
|
||||||
>
|
type="text"
|
||||||
{({ field, form }: FieldProps<SelectBoxOption>) => (
|
name="ganttOptionDto.keyExpr"
|
||||||
<Select
|
placeholder={translate(
|
||||||
field={field}
|
'::ListForms.ListFormEdit.DatabaseDataSourceKeyFieldName',
|
||||||
form={form}
|
|
||||||
isClearable={true}
|
|
||||||
options={fieldList}
|
|
||||||
value={fieldList?.filter(
|
|
||||||
(option) => option.value === values.ganttOptionDto.keyExpr,
|
|
||||||
)}
|
)}
|
||||||
onChange={(option) => form.setFieldValue(field.name, option?.value)}
|
>
|
||||||
/>
|
{({ field, form }: FieldProps<SelectBoxOption>) => (
|
||||||
)}
|
<Select
|
||||||
</Field>
|
field={field}
|
||||||
</FormItem>
|
form={form}
|
||||||
|
isClearable={true}
|
||||||
<FormItem
|
options={fieldList}
|
||||||
label={translate('::ListForms.ListFormEdit.ParentIdExpr')}
|
value={fieldList?.filter(
|
||||||
invalid={errors.ganttOptionDto?.parentIdExpr && touched.ganttOptionDto?.parentIdExpr}
|
(option) => option.value === values.ganttOptionDto.keyExpr,
|
||||||
errorMessage={errors.ganttOptionDto?.parentIdExpr}
|
)}
|
||||||
>
|
onChange={(option) => form.setFieldValue(field.name, option?.value)}
|
||||||
<Field
|
/>
|
||||||
type="text"
|
|
||||||
name="ganttOptionDto.parentIdExpr"
|
|
||||||
placeholder={translate('::ListForms.ListFormEdit.ParentIdExpr')}
|
|
||||||
>
|
|
||||||
{({ field, form }: FieldProps<SelectBoxOption>) => (
|
|
||||||
<Select
|
|
||||||
field={field}
|
|
||||||
form={form}
|
|
||||||
isClearable={true}
|
|
||||||
options={fieldList}
|
|
||||||
value={fieldList?.filter(
|
|
||||||
(option) => option.value === values.ganttOptionDto.parentIdExpr,
|
|
||||||
)}
|
)}
|
||||||
onChange={(option) => form.setFieldValue(field.name, option?.value)}
|
</Field>
|
||||||
/>
|
</FormItem>
|
||||||
)}
|
|
||||||
</Field>
|
|
||||||
</FormItem>
|
|
||||||
|
|
||||||
<FormItem
|
<FormItem
|
||||||
label={translate('::ListForms.ListFormEdit.HasItemsExpr')}
|
label={translate('::ListForms.ListFormEdit.ParentIdExpr')}
|
||||||
invalid={errors.ganttOptionDto?.hasItemsExpr && touched.ganttOptionDto?.hasItemsExpr}
|
invalid={
|
||||||
errorMessage={errors.ganttOptionDto?.hasItemsExpr}
|
errors.ganttOptionDto?.parentIdExpr && touched.ganttOptionDto?.parentIdExpr
|
||||||
>
|
}
|
||||||
<Field
|
errorMessage={errors.ganttOptionDto?.parentIdExpr}
|
||||||
type="text"
|
>
|
||||||
autoComplete="off"
|
<Field
|
||||||
name="ganttOptionDto.hasItemsExpr"
|
type="text"
|
||||||
placeholder={translate('::ListForms.ListFormEdit.HasItemsExpr')}
|
name="ganttOptionDto.parentIdExpr"
|
||||||
component={Input}
|
placeholder={translate('::ListForms.ListFormEdit.ParentIdExpr')}
|
||||||
/>
|
>
|
||||||
</FormItem>
|
{({ field, form }: FieldProps<SelectBoxOption>) => (
|
||||||
|
<Select
|
||||||
<FormItem
|
field={field}
|
||||||
label={translate('::ListForms.ListFormEdit.RootValue')}
|
form={form}
|
||||||
invalid={!!(errors.ganttOptionDto?.rootValue && touched.ganttOptionDto?.rootValue)}
|
isClearable={true}
|
||||||
errorMessage={errors.ganttOptionDto?.rootValue as string}
|
options={fieldList}
|
||||||
>
|
value={fieldList?.filter(
|
||||||
<Field
|
(option) => option.value === values.ganttOptionDto.parentIdExpr,
|
||||||
type="text"
|
)}
|
||||||
autoComplete="off"
|
onChange={(option) => form.setFieldValue(field.name, option?.value)}
|
||||||
name="ganttOptionDto.rootValue"
|
/>
|
||||||
placeholder={translate('::ListForms.ListFormEdit.RootValue')}
|
|
||||||
component={Input}
|
|
||||||
/>
|
|
||||||
</FormItem>
|
|
||||||
|
|
||||||
<FormItem
|
|
||||||
label={translate('::ListForms.ListFormEdit.AutoExpandAll')}
|
|
||||||
invalid={
|
|
||||||
errors.ganttOptionDto?.autoExpandAll && touched.ganttOptionDto?.autoExpandAll
|
|
||||||
}
|
|
||||||
errorMessage={errors.ganttOptionDto?.autoExpandAll}
|
|
||||||
>
|
|
||||||
<Field
|
|
||||||
name="ganttOptionDto.autoExpandAll"
|
|
||||||
placeholder={translate('::ListForms.ListFormEdit.AutoExpandAll')}
|
|
||||||
component={Checkbox}
|
|
||||||
/>
|
|
||||||
</FormItem>
|
|
||||||
|
|
||||||
<FormItem
|
|
||||||
label={translate('::ListForms.ListFormEdit.RecursiveSelection')}
|
|
||||||
invalid={
|
|
||||||
errors.ganttOptionDto?.recursiveSelection &&
|
|
||||||
touched.ganttOptionDto?.recursiveSelection
|
|
||||||
}
|
|
||||||
errorMessage={errors.ganttOptionDto?.recursiveSelection}
|
|
||||||
>
|
|
||||||
<Field
|
|
||||||
name="ganttOptionDto.recursiveSelection"
|
|
||||||
placeholder={translate('::ListForms.ListFormEdit.RecursiveSelection')}
|
|
||||||
component={Checkbox}
|
|
||||||
/>
|
|
||||||
</FormItem>
|
|
||||||
|
|
||||||
<FormItem
|
|
||||||
label={translate('::ListForms.ListFormEdit.ScaleType')}
|
|
||||||
invalid={errors.ganttOptionDto?.scaleType && touched.ganttOptionDto?.scaleType}
|
|
||||||
errorMessage={errors.ganttOptionDto?.scaleType}
|
|
||||||
>
|
|
||||||
<Field
|
|
||||||
type="text"
|
|
||||||
name="ganttOptionDto.scaleType"
|
|
||||||
placeholder={translate('::ListForms.ListFormEdit.ScaleType')}
|
|
||||||
>
|
|
||||||
{({ field, form }: FieldProps<GanttScaleType>) => (
|
|
||||||
<Select
|
|
||||||
field={field}
|
|
||||||
form={form}
|
|
||||||
isClearable={true}
|
|
||||||
options={gantScaleOptions}
|
|
||||||
value={gantScaleOptions?.filter(
|
|
||||||
(option) => option.value === values.ganttOptionDto.scaleType,
|
|
||||||
)}
|
)}
|
||||||
onChange={(option) => form.setFieldValue(field.name, option?.value)}
|
</Field>
|
||||||
/>
|
</FormItem>
|
||||||
)}
|
|
||||||
</Field>
|
|
||||||
</FormItem>
|
|
||||||
|
|
||||||
<FormItem
|
<FormItem
|
||||||
label={translate('::ListForms.ListFormEdit.TitleExpr')}
|
label={translate('::ListForms.ListFormEdit.HasItemsExpr')}
|
||||||
invalid={errors.ganttOptionDto?.titleExpr && touched.ganttOptionDto?.titleExpr}
|
invalid={
|
||||||
errorMessage={errors.ganttOptionDto?.titleExpr}
|
errors.ganttOptionDto?.hasItemsExpr && touched.ganttOptionDto?.hasItemsExpr
|
||||||
>
|
}
|
||||||
<Field
|
errorMessage={errors.ganttOptionDto?.hasItemsExpr}
|
||||||
type="text"
|
>
|
||||||
name="ganttOptionDto.titleExpr"
|
<Field
|
||||||
placeholder={translate('::ListForms.ListFormEdit.TitleExpr')}
|
type="text"
|
||||||
>
|
autoComplete="off"
|
||||||
{({ field, form }: FieldProps<SelectBoxOption>) => (
|
name="ganttOptionDto.hasItemsExpr"
|
||||||
<Select
|
placeholder={translate('::ListForms.ListFormEdit.HasItemsExpr')}
|
||||||
field={field}
|
component={Input}
|
||||||
form={form}
|
/>
|
||||||
isClearable={true}
|
</FormItem>
|
||||||
options={fieldList}
|
|
||||||
value={fieldList?.filter(
|
<FormItem
|
||||||
(option) => option.value === values.ganttOptionDto.titleExpr,
|
label={translate('::ListForms.ListFormEdit.RootValue')}
|
||||||
|
invalid={
|
||||||
|
!!(errors.ganttOptionDto?.rootValue && touched.ganttOptionDto?.rootValue)
|
||||||
|
}
|
||||||
|
errorMessage={errors.ganttOptionDto?.rootValue as string}
|
||||||
|
>
|
||||||
|
<Field
|
||||||
|
type="text"
|
||||||
|
autoComplete="off"
|
||||||
|
name="ganttOptionDto.rootValue"
|
||||||
|
placeholder={translate('::ListForms.ListFormEdit.RootValue')}
|
||||||
|
component={Input}
|
||||||
|
/>
|
||||||
|
</FormItem>
|
||||||
|
|
||||||
|
<FormItem
|
||||||
|
label={translate('::ListForms.ListFormEdit.AutoExpandAll')}
|
||||||
|
invalid={
|
||||||
|
errors.ganttOptionDto?.autoExpandAll && touched.ganttOptionDto?.autoExpandAll
|
||||||
|
}
|
||||||
|
errorMessage={errors.ganttOptionDto?.autoExpandAll}
|
||||||
|
>
|
||||||
|
<Field
|
||||||
|
name="ganttOptionDto.autoExpandAll"
|
||||||
|
placeholder={translate('::ListForms.ListFormEdit.AutoExpandAll')}
|
||||||
|
component={Checkbox}
|
||||||
|
/>
|
||||||
|
</FormItem>
|
||||||
|
|
||||||
|
<FormItem
|
||||||
|
label={translate('::ListForms.ListFormEdit.RecursiveSelection')}
|
||||||
|
invalid={
|
||||||
|
errors.ganttOptionDto?.recursiveSelection &&
|
||||||
|
touched.ganttOptionDto?.recursiveSelection
|
||||||
|
}
|
||||||
|
errorMessage={errors.ganttOptionDto?.recursiveSelection}
|
||||||
|
>
|
||||||
|
<Field
|
||||||
|
name="ganttOptionDto.recursiveSelection"
|
||||||
|
placeholder={translate('::ListForms.ListFormEdit.RecursiveSelection')}
|
||||||
|
component={Checkbox}
|
||||||
|
/>
|
||||||
|
</FormItem>
|
||||||
|
|
||||||
|
<FormItem
|
||||||
|
label={translate('::ListForms.ListFormEdit.ScaleType')}
|
||||||
|
invalid={errors.ganttOptionDto?.scaleType && touched.ganttOptionDto?.scaleType}
|
||||||
|
errorMessage={errors.ganttOptionDto?.scaleType}
|
||||||
|
>
|
||||||
|
<Field
|
||||||
|
type="text"
|
||||||
|
name="ganttOptionDto.scaleType"
|
||||||
|
placeholder={translate('::ListForms.ListFormEdit.ScaleType')}
|
||||||
|
>
|
||||||
|
{({ field, form }: FieldProps<GanttScaleType>) => (
|
||||||
|
<Select
|
||||||
|
field={field}
|
||||||
|
form={form}
|
||||||
|
isClearable={true}
|
||||||
|
options={gantScaleOptions}
|
||||||
|
value={gantScaleOptions?.filter(
|
||||||
|
(option) => option.value === values.ganttOptionDto.scaleType,
|
||||||
|
)}
|
||||||
|
onChange={(option) => form.setFieldValue(field.name, option?.value)}
|
||||||
|
/>
|
||||||
)}
|
)}
|
||||||
onChange={(option) => form.setFieldValue(field.name, option?.value)}
|
</Field>
|
||||||
/>
|
</FormItem>
|
||||||
)}
|
|
||||||
</Field>
|
|
||||||
</FormItem>
|
|
||||||
|
|
||||||
<FormItem
|
<FormItem
|
||||||
label={translate('::ListForms.ListFormEdit.StartExpr')}
|
label={translate('::ListForms.ListFormEdit.TitleExpr')}
|
||||||
invalid={errors.ganttOptionDto?.startExpr && touched.ganttOptionDto?.startExpr}
|
invalid={errors.ganttOptionDto?.titleExpr && touched.ganttOptionDto?.titleExpr}
|
||||||
errorMessage={errors.ganttOptionDto?.startExpr}
|
errorMessage={errors.ganttOptionDto?.titleExpr}
|
||||||
>
|
>
|
||||||
<Field
|
<Field
|
||||||
type="text"
|
type="text"
|
||||||
name="ganttOptionDto.startExpr"
|
name="ganttOptionDto.titleExpr"
|
||||||
placeholder={translate('::ListForms.ListFormEdit.StartExpr')}
|
placeholder={translate('::ListForms.ListFormEdit.TitleExpr')}
|
||||||
>
|
>
|
||||||
{({ field, form }: FieldProps<SelectBoxOption>) => (
|
{({ field, form }: FieldProps<SelectBoxOption>) => (
|
||||||
<Select
|
<Select
|
||||||
field={field}
|
field={field}
|
||||||
form={form}
|
form={form}
|
||||||
isClearable={true}
|
isClearable={true}
|
||||||
options={fieldList}
|
options={fieldList}
|
||||||
value={fieldList?.filter(
|
value={fieldList?.filter(
|
||||||
(option) => option.value === values.ganttOptionDto.startExpr,
|
(option) => option.value === values.ganttOptionDto.titleExpr,
|
||||||
|
)}
|
||||||
|
onChange={(option) => form.setFieldValue(field.name, option?.value)}
|
||||||
|
/>
|
||||||
)}
|
)}
|
||||||
onChange={(option) => form.setFieldValue(field.name, option?.value)}
|
</Field>
|
||||||
/>
|
</FormItem>
|
||||||
)}
|
|
||||||
</Field>
|
|
||||||
</FormItem>
|
|
||||||
|
|
||||||
<FormItem
|
<FormItem
|
||||||
label={translate('::ListForms.ListFormEdit.EndExpr')}
|
label={translate('::ListForms.ListFormEdit.StartExpr')}
|
||||||
invalid={errors.ganttOptionDto?.endExpr && touched.ganttOptionDto?.endExpr}
|
invalid={errors.ganttOptionDto?.startExpr && touched.ganttOptionDto?.startExpr}
|
||||||
errorMessage={errors.ganttOptionDto?.endExpr}
|
errorMessage={errors.ganttOptionDto?.startExpr}
|
||||||
>
|
>
|
||||||
<Field
|
<Field
|
||||||
type="text"
|
type="text"
|
||||||
name="ganttOptionDto.endExpr"
|
name="ganttOptionDto.startExpr"
|
||||||
placeholder={translate('::ListForms.ListFormEdit.EndExpr')}
|
placeholder={translate('::ListForms.ListFormEdit.StartExpr')}
|
||||||
>
|
>
|
||||||
{({ field, form }: FieldProps<SelectBoxOption>) => (
|
{({ field, form }: FieldProps<SelectBoxOption>) => (
|
||||||
<Select
|
<Select
|
||||||
field={field}
|
field={field}
|
||||||
form={form}
|
form={form}
|
||||||
isClearable={true}
|
isClearable={true}
|
||||||
options={fieldList}
|
options={fieldList}
|
||||||
value={fieldList?.filter(
|
value={fieldList?.filter(
|
||||||
(option) => option.value === values.ganttOptionDto.endExpr,
|
(option) => option.value === values.ganttOptionDto.startExpr,
|
||||||
|
)}
|
||||||
|
onChange={(option) => form.setFieldValue(field.name, option?.value)}
|
||||||
|
/>
|
||||||
)}
|
)}
|
||||||
onChange={(option) => form.setFieldValue(field.name, option?.value)}
|
</Field>
|
||||||
/>
|
</FormItem>
|
||||||
)}
|
|
||||||
</Field>
|
|
||||||
</FormItem>
|
|
||||||
|
|
||||||
<FormItem
|
<FormItem
|
||||||
label={translate('::ListForms.ListFormEdit.ProgressExpr')}
|
label={translate('::ListForms.ListFormEdit.EndExpr')}
|
||||||
invalid={errors.ganttOptionDto?.progressExpr && touched.ganttOptionDto?.progressExpr}
|
invalid={errors.ganttOptionDto?.endExpr && touched.ganttOptionDto?.endExpr}
|
||||||
errorMessage={errors.ganttOptionDto?.progressExpr}
|
errorMessage={errors.ganttOptionDto?.endExpr}
|
||||||
>
|
>
|
||||||
<Field
|
<Field
|
||||||
type="text"
|
type="text"
|
||||||
name="ganttOptionDto.progressExpr"
|
name="ganttOptionDto.endExpr"
|
||||||
placeholder={translate('::ListForms.ListFormEdit.ProgressExpr')}
|
placeholder={translate('::ListForms.ListFormEdit.EndExpr')}
|
||||||
>
|
>
|
||||||
{({ field, form }: FieldProps<SelectBoxOption>) => (
|
{({ field, form }: FieldProps<SelectBoxOption>) => (
|
||||||
<Select
|
<Select
|
||||||
field={field}
|
field={field}
|
||||||
form={form}
|
form={form}
|
||||||
isClearable={true}
|
isClearable={true}
|
||||||
options={fieldList}
|
options={fieldList}
|
||||||
value={fieldList?.filter(
|
value={fieldList?.filter(
|
||||||
(option) => option.value === values.ganttOptionDto.progressExpr,
|
(option) => option.value === values.ganttOptionDto.endExpr,
|
||||||
|
)}
|
||||||
|
onChange={(option) => form.setFieldValue(field.name, option?.value)}
|
||||||
|
/>
|
||||||
)}
|
)}
|
||||||
onChange={(option) => form.setFieldValue(field.name, option?.value)}
|
</Field>
|
||||||
|
</FormItem>
|
||||||
|
|
||||||
|
<FormItem
|
||||||
|
label={translate('::ListForms.ListFormEdit.ProgressExpr')}
|
||||||
|
invalid={
|
||||||
|
errors.ganttOptionDto?.progressExpr && touched.ganttOptionDto?.progressExpr
|
||||||
|
}
|
||||||
|
errorMessage={errors.ganttOptionDto?.progressExpr}
|
||||||
|
>
|
||||||
|
<Field
|
||||||
|
type="text"
|
||||||
|
name="ganttOptionDto.progressExpr"
|
||||||
|
placeholder={translate('::ListForms.ListFormEdit.ProgressExpr')}
|
||||||
|
>
|
||||||
|
{({ field, form }: FieldProps<SelectBoxOption>) => (
|
||||||
|
<Select
|
||||||
|
field={field}
|
||||||
|
form={form}
|
||||||
|
isClearable={true}
|
||||||
|
options={fieldList}
|
||||||
|
value={fieldList?.filter(
|
||||||
|
(option) => option.value === values.ganttOptionDto.progressExpr,
|
||||||
|
)}
|
||||||
|
onChange={(option) => form.setFieldValue(field.name, option?.value)}
|
||||||
|
/>
|
||||||
|
)}
|
||||||
|
</Field>
|
||||||
|
</FormItem>
|
||||||
|
</Card>
|
||||||
|
|
||||||
|
<Card className="mt-4">
|
||||||
|
<h5 className="mb-4">
|
||||||
|
{translate('::ListForms.SchedulerOptions.InteractionSettings')}
|
||||||
|
</h5>
|
||||||
|
<FormItem
|
||||||
|
label={translate('::ListForms.ListFormEdit.AllowEditing')}
|
||||||
|
invalid={
|
||||||
|
errors.ganttOptionDto?.allowEditing && touched.ganttOptionDto?.allowEditing
|
||||||
|
}
|
||||||
|
errorMessage={errors.ganttOptionDto?.allowEditing}
|
||||||
|
>
|
||||||
|
<Field
|
||||||
|
name="ganttOptionDto.allowEditing"
|
||||||
|
placeholder={translate('::ListForms.ListFormEdit.AllowEditing')}
|
||||||
|
component={Checkbox}
|
||||||
/>
|
/>
|
||||||
)}
|
</FormItem>
|
||||||
</Field>
|
|
||||||
</FormItem>
|
|
||||||
|
|
||||||
<FormItem
|
<FormItem
|
||||||
label={translate('::ListForms.ListFormEdit.AllowDependencyAdding')}
|
label={translate('::ListForms.ListFormEdit.AllowTaskAdding')}
|
||||||
invalid={
|
invalid={
|
||||||
errors.ganttOptionDto?.allowDependencyAdding && touched.ganttOptionDto?.allowDependencyAdding
|
errors.ganttOptionDto?.allowTaskAdding &&
|
||||||
}
|
touched.ganttOptionDto?.allowTaskAdding
|
||||||
errorMessage={errors.ganttOptionDto?.allowDependencyAdding}
|
}
|
||||||
>
|
errorMessage={errors.ganttOptionDto?.allowTaskAdding}
|
||||||
<Field
|
>
|
||||||
name="ganttOptionDto.allowDependencyAdding"
|
<Field
|
||||||
placeholder={translate('::ListForms.ListFormEdit.AllowDependencyAdding')}
|
name="ganttOptionDto.allowTaskAdding"
|
||||||
component={Checkbox}
|
placeholder={translate('::ListForms.ListFormEdit.AllowTaskAdding')}
|
||||||
/>
|
component={Checkbox}
|
||||||
</FormItem>
|
/>
|
||||||
|
</FormItem>
|
||||||
|
|
||||||
<FormItem
|
<FormItem
|
||||||
label={translate('::ListForms.ListFormEdit.AllowDependencyDeleting')}
|
label={translate('::ListForms.ListFormEdit.AllowTaskUpdating')}
|
||||||
invalid={
|
invalid={
|
||||||
errors.ganttOptionDto?.allowDependencyDeleting && touched.ganttOptionDto?.allowDependencyDeleting
|
errors.ganttOptionDto?.allowTaskUpdating &&
|
||||||
}
|
touched.ganttOptionDto?.allowTaskUpdating
|
||||||
errorMessage={errors.ganttOptionDto?.allowDependencyDeleting}
|
}
|
||||||
>
|
errorMessage={errors.ganttOptionDto?.allowTaskUpdating}
|
||||||
<Field
|
>
|
||||||
name="ganttOptionDto.allowDependencyDeleting"
|
<Field
|
||||||
placeholder={translate('::ListForms.ListFormEdit.AllowDependencyDeleting')}
|
name="ganttOptionDto.allowTaskUpdating"
|
||||||
component={Checkbox}
|
placeholder={translate('::ListForms.ListFormEdit.AllowTaskUpdating')}
|
||||||
/>
|
component={Checkbox}
|
||||||
</FormItem>
|
/>
|
||||||
|
</FormItem>
|
||||||
|
|
||||||
<FormItem
|
<FormItem
|
||||||
label={translate('::ListForms.ListFormEdit.AllowResourceAdding')}
|
label={translate('::ListForms.ListFormEdit.AllowTaskDeleting')}
|
||||||
invalid={
|
invalid={
|
||||||
errors.ganttOptionDto?.allowResourceAdding && touched.ganttOptionDto?.allowResourceAdding
|
errors.ganttOptionDto?.allowTaskDeleting &&
|
||||||
}
|
touched.ganttOptionDto?.allowTaskDeleting
|
||||||
errorMessage={errors.ganttOptionDto?.allowResourceAdding}
|
}
|
||||||
>
|
errorMessage={errors.ganttOptionDto?.allowTaskDeleting}
|
||||||
<Field
|
>
|
||||||
name="ganttOptionDto.allowResourceAdding"
|
<Field
|
||||||
placeholder={translate('::ListForms.ListFormEdit.AllowResourceAdding')}
|
name="ganttOptionDto.allowTaskDeleting"
|
||||||
component={Checkbox}
|
placeholder={translate('::ListForms.ListFormEdit.AllowTaskDeleting')}
|
||||||
/>
|
component={Checkbox}
|
||||||
</FormItem>
|
/>
|
||||||
|
</FormItem>
|
||||||
|
|
||||||
<FormItem
|
<FormItem
|
||||||
label={translate('::ListForms.ListFormEdit.AllowResourceDeleting')}
|
label={translate('::ListForms.ListFormEdit.AllowDependencyAdding')}
|
||||||
invalid={
|
invalid={
|
||||||
errors.ganttOptionDto?.allowResourceDeleting && touched.ganttOptionDto?.allowResourceDeleting
|
errors.ganttOptionDto?.allowDependencyAdding &&
|
||||||
}
|
touched.ganttOptionDto?.allowDependencyAdding
|
||||||
errorMessage={errors.ganttOptionDto?.allowResourceDeleting}
|
}
|
||||||
>
|
errorMessage={errors.ganttOptionDto?.allowDependencyAdding}
|
||||||
<Field
|
>
|
||||||
name="ganttOptionDto.allowResourceDeleting"
|
<Field
|
||||||
placeholder={translate('::ListForms.ListFormEdit.AllowResourceDeleting')}
|
name="ganttOptionDto.allowDependencyAdding"
|
||||||
component={Checkbox}
|
placeholder={translate('::ListForms.ListFormEdit.AllowDependencyAdding')}
|
||||||
/>
|
component={Checkbox}
|
||||||
</FormItem>
|
/>
|
||||||
|
</FormItem>
|
||||||
|
|
||||||
|
<FormItem
|
||||||
|
label={translate('::ListForms.ListFormEdit.AllowDependencyDeleting')}
|
||||||
|
invalid={
|
||||||
|
errors.ganttOptionDto?.allowDependencyDeleting &&
|
||||||
|
touched.ganttOptionDto?.allowDependencyDeleting
|
||||||
|
}
|
||||||
|
errorMessage={errors.ganttOptionDto?.allowDependencyDeleting}
|
||||||
|
>
|
||||||
|
<Field
|
||||||
|
name="ganttOptionDto.allowDependencyDeleting"
|
||||||
|
placeholder={translate('::ListForms.ListFormEdit.AllowDependencyDeleting')}
|
||||||
|
component={Checkbox}
|
||||||
|
/>
|
||||||
|
</FormItem>
|
||||||
|
|
||||||
|
<FormItem
|
||||||
|
label={translate('::ListForms.ListFormEdit.AllowResourceAdding')}
|
||||||
|
invalid={
|
||||||
|
errors.ganttOptionDto?.allowResourceAdding &&
|
||||||
|
touched.ganttOptionDto?.allowResourceAdding
|
||||||
|
}
|
||||||
|
errorMessage={errors.ganttOptionDto?.allowResourceAdding}
|
||||||
|
>
|
||||||
|
<Field
|
||||||
|
name="ganttOptionDto.allowResourceAdding"
|
||||||
|
placeholder={translate('::ListForms.ListFormEdit.AllowResourceAdding')}
|
||||||
|
component={Checkbox}
|
||||||
|
/>
|
||||||
|
</FormItem>
|
||||||
|
|
||||||
|
<FormItem
|
||||||
|
label={translate('::ListForms.ListFormEdit.AllowResourceDeleting')}
|
||||||
|
invalid={
|
||||||
|
errors.ganttOptionDto?.allowResourceDeleting &&
|
||||||
|
touched.ganttOptionDto?.allowResourceDeleting
|
||||||
|
}
|
||||||
|
errorMessage={errors.ganttOptionDto?.allowResourceDeleting}
|
||||||
|
>
|
||||||
|
<Field
|
||||||
|
name="ganttOptionDto.allowResourceDeleting"
|
||||||
|
placeholder={translate('::ListForms.ListFormEdit.AllowResourceDeleting')}
|
||||||
|
component={Checkbox}
|
||||||
|
/>
|
||||||
|
</FormItem>
|
||||||
|
</Card>
|
||||||
|
</div>
|
||||||
|
|
||||||
<Button block variant="solid" loading={isSubmitting} type="submit" className="my-2">
|
<Button block variant="solid" loading={isSubmitting} type="submit" className="my-2">
|
||||||
{isSubmitting ? translate('::SavingWithThreeDot') : translate('::Save')}
|
{isSubmitting ? translate('::SavingWithThreeDot') : translate('::Save')}
|
||||||
|
|
|
||||||
|
|
@ -83,7 +83,7 @@ function FormTabScheduler(props: FormEditProps) {
|
||||||
<Form>
|
<Form>
|
||||||
<FormContainer size="sm">
|
<FormContainer size="sm">
|
||||||
<div className="grid grid-cols-1 md:grid-cols-2 gap-3">
|
<div className="grid grid-cols-1 md:grid-cols-2 gap-3">
|
||||||
<Card>
|
<Card className="mt-4">
|
||||||
<h5 className="mb-4">{translate('::ListForms.SchedulerOptions.BasicSettings')}</h5>
|
<h5 className="mb-4">{translate('::ListForms.SchedulerOptions.BasicSettings')}</h5>
|
||||||
|
|
||||||
<FormItem
|
<FormItem
|
||||||
|
|
@ -181,6 +181,98 @@ function FormTabScheduler(props: FormEditProps) {
|
||||||
</FormItem>
|
</FormItem>
|
||||||
</Card>
|
</Card>
|
||||||
|
|
||||||
|
<Card className="mt-4">
|
||||||
|
<h5 className="mb-4">{translate('::ListForms.SchedulerOptions.ViewSettings')}</h5>
|
||||||
|
|
||||||
|
<FormItem label={translate('::ListForms.SchedulerOptions.DefaultView')}>
|
||||||
|
<Field name="schedulerOptionDto.defaultView">
|
||||||
|
{({ field, form }: FieldProps) => (
|
||||||
|
<Select
|
||||||
|
field={field}
|
||||||
|
form={form}
|
||||||
|
options={schedulerViewOptions}
|
||||||
|
value={schedulerViewOptions.find(
|
||||||
|
(option) => option.value === values.schedulerOptionDto?.defaultView,
|
||||||
|
)}
|
||||||
|
onChange={(option) => form.setFieldValue(field.name, option?.value)}
|
||||||
|
/>
|
||||||
|
)}
|
||||||
|
</Field>
|
||||||
|
</FormItem>
|
||||||
|
|
||||||
|
<FormItem label={translate('::ListForms.SchedulerOptions.FirstDayOfWeek')}>
|
||||||
|
<Field name="schedulerOptionDto.firstDayOfWeek">
|
||||||
|
{({ field, form }: FieldProps) => (
|
||||||
|
<Select
|
||||||
|
field={field}
|
||||||
|
form={form}
|
||||||
|
options={firstDayOfWeekOptions}
|
||||||
|
value={firstDayOfWeekOptions.find(
|
||||||
|
(option) => option.value === values.schedulerOptionDto?.firstDayOfWeek,
|
||||||
|
)}
|
||||||
|
onChange={(option) => form.setFieldValue(field.name, option?.value)}
|
||||||
|
/>
|
||||||
|
)}
|
||||||
|
</Field>
|
||||||
|
</FormItem>
|
||||||
|
|
||||||
|
<FormItem
|
||||||
|
label={translate('::ListForms.SchedulerOptions.StartDayHour')}
|
||||||
|
invalid={
|
||||||
|
errors.schedulerOptionDto?.startDayHour &&
|
||||||
|
touched.schedulerOptionDto?.startDayHour
|
||||||
|
}
|
||||||
|
errorMessage={errors.schedulerOptionDto?.startDayHour}
|
||||||
|
>
|
||||||
|
<Field
|
||||||
|
type="number"
|
||||||
|
autoComplete="off"
|
||||||
|
name="schedulerOptionDto.startDayHour"
|
||||||
|
placeholder="8"
|
||||||
|
component={Input}
|
||||||
|
min={0}
|
||||||
|
max={23}
|
||||||
|
/>
|
||||||
|
</FormItem>
|
||||||
|
|
||||||
|
<FormItem
|
||||||
|
label={translate('::ListForms.SchedulerOptions.EndDayHour')}
|
||||||
|
invalid={
|
||||||
|
errors.schedulerOptionDto?.endDayHour && touched.schedulerOptionDto?.endDayHour
|
||||||
|
}
|
||||||
|
errorMessage={errors.schedulerOptionDto?.endDayHour}
|
||||||
|
>
|
||||||
|
<Field
|
||||||
|
type="number"
|
||||||
|
autoComplete="off"
|
||||||
|
name="schedulerOptionDto.endDayHour"
|
||||||
|
placeholder="18"
|
||||||
|
component={Input}
|
||||||
|
min={0}
|
||||||
|
max={24}
|
||||||
|
/>
|
||||||
|
</FormItem>
|
||||||
|
|
||||||
|
<FormItem
|
||||||
|
label={translate('::ListForms.SchedulerOptions.CellDuration')}
|
||||||
|
invalid={
|
||||||
|
errors.schedulerOptionDto?.cellDuration &&
|
||||||
|
touched.schedulerOptionDto?.cellDuration
|
||||||
|
}
|
||||||
|
errorMessage={errors.schedulerOptionDto?.cellDuration}
|
||||||
|
>
|
||||||
|
<Field
|
||||||
|
type="number"
|
||||||
|
autoComplete="off"
|
||||||
|
name="schedulerOptionDto.cellDuration"
|
||||||
|
component={Input}
|
||||||
|
placeholder="30"
|
||||||
|
min={5}
|
||||||
|
step={5}
|
||||||
|
/>
|
||||||
|
</FormItem>
|
||||||
|
</Card>
|
||||||
|
|
||||||
<Card className="mt-4">
|
<Card className="mt-4">
|
||||||
<h5 className="mb-4">
|
<h5 className="mb-4">
|
||||||
{translate('::ListForms.SchedulerOptions.RecurrenceSettings')}
|
{translate('::ListForms.SchedulerOptions.RecurrenceSettings')}
|
||||||
|
|
@ -237,96 +329,11 @@ function FormTabScheduler(props: FormEditProps) {
|
||||||
</FormItem>
|
</FormItem>
|
||||||
</Card>
|
</Card>
|
||||||
|
|
||||||
<Card className="mt-4">
|
|
||||||
<h5 className="mb-4">{translate('::ListForms.SchedulerOptions.ViewSettings')}</h5>
|
|
||||||
|
|
||||||
<FormItem label={translate('::ListForms.SchedulerOptions.DefaultView')}>
|
|
||||||
<Field name="schedulerOptionDto.defaultView">
|
|
||||||
{({ field, form }: FieldProps) => (
|
|
||||||
<Select
|
|
||||||
field={field}
|
|
||||||
form={form}
|
|
||||||
options={schedulerViewOptions}
|
|
||||||
value={schedulerViewOptions.find(
|
|
||||||
(option) => option.value === values.schedulerOptionDto?.defaultView,
|
|
||||||
)}
|
|
||||||
onChange={(option) => form.setFieldValue(field.name, option?.value)}
|
|
||||||
/>
|
|
||||||
)}
|
|
||||||
</Field>
|
|
||||||
</FormItem>
|
|
||||||
|
|
||||||
<FormItem label={translate('::ListForms.SchedulerOptions.FirstDayOfWeek')}>
|
|
||||||
<Field name="schedulerOptionDto.firstDayOfWeek">
|
|
||||||
{({ field, form }: FieldProps) => (
|
|
||||||
<Select
|
|
||||||
field={field}
|
|
||||||
form={form}
|
|
||||||
options={firstDayOfWeekOptions}
|
|
||||||
value={firstDayOfWeekOptions.find(
|
|
||||||
(option) => option.value === values.schedulerOptionDto?.firstDayOfWeek,
|
|
||||||
)}
|
|
||||||
onChange={(option) => form.setFieldValue(field.name, option?.value)}
|
|
||||||
/>
|
|
||||||
)}
|
|
||||||
</Field>
|
|
||||||
</FormItem>
|
|
||||||
|
|
||||||
<FormItem
|
|
||||||
label={translate('::ListForms.SchedulerOptions.StartDayHour')}
|
|
||||||
invalid={errors.schedulerOptionDto?.startDayHour && touched.schedulerOptionDto?.startDayHour}
|
|
||||||
errorMessage={errors.schedulerOptionDto?.startDayHour}
|
|
||||||
>
|
|
||||||
<Field
|
|
||||||
type="number"
|
|
||||||
autoComplete="off"
|
|
||||||
name="schedulerOptionDto.startDayHour"
|
|
||||||
placeholder="8"
|
|
||||||
component={Input}
|
|
||||||
min={0}
|
|
||||||
max={23}
|
|
||||||
/>
|
|
||||||
</FormItem>
|
|
||||||
|
|
||||||
<FormItem
|
|
||||||
label={translate('::ListForms.SchedulerOptions.EndDayHour')}
|
|
||||||
invalid={errors.schedulerOptionDto?.endDayHour && touched.schedulerOptionDto?.endDayHour}
|
|
||||||
errorMessage={errors.schedulerOptionDto?.endDayHour}
|
|
||||||
>
|
|
||||||
<Field
|
|
||||||
type="number"
|
|
||||||
autoComplete="off"
|
|
||||||
name="schedulerOptionDto.endDayHour"
|
|
||||||
placeholder="18"
|
|
||||||
component={Input}
|
|
||||||
min={0}
|
|
||||||
max={24}
|
|
||||||
/>
|
|
||||||
</FormItem>
|
|
||||||
|
|
||||||
<FormItem
|
|
||||||
label={translate('::ListForms.SchedulerOptions.CellDuration')}
|
|
||||||
invalid={errors.schedulerOptionDto?.cellDuration && touched.schedulerOptionDto?.cellDuration}
|
|
||||||
errorMessage={errors.schedulerOptionDto?.cellDuration}
|
|
||||||
>
|
|
||||||
<Field
|
|
||||||
type="number"
|
|
||||||
autoComplete="off"
|
|
||||||
name="schedulerOptionDto.cellDuration"
|
|
||||||
component={Input}
|
|
||||||
placeholder="30"
|
|
||||||
min={5}
|
|
||||||
step={5}
|
|
||||||
/>
|
|
||||||
</FormItem>
|
|
||||||
</Card>
|
|
||||||
|
|
||||||
<Card className="mt-4">
|
<Card className="mt-4">
|
||||||
<h5 className="mb-4">
|
<h5 className="mb-4">
|
||||||
{translate('::ListForms.SchedulerOptions.InteractionSettings')}
|
{translate('::ListForms.SchedulerOptions.InteractionSettings')}
|
||||||
</h5>
|
</h5>
|
||||||
|
|
||||||
|
|
||||||
<FormItem label={translate('::ListForms.SchedulerOptions.ShowAllDayPanel')}>
|
<FormItem label={translate('::ListForms.SchedulerOptions.ShowAllDayPanel')}>
|
||||||
<Field name="schedulerOptionDto.showAllDayPanel" component={Checkbox} />
|
<Field name="schedulerOptionDto.showAllDayPanel" component={Checkbox} />
|
||||||
</FormItem>
|
</FormItem>
|
||||||
|
|
@ -342,13 +349,24 @@ function FormTabScheduler(props: FormEditProps) {
|
||||||
<FormItem label={translate('::ListForms.SchedulerOptions.AllowDragging')}>
|
<FormItem label={translate('::ListForms.SchedulerOptions.AllowDragging')}>
|
||||||
<Field name="schedulerOptionDto.allowDragging" component={Checkbox} />
|
<Field name="schedulerOptionDto.allowDragging" component={Checkbox} />
|
||||||
</FormItem>
|
</FormItem>
|
||||||
|
|
||||||
|
<FormItem label={translate('::ListForms.SchedulerOptions.AllowAdding')}>
|
||||||
|
<Field name="schedulerOptionDto.allowAdding" component={Checkbox} />
|
||||||
|
</FormItem>
|
||||||
|
|
||||||
|
<FormItem label={translate('::ListForms.SchedulerOptions.AllowUpdating')}>
|
||||||
|
<Field name="schedulerOptionDto.allowUpdating" component={Checkbox} />
|
||||||
|
</FormItem>
|
||||||
|
|
||||||
|
<FormItem label={translate('::ListForms.SchedulerOptions.AllowDeleting')}>
|
||||||
|
<Field name="schedulerOptionDto.allowDeleting" component={Checkbox} />
|
||||||
|
</FormItem>
|
||||||
</Card>
|
</Card>
|
||||||
</div>
|
</div>
|
||||||
<FormItem className="mt-4">
|
|
||||||
<Button variant="solid" type="submit" loading={isSubmitting}>
|
<Button block variant="solid" loading={isSubmitting} type="submit" className="my-2">
|
||||||
{translate('::Submit')}
|
{isSubmitting ? translate('::SavingWithThreeDot') : translate('::Save')}
|
||||||
</Button>
|
</Button>{' '}
|
||||||
</FormItem>
|
|
||||||
</FormContainer>
|
</FormContainer>
|
||||||
</Form>
|
</Form>
|
||||||
)}
|
)}
|
||||||
|
|
|
||||||
|
|
@ -249,8 +249,8 @@ const GanttView = (props: GanttViewProps) => {
|
||||||
<Item name="separator" />
|
<Item name="separator" />
|
||||||
<Item name="collapseAll" />
|
<Item name="collapseAll" />
|
||||||
<Item name="expandAll" />
|
<Item name="expandAll" />
|
||||||
{gridDto.gridOptions.editingOptionDto?.allowAdding && <Item name="addTask" />}
|
{gridDto.gridOptions.ganttOptionDto?.allowTaskAdding && <Item name="addTask" />}
|
||||||
{gridDto.gridOptions.editingOptionDto?.allowDeleting && (
|
{gridDto.gridOptions.ganttOptionDto?.allowTaskDeleting && (
|
||||||
<Item name="deleteTask" />
|
<Item name="deleteTask" />
|
||||||
)}
|
)}
|
||||||
<Item name="separator" />
|
<Item name="separator" />
|
||||||
|
|
@ -285,14 +285,17 @@ const GanttView = (props: GanttViewProps) => {
|
||||||
</Toolbar>
|
</Toolbar>
|
||||||
|
|
||||||
<Editing
|
<Editing
|
||||||
enabled={gridDto.gridOptions.editingOptionDto?.allowUpdating}
|
enabled={gridDto.gridOptions.ganttOptionDto?.allowEditing}
|
||||||
allowTaskAdding={gridDto.gridOptions.editingOptionDto?.allowAdding}
|
allowTaskAdding={gridDto.gridOptions.ganttOptionDto?.allowTaskAdding}
|
||||||
allowTaskUpdating={gridDto.gridOptions.editingOptionDto?.allowUpdating}
|
allowTaskUpdating={gridDto.gridOptions.ganttOptionDto?.allowTaskUpdating}
|
||||||
allowTaskDeleting={gridDto.gridOptions.editingOptionDto?.allowDeleting}
|
allowTaskDeleting={gridDto.gridOptions.ganttOptionDto?.allowTaskDeleting}
|
||||||
allowDependencyAdding={false}
|
|
||||||
allowDependencyDeleting={false}
|
allowDependencyAdding={gridDto.gridOptions.ganttOptionDto?.allowDependencyAdding}
|
||||||
allowResourceAdding={false}
|
allowDependencyDeleting={
|
||||||
allowResourceDeleting={false}
|
gridDto.gridOptions.ganttOptionDto?.allowDependencyDeleting
|
||||||
|
}
|
||||||
|
allowResourceAdding={gridDto.gridOptions.ganttOptionDto?.allowResourceAdding}
|
||||||
|
allowResourceDeleting={gridDto.gridOptions.ganttOptionDto?.allowResourceDeleting}
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<FilterRow visible={gridDto.gridOptions.filterRowDto?.visible}></FilterRow>
|
<FilterRow visible={gridDto.gridOptions.filterRowDto?.visible}></FilterRow>
|
||||||
|
|
|
||||||
|
|
@ -257,9 +257,9 @@ const SchedulerView = (props: SchedulerViewProps) => {
|
||||||
</Toolbar>
|
</Toolbar>
|
||||||
|
|
||||||
<Editing
|
<Editing
|
||||||
allowAdding={gridDto.gridOptions.editingOptionDto?.allowAdding ?? false}
|
allowAdding={gridDto.gridOptions.schedulerOptionDto?.allowAdding ?? false}
|
||||||
allowUpdating={gridDto.gridOptions.editingOptionDto?.allowUpdating ?? false}
|
allowUpdating={gridDto.gridOptions.schedulerOptionDto?.allowUpdating ?? false}
|
||||||
allowDeleting={gridDto.gridOptions.editingOptionDto?.allowDeleting ?? false}
|
allowDeleting={gridDto.gridOptions.schedulerOptionDto?.allowDeleting ?? false}
|
||||||
allowResizing={gridDto.gridOptions.schedulerOptionDto?.allowResizing ?? false}
|
allowResizing={gridDto.gridOptions.schedulerOptionDto?.allowResizing ?? false}
|
||||||
allowDragging={gridDto.gridOptions.schedulerOptionDto?.allowDragging ?? false}
|
allowDragging={gridDto.gridOptions.schedulerOptionDto?.allowDragging ?? false}
|
||||||
/>
|
/>
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue