Maintenance Workcenters +++

This commit is contained in:
Sedat Öztürk 2025-11-18 23:42:48 +03:00
parent 847150aaea
commit 8ff6234165
22 changed files with 2332 additions and 238 deletions

View file

@ -4314,7 +4314,7 @@
"key": "ListForms.ListFormEdit.SubFormsRelation.ParentFieldName", "key": "ListForms.ListFormEdit.SubFormsRelation.ParentFieldName",
"en": "Parent Field Name", "en": "Parent Field Name",
"tr": "Üst Kimlik İfadesi" "tr": "Üst Kimlik İfadesi"
}, },
{ {
"resourceName": "Platform", "resourceName": "Platform",
"key": "ListForms.ListFormEdit.SubFormsRelation.ChildFieldName", "key": "ListForms.ListFormEdit.SubFormsRelation.ChildFieldName",
@ -9307,6 +9307,24 @@
"tr": "İş Merkezleri", "tr": "İş Merkezleri",
"en": "Workcenters" "en": "Workcenters"
}, },
{
"resourceName": "Platform",
"key": "App.Maintenance.WorkcenterType",
"tr": "İş Merkezi Tipleri",
"en": "Workcenter Types"
},
{
"resourceName": "Platform",
"key": "App.Maintenance.WorkcenterStatus",
"tr": "İş Merkezi Durumları",
"en": "Workcenter Statuses"
},
{
"resourceName": "Platform",
"key": "App.Maintenance.Workcenter",
"tr": "İş Merkezleri",
"en": "Workcenters"
},
{ {
"resourceName": "Platform", "resourceName": "Platform",
"key": "App.Maintenance.Plans", "key": "App.Maintenance.Plans",

View file

@ -13,8 +13,6 @@ using Volo.Abp.Data;
using Volo.Abp.DependencyInjection; using Volo.Abp.DependencyInjection;
using Volo.Abp.Domain.Repositories; using Volo.Abp.Domain.Repositories;
using Volo.Abp.Identity; using Volo.Abp.Identity;
using Volo.Abp.TenantManagement;
using AbpIdentity = Erp.Platform.Data.Seeds.SeedConsts.AbpIdentity;
using AppCodes = Erp.Platform.Data.Seeds.SeedConsts.AppCodes; using AppCodes = Erp.Platform.Data.Seeds.SeedConsts.AppCodes;
using static Erp.Platform.PlatformConsts; using static Erp.Platform.PlatformConsts;
using static Erp.Platform.PlatformSeeder.SeederDefaults; using static Erp.Platform.PlatformSeeder.SeederDefaults;
@ -45,142 +43,656 @@ public class ListFormSeeder_Maintenance : IDataSeedContributor, ITransientDepend
public async Task SeedAsync(DataSeedContext context) public async Task SeedAsync(DataSeedContext context)
{ {
// #region Material Type using var utils = new SeederUtils();
// if (!await _listFormRepository.AnyAsync(a => a.ListFormCode == ListFormCodes.Lists.MaterialType))
// {
// var listFormMaterialType = await _listFormRepository.InsertAsync(
// new ListForm()
// {
// ListFormType = ListFormTypeEnum.List,
// IsSubForm = false,
// LayoutJson = DefaultLayoutJson,
// CultureName = LanguageCodes.En,
// ListFormCode = ListFormCodes.Lists.MaterialType,
// Name = AppCodes.SupplyChain.MaterialType,
// Title = AppCodes.SupplyChain.MaterialType,
// DataSourceCode = SeedConsts.DataSources.DefaultCode,
// IsTenant = true,
// IsBranch = false,
// IsOrganizationUnit = false,
// Description = AppCodes.SupplyChain.MaterialType,
// SelectCommandType = SelectCommandTypeEnum.Table,
// SelectCommand = TableNameResolver.GetFullTableName(nameof(TableNameEnum.MaterialType)),
// KeyFieldName = "Id",
// KeyFieldDbSourceType = DbType.Guid,
// DefaultFilter = DefaultFilterJson,
// SortMode = GridOptions.SortModeSingle,
// FilterRowJson = DefaultFilterRowJson,
// HeaderFilterJson = DefaultHeaderFilterJson,
// SearchPanelJson= DefaultSearchPanelJson,
// GroupPanelJson = DefaultGroupPanelJson,
// SelectionJson = DefaultSelectionSingleJson,
// ColumnOptionJson = DefaultColumnOptionJson,
// PermissionJson = DefaultPermissionJson(AppCodes.SupplyChain.MaterialType),
// DeleteCommand = DefaultDeleteCommand(nameof(TableNameEnum.MaterialType)),
// DeleteFieldsDefaultValueJson = DefaultDeleteFieldsDefaultValueJson,
// PagerOptionJson = DefaultPagerOptionJson,
// EditingOptionJson = DefaultEditingOptionJson(AppCodes.SupplyChain.MaterialType, 500, 250, true, true, true, true, false),
// EditingFormJson = JsonSerializer.Serialize(new List<EditingFormDto>() {
// new() { Order=1,ColCount=1,ColSpan=1,ItemType="group", Items=[
// new EditingFormItemDto { Order = 1, DataField = "Code", ColSpan = 1, IsRequired = true, EditorType2=EditorTypes.dxTextBox },
// new EditingFormItemDto { Order = 2, DataField = "Name", ColSpan = 1, IsRequired = true, EditorType2=EditorTypes.dxTextBox },
// new EditingFormItemDto { Order = 3, DataField = "Description", ColSpan = 1, EditorType2=EditorTypes.dxTextArea },
// new EditingFormItemDto { Order = 4, DataField = "IsActive", ColSpan = 1, EditorType2=EditorTypes.dxCheckBox },
// ]}
// }),
// InsertFieldsDefaultValueJson = DefaultInsertFieldsDefaultValueJson,
// FormFieldsDefaultValueJson = JsonSerializer.Serialize(new FieldsDefaultValue[] {
// new() { FieldName = "IsActive", FieldDbType = DbType.Boolean, Value = "true", CustomValueType = FieldCustomValueTypeEnum.Value }
// }),
// }
// );
// #region MaterialType Fields #region Workcenter Type
// await _listFormFieldRepository.InsertManyAsync(new ListFormField[] { if (!await _listFormRepository.AnyAsync(a => a.ListFormCode == ListFormCodes.Lists.WorkcenterType))
// new() { {
// ListFormCode = listFormMaterialType.ListFormCode, var listForm = await _listFormRepository.InsertAsync(
// CultureName = LanguageCodes.En, new ListForm()
// SourceDbType = DbType.Guid, {
// FieldName = "Id", ListFormType = ListFormTypeEnum.List,
// Width = 100, IsSubForm = false,
// ListOrderNo = 1, ShowNote = true,
// Visible = false, LayoutJson = DefaultLayoutJson,
// IsActive = true, CultureName = LanguageCodes.En,
// IsDeleted = false, ListFormCode = ListFormCodes.Lists.WorkcenterType,
// ValidationRuleJson = DefaultValidationRuleRequiredJson, Name = AppCodes.Maintenance.WorkcenterType,
// ColumnCustomizationJson = DefaultColumnCustomizationJson, Title = AppCodes.Maintenance.WorkcenterType,
// PermissionJson = DefaultFieldPermissionJson(AppCodes.SupplyChain.MaterialType), DataSourceCode = SeedConsts.DataSources.DefaultCode,
// PivotSettingsJson = DefaultPivotSettingsJson IsTenant = true,
// }, IsBranch = false,
// new() { IsOrganizationUnit = false,
// ListFormCode = listFormMaterialType.ListFormCode, Description = AppCodes.Maintenance.WorkcenterType,
// CultureName = LanguageCodes.En, SelectCommandType = SelectCommandTypeEnum.Table,
// SourceDbType = DbType.String, SelectCommand = TableNameResolver.GetFullTableName(nameof(TableNameEnum.WorkcenterType)),
// FieldName = "Code", KeyFieldName = "Id",
// Width = 150, KeyFieldDbSourceType = DbType.Guid,
// ListOrderNo = 2, DefaultFilter = DefaultFilterJson,
// Visible = true, SortMode = GridOptions.SortModeSingle,
// IsActive = true, FilterRowJson = DefaultFilterRowJson,
// IsDeleted = false, HeaderFilterJson = DefaultHeaderFilterJson,
// AllowSearch = true, SearchPanelJson = DefaultSearchPanelJson,
// ValidationRuleJson = DefaultValidationRuleRequiredJson, GroupPanelJson = DefaultGroupPanelJson,
// ColumnCustomizationJson = DefaultColumnCustomizationJson, SelectionJson = DefaultSelectionSingleJson,
// PermissionJson = DefaultFieldPermissionJson(AppCodes.SupplyChain.MaterialType), ColumnOptionJson = DefaultColumnOptionJson,
// PivotSettingsJson = DefaultPivotSettingsJson PermissionJson = DefaultPermissionJson(AppCodes.Maintenance.WorkcenterType),
// }, DeleteCommand = DefaultDeleteCommand(nameof(TableNameEnum.WorkcenterType)),
// new() { DeleteFieldsDefaultValueJson = DefaultDeleteFieldsDefaultValueJson,
// ListFormCode = listFormMaterialType.ListFormCode, PagerOptionJson = DefaultPagerOptionJson,
// CultureName = LanguageCodes.En, InsertFieldsDefaultValueJson = DefaultInsertFieldsDefaultValueJson,
// SourceDbType = DbType.String, EditingOptionJson = DefaultEditingOptionJson(AppCodes.Maintenance.WorkcenterType, 500, 250, true, true, true, true, false),
// FieldName = "Name", EditingFormJson = JsonSerializer.Serialize(new List<EditingFormDto>() {
// Width = 350, new() {
// ListOrderNo = 3, Order=1, ColCount=1, ColSpan=1, ItemType="group", Items= [
// Visible = true, new EditingFormItemDto { Order = 1, DataField = "Code", ColSpan = 1, IsRequired = true, EditorType2=EditorTypes.dxTextBox },
// IsActive = true, new EditingFormItemDto { Order = 2, DataField = "Name", ColSpan = 1, IsRequired = true, EditorType2=EditorTypes.dxTextBox },
// IsDeleted = false, new EditingFormItemDto { Order = 3, DataField = "Description", ColSpan = 1, EditorType2=EditorTypes.dxTextArea },
// SortIndex = 1, new EditingFormItemDto { Order = 4, DataField = "IsActive", ColSpan = 1, EditorType2=EditorTypes.dxCheckBox },
// SortDirection = GridColumnOptions.SortOrderAsc, ]}
// AllowSearch = true, }),
// ValidationRuleJson = DefaultValidationRuleRequiredJson, FormFieldsDefaultValueJson = JsonSerializer.Serialize(new FieldsDefaultValue[] {
// ColumnCustomizationJson = DefaultColumnCustomizationJson, new() { FieldName = "IsActive", FieldDbType = DbType.Boolean, Value = "true", CustomValueType = FieldCustomValueTypeEnum.Value }
// PermissionJson = DefaultFieldPermissionJson(AppCodes.SupplyChain.MaterialType), }),
// PivotSettingsJson = DefaultPivotSettingsJson }
// }, );
// new() {
// ListFormCode = listFormMaterialType.ListFormCode,
// CultureName = LanguageCodes.En,
// SourceDbType = DbType.String,
// FieldName = "Description",
// Width = 500,
// ListOrderNo = 4,
// Visible = true,
// IsActive = true,
// IsDeleted = false,
// AllowSearch = true,
// ColumnCustomizationJson = DefaultColumnCustomizationJson,
// PermissionJson = DefaultFieldPermissionJson(AppCodes.SupplyChain.MaterialType),
// PivotSettingsJson = DefaultPivotSettingsJson
// },
// new() { #region WorkcenterType Fields
// ListFormCode = listFormMaterialType.ListFormCode, await _listFormFieldRepository.InsertManyAsync([
// CultureName = LanguageCodes.En, new() {
// SourceDbType = DbType.Boolean, ListFormCode = listForm.ListFormCode,
// FieldName = "IsActive", CultureName = LanguageCodes.En,
// Width = 100, SourceDbType = DbType.Guid,
// ListOrderNo = 5, FieldName = "Id",
// Visible = true, Width = 100,
// IsActive = true, ListOrderNo = 1,
// IsDeleted = false, Visible = false,
// AllowSearch = true, IsActive = true,
// ColumnCustomizationJson = DefaultColumnCustomizationJson, IsDeleted = false,
// PermissionJson = DefaultFieldPermissionJson(AppCodes.SupplyChain.MaterialType), ValidationRuleJson = DefaultValidationRuleRequiredJson,
// PivotSettingsJson = DefaultPivotSettingsJson ColumnCustomizationJson = DefaultColumnCustomizationJson,
// } PermissionJson = DefaultFieldPermissionJson(listForm.Name),
// }); PivotSettingsJson = DefaultPivotSettingsJson
// #endregion },
// } new() {
// #endregion ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.String,
FieldName = "Code",
Width = 150,
ListOrderNo = 2,
Visible = true,
IsActive = true,
IsDeleted = false,
AllowSearch = true,
ValidationRuleJson = DefaultValidationRuleRequiredJson,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
},
new() {
ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.String,
FieldName = "Name",
Width = 350,
ListOrderNo = 3,
Visible = true,
IsActive = true,
IsDeleted = false,
SortIndex = 1,
SortDirection = GridColumnOptions.SortOrderAsc,
AllowSearch = true,
ValidationRuleJson = DefaultValidationRuleRequiredJson,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
},
new() {
ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.String,
FieldName = "Description",
Width = 500,
ListOrderNo = 4,
Visible = true,
IsActive = true,
IsDeleted = false,
AllowSearch = true,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
},
new() {
ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.Boolean,
FieldName = "IsActive",
Width = 100,
ListOrderNo = 5,
Visible = true,
IsActive = true,
IsDeleted = false,
AllowSearch = true,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
}
]);
#endregion
}
#endregion
#region Workcenter status
if (!await _listFormRepository.AnyAsync(a => a.ListFormCode == ListFormCodes.Lists.WorkcenterStatus))
{
var listForm = await _listFormRepository.InsertAsync(
new ListForm()
{
ListFormType = ListFormTypeEnum.List,
IsSubForm = false,
ShowNote = true,
LayoutJson = DefaultLayoutJson,
CultureName = LanguageCodes.En,
ListFormCode = ListFormCodes.Lists.WorkcenterStatus,
Name = AppCodes.Maintenance.WorkcenterStatus,
Title = AppCodes.Maintenance.WorkcenterStatus,
DataSourceCode = SeedConsts.DataSources.DefaultCode,
IsTenant = true,
IsBranch = false,
IsOrganizationUnit = false,
Description = AppCodes.Maintenance.WorkcenterStatus,
SelectCommandType = SelectCommandTypeEnum.Table,
SelectCommand = TableNameResolver.GetFullTableName(nameof(TableNameEnum.WorkcenterStatus)),
KeyFieldName = "Id",
KeyFieldDbSourceType = DbType.Guid,
DefaultFilter = DefaultFilterJson,
SortMode = GridOptions.SortModeSingle,
FilterRowJson = DefaultFilterRowJson,
HeaderFilterJson = DefaultHeaderFilterJson,
SearchPanelJson = DefaultSearchPanelJson,
GroupPanelJson = DefaultGroupPanelJson,
SelectionJson = DefaultSelectionSingleJson,
ColumnOptionJson = DefaultColumnOptionJson,
PermissionJson = DefaultPermissionJson(AppCodes.Maintenance.WorkcenterStatus),
DeleteCommand = DefaultDeleteCommand(nameof(TableNameEnum.WorkcenterStatus)),
DeleteFieldsDefaultValueJson = DefaultDeleteFieldsDefaultValueJson,
PagerOptionJson = DefaultPagerOptionJson,
InsertFieldsDefaultValueJson = DefaultInsertFieldsDefaultValueJson,
EditingOptionJson = DefaultEditingOptionJson(AppCodes.Maintenance.WorkcenterStatus, 500, 250, true, true, true, true, false),
EditingFormJson = JsonSerializer.Serialize(new List<EditingFormDto>() {
new() {
Order=1, ColCount=1, ColSpan=1, ItemType="group", Items= [
new EditingFormItemDto { Order = 1, DataField = "Code", ColSpan = 1, IsRequired = true, EditorType2=EditorTypes.dxTextBox },
new EditingFormItemDto { Order = 2, DataField = "Name", ColSpan = 1, IsRequired = true, EditorType2=EditorTypes.dxTextBox },
new EditingFormItemDto { Order = 3, DataField = "Description", ColSpan = 1, EditorType2=EditorTypes.dxTextArea },
new EditingFormItemDto { Order = 4, DataField = "IsActive", ColSpan = 1, EditorType2=EditorTypes.dxCheckBox },
]}
}),
FormFieldsDefaultValueJson = JsonSerializer.Serialize(new FieldsDefaultValue[] {
new() { FieldName = "IsActive", FieldDbType = DbType.Boolean, Value = "true", CustomValueType = FieldCustomValueTypeEnum.Value }
}),
}
);
#region WorkcenterStatus Fields
await _listFormFieldRepository.InsertManyAsync([
new() {
ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.Guid,
FieldName = "Id",
Width = 100,
ListOrderNo = 1,
Visible = false,
IsActive = true,
IsDeleted = false,
ValidationRuleJson = DefaultValidationRuleRequiredJson,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
},
new() {
ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.String,
FieldName = "Code",
Width = 150,
ListOrderNo = 2,
Visible = true,
IsActive = true,
IsDeleted = false,
AllowSearch = true,
ValidationRuleJson = DefaultValidationRuleRequiredJson,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
},
new() {
ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.String,
FieldName = "Name",
Width = 350,
ListOrderNo = 3,
Visible = true,
IsActive = true,
IsDeleted = false,
SortIndex = 1,
SortDirection = GridColumnOptions.SortOrderAsc,
AllowSearch = true,
ValidationRuleJson = DefaultValidationRuleRequiredJson,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
},
new() {
ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.String,
FieldName = "Description",
Width = 500,
ListOrderNo = 4,
Visible = true,
IsActive = true,
IsDeleted = false,
AllowSearch = true,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
},
new() {
ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.Boolean,
FieldName = "IsActive",
Width = 100,
ListOrderNo = 5,
Visible = true,
IsActive = true,
IsDeleted = false,
AllowSearch = true,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
}
]);
#endregion
}
#endregion
#region Workcenter
if (!await _listFormRepository.AnyAsync(a => a.ListFormCode == ListFormCodes.Lists.Workcenter))
{
var listForm = await _listFormRepository.InsertAsync(
new ListForm()
{
ListFormType = ListFormTypeEnum.List,
IsSubForm = false,
ShowNote = true,
LayoutJson = DefaultLayoutJson,
CultureName = LanguageCodes.En,
ListFormCode = ListFormCodes.Lists.Workcenter,
Name = AppCodes.Maintenance.Workcenter,
Title = AppCodes.Maintenance.Workcenter,
DataSourceCode = SeedConsts.DataSources.DefaultCode,
IsTenant = true,
IsBranch = false,
IsOrganizationUnit = false,
Description = AppCodes.Maintenance.Workcenter,
SelectCommandType = SelectCommandTypeEnum.Table,
SelectCommand = TableNameResolver.GetFullTableName(nameof(TableNameEnum.Workcenter)),
KeyFieldName = "Id",
KeyFieldDbSourceType = DbType.Guid,
DefaultFilter = DefaultFilterJson,
SortMode = GridOptions.SortModeSingle,
FilterRowJson = DefaultFilterRowJson,
HeaderFilterJson = DefaultHeaderFilterJson,
SearchPanelJson = DefaultSearchPanelJson,
GroupPanelJson = DefaultGroupPanelJson,
SelectionJson = DefaultSelectionSingleJson,
ColumnOptionJson = DefaultColumnOptionJson,
PermissionJson = DefaultPermissionJson(AppCodes.Maintenance.Workcenter),
DeleteCommand = DefaultDeleteCommand(nameof(TableNameEnum.Workcenter)),
DeleteFieldsDefaultValueJson = DefaultDeleteFieldsDefaultValueJson,
PagerOptionJson = DefaultPagerOptionJson,
InsertFieldsDefaultValueJson = DefaultInsertFieldsDefaultValueJson,
EditingOptionJson = DefaultEditingOptionJson(AppCodes.Maintenance.WorkcenterType, 800, 400, true, true, true, true, false),
EditingFormJson = JsonSerializer.Serialize(new List<EditingFormDto>() {
new() {
Order=1, ColCount=2, ColSpan=1, ItemType="group", Items= [
new EditingFormItemDto { Order = 1, DataField = "Code", ColSpan = 1, IsRequired = true, EditorType2=EditorTypes.dxTextBox },
new EditingFormItemDto { Order = 2, DataField = "Name", ColSpan = 1, IsRequired = true, EditorType2=EditorTypes.dxTextBox },
new EditingFormItemDto { Order = 3, DataField = "Description", ColSpan = 1, EditorType2=EditorTypes.dxTextArea },
new EditingFormItemDto { Order = 4, DataField = "WorkcenterTypeId", ColSpan = 1, IsRequired = true, EditorType2=EditorTypes.dxSelectBox },
new EditingFormItemDto { Order = 5, DataField = "Manufacturer", ColSpan = 1, EditorType2=EditorTypes.dxTextBox },
new EditingFormItemDto { Order = 6, DataField = "Model", ColSpan = 1, EditorType2=EditorTypes.dxTextBox },
new EditingFormItemDto { Order = 7, DataField = "SerialNumber", ColSpan = 1, EditorType2=EditorTypes.dxTextBox },
new EditingFormItemDto { Order = 8, DataField = "InstallationDate", ColSpan = 1, IsRequired = true, EditorType2=EditorTypes.dxDateBox, EditorOptions = EditorOptionValues.DateFormat },
new EditingFormItemDto { Order = 9, DataField = "WarrantyExpiry", ColSpan = 1, EditorType2=EditorTypes.dxDateBox, EditorOptions = EditorOptionValues.DateFormat },
new EditingFormItemDto { Order = 10, DataField = "Location", ColSpan = 1, EditorType2=EditorTypes.dxTextBox },
new EditingFormItemDto { Order = 11, DataField = "DepartmentId", ColSpan = 1, IsRequired = true, EditorType2=EditorTypes.dxSelectBox },
new EditingFormItemDto { Order = 12, DataField = "StatusId", ColSpan = 1, IsRequired = true, EditorType2=EditorTypes.dxSelectBox },
new EditingFormItemDto { Order = 13, DataField = "Criticality", ColSpan = 1, IsRequired = true, EditorType2=EditorTypes.dxSelectBox },
new EditingFormItemDto { Order = 14, DataField = "Capacity", ColSpan = 1, EditorType2=EditorTypes.dxNumberBox },
new EditingFormItemDto { Order = 15, DataField = "CostPerHour", ColSpan = 1, EditorType2=EditorTypes.dxNumberBox },
new EditingFormItemDto { Order = 16, DataField = "SetupTime", ColSpan = 1, EditorType2=EditorTypes.dxNumberBox },
new EditingFormItemDto { Order = 17, DataField = "IsActive", ColSpan = 1, EditorType2=EditorTypes.dxCheckBox },
]}
}),
FormFieldsDefaultValueJson = JsonSerializer.Serialize(new FieldsDefaultValue[] {
new() { FieldName = "InstallationDate", FieldDbType = DbType.Date, Value = "@DATE", CustomValueType = FieldCustomValueTypeEnum.CustomKey },
new() { FieldName = "Capacity", FieldDbType = DbType.Int32, Value = "0", CustomValueType = FieldCustomValueTypeEnum.Value },
new() { FieldName = "CostPerHour", FieldDbType = DbType.Decimal, Value = "0", CustomValueType = FieldCustomValueTypeEnum.Value },
new() { FieldName = "SetupTime", FieldDbType = DbType.Int32, Value = "0", CustomValueType = FieldCustomValueTypeEnum.Value },
new() { FieldName = "IsActive", FieldDbType = DbType.Boolean, Value = "true", CustomValueType = FieldCustomValueTypeEnum.Value },
}),
}
);
#region Workcenter Fields
await _listFormFieldRepository.InsertManyAsync([
new() {
ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.Guid,
FieldName = "Id",
Width = 100,
ListOrderNo = 1,
Visible = false,
IsActive = true,
IsDeleted = false,
ValidationRuleJson = DefaultValidationRuleRequiredJson,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
},
new() {
ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.String,
FieldName = "Code",
Width = 100,
ListOrderNo = 2,
Visible = true,
IsActive = true,
IsDeleted = false,
AllowSearch = true,
ValidationRuleJson = DefaultValidationRuleRequiredJson,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
},
new() {
ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.String,
FieldName = "Name",
Width = 250,
ListOrderNo = 3,
Visible = true,
IsActive = true,
IsDeleted = false,
SortIndex = 1,
SortDirection = GridColumnOptions.SortOrderAsc,
AllowSearch = true,
ValidationRuleJson = DefaultValidationRuleRequiredJson,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
},
new() {
ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.String,
FieldName = "Description",
Width = 300,
ListOrderNo = 4,
Visible = true,
IsActive = true,
IsDeleted = false,
AllowSearch = true,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
},
new() {
ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.Guid,
FieldName = "WorkcenterTypeId",
Width = 150,
ListOrderNo = 5,
Visible = true,
IsActive = true,
IsDeleted = false,
AllowSearch = true,
LookupJson = LookupQueryValues.DefaultLookupQueryJson(nameof(TableNameEnum.WorkcenterType), "Id", "Name"),
ValidationRuleJson = DefaultValidationRuleRequiredJson,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
},
new() {
ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.String,
FieldName = "Manufacturer",
Width = 150,
ListOrderNo = 6,
Visible = true,
IsActive = true,
IsDeleted = false,
AllowSearch = true,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
},
new() {
ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.String,
FieldName = "Model",
Width = 120,
ListOrderNo = 7,
Visible = true,
IsActive = true,
IsDeleted = false,
AllowSearch = true,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
},
new() {
ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.String,
FieldName = "SerialNumber",
Width = 100,
ListOrderNo = 8,
Visible = true,
IsActive = true,
IsDeleted = false,
AllowSearch = true,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
},
new() {
ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.Date,
FieldName = "InstallationDate",
Width = 100,
ListOrderNo = 9,
Visible = true,
IsActive = true,
IsDeleted = false,
AllowSearch = true,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
},
new() {
ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.Date,
FieldName = "WarrantyExpiry",
Width = 100,
ListOrderNo = 10,
Visible = true,
IsActive = true,
IsDeleted = false,
AllowSearch = true,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
},
new() {
ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.String,
FieldName = "Location",
Width = 150,
ListOrderNo = 11,
Visible = true,
IsActive = true,
IsDeleted = false,
AllowSearch = true,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
},
new() {
ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.Guid,
FieldName = "DepartmentId",
Width = 150,
ListOrderNo = 12,
Visible = true,
IsActive = true,
IsDeleted = false,
AllowSearch = true,
LookupJson = LookupQueryValues.DefaultLookupQueryJson(nameof(TableNameEnum.Department), "Id", "Name"),
ValidationRuleJson = DefaultValidationRuleRequiredJson,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
},
new() {
ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.Guid,
FieldName = "StatusId",
Width = 150,
ListOrderNo = 13,
Visible = true,
IsActive = true,
IsDeleted = false,
AllowSearch = true,
LookupJson = LookupQueryValues.DefaultLookupQueryJson(nameof(TableNameEnum.WorkcenterStatus), "Id", "Name"),
ValidationRuleJson = DefaultValidationRuleRequiredJson,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
},
new() {
ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.Guid,
FieldName = "Criticality",
Width = 100,
ListOrderNo = 14,
Visible = true,
IsActive = true,
IsDeleted = false,
AllowSearch = true,
LookupJson = JsonSerializer.Serialize(new LookupDto
{
DataSourceType = UiLookupDataSourceTypeEnum.StaticData,
ValueExpr = "key",
DisplayExpr = "name",
LookupQuery = JsonSerializer.Serialize(new LookupDataDto[] {
new () { Key = "Low", Name = "Low" },
new () { Key = "Medium", Name = "Medium" },
new () { Key = "High", Name = "High" },
new () { Key = "Critical", Name = "Critical" },
}),
}),
ValidationRuleJson = DefaultValidationRuleRequiredJson,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
},
new() {
ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.Int32,
FieldName = "Capacity",
Width = 100,
ListOrderNo = 15,
Visible = true,
IsActive = true,
IsDeleted = false,
AllowSearch = true,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
},
new() {
ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.Decimal,
FieldName = "CostPerHour",
Format = "fixedPoint",
Alignment = "right",
Width = 100,
ListOrderNo = 16,
Visible = true,
IsActive = true,
IsDeleted = false,
AllowSearch = true,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
},
new() {
ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.Int32,
FieldName = "SetupTime",
Width = 100,
ListOrderNo = 17,
Visible = true,
IsActive = true,
IsDeleted = false,
AllowSearch = true,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
},
new() {
ListFormCode = listForm.ListFormCode,
CultureName = LanguageCodes.En,
SourceDbType = DbType.Boolean,
FieldName = "IsActive",
Width = 100,
ListOrderNo = 18,
Visible = true,
IsActive = true,
IsDeleted = false,
AllowSearch = true,
ColumnCustomizationJson = DefaultColumnCustomizationJson,
PermissionJson = DefaultFieldPermissionJson(listForm.Name),
PivotSettingsJson = DefaultPivotSettingsJson
}
]);
#endregion
}
#endregion
} }
} }

View file

@ -152,14 +152,18 @@
"path": "/admin/menuManager", "path": "/admin/menuManager",
"componentPath": "@/views/menu/MenuManager", "componentPath": "@/views/menu/MenuManager",
"routeType": "protected", "routeType": "protected",
"authority": ["App.Menus.Manager"] "authority": [
"App.Menus.Manager"
]
}, },
{ {
"key": "admin.listFormManagement.wizard", "key": "admin.listFormManagement.wizard",
"path": "/admin/listform/wizard", "path": "/admin/listform/wizard",
"componentPath": "@/views/admin/listForm/Wizard", "componentPath": "@/views/admin/listForm/Wizard",
"routeType": "protected", "routeType": "protected",
"authority": ["App.Listforms.Wizard"] "authority": [
"App.Listforms.Wizard"
]
}, },
{ {
"key": "admin.listFormManagement.edit", "key": "admin.listFormManagement.edit",
@ -173,14 +177,18 @@
"path": "/admin/forumManagement", "path": "/admin/forumManagement",
"componentPath": "@/views/forum/Management", "componentPath": "@/views/forum/Management",
"routeType": "protected", "routeType": "protected",
"authority": ["App.ForumManagement"] "authority": [
"App.ForumManagement"
]
}, },
{ {
"key": "admin.ai", "key": "admin.ai",
"path": "/admin/ai", "path": "/admin/ai",
"componentPath": "@/views/ai/Assistant", "componentPath": "@/views/ai/Assistant",
"routeType": "protected", "routeType": "protected",
"authority": ["Abp.Identity.Ai"] "authority": [
"Abp.Identity.Ai"
]
}, },
{ {
"key": "admin.profile.general", "key": "admin.profile.general",
@ -222,28 +230,36 @@
"path": "/admin/settings", "path": "/admin/settings",
"componentPath": "@/views/settings/Settings", "componentPath": "@/views/settings/Settings",
"routeType": "protected", "routeType": "protected",
"authority": ["App.Setting"] "authority": [
"App.Setting"
]
}, },
{ {
"key": "admin.identity.user.detail", "key": "admin.identity.user.detail",
"path": "/admin/users/detail/:userId", "path": "/admin/users/detail/:userId",
"componentPath": "@/views/admin/user-management/Details", "componentPath": "@/views/admin/user-management/Details",
"routeType": "protected", "routeType": "protected",
"authority": ["AbpIdentity.Users.Update"] "authority": [
"AbpIdentity.Users.Update"
]
}, },
{ {
"key": "admin.identity.ous", "key": "admin.identity.ous",
"path": "/admin/ous", "path": "/admin/ous",
"componentPath": "@/views/admin/organization-unit/OrganizationUnits", "componentPath": "@/views/admin/organization-unit/OrganizationUnits",
"routeType": "protected", "routeType": "protected",
"authority": ["Abp.Identity.OrganizationUnits"] "authority": [
"Abp.Identity.OrganizationUnits"
]
}, },
{ {
"key": "admin.forum", "key": "admin.forum",
"path": "/admin/forum", "path": "/admin/forum",
"componentPath": "@/views/forum/Forum", "componentPath": "@/views/forum/Forum",
"routeType": "protected", "routeType": "protected",
"authority": ["App.ForumManagement.Publish"] "authority": [
"App.ForumManagement.Publish"
]
}, },
{ {
"key": "admin.list", "key": "admin.list",
@ -285,168 +301,216 @@
"path": "/admin/developerkit", "path": "/admin/developerkit",
"componentPath": "@/views/developerKit/DashboardPage", "componentPath": "@/views/developerKit/DashboardPage",
"routeType": "protected", "routeType": "protected",
"authority": ["App.DeveloperKit"] "authority": [
"App.DeveloperKit"
]
}, },
{ {
"key": "admin.developerkit.entities", "key": "admin.developerkit.entities",
"path": "/admin/developerkit/entities", "path": "/admin/developerkit/entities",
"componentPath": "@/views/developerKit/EntityPage", "componentPath": "@/views/developerKit/EntityPage",
"routeType": "protected", "routeType": "protected",
"authority": ["App.DeveloperKit.Entity"] "authority": [
"App.DeveloperKit.Entity"
]
}, },
{ {
"key": "admin.developerkit.entities.new", "key": "admin.developerkit.entities.new",
"path": "/admin/developerkit/entities/new", "path": "/admin/developerkit/entities/new",
"componentPath": "@/views/developerKit/EntityDetailPage", "componentPath": "@/views/developerKit/EntityDetailPage",
"routeType": "protected", "routeType": "protected",
"authority": ["App.DeveloperKit.Entity"] "authority": [
"App.DeveloperKit.Entity"
]
}, },
{ {
"key": "admin.developerkit.entities.edit", "key": "admin.developerkit.entities.edit",
"path": "/admin/developerkit/entities/edit/:id", "path": "/admin/developerkit/entities/edit/:id",
"componentPath": "@/views/developerKit/EntityDetailPage", "componentPath": "@/views/developerKit/EntityDetailPage",
"routeType": "protected", "routeType": "protected",
"authority": ["App.DeveloperKit.Entity"] "authority": [
"App.DeveloperKit.Entity"
]
}, },
{ {
"key": "admin.developerkit.migrations", "key": "admin.developerkit.migrations",
"path": "/admin/developerkit/migrations", "path": "/admin/developerkit/migrations",
"componentPath": "@/views/developerKit/MigrationPage", "componentPath": "@/views/developerKit/MigrationPage",
"routeType": "protected", "routeType": "protected",
"authority": ["App.DeveloperKit.Migrations"] "authority": [
"App.DeveloperKit.Migrations"
]
}, },
{ {
"key": "admin.developerkit.endpoints", "key": "admin.developerkit.endpoints",
"path": "/admin/developerkit/endpoints", "path": "/admin/developerkit/endpoints",
"componentPath": "@/views/developerKit/CrudEndpointPage", "componentPath": "@/views/developerKit/CrudEndpointPage",
"routeType": "protected", "routeType": "protected",
"authority": ["App.DeveloperKit.CrudEndpoints"] "authority": [
"App.DeveloperKit.CrudEndpoints"
]
}, },
{ {
"key": "admin.developerkit.dynamic-services", "key": "admin.developerkit.dynamic-services",
"path": "/admin/developerkit/dynamic-services", "path": "/admin/developerkit/dynamic-services",
"componentPath": "@/views/developerKit/DynamicServicePage", "componentPath": "@/views/developerKit/DynamicServicePage",
"routeType": "protected", "routeType": "protected",
"authority": ["App.DeveloperKit.DynamicServices"] "authority": [
"App.DeveloperKit.DynamicServices"
]
}, },
{ {
"key": "admin.developerkit.components", "key": "admin.developerkit.components",
"path": "/admin/developerkit/components", "path": "/admin/developerkit/components",
"componentPath": "@/views/developerKit/ComponentPage", "componentPath": "@/views/developerKit/ComponentPage",
"routeType": "protected", "routeType": "protected",
"authority": ["App.DeveloperKit.Components"] "authority": [
"App.DeveloperKit.Components"
]
}, },
{ {
"key": "admin.developerkit.components.new", "key": "admin.developerkit.components.new",
"path": "/admin/developerkit/components/new", "path": "/admin/developerkit/components/new",
"componentPath": "@/views/developerKit/ComponentDetailPage", "componentPath": "@/views/developerKit/ComponentDetailPage",
"routeType": "protected", "routeType": "protected",
"authority": ["App.DeveloperKit.Components"] "authority": [
"App.DeveloperKit.Components"
]
}, },
{ {
"key": "admin.developerkit.components.view", "key": "admin.developerkit.components.view",
"path": "/admin/developerkit/components/view/:id", "path": "/admin/developerkit/components/view/:id",
"componentPath": "@/views/developerKit/ComponentDetailPage", "componentPath": "@/views/developerKit/ComponentDetailPage",
"routeType": "protected", "routeType": "protected",
"authority": ["App.DeveloperKit.Components"] "authority": [
"App.DeveloperKit.Components"
]
}, },
{ {
"key": "admin.developerkit.components.edit", "key": "admin.developerkit.components.edit",
"path": "/admin/developerkit/components/edit/:id", "path": "/admin/developerkit/components/edit/:id",
"componentPath": "@/views/developerKit/CodePage", "componentPath": "@/views/developerKit/CodePage",
"routeType": "protected", "routeType": "protected",
"authority": ["App.DeveloperKit.Components"] "authority": [
"App.DeveloperKit.Components"
]
}, },
{ {
"key": "admin.reportManagement", "key": "admin.reportManagement",
"path": "/admin/reports/management", "path": "/admin/reports/management",
"componentPath": "@/views/report/DashboardPage", "componentPath": "@/views/report/DashboardPage",
"routeType": "protected", "routeType": "protected",
"authority": ["App.Reports.Management"] "authority": [
"App.Reports.Management"
]
}, },
{ {
"key": "admin.reports.view", "key": "admin.reports.view",
"path": "/admin/reports/:id", "path": "/admin/reports/:id",
"componentPath": "@/views/report/ReportViewerPage", "componentPath": "@/views/report/ReportViewerPage",
"routeType": "protected", "routeType": "protected",
"authority": ["App.Reports.Categories"] "authority": [
"App.Reports.Categories"
]
}, },
{ {
"key": "admin.fileManagement", "key": "admin.fileManagement",
"path": "/admin/files", "path": "/admin/files",
"componentPath": "@/views/admin/files/FileManager", "componentPath": "@/views/admin/files/FileManager",
"routeType": "protected", "routeType": "protected",
"authority": ["App.Files"] "authority": [
"App.Files"
]
}, },
{ {
"key": "admin.coordinator.classroom.dashboard", "key": "admin.coordinator.classroom.dashboard",
"path": "/admin/coordinator/classroom/dashboard", "path": "/admin/coordinator/classroom/dashboard",
"componentPath": "@/views/coordinator/Classroom/Dashboard", "componentPath": "@/views/coordinator/Classroom/Dashboard",
"routeType": "protected", "routeType": "protected",
"authority": ["App.Coordinator.Classroom.Dashboard"] "authority": [
"App.Coordinator.Classroom.Dashboard"
]
}, },
{ {
"key": "admin.coordinator.classroom.classes", "key": "admin.coordinator.classroom.classes",
"path": "/admin/coordinator/classroom/classes", "path": "/admin/coordinator/classroom/classes",
"componentPath": "@/views/coordinator/Classroom/ClassList", "componentPath": "@/views/coordinator/Classroom/ClassList",
"routeType": "protected", "routeType": "protected",
"authority": ["App.Coordinator.Classroom.List"] "authority": [
"App.Coordinator.Classroom.List"
]
}, },
{ {
"key": "admin.coordinator.classroom.classroom", "key": "admin.coordinator.classroom.classroom",
"path": "/admin/coordinator/classroom/room/:id", "path": "/admin/coordinator/classroom/room/:id",
"componentPath": "@/views/coordinator/Classroom/RoomDetail", "componentPath": "@/views/coordinator/Classroom/RoomDetail",
"routeType": "protected", "routeType": "protected",
"authority": ["App.Coordinator.Classroom.RoomDetail"] "authority": [
"App.Coordinator.Classroom.RoomDetail"
]
}, },
{ {
"key": "admin.coordinator.classroom.planning", "key": "admin.coordinator.classroom.planning",
"path": "/admin/coordinator/classroom/planning/:id", "path": "/admin/coordinator/classroom/planning/:id",
"componentPath": "@/views/coordinator/Classroom/PlanningPage", "componentPath": "@/views/coordinator/Classroom/PlanningPage",
"routeType": "protected", "routeType": "protected",
"authority": ["App.Coordinator.Classroom.Planning"] "authority": [
"App.Coordinator.Classroom.Planning"
]
}, },
{ {
"key": "admin.coordinator.exams", "key": "admin.coordinator.exams",
"path": "/admin/coordinator/exams", "path": "/admin/coordinator/exams",
"componentPath": "@/views/coordinator/Exams", "componentPath": "@/views/coordinator/Exams",
"routeType": "protected", "routeType": "protected",
"authority": ["App.Coordinator.Exams"] "authority": [
"App.Coordinator.Exams"
]
}, },
{ {
"key": "admin.coordinator.examDetail", "key": "admin.coordinator.examDetail",
"path": "/admin/coordinator/exam/:id", "path": "/admin/coordinator/exam/:id",
"componentPath": "@/views/coordinator/ExamInterface/ExamInterface", "componentPath": "@/views/coordinator/ExamInterface/ExamInterface",
"routeType": "protected", "routeType": "protected",
"authority": ["App.Coordinator.Exams"] "authority": [
"App.Coordinator.Exams"
]
}, },
{ {
"key": "admin.coordinator.assignments", "key": "admin.coordinator.assignments",
"path": "/admin/coordinator/assignments", "path": "/admin/coordinator/assignments",
"componentPath": "@/views/coordinator/Assignments", "componentPath": "@/views/coordinator/Assignments",
"routeType": "protected", "routeType": "protected",
"authority": ["App.Coordinator.Assignments"] "authority": [
"App.Coordinator.Assignments"
]
}, },
{ {
"key": "admin.coordinator.assignmentDetail", "key": "admin.coordinator.assignmentDetail",
"path": "/admin/coordinator/assignment/:id", "path": "/admin/coordinator/assignment/:id",
"componentPath": "@/views/coordinator/ExamInterface/ExamInterface", "componentPath": "@/views/coordinator/ExamInterface/ExamInterface",
"routeType": "protected", "routeType": "protected",
"authority": ["App.Coordinator.Assignments"] "authority": [
"App.Coordinator.Assignments"
]
}, },
{ {
"key": "admin.coordinator.tests", "key": "admin.coordinator.tests",
"path": "/admin/coordinator/tests", "path": "/admin/coordinator/tests",
"componentPath": "@/views/coordinator/Tests", "componentPath": "@/views/coordinator/Tests",
"routeType": "protected", "routeType": "protected",
"authority": ["App.Coordinator.Tests"] "authority": [
"App.Coordinator.Tests"
]
}, },
{ {
"key": "admin.coordinator.testDetail", "key": "admin.coordinator.testDetail",
"path": "/admin/coordinator/test/:id", "path": "/admin/coordinator/test/:id",
"componentPath": "@/views/coordinator/ExamInterface/PDFTestInterface", "componentPath": "@/views/coordinator/ExamInterface/PDFTestInterface",
"routeType": "protected", "routeType": "protected",
"authority": ["App.Coordinator.Tests"] "authority": [
"App.Coordinator.Tests"
]
}, },
{ {
"key": "admin.supplychain.requests", "key": "admin.supplychain.requests",
@ -1731,7 +1795,6 @@
"RequiredPermissionName": "App.Intranet.SocialPost", "RequiredPermissionName": "App.Intranet.SocialPost",
"IsDisabled": false "IsDisabled": false
}, },
{ {
"ParentCode": "App.Administration", "ParentCode": "App.Administration",
"Code": "App.Public", "Code": "App.Public",
@ -1742,7 +1805,6 @@
"RequiredPermissionName": null, "RequiredPermissionName": null,
"IsDisabled": false "IsDisabled": false
}, },
{ {
"ParentCode": "App.Public", "ParentCode": "App.Public",
"Code": "App.About", "Code": "App.About",
@ -2333,12 +2395,32 @@
"RequiredPermissionName": null, "RequiredPermissionName": null,
"IsDisabled": false "IsDisabled": false
}, },
{
"ParentCode": "App.Maintenance",
"Code": "App.Maintenance.WorkcenterType",
"DisplayName": "App.Maintenance.WorkcenterType",
"Order": 1,
"Url": "/admin/list/list-workcentertype",
"Icon": "FcOrganization",
"RequiredPermissionName": "App.Maintenance.WorkcenterType",
"IsDisabled": false
},
{
"ParentCode": "App.Maintenance",
"Code": "App.Maintenance.WorkcenterStatus",
"DisplayName": "App.Maintenance.WorkcenterStatus",
"Order": 2,
"Url": "/admin/list/list-workcenterstatus",
"Icon": "FcProcess",
"RequiredPermissionName": "App.Maintenance.WorkcenterStatus",
"IsDisabled": false
},
{ {
"ParentCode": "App.Maintenance", "ParentCode": "App.Maintenance",
"Code": "App.Maintenance.Workcenter", "Code": "App.Maintenance.Workcenter",
"DisplayName": "App.Maintenance.Workcenter", "DisplayName": "App.Maintenance.Workcenter",
"Order": 2, "Order": 3,
"Url": "/admin/maintenance/workcenters", "Url": "/admin/list/list-workcenter",
"Icon": "FcWorkflow", "Icon": "FcWorkflow",
"RequiredPermissionName": "App.Maintenance.Workcenter", "RequiredPermissionName": "App.Maintenance.Workcenter",
"IsDisabled": false "IsDisabled": false
@ -2347,7 +2429,7 @@
"ParentCode": "App.Maintenance", "ParentCode": "App.Maintenance",
"Code": "App.Maintenance.Plans", "Code": "App.Maintenance.Plans",
"DisplayName": "App.Maintenance.Plans", "DisplayName": "App.Maintenance.Plans",
"Order": 3, "Order": 5,
"Url": "/admin/maintenance/plans", "Url": "/admin/maintenance/plans",
"Icon": "FcPlanner", "Icon": "FcPlanner",
"RequiredPermissionName": "App.Maintenance.Plans", "RequiredPermissionName": "App.Maintenance.Plans",
@ -2357,7 +2439,7 @@
"ParentCode": "App.Maintenance", "ParentCode": "App.Maintenance",
"Code": "App.Maintenance.Calendar", "Code": "App.Maintenance.Calendar",
"DisplayName": "App.Maintenance.Calendar", "DisplayName": "App.Maintenance.Calendar",
"Order": 4, "Order": 6,
"Url": "/admin/maintenance/calendar", "Url": "/admin/maintenance/calendar",
"Icon": "FcCalendar", "Icon": "FcCalendar",
"RequiredPermissionName": "App.Maintenance.Calendar", "RequiredPermissionName": "App.Maintenance.Calendar",
@ -2367,7 +2449,7 @@
"ParentCode": "App.Maintenance", "ParentCode": "App.Maintenance",
"Code": "App.Maintenance.Teams", "Code": "App.Maintenance.Teams",
"DisplayName": "App.Maintenance.Teams", "DisplayName": "App.Maintenance.Teams",
"Order": 5, "Order": 7,
"Url": "/admin/maintenance/teams", "Url": "/admin/maintenance/teams",
"Icon": "FcConferenceCall", "Icon": "FcConferenceCall",
"RequiredPermissionName": "App.Maintenance.Teams", "RequiredPermissionName": "App.Maintenance.Teams",
@ -2377,7 +2459,7 @@
"ParentCode": "App.Maintenance", "ParentCode": "App.Maintenance",
"Code": "App.Maintenance.Faults", "Code": "App.Maintenance.Faults",
"DisplayName": "App.Maintenance.Faults", "DisplayName": "App.Maintenance.Faults",
"Order": 6, "Order": 8,
"Url": "/admin/maintenance/faults", "Url": "/admin/maintenance/faults",
"Icon": "FcHighPriority", "Icon": "FcHighPriority",
"RequiredPermissionName": "App.Maintenance.Faults", "RequiredPermissionName": "App.Maintenance.Faults",
@ -2387,7 +2469,7 @@
"ParentCode": "App.Maintenance", "ParentCode": "App.Maintenance",
"Code": "App.Maintenance.Workorders", "Code": "App.Maintenance.Workorders",
"DisplayName": "App.Maintenance.Workorders", "DisplayName": "App.Maintenance.Workorders",
"Order": 7, "Order": 9,
"Url": "/admin/maintenance/workorders", "Url": "/admin/maintenance/workorders",
"Icon": "FcList", "Icon": "FcList",
"RequiredPermissionName": "App.Maintenance.Workorders", "RequiredPermissionName": "App.Maintenance.Workorders",
@ -2904,4 +2986,4 @@
"IsDisabled": false "IsDisabled": false
} }
] ]
} }

View file

@ -9706,7 +9706,6 @@
"MultiTenancySide": 3, "MultiTenancySide": 3,
"MenuGroup": "Kurs" "MenuGroup": "Kurs"
}, },
{ {
"GroupName": "App.Intranet", "GroupName": "App.Intranet",
"Name": "App.Intranet.SocialComment", "Name": "App.Intranet.SocialComment",
@ -9770,7 +9769,6 @@
"MultiTenancySide": 3, "MultiTenancySide": 3,
"MenuGroup": "Kurs" "MenuGroup": "Kurs"
}, },
{ {
"GroupName": "App.Intranet", "GroupName": "App.Intranet",
"Name": "App.Intranet.SocialPost.Widget", "Name": "App.Intranet.SocialPost.Widget",
@ -11417,6 +11415,195 @@
"IsEnabled": true, "IsEnabled": true,
"MultiTenancySide": 3, "MultiTenancySide": 3,
"MenuGroup": "Erp" "MenuGroup": "Erp"
},
{
"GroupName": "App.Maintenance",
"Name": "App.Maintenance.WorkcenterType",
"ParentName": null,
"DisplayName": "App.Maintenance.WorkcenterType",
"IsEnabled": true,
"MultiTenancySide": 3,
"MenuGroup": "Erp"
},
{
"GroupName": "App.Maintenance",
"Name": "App.Maintenance.WorkcenterType.Create",
"ParentName": "App.Maintenance.WorkcenterType",
"DisplayName": "Create",
"IsEnabled": true,
"MultiTenancySide": 3,
"MenuGroup": "Erp"
},
{
"GroupName": "App.Maintenance",
"Name": "App.Maintenance.WorkcenterType.Update",
"ParentName": "App.Maintenance.WorkcenterType",
"DisplayName": "Update",
"IsEnabled": true,
"MultiTenancySide": 3,
"MenuGroup": "Erp"
},
{
"GroupName": "App.Maintenance",
"Name": "App.Maintenance.WorkcenterType.Delete",
"ParentName": "App.Maintenance.WorkcenterType",
"DisplayName": "Delete",
"IsEnabled": true,
"MultiTenancySide": 3,
"MenuGroup": "Erp"
},
{
"GroupName": "App.Maintenance",
"Name": "App.Maintenance.WorkcenterType.Export",
"ParentName": "App.Maintenance.WorkcenterType",
"DisplayName": "Export",
"IsEnabled": true,
"MultiTenancySide": 3,
"MenuGroup": "Erp"
},
{
"GroupName": "App.Maintenance",
"Name": "App.Maintenance.WorkcenterType.Import",
"ParentName": "App.Maintenance.WorkcenterType",
"DisplayName": "Import",
"IsEnabled": true,
"MultiTenancySide": 3,
"MenuGroup": "Erp"
},
{
"GroupName": "App.Maintenance",
"Name": "App.Maintenance.WorkcenterType.Note",
"ParentName": "App.Maintenance.WorkcenterType",
"DisplayName": "Note",
"IsEnabled": true,
"MultiTenancySide": 3,
"MenuGroup": "Erp"
},
{
"GroupName": "App.Maintenance",
"Name": "App.Maintenance.WorkcenterStatus",
"ParentName": null,
"DisplayName": "App.Maintenance.WorkcenterStatus",
"IsEnabled": true,
"MultiTenancySide": 3,
"MenuGroup": "Erp"
},
{
"GroupName": "App.Maintenance",
"Name": "App.Maintenance.WorkcenterStatus.Create",
"ParentName": "App.Maintenance.WorkcenterStatus",
"DisplayName": "Create",
"IsEnabled": true,
"MultiTenancySide": 3,
"MenuGroup": "Erp"
},
{
"GroupName": "App.Maintenance",
"Name": "App.Maintenance.WorkcenterStatus.Update",
"ParentName": "App.Maintenance.WorkcenterStatus",
"DisplayName": "Update",
"IsEnabled": true,
"MultiTenancySide": 3,
"MenuGroup": "Erp"
},
{
"GroupName": "App.Maintenance",
"Name": "App.Maintenance.WorkcenterStatus.Delete",
"ParentName": "App.Maintenance.WorkcenterStatus",
"DisplayName": "Delete",
"IsEnabled": true,
"MultiTenancySide": 3,
"MenuGroup": "Erp"
},
{
"GroupName": "App.Maintenance",
"Name": "App.Maintenance.WorkcenterStatus.Export",
"ParentName": "App.Maintenance.WorkcenterStatus",
"DisplayName": "Export",
"IsEnabled": true,
"MultiTenancySide": 3,
"MenuGroup": "Erp"
},
{
"GroupName": "App.Maintenance",
"Name": "App.Maintenance.WorkcenterStatus.Import",
"ParentName": "App.Maintenance.WorkcenterStatus",
"DisplayName": "Import",
"IsEnabled": true,
"MultiTenancySide": 3,
"MenuGroup": "Erp"
},
{
"GroupName": "App.Maintenance",
"Name": "App.Maintenance.WorkcenterStatus.Note",
"ParentName": "App.Maintenance.WorkcenterStatus",
"DisplayName": "Note",
"IsEnabled": true,
"MultiTenancySide": 3,
"MenuGroup": "Erp"
},
{
"GroupName": "App.Maintenance",
"Name": "App.Maintenance.Workcenter",
"ParentName": null,
"DisplayName": "App.Maintenance.Workcenter",
"IsEnabled": true,
"MultiTenancySide": 3,
"MenuGroup": "Erp"
},
{
"GroupName": "App.Maintenance",
"Name": "App.Maintenance.Workcenter.Create",
"ParentName": "App.Maintenance.Workcenter",
"DisplayName": "Create",
"IsEnabled": true,
"MultiTenancySide": 3,
"MenuGroup": "Erp"
},
{
"GroupName": "App.Maintenance",
"Name": "App.Maintenance.Workcenter.Update",
"ParentName": "App.Maintenance.Workcenter",
"DisplayName": "Update",
"IsEnabled": true,
"MultiTenancySide": 3,
"MenuGroup": "Erp"
},
{
"GroupName": "App.Maintenance",
"Name": "App.Maintenance.Workcenter.Delete",
"ParentName": "App.Maintenance.Workcenter",
"DisplayName": "Delete",
"IsEnabled": true,
"MultiTenancySide": 3,
"MenuGroup": "Erp"
},
{
"GroupName": "App.Maintenance",
"Name": "App.Maintenance.Workcenter.Export",
"ParentName": "App.Maintenance.Workcenter",
"DisplayName": "Export",
"IsEnabled": true,
"MultiTenancySide": 3,
"MenuGroup": "Erp"
},
{
"GroupName": "App.Maintenance",
"Name": "App.Maintenance.Workcenter.Import",
"ParentName": "App.Maintenance.Workcenter",
"DisplayName": "Import",
"IsEnabled": true,
"MultiTenancySide": 3,
"MenuGroup": "Erp"
},
{
"GroupName": "App.Maintenance",
"Name": "App.Maintenance.Workcenter.Note",
"ParentName": "App.Maintenance.Workcenter",
"DisplayName": "Note",
"IsEnabled": true,
"MultiTenancySide": 3,
"MenuGroup": "Erp"
} }
] ]
} }

View file

@ -157,5 +157,9 @@ public enum TableNameEnum
LossReason, LossReason,
Opportunity, Opportunity,
Activity, Activity,
Competitor Competitor,
WorkcenterType,
WorkcenterStatus,
Workcenter,
WorkcenterSpecification
} }

View file

@ -532,6 +532,11 @@ public static class PlatformConsts
public const string OpportunityActivity = "list-opportunityactivity"; public const string OpportunityActivity = "list-opportunityactivity";
public const string OpportunityCompetitor = "list-opportunitycompetitor"; public const string OpportunityCompetitor = "list-opportunitycompetitor";
//Maintenance
public const string WorkcenterType = "list-workcentertype";
public const string WorkcenterStatus = "list-workcenterstatus";
public const string Workcenter = "list-workcenter";
} }
} }

View file

@ -185,6 +185,13 @@ public static class TableNameResolver
{ nameof(TableNameEnum.Activity), (TablePrefix.TenantByName, MenuPrefix.Crm) }, { nameof(TableNameEnum.Activity), (TablePrefix.TenantByName, MenuPrefix.Crm) },
{ nameof(TableNameEnum.Competitor), (TablePrefix.TenantByName, MenuPrefix.Crm) }, { nameof(TableNameEnum.Competitor), (TablePrefix.TenantByName, MenuPrefix.Crm) },
// 🔹 MAINTENANCE
{ nameof(TableNameEnum.WorkcenterType), (TablePrefix.TenantByName, MenuPrefix.Maintenance) },
{ nameof(TableNameEnum.WorkcenterStatus), (TablePrefix.TenantByName, MenuPrefix.Maintenance) },
{ nameof(TableNameEnum.Workcenter), (TablePrefix.TenantByName, MenuPrefix.Maintenance) },
{ nameof(TableNameEnum.WorkcenterSpecification), (TablePrefix.TenantByName, MenuPrefix.Maintenance) },
// 🔹 ACCOUNTING // 🔹 ACCOUNTING
{ nameof(TableNameEnum.Bank), (TablePrefix.TenantByName, MenuPrefix.Accounting) }, { nameof(TableNameEnum.Bank), (TablePrefix.TenantByName, MenuPrefix.Accounting) },
{ nameof(TableNameEnum.BankAccount), (TablePrefix.TenantByName, MenuPrefix.Accounting) }, { nameof(TableNameEnum.BankAccount), (TablePrefix.TenantByName, MenuPrefix.Accounting) },

View file

@ -520,6 +520,14 @@ public static class SeedConsts
public const string RequestItem = Default + ".RequestItem"; public const string RequestItem = Default + ".RequestItem";
} }
public static class Maintenance
{
public const string Default = Prefix.App + ".Maintenance";
public const string WorkcenterType = Default + ".WorkcenterType";
public const string WorkcenterStatus = Default + ".WorkcenterStatus";
public const string Workcenter = Default + ".Workcenter";
}
public static class Accounting public static class Accounting
{ {
public const string Default = Prefix.App + ".Accounting"; public const string Default = Prefix.App + ".Accounting";

View file

@ -0,0 +1,43 @@
// Domain/Entities/PmWorkCenter.cs
using System;
using System.Collections.Generic;
using Erp.Platform.Entities;
using Volo.Abp.Domain.Entities.Auditing;
using Volo.Abp.MultiTenancy;
namespace Erp.Platform.Entities;
public class Workcenter : FullAuditedEntity<Guid>, IMultiTenant
{
public Guid? TenantId { get; set; }
// İş Merkezi / Ekipman Bilgileri
public string Code { get; set; }
public string Name { get; set; }
public string? Description { get; set; }
public Guid? WorkcenterTypeId { get; set; }
public WorkcenterType? WorkcenterType { get; set; }
public string? Manufacturer { get; set; }
public string? Model { get; set; }
public string? SerialNumber { get; set; }
public DateTime InstallationDate { get; set; }
public DateTime? WarrantyExpiry { get; set; }
public string? Location { get; set; }
public Guid? DepartmentId { get; set; }
public Department? Department { get; set; }
public Guid? StatusId { get; set; }
public WorkcenterStatus? Status { get; set; }
public string Criticality { get; set; }
public int Capacity { get; set; }
public decimal CostPerHour { get; set; }
public int SetupTime { get; set; }
public bool IsActive { get; set; }
public ICollection<WorkcenterSpecification> Specifications { get; set; }
// public virtual ICollection<PmMaintenancePlan> MaintenancePlans { get; set; }
// public virtual ICollection<PmMaintenanceWorkOrder> WorkOrders { get; set; }
// public virtual ICollection<PmDownTimeRecord> DownTimeHistory { get; set; }
}

View file

@ -0,0 +1,23 @@
// Domain/Entities/PmWorkCenterSpecification.cs
using System;
using Erp.Platform.Entities;
using Volo.Abp.Domain.Entities.Auditing;
using Volo.Abp.MultiTenancy;
namespace Erp.Platform.Entities;
public class WorkcenterSpecification : FullAuditedEntity<Guid>, IMultiTenant
{
public Guid? TenantId { get; set; }
// İlişkisel alan
public Guid WorkcenterId { get; set; }
public virtual Workcenter Workcenter { get; set; }
// Özellik detayları
public string SpecificationName { get; set; }
public string SpecificationValue { get; set; }
public Guid UomId { get; set; }
public Uom Uom { get; set; }
public bool IsRequired { get; set; }
}

View file

@ -0,0 +1,19 @@
using System;
using System.Collections.Generic;
using Volo.Abp.Domain.Entities.Auditing;
using Volo.Abp.MultiTenancy;
namespace Erp.Platform.Entities;
public class WorkcenterStatus : FullAuditedEntity<Guid>, IMultiTenant
{
public Guid? TenantId { get; set; }
public string Code { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public bool IsActive { get; set; }
public ICollection<Workcenter> Workcenters { get; set; }
}

View file

@ -0,0 +1,19 @@
using System;
using System.Collections.Generic;
using Volo.Abp.Domain.Entities.Auditing;
using Volo.Abp.MultiTenancy;
namespace Erp.Platform.Entities;
public class WorkcenterType : FullAuditedEntity<Guid>, IMultiTenant
{
public Guid? TenantId { get; set; }
public string Code { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public bool IsActive { get; set; }
public ICollection<Workcenter> Workcenters { get; set; }
}

View file

@ -231,6 +231,13 @@ public class PlatformDbContext :
public DbSet<BankAccount> BankAccounts { get; set; } public DbSet<BankAccount> BankAccounts { get; set; }
#endregion #endregion
#region Maintenance
public DbSet<WorkcenterType> WorkcenterTypes { get; set; }
public DbSet<WorkcenterStatus> WorkcenterStatuses { get; set; }
public DbSet<Workcenter> Workcenters { get; set; }
public DbSet<WorkcenterSpecification> WorkcenterSpecifications { get; set; }
#endregion
public PlatformDbContext(DbContextOptions<PlatformDbContext> options) public PlatformDbContext(DbContextOptions<PlatformDbContext> options)
: base(options) : base(options)
{ {
@ -2672,7 +2679,76 @@ public class PlatformDbContext :
.HasForeignKey(x => x.RequestId) .HasForeignKey(x => x.RequestId)
.OnDelete(DeleteBehavior.Cascade); .OnDelete(DeleteBehavior.Cascade);
}); });
builder.Entity<WorkcenterType>(b =>
{
b.ToTable(TableNameResolver.GetFullTableName(nameof(TableNameEnum.WorkcenterType)), Prefix.DbSchema);
b.ConfigureByConvention();
b.Property(x => x.Name).IsRequired().HasMaxLength(50);
b.Property(x => x.Description).HasMaxLength(500);
b.Property(x => x.IsActive).HasDefaultValue(true);
});
builder.Entity<WorkcenterStatus>(b =>
{
b.ToTable(TableNameResolver.GetFullTableName(nameof(TableNameEnum.WorkcenterStatus)), Prefix.DbSchema);
b.ConfigureByConvention();
b.Property(x => x.Name).IsRequired().HasMaxLength(50);
b.Property(x => x.Description).HasMaxLength(500);
b.Property(x => x.IsActive).HasDefaultValue(true);
});
builder.Entity<Workcenter>(b =>
{
b.ToTable(TableNameResolver.GetFullTableName(nameof(TableNameEnum.Workcenter)), Prefix.DbSchema);
b.ConfigureByConvention();
b.Property(x => x.Code).IsRequired().HasMaxLength(100);
b.Property(x => x.Name).IsRequired().HasMaxLength(200);
b.Property(x => x.Description).HasMaxLength(500);
b.Property(x => x.WorkcenterTypeId).IsRequired();
b.Property(x => x.Manufacturer).HasMaxLength(200);
b.Property(x => x.Model).HasMaxLength(100);
b.Property(x => x.SerialNumber).HasMaxLength(100);
b.Property(x => x.InstallationDate).IsRequired();
b.Property(x => x.Location).HasMaxLength(250);
b.Property(x => x.DepartmentId).IsRequired();
b.Property(x => x.StatusId).IsRequired();
b.Property(x => x.Criticality).HasMaxLength(10);
b.Property(x => x.Capacity).HasDefaultValue(0);
b.Property(x => x.CostPerHour).HasPrecision(18, 2).HasDefaultValue(0);
b.Property(x => x.SetupTime).HasDefaultValue(0);
b.Property(x => x.IsActive).HasDefaultValue(true);
b.HasOne(x => x.WorkcenterType)
.WithMany(x => x.Workcenters)
.HasForeignKey(x => x.WorkcenterTypeId)
.OnDelete(DeleteBehavior.Restrict);
b.HasOne(x => x.Status)
.WithMany(x => x.Workcenters)
.HasForeignKey(x => x.StatusId)
.OnDelete(DeleteBehavior.Restrict);
});
builder.Entity<WorkcenterSpecification>(b =>
{
b.ToTable(TableNameResolver.GetFullTableName(nameof(TableNameEnum.WorkcenterSpecification)), Prefix.DbSchema);
b.ConfigureByConvention();
b.Property(x => x.SpecificationName).IsRequired().HasMaxLength(200);
b.Property(x => x.SpecificationValue).IsRequired().HasMaxLength(200);
b.Property(x => x.UomId).IsRequired();
b.Property(x => x.IsRequired).HasDefaultValue(false);
b.HasOne(x => x.Workcenter)
.WithMany(x => x.Specifications)
.HasForeignKey(x => x.WorkcenterId)
.OnDelete(DeleteBehavior.Cascade);
});
} }
} }

View file

@ -13,7 +13,7 @@ using Volo.Abp.EntityFrameworkCore;
namespace Erp.Platform.Migrations namespace Erp.Platform.Migrations
{ {
[DbContext(typeof(PlatformDbContext))] [DbContext(typeof(PlatformDbContext))]
[Migration("20251117212636_Initial")] [Migration("20251118201005_Initial")]
partial class Initial partial class Initial
{ {
/// <inheritdoc /> /// <inheritdoc />
@ -11135,6 +11135,317 @@ namespace Erp.Platform.Migrations
b.ToTable("Adm_T_WorkHour", (string)null); b.ToTable("Adm_T_WorkHour", (string)null);
}); });
modelBuilder.Entity("Erp.Platform.Entities.Workcenter", b =>
{
b.Property<Guid>("Id")
.HasColumnType("uniqueidentifier");
b.Property<int>("Capacity")
.ValueGeneratedOnAdd()
.HasColumnType("int")
.HasDefaultValue(0);
b.Property<string>("Code")
.IsRequired()
.HasMaxLength(100)
.HasColumnType("nvarchar(100)");
b.Property<decimal>("CostPerHour")
.ValueGeneratedOnAdd()
.HasPrecision(18, 2)
.HasColumnType("decimal(18,2)")
.HasDefaultValue(0m);
b.Property<DateTime>("CreationTime")
.HasColumnType("datetime2")
.HasColumnName("CreationTime");
b.Property<Guid?>("CreatorId")
.HasColumnType("uniqueidentifier")
.HasColumnName("CreatorId");
b.Property<string>("Criticality")
.HasMaxLength(10)
.HasColumnType("nvarchar(10)");
b.Property<Guid?>("DeleterId")
.HasColumnType("uniqueidentifier")
.HasColumnName("DeleterId");
b.Property<DateTime?>("DeletionTime")
.HasColumnType("datetime2")
.HasColumnName("DeletionTime");
b.Property<Guid>("DepartmentId")
.HasColumnType("uniqueidentifier");
b.Property<string>("Description")
.HasMaxLength(500)
.HasColumnType("nvarchar(500)");
b.Property<DateTime>("InstallationDate")
.HasColumnType("datetime2");
b.Property<bool>("IsActive")
.ValueGeneratedOnAdd()
.HasColumnType("bit")
.HasDefaultValue(true);
b.Property<bool>("IsDeleted")
.ValueGeneratedOnAdd()
.HasColumnType("bit")
.HasDefaultValue(false)
.HasColumnName("IsDeleted");
b.Property<DateTime?>("LastModificationTime")
.HasColumnType("datetime2")
.HasColumnName("LastModificationTime");
b.Property<Guid?>("LastModifierId")
.HasColumnType("uniqueidentifier")
.HasColumnName("LastModifierId");
b.Property<string>("Location")
.HasMaxLength(250)
.HasColumnType("nvarchar(250)");
b.Property<string>("Manufacturer")
.HasMaxLength(200)
.HasColumnType("nvarchar(200)");
b.Property<string>("Model")
.HasMaxLength(100)
.HasColumnType("nvarchar(100)");
b.Property<string>("Name")
.IsRequired()
.HasMaxLength(200)
.HasColumnType("nvarchar(200)");
b.Property<string>("SerialNumber")
.HasMaxLength(100)
.HasColumnType("nvarchar(100)");
b.Property<int>("SetupTime")
.ValueGeneratedOnAdd()
.HasColumnType("int")
.HasDefaultValue(0);
b.Property<Guid>("StatusId")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("TenantId")
.HasColumnType("uniqueidentifier")
.HasColumnName("TenantId");
b.Property<DateTime?>("WarrantyExpiry")
.HasColumnType("datetime2");
b.Property<Guid>("WorkcenterTypeId")
.HasColumnType("uniqueidentifier");
b.HasKey("Id");
b.HasIndex("DepartmentId");
b.HasIndex("StatusId");
b.HasIndex("WorkcenterTypeId");
b.ToTable("Mnt_T_Workcenter", (string)null);
});
modelBuilder.Entity("Erp.Platform.Entities.WorkcenterSpecification", b =>
{
b.Property<Guid>("Id")
.HasColumnType("uniqueidentifier");
b.Property<DateTime>("CreationTime")
.HasColumnType("datetime2")
.HasColumnName("CreationTime");
b.Property<Guid?>("CreatorId")
.HasColumnType("uniqueidentifier")
.HasColumnName("CreatorId");
b.Property<Guid?>("DeleterId")
.HasColumnType("uniqueidentifier")
.HasColumnName("DeleterId");
b.Property<DateTime?>("DeletionTime")
.HasColumnType("datetime2")
.HasColumnName("DeletionTime");
b.Property<bool>("IsDeleted")
.ValueGeneratedOnAdd()
.HasColumnType("bit")
.HasDefaultValue(false)
.HasColumnName("IsDeleted");
b.Property<bool>("IsRequired")
.ValueGeneratedOnAdd()
.HasColumnType("bit")
.HasDefaultValue(false);
b.Property<DateTime?>("LastModificationTime")
.HasColumnType("datetime2")
.HasColumnName("LastModificationTime");
b.Property<Guid?>("LastModifierId")
.HasColumnType("uniqueidentifier")
.HasColumnName("LastModifierId");
b.Property<string>("SpecificationName")
.IsRequired()
.HasMaxLength(200)
.HasColumnType("nvarchar(200)");
b.Property<string>("SpecificationValue")
.IsRequired()
.HasMaxLength(200)
.HasColumnType("nvarchar(200)");
b.Property<Guid?>("TenantId")
.HasColumnType("uniqueidentifier")
.HasColumnName("TenantId");
b.Property<Guid>("UomId")
.HasColumnType("uniqueidentifier");
b.Property<Guid>("WorkcenterId")
.HasColumnType("uniqueidentifier");
b.HasKey("Id");
b.HasIndex("UomId");
b.HasIndex("WorkcenterId");
b.ToTable("Mnt_T_WorkcenterSpecification", (string)null);
});
modelBuilder.Entity("Erp.Platform.Entities.WorkcenterStatus", b =>
{
b.Property<Guid>("Id")
.HasColumnType("uniqueidentifier");
b.Property<string>("Code")
.HasColumnType("nvarchar(max)");
b.Property<DateTime>("CreationTime")
.HasColumnType("datetime2")
.HasColumnName("CreationTime");
b.Property<Guid?>("CreatorId")
.HasColumnType("uniqueidentifier")
.HasColumnName("CreatorId");
b.Property<Guid?>("DeleterId")
.HasColumnType("uniqueidentifier")
.HasColumnName("DeleterId");
b.Property<DateTime?>("DeletionTime")
.HasColumnType("datetime2")
.HasColumnName("DeletionTime");
b.Property<string>("Description")
.HasMaxLength(500)
.HasColumnType("nvarchar(500)");
b.Property<bool>("IsActive")
.ValueGeneratedOnAdd()
.HasColumnType("bit")
.HasDefaultValue(true);
b.Property<bool>("IsDeleted")
.ValueGeneratedOnAdd()
.HasColumnType("bit")
.HasDefaultValue(false)
.HasColumnName("IsDeleted");
b.Property<DateTime?>("LastModificationTime")
.HasColumnType("datetime2")
.HasColumnName("LastModificationTime");
b.Property<Guid?>("LastModifierId")
.HasColumnType("uniqueidentifier")
.HasColumnName("LastModifierId");
b.Property<string>("Name")
.IsRequired()
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property<Guid?>("TenantId")
.HasColumnType("uniqueidentifier")
.HasColumnName("TenantId");
b.HasKey("Id");
b.ToTable("Mnt_T_WorkcenterStatus", (string)null);
});
modelBuilder.Entity("Erp.Platform.Entities.WorkcenterType", b =>
{
b.Property<Guid>("Id")
.HasColumnType("uniqueidentifier");
b.Property<string>("Code")
.HasColumnType("nvarchar(max)");
b.Property<DateTime>("CreationTime")
.HasColumnType("datetime2")
.HasColumnName("CreationTime");
b.Property<Guid?>("CreatorId")
.HasColumnType("uniqueidentifier")
.HasColumnName("CreatorId");
b.Property<Guid?>("DeleterId")
.HasColumnType("uniqueidentifier")
.HasColumnName("DeleterId");
b.Property<DateTime?>("DeletionTime")
.HasColumnType("datetime2")
.HasColumnName("DeletionTime");
b.Property<string>("Description")
.HasMaxLength(500)
.HasColumnType("nvarchar(500)");
b.Property<bool>("IsActive")
.ValueGeneratedOnAdd()
.HasColumnType("bit")
.HasDefaultValue(true);
b.Property<bool>("IsDeleted")
.ValueGeneratedOnAdd()
.HasColumnType("bit")
.HasDefaultValue(false)
.HasColumnName("IsDeleted");
b.Property<DateTime?>("LastModificationTime")
.HasColumnType("datetime2")
.HasColumnName("LastModificationTime");
b.Property<Guid?>("LastModifierId")
.HasColumnType("uniqueidentifier")
.HasColumnName("LastModifierId");
b.Property<string>("Name")
.IsRequired()
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property<Guid?>("TenantId")
.HasColumnType("uniqueidentifier")
.HasColumnName("TenantId");
b.HasKey("Id");
b.ToTable("Mnt_T_WorkcenterType", (string)null);
});
modelBuilder.Entity("Erp.Platform.Forum.ForumCategory", b => modelBuilder.Entity("Erp.Platform.Forum.ForumCategory", b =>
{ {
b.Property<Guid>("Id") b.Property<Guid>("Id")
@ -14455,6 +14766,52 @@ namespace Erp.Platform.Migrations
b.Navigation("Employee"); b.Navigation("Employee");
}); });
modelBuilder.Entity("Erp.Platform.Entities.Workcenter", b =>
{
b.HasOne("Erp.Platform.Entities.Department", "Department")
.WithMany()
.HasForeignKey("DepartmentId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("Erp.Platform.Entities.WorkcenterStatus", "Status")
.WithMany("Workcenters")
.HasForeignKey("StatusId")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
b.HasOne("Erp.Platform.Entities.WorkcenterType", "WorkcenterType")
.WithMany("Workcenters")
.HasForeignKey("WorkcenterTypeId")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
b.Navigation("Department");
b.Navigation("Status");
b.Navigation("WorkcenterType");
});
modelBuilder.Entity("Erp.Platform.Entities.WorkcenterSpecification", b =>
{
b.HasOne("Erp.Platform.Entities.Uom", "Uom")
.WithMany()
.HasForeignKey("UomId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("Erp.Platform.Entities.Workcenter", "Workcenter")
.WithMany("Specifications")
.HasForeignKey("WorkcenterId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("Uom");
b.Navigation("Workcenter");
});
modelBuilder.Entity("Erp.Platform.Forum.ForumPost", b => modelBuilder.Entity("Erp.Platform.Forum.ForumPost", b =>
{ {
b.HasOne("Erp.Platform.Forum.ForumPost", "ParentPost") b.HasOne("Erp.Platform.Forum.ForumPost", "ParentPost")
@ -14952,6 +15309,21 @@ namespace Erp.Platform.Migrations
b.Navigation("Uoms"); b.Navigation("Uoms");
}); });
modelBuilder.Entity("Erp.Platform.Entities.Workcenter", b =>
{
b.Navigation("Specifications");
});
modelBuilder.Entity("Erp.Platform.Entities.WorkcenterStatus", b =>
{
b.Navigation("Workcenters");
});
modelBuilder.Entity("Erp.Platform.Entities.WorkcenterType", b =>
{
b.Navigation("Workcenters");
});
modelBuilder.Entity("Erp.Platform.Forum.ForumCategory", b => modelBuilder.Entity("Erp.Platform.Forum.ForumCategory", b =>
{ {
b.Navigation("Topics"); b.Navigation("Topics");

View file

@ -1276,6 +1276,52 @@ namespace Erp.Platform.Migrations
table.PrimaryKey("PK_Hr_T_Template360", x => x.Id); table.PrimaryKey("PK_Hr_T_Template360", x => x.Id);
}); });
migrationBuilder.CreateTable(
name: "Mnt_T_WorkcenterStatus",
columns: table => new
{
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
TenantId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
Code = table.Column<string>(type: "nvarchar(max)", nullable: true),
Name = table.Column<string>(type: "nvarchar(50)", maxLength: 50, nullable: false),
Description = table.Column<string>(type: "nvarchar(500)", maxLength: 500, nullable: true),
IsActive = table.Column<bool>(type: "bit", nullable: false, defaultValue: true),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
CreatorId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
LastModificationTime = table.Column<DateTime>(type: "datetime2", nullable: true),
LastModifierId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
IsDeleted = table.Column<bool>(type: "bit", nullable: false, defaultValue: false),
DeleterId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
DeletionTime = table.Column<DateTime>(type: "datetime2", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_Mnt_T_WorkcenterStatus", x => x.Id);
});
migrationBuilder.CreateTable(
name: "Mnt_T_WorkcenterType",
columns: table => new
{
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
TenantId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
Code = table.Column<string>(type: "nvarchar(max)", nullable: true),
Name = table.Column<string>(type: "nvarchar(50)", maxLength: 50, nullable: false),
Description = table.Column<string>(type: "nvarchar(500)", maxLength: 500, nullable: true),
IsActive = table.Column<bool>(type: "bit", nullable: false, defaultValue: true),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
CreatorId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
LastModificationTime = table.Column<DateTime>(type: "datetime2", nullable: true),
LastModifierId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
IsDeleted = table.Column<bool>(type: "bit", nullable: false, defaultValue: false),
DeleterId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
DeletionTime = table.Column<DateTime>(type: "datetime2", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_Mnt_T_WorkcenterType", x => x.Id);
});
migrationBuilder.CreateTable( migrationBuilder.CreateTable(
name: "Net_T_EventCategory", name: "Net_T_EventCategory",
columns: table => new columns: table => new
@ -4718,6 +4764,60 @@ namespace Erp.Platform.Migrations
onDelete: ReferentialAction.Cascade); onDelete: ReferentialAction.Cascade);
}); });
migrationBuilder.CreateTable(
name: "Mnt_T_Workcenter",
columns: table => new
{
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
TenantId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
Code = table.Column<string>(type: "nvarchar(100)", maxLength: 100, nullable: false),
Name = table.Column<string>(type: "nvarchar(200)", maxLength: 200, nullable: false),
Description = table.Column<string>(type: "nvarchar(500)", maxLength: 500, nullable: true),
WorkcenterTypeId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
Manufacturer = table.Column<string>(type: "nvarchar(200)", maxLength: 200, nullable: true),
Model = table.Column<string>(type: "nvarchar(100)", maxLength: 100, nullable: true),
SerialNumber = table.Column<string>(type: "nvarchar(100)", maxLength: 100, nullable: true),
InstallationDate = table.Column<DateTime>(type: "datetime2", nullable: false),
WarrantyExpiry = table.Column<DateTime>(type: "datetime2", nullable: true),
Location = table.Column<string>(type: "nvarchar(250)", maxLength: 250, nullable: true),
DepartmentId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
StatusId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
Criticality = table.Column<string>(type: "nvarchar(10)", maxLength: 10, nullable: true),
Capacity = table.Column<int>(type: "int", nullable: false, defaultValue: 0),
CostPerHour = table.Column<decimal>(type: "decimal(18,2)", precision: 18, scale: 2, nullable: false, defaultValue: 0m),
SetupTime = table.Column<int>(type: "int", nullable: false, defaultValue: 0),
IsActive = table.Column<bool>(type: "bit", nullable: false, defaultValue: true),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
CreatorId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
LastModificationTime = table.Column<DateTime>(type: "datetime2", nullable: true),
LastModifierId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
IsDeleted = table.Column<bool>(type: "bit", nullable: false, defaultValue: false),
DeleterId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
DeletionTime = table.Column<DateTime>(type: "datetime2", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_Mnt_T_Workcenter", x => x.Id);
table.ForeignKey(
name: "FK_Mnt_T_Workcenter_Hr_T_Department_DepartmentId",
column: x => x.DepartmentId,
principalTable: "Hr_T_Department",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_Mnt_T_Workcenter_Mnt_T_WorkcenterStatus_StatusId",
column: x => x.StatusId,
principalTable: "Mnt_T_WorkcenterStatus",
principalColumn: "Id",
onDelete: ReferentialAction.Restrict);
table.ForeignKey(
name: "FK_Mnt_T_Workcenter_Mnt_T_WorkcenterType_WorkcenterTypeId",
column: x => x.WorkcenterTypeId,
principalTable: "Mnt_T_WorkcenterType",
principalColumn: "Id",
onDelete: ReferentialAction.Restrict);
});
migrationBuilder.CreateTable( migrationBuilder.CreateTable(
name: "Scp_T_Approval", name: "Scp_T_Approval",
columns: table => new columns: table => new
@ -4838,6 +4938,42 @@ namespace Erp.Platform.Migrations
principalColumn: "Id"); principalColumn: "Id");
}); });
migrationBuilder.CreateTable(
name: "Mnt_T_WorkcenterSpecification",
columns: table => new
{
Id = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
TenantId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
WorkcenterId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
SpecificationName = table.Column<string>(type: "nvarchar(200)", maxLength: 200, nullable: false),
SpecificationValue = table.Column<string>(type: "nvarchar(200)", maxLength: 200, nullable: false),
UomId = table.Column<Guid>(type: "uniqueidentifier", nullable: false),
IsRequired = table.Column<bool>(type: "bit", nullable: false, defaultValue: false),
CreationTime = table.Column<DateTime>(type: "datetime2", nullable: false),
CreatorId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
LastModificationTime = table.Column<DateTime>(type: "datetime2", nullable: true),
LastModifierId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
IsDeleted = table.Column<bool>(type: "bit", nullable: false, defaultValue: false),
DeleterId = table.Column<Guid>(type: "uniqueidentifier", nullable: true),
DeletionTime = table.Column<DateTime>(type: "datetime2", nullable: true)
},
constraints: table =>
{
table.PrimaryKey("PK_Mnt_T_WorkcenterSpecification", x => x.Id);
table.ForeignKey(
name: "FK_Mnt_T_WorkcenterSpecification_Adm_T_Uom_UomId",
column: x => x.UomId,
principalTable: "Adm_T_Uom",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_Mnt_T_WorkcenterSpecification_Mnt_T_Workcenter_WorkcenterId",
column: x => x.WorkcenterId,
principalTable: "Mnt_T_Workcenter",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
});
migrationBuilder.CreateTable( migrationBuilder.CreateTable(
name: "Scp_T_ApprovalStep", name: "Scp_T_ApprovalStep",
columns: table => new columns: table => new
@ -6210,6 +6346,31 @@ namespace Erp.Platform.Migrations
table: "Hr_T_SurveyResponse", table: "Hr_T_SurveyResponse",
column: "SurveyId"); column: "SurveyId");
migrationBuilder.CreateIndex(
name: "IX_Mnt_T_Workcenter_DepartmentId",
table: "Mnt_T_Workcenter",
column: "DepartmentId");
migrationBuilder.CreateIndex(
name: "IX_Mnt_T_Workcenter_StatusId",
table: "Mnt_T_Workcenter",
column: "StatusId");
migrationBuilder.CreateIndex(
name: "IX_Mnt_T_Workcenter_WorkcenterTypeId",
table: "Mnt_T_Workcenter",
column: "WorkcenterTypeId");
migrationBuilder.CreateIndex(
name: "IX_Mnt_T_WorkcenterSpecification_UomId",
table: "Mnt_T_WorkcenterSpecification",
column: "UomId");
migrationBuilder.CreateIndex(
name: "IX_Mnt_T_WorkcenterSpecification_WorkcenterId",
table: "Mnt_T_WorkcenterSpecification",
column: "WorkcenterId");
migrationBuilder.CreateIndex( migrationBuilder.CreateIndex(
name: "IX_Net_B_Meal_BranchId", name: "IX_Net_B_Meal_BranchId",
table: "Net_B_Meal", table: "Net_B_Meal",
@ -6893,6 +7054,9 @@ namespace Erp.Platform.Migrations
migrationBuilder.DropTable( migrationBuilder.DropTable(
name: "Hr_T_SurveyQuestionOption"); name: "Hr_T_SurveyQuestionOption");
migrationBuilder.DropTable(
name: "Mnt_T_WorkcenterSpecification");
migrationBuilder.DropTable( migrationBuilder.DropTable(
name: "Net_B_Meal"); name: "Net_B_Meal");
@ -7100,6 +7264,9 @@ namespace Erp.Platform.Migrations
migrationBuilder.DropTable( migrationBuilder.DropTable(
name: "Hr_T_SurveyQuestion"); name: "Hr_T_SurveyQuestion");
migrationBuilder.DropTable(
name: "Mnt_T_Workcenter");
migrationBuilder.DropTable( migrationBuilder.DropTable(
name: "Net_T_Training"); name: "Net_T_Training");
@ -7181,6 +7348,12 @@ namespace Erp.Platform.Migrations
migrationBuilder.DropTable( migrationBuilder.DropTable(
name: "Hr_T_Survey"); name: "Hr_T_Survey");
migrationBuilder.DropTable(
name: "Mnt_T_WorkcenterStatus");
migrationBuilder.DropTable(
name: "Mnt_T_WorkcenterType");
migrationBuilder.DropTable( migrationBuilder.DropTable(
name: "Net_T_EventCategory"); name: "Net_T_EventCategory");

View file

@ -11132,6 +11132,317 @@ namespace Erp.Platform.Migrations
b.ToTable("Adm_T_WorkHour", (string)null); b.ToTable("Adm_T_WorkHour", (string)null);
}); });
modelBuilder.Entity("Erp.Platform.Entities.Workcenter", b =>
{
b.Property<Guid>("Id")
.HasColumnType("uniqueidentifier");
b.Property<int>("Capacity")
.ValueGeneratedOnAdd()
.HasColumnType("int")
.HasDefaultValue(0);
b.Property<string>("Code")
.IsRequired()
.HasMaxLength(100)
.HasColumnType("nvarchar(100)");
b.Property<decimal>("CostPerHour")
.ValueGeneratedOnAdd()
.HasPrecision(18, 2)
.HasColumnType("decimal(18,2)")
.HasDefaultValue(0m);
b.Property<DateTime>("CreationTime")
.HasColumnType("datetime2")
.HasColumnName("CreationTime");
b.Property<Guid?>("CreatorId")
.HasColumnType("uniqueidentifier")
.HasColumnName("CreatorId");
b.Property<string>("Criticality")
.HasMaxLength(10)
.HasColumnType("nvarchar(10)");
b.Property<Guid?>("DeleterId")
.HasColumnType("uniqueidentifier")
.HasColumnName("DeleterId");
b.Property<DateTime?>("DeletionTime")
.HasColumnType("datetime2")
.HasColumnName("DeletionTime");
b.Property<Guid>("DepartmentId")
.HasColumnType("uniqueidentifier");
b.Property<string>("Description")
.HasMaxLength(500)
.HasColumnType("nvarchar(500)");
b.Property<DateTime>("InstallationDate")
.HasColumnType("datetime2");
b.Property<bool>("IsActive")
.ValueGeneratedOnAdd()
.HasColumnType("bit")
.HasDefaultValue(true);
b.Property<bool>("IsDeleted")
.ValueGeneratedOnAdd()
.HasColumnType("bit")
.HasDefaultValue(false)
.HasColumnName("IsDeleted");
b.Property<DateTime?>("LastModificationTime")
.HasColumnType("datetime2")
.HasColumnName("LastModificationTime");
b.Property<Guid?>("LastModifierId")
.HasColumnType("uniqueidentifier")
.HasColumnName("LastModifierId");
b.Property<string>("Location")
.HasMaxLength(250)
.HasColumnType("nvarchar(250)");
b.Property<string>("Manufacturer")
.HasMaxLength(200)
.HasColumnType("nvarchar(200)");
b.Property<string>("Model")
.HasMaxLength(100)
.HasColumnType("nvarchar(100)");
b.Property<string>("Name")
.IsRequired()
.HasMaxLength(200)
.HasColumnType("nvarchar(200)");
b.Property<string>("SerialNumber")
.HasMaxLength(100)
.HasColumnType("nvarchar(100)");
b.Property<int>("SetupTime")
.ValueGeneratedOnAdd()
.HasColumnType("int")
.HasDefaultValue(0);
b.Property<Guid>("StatusId")
.HasColumnType("uniqueidentifier");
b.Property<Guid?>("TenantId")
.HasColumnType("uniqueidentifier")
.HasColumnName("TenantId");
b.Property<DateTime?>("WarrantyExpiry")
.HasColumnType("datetime2");
b.Property<Guid>("WorkcenterTypeId")
.HasColumnType("uniqueidentifier");
b.HasKey("Id");
b.HasIndex("DepartmentId");
b.HasIndex("StatusId");
b.HasIndex("WorkcenterTypeId");
b.ToTable("Mnt_T_Workcenter", (string)null);
});
modelBuilder.Entity("Erp.Platform.Entities.WorkcenterSpecification", b =>
{
b.Property<Guid>("Id")
.HasColumnType("uniqueidentifier");
b.Property<DateTime>("CreationTime")
.HasColumnType("datetime2")
.HasColumnName("CreationTime");
b.Property<Guid?>("CreatorId")
.HasColumnType("uniqueidentifier")
.HasColumnName("CreatorId");
b.Property<Guid?>("DeleterId")
.HasColumnType("uniqueidentifier")
.HasColumnName("DeleterId");
b.Property<DateTime?>("DeletionTime")
.HasColumnType("datetime2")
.HasColumnName("DeletionTime");
b.Property<bool>("IsDeleted")
.ValueGeneratedOnAdd()
.HasColumnType("bit")
.HasDefaultValue(false)
.HasColumnName("IsDeleted");
b.Property<bool>("IsRequired")
.ValueGeneratedOnAdd()
.HasColumnType("bit")
.HasDefaultValue(false);
b.Property<DateTime?>("LastModificationTime")
.HasColumnType("datetime2")
.HasColumnName("LastModificationTime");
b.Property<Guid?>("LastModifierId")
.HasColumnType("uniqueidentifier")
.HasColumnName("LastModifierId");
b.Property<string>("SpecificationName")
.IsRequired()
.HasMaxLength(200)
.HasColumnType("nvarchar(200)");
b.Property<string>("SpecificationValue")
.IsRequired()
.HasMaxLength(200)
.HasColumnType("nvarchar(200)");
b.Property<Guid?>("TenantId")
.HasColumnType("uniqueidentifier")
.HasColumnName("TenantId");
b.Property<Guid>("UomId")
.HasColumnType("uniqueidentifier");
b.Property<Guid>("WorkcenterId")
.HasColumnType("uniqueidentifier");
b.HasKey("Id");
b.HasIndex("UomId");
b.HasIndex("WorkcenterId");
b.ToTable("Mnt_T_WorkcenterSpecification", (string)null);
});
modelBuilder.Entity("Erp.Platform.Entities.WorkcenterStatus", b =>
{
b.Property<Guid>("Id")
.HasColumnType("uniqueidentifier");
b.Property<string>("Code")
.HasColumnType("nvarchar(max)");
b.Property<DateTime>("CreationTime")
.HasColumnType("datetime2")
.HasColumnName("CreationTime");
b.Property<Guid?>("CreatorId")
.HasColumnType("uniqueidentifier")
.HasColumnName("CreatorId");
b.Property<Guid?>("DeleterId")
.HasColumnType("uniqueidentifier")
.HasColumnName("DeleterId");
b.Property<DateTime?>("DeletionTime")
.HasColumnType("datetime2")
.HasColumnName("DeletionTime");
b.Property<string>("Description")
.HasMaxLength(500)
.HasColumnType("nvarchar(500)");
b.Property<bool>("IsActive")
.ValueGeneratedOnAdd()
.HasColumnType("bit")
.HasDefaultValue(true);
b.Property<bool>("IsDeleted")
.ValueGeneratedOnAdd()
.HasColumnType("bit")
.HasDefaultValue(false)
.HasColumnName("IsDeleted");
b.Property<DateTime?>("LastModificationTime")
.HasColumnType("datetime2")
.HasColumnName("LastModificationTime");
b.Property<Guid?>("LastModifierId")
.HasColumnType("uniqueidentifier")
.HasColumnName("LastModifierId");
b.Property<string>("Name")
.IsRequired()
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property<Guid?>("TenantId")
.HasColumnType("uniqueidentifier")
.HasColumnName("TenantId");
b.HasKey("Id");
b.ToTable("Mnt_T_WorkcenterStatus", (string)null);
});
modelBuilder.Entity("Erp.Platform.Entities.WorkcenterType", b =>
{
b.Property<Guid>("Id")
.HasColumnType("uniqueidentifier");
b.Property<string>("Code")
.HasColumnType("nvarchar(max)");
b.Property<DateTime>("CreationTime")
.HasColumnType("datetime2")
.HasColumnName("CreationTime");
b.Property<Guid?>("CreatorId")
.HasColumnType("uniqueidentifier")
.HasColumnName("CreatorId");
b.Property<Guid?>("DeleterId")
.HasColumnType("uniqueidentifier")
.HasColumnName("DeleterId");
b.Property<DateTime?>("DeletionTime")
.HasColumnType("datetime2")
.HasColumnName("DeletionTime");
b.Property<string>("Description")
.HasMaxLength(500)
.HasColumnType("nvarchar(500)");
b.Property<bool>("IsActive")
.ValueGeneratedOnAdd()
.HasColumnType("bit")
.HasDefaultValue(true);
b.Property<bool>("IsDeleted")
.ValueGeneratedOnAdd()
.HasColumnType("bit")
.HasDefaultValue(false)
.HasColumnName("IsDeleted");
b.Property<DateTime?>("LastModificationTime")
.HasColumnType("datetime2")
.HasColumnName("LastModificationTime");
b.Property<Guid?>("LastModifierId")
.HasColumnType("uniqueidentifier")
.HasColumnName("LastModifierId");
b.Property<string>("Name")
.IsRequired()
.HasMaxLength(50)
.HasColumnType("nvarchar(50)");
b.Property<Guid?>("TenantId")
.HasColumnType("uniqueidentifier")
.HasColumnName("TenantId");
b.HasKey("Id");
b.ToTable("Mnt_T_WorkcenterType", (string)null);
});
modelBuilder.Entity("Erp.Platform.Forum.ForumCategory", b => modelBuilder.Entity("Erp.Platform.Forum.ForumCategory", b =>
{ {
b.Property<Guid>("Id") b.Property<Guid>("Id")
@ -14452,6 +14763,52 @@ namespace Erp.Platform.Migrations
b.Navigation("Employee"); b.Navigation("Employee");
}); });
modelBuilder.Entity("Erp.Platform.Entities.Workcenter", b =>
{
b.HasOne("Erp.Platform.Entities.Department", "Department")
.WithMany()
.HasForeignKey("DepartmentId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("Erp.Platform.Entities.WorkcenterStatus", "Status")
.WithMany("Workcenters")
.HasForeignKey("StatusId")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
b.HasOne("Erp.Platform.Entities.WorkcenterType", "WorkcenterType")
.WithMany("Workcenters")
.HasForeignKey("WorkcenterTypeId")
.OnDelete(DeleteBehavior.Restrict)
.IsRequired();
b.Navigation("Department");
b.Navigation("Status");
b.Navigation("WorkcenterType");
});
modelBuilder.Entity("Erp.Platform.Entities.WorkcenterSpecification", b =>
{
b.HasOne("Erp.Platform.Entities.Uom", "Uom")
.WithMany()
.HasForeignKey("UomId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.HasOne("Erp.Platform.Entities.Workcenter", "Workcenter")
.WithMany("Specifications")
.HasForeignKey("WorkcenterId")
.OnDelete(DeleteBehavior.Cascade)
.IsRequired();
b.Navigation("Uom");
b.Navigation("Workcenter");
});
modelBuilder.Entity("Erp.Platform.Forum.ForumPost", b => modelBuilder.Entity("Erp.Platform.Forum.ForumPost", b =>
{ {
b.HasOne("Erp.Platform.Forum.ForumPost", "ParentPost") b.HasOne("Erp.Platform.Forum.ForumPost", "ParentPost")
@ -14949,6 +15306,21 @@ namespace Erp.Platform.Migrations
b.Navigation("Uoms"); b.Navigation("Uoms");
}); });
modelBuilder.Entity("Erp.Platform.Entities.Workcenter", b =>
{
b.Navigation("Specifications");
});
modelBuilder.Entity("Erp.Platform.Entities.WorkcenterStatus", b =>
{
b.Navigation("Workcenters");
});
modelBuilder.Entity("Erp.Platform.Entities.WorkcenterType", b =>
{
b.Navigation("Workcenters");
});
modelBuilder.Entity("Erp.Platform.Forum.ForumCategory", b => modelBuilder.Entity("Erp.Platform.Forum.ForumCategory", b =>
{ {
b.Navigation("Topics"); b.Navigation("Topics");

View file

@ -4803,5 +4803,115 @@
"amountThreshold": "100000", "amountThreshold": "100000",
"isActive": true "isActive": true
} }
],
"WorkcenterTypes": [
{
"code": "CNC",
"name": "CNC Makineleri",
"description": "Bilgisayar kontrollü kesim ve şekillendirme makineleri",
"isActive": true
},
{
"code": "COMP",
"name": "Kompresörler",
"description": "Hava ve gaz sıkıştırma makineleri",
"isActive": true
},
{
"code": "CONV",
"name": "Konveyörler",
"description": "Malzeme taşıma sistemleri",
"isActive": true
},
{
"code": "WELD",
"name": "Kaynak Makineleri",
"description": "Metal parçaların birleştirilmesi için kullanılan makineler",
"isActive": true
}
],
"WorkcenterStatuses": [
{
"code": "OP",
"name": "Operational",
"description": "İş Merkezi Operatif Durumda",
"isActive": true
},
{
"code": "UM",
"name": "Under Maintenance",
"description": "İş Merkezi Bakımda",
"isActive": true
},
{
"code": "OO",
"name": "Out of Order",
"description": "İş Merkezi Arızalı",
"isActive": true
},
{
"code": "RT",
"name": "Retired",
"description": "İş Merkezi Kullanımdan Kaldırıldı",
"isActive": true
}
],
"Workcenters": [
{
"code": "CNC-001",
"name": "CNC Torna Tezgahı",
"description": "Yüksek hassasiyetli CNC torna tezgahı",
"workcenterTypeCode": "CNC",
"manufacturer": "HAAS Automation",
"model": "ST-30",
"serialNumber": "SN123456789",
"installationDate": "2022-03-15T00:00:00",
"warrantyExpiry": "2025-03-15T00:00:00",
"location": "Atölye A - Hat 1",
"departmentCode": "ÜRT",
"statusCode": "OP",
"criticality": "High",
"capacity": 8,
"costPerHour": 75,
"setupTime": 15,
"isActive": true
},
{
"code": "COMP-001",
"name": "Hava Kompresörü",
"description": "Endüstriyel hava kompresörü sistemi",
"workcenterTypeCode": "COMP",
"manufacturer": "Atlas Copco",
"model": "GA55VSD+",
"serialNumber": "AC987654321",
"installationDate": "2021-08-20T00:00:00",
"warrantyExpiry": "2024-08-20T00:00:00",
"location": "Kompresör Odası",
"departmentCode": "BAK",
"statusCode": "UM",
"criticality": "Critical",
"capacity": 8,
"costPerHour": 85,
"setupTime": 20,
"isActive": true
},
{
"code": "CONV-001",
"name": "Konveyör Sistemi",
"description": "Ana hat konveyör sistemi",
"workcenterTypeCode": "CONV",
"manufacturer": "Siemens",
"model": "SIMATIC S7-1500",
"serialNumber": "SM112233445",
"installationDate": "2020-11-10T00:00:00",
"location": "Ana Üretim Hattı",
"departmentCode": "KAL",
"statusCode": "OO",
"criticality": "Medium",
"capacity": 8,
"costPerHour": 85,
"setupTime": 20,
"isActive": true
}
] ]
} }

View file

@ -106,6 +106,9 @@ public class TenantDataSeeder : IDataSeedContributor, ITransientDependency
private readonly OrganizationUnitManager _organizationUnitManager; private readonly OrganizationUnitManager _organizationUnitManager;
private readonly IRepository<RequestType, Guid> _requestTypeRepository; private readonly IRepository<RequestType, Guid> _requestTypeRepository;
private readonly IRepository<Approval, Guid> _approvalRepository; private readonly IRepository<Approval, Guid> _approvalRepository;
private readonly IRepository<WorkcenterType, Guid> _workcenterTypeRepository;
private readonly IRepository<WorkcenterStatus, Guid> _workcenterStatusRepository;
private readonly IRepository<Workcenter, Guid> _workcenterRepository;
public TenantDataSeeder( public TenantDataSeeder(
IClock clock, IClock clock,
@ -194,7 +197,10 @@ public class TenantDataSeeder : IDataSeedContributor, ITransientDependency
IRepository<OrganizationUnit, Guid> organizationUnitRepository, IRepository<OrganizationUnit, Guid> organizationUnitRepository,
OrganizationUnitManager organizationUnitManager, OrganizationUnitManager organizationUnitManager,
IRepository<RequestType, Guid> requestTypeRepository, IRepository<RequestType, Guid> requestTypeRepository,
IRepository<Approval, Guid> approvalRepository IRepository<Approval, Guid> approvalRepository,
IRepository<WorkcenterType, Guid> workcenterTypeRepository,
IRepository<WorkcenterStatus, Guid> workcenterStatusRepository,
IRepository<Workcenter, Guid> workcenterRepository
) )
{ {
_clock = clock; _clock = clock;
@ -285,6 +291,9 @@ public class TenantDataSeeder : IDataSeedContributor, ITransientDependency
_organizationUnitManager = organizationUnitManager; _organizationUnitManager = organizationUnitManager;
_requestTypeRepository = requestTypeRepository; _requestTypeRepository = requestTypeRepository;
_approvalRepository = approvalRepository; _approvalRepository = approvalRepository;
_workcenterTypeRepository = workcenterTypeRepository;
_workcenterStatusRepository = workcenterStatusRepository;
_workcenterRepository = workcenterRepository;
} }
private static IConfigurationRoot BuildConfiguration() private static IConfigurationRoot BuildConfiguration()
@ -1911,6 +1920,68 @@ public class TenantDataSeeder : IDataSeedContributor, ITransientDependency
IsActive = item.IsActive IsActive = item.IsActive
}); });
} }
foreach (var item in items.WorkcenterTypes)
{
var exists = await _workcenterTypeRepository.AnyAsync(x => x.Code == item.Code);
if (exists)
continue;
await _workcenterTypeRepository.InsertAsync(new WorkcenterType
{
Code = item.Code,
Name = item.Name,
Description = item.Description,
IsActive = item.IsActive
}, autoSave: true);
}
foreach (var item in items.WorkcenterStatuses)
{
var exists = await _workcenterStatusRepository.AnyAsync(x => x.Code == item.Code);
if (exists)
continue;
await _workcenterStatusRepository.InsertAsync(new WorkcenterStatus
{
Code = item.Code,
Name = item.Name,
Description = item.Description,
IsActive = item.IsActive
}, autoSave: true);
}
foreach (var item in items.Workcenters)
{
var exists = await _workcenterRepository.AnyAsync(x => x.Code == item.Code);
if (exists)
continue;
var department = await _departmentRepository.FirstOrDefaultAsync(x => x.Code == item.DepartmentCode);
var workcenterType = await _workcenterTypeRepository.FirstOrDefaultAsync(x => x.Code == item.WorkcenterTypeCode);
var status = await _workcenterStatusRepository.FirstOrDefaultAsync(x => x.Code == item.StatusCode);
await _workcenterRepository.InsertAsync(new Workcenter
{
Code = item.Code,
Name = item.Name,
Description = item.Description,
WorkcenterTypeId = workcenterType?.Id,
Manufacturer = item.Manufacturer,
Model = item.Model,
SerialNumber = item.SerialNumber,
InstallationDate = item.InstallationDate,
WarrantyExpiry = item.WarrantyExpiry,
Location = item.Location,
DepartmentId = department?.Id,
StatusId = status?.Id,
Criticality = item.Criticality,
Capacity = item.Capacity,
CostPerHour = item.CostPerHour,
SetupTime = item.SetupTime,
IsActive = item.IsActive
}, autoSave: true);
}
} }
} }

View file

@ -96,6 +96,50 @@ public class TenantSeederDto
public List<CustomerSegmentSeedDto> CustomerSegments { get; set; } public List<CustomerSegmentSeedDto> CustomerSegments { get; set; }
public List<LossReasonSeedDto> LossReasons { get; set; } public List<LossReasonSeedDto> LossReasons { get; set; }
public List<OrganizationUnitSeedDto> OrganizationUnits { get; set; } public List<OrganizationUnitSeedDto> OrganizationUnits { get; set; }
//Maintenance
public List<WorkcenterTypeSeedDto> WorkcenterTypes { get; set; }
public List<WorkcenterStatusSeedDto> WorkcenterStatuses { get; set; }
public List<WorkcenterSeedDto> Workcenters { get; set; }
}
public class WorkcenterSeedDto
{
public string Code { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public string WorkcenterTypeCode { get; set; }
public string Manufacturer { get; set; }
public string Model { get; set; }
public string SerialNumber { get; set; }
public DateTime InstallationDate { get; set; }
public DateTime WarrantyExpiry { get; set; }
public string Location { get; set; }
public string DepartmentCode { get; set; }
public string StatusCode { get; set; }
public string Criticality { get; set; }
public int Capacity { get; set; }
public decimal CostPerHour { get; set; }
public int SetupTime { get; set; }
public bool IsActive { get; set; }
}
public class WorkcenterTypeSeedDto
{
public string Code { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public bool IsActive { get; set; }
}
public class WorkcenterStatusSeedDto
{
public string Code { get; set; }
public string Name { get; set; }
public string Description { get; set; }
public bool IsActive { get; set; }
} }
public class ApprovalSeedDto public class ApprovalSeedDto

View file

@ -1,32 +0,0 @@
import { PmWorkCenterType } from "../types/pm";
export const mockWorkCenterTypes: PmWorkCenterType[] = [
{
id: "1",
code: "CNC",
name: "CNC Makineleri",
category: "Üretim",
isActive: true,
},
{
id: "2",
code: "COMP",
name: "Kompresörler",
category: "Altyapı",
isActive: true,
},
{
id: "3",
code: "CONV",
name: "Konveyörler",
category: "Taşıma",
isActive: true,
},
{
id: "4",
code: "WELD",
name: "Kaynak Makineleri",
category: "Üretim",
isActive: true,
},
];

View file

@ -1,6 +1,5 @@
import { CriticalityLevelEnum, PmWorkCenter, WorkCenterStatusEnum } from '../types/pm' import { CriticalityLevelEnum, PmWorkCenter, WorkCenterStatusEnum } from '../types/pm'
import { mockWorkCenterMachineTypes } from './mockWorkCenterMachineTypes' import { mockWorkCenterMachineTypes } from './mockWorkCenterMachineTypes'
import { mockWorkCenterTypes } from './mockWorkCenterTypes'
export const mockWorkCenters: PmWorkCenter[] = [ export const mockWorkCenters: PmWorkCenter[] = [
{ {
@ -8,8 +7,6 @@ export const mockWorkCenters: PmWorkCenter[] = [
code: 'CNC-001', code: 'CNC-001',
name: 'CNC Torna Tezgahı', name: 'CNC Torna Tezgahı',
description: 'Yüksek hassasiyetli CNC torna tezgahı', description: 'Yüksek hassasiyetli CNC torna tezgahı',
workCenterId: '1',
workCenterType: mockWorkCenterTypes.find((wct) => wct.code === '1')!,
manufacturer: 'HAAS Automation', manufacturer: 'HAAS Automation',
model: 'ST-30', model: 'ST-30',
serialNumber: 'SN123456789', serialNumber: 'SN123456789',
@ -54,8 +51,6 @@ export const mockWorkCenters: PmWorkCenter[] = [
code: 'COMP-001', code: 'COMP-001',
name: 'Hava Kompresörü', name: 'Hava Kompresörü',
description: 'Endüstriyel hava kompresörü sistemi', description: 'Endüstriyel hava kompresörü sistemi',
workCenterId: '2',
workCenterType: mockWorkCenterTypes.find((wct) => wct.code === '2')!,
manufacturer: 'Atlas Copco', manufacturer: 'Atlas Copco',
model: 'GA55VSD+', model: 'GA55VSD+',
serialNumber: 'AC987654321', serialNumber: 'AC987654321',
@ -100,8 +95,6 @@ export const mockWorkCenters: PmWorkCenter[] = [
code: 'CONV-001', code: 'CONV-001',
name: 'Konveyör Sistemi', name: 'Konveyör Sistemi',
description: 'Ana hat konveyör sistemi', description: 'Ana hat konveyör sistemi',
workCenterId: '3',
workCenterType: mockWorkCenterTypes.find((wct) => wct.code === '3')!,
manufacturer: 'Siemens', manufacturer: 'Siemens',
model: 'SIMATIC S7-1500', model: 'SIMATIC S7-1500',
serialNumber: 'SM112233445', serialNumber: 'SM112233445',
@ -145,8 +138,6 @@ export const mockWorkCenters: PmWorkCenter[] = [
code: 'KELD-001', code: 'KELD-001',
name: 'Kaynak Makinesi', name: 'Kaynak Makinesi',
description: 'Otomatik robot kaynak sistemi', description: 'Otomatik robot kaynak sistemi',
workCenterId: '4',
workCenterType: mockWorkCenterTypes.find((wct) => wct.code === '4')!,
manufacturer: 'KUKA', manufacturer: 'KUKA',
model: 'KR 60-3', model: 'KR 60-3',
serialNumber: 'KU556677889', serialNumber: 'KU556677889',
@ -191,8 +182,6 @@ export const mockWorkCenters: PmWorkCenter[] = [
code: 'WELL-001', code: 'WELL-001',
name: 'Yıkama Makinesi', name: 'Yıkama Makinesi',
description: 'Otomatik robot kaynak sistemi', description: 'Otomatik robot kaynak sistemi',
workCenterId: '4',
workCenterType: mockWorkCenterTypes.find((wct) => wct.code === '4')!,
manufacturer: 'KUKA', manufacturer: 'KUKA',
model: 'KR 60-3', model: 'KR 60-3',
serialNumber: 'KU556677889', serialNumber: 'KU556677889',
@ -237,8 +226,6 @@ export const mockWorkCenters: PmWorkCenter[] = [
code: 'KELD-001', code: 'KELD-001',
name: 'Ram Makinesi', name: 'Ram Makinesi',
description: 'Otomatik robot kaynak sistemi', description: 'Otomatik robot kaynak sistemi',
workCenterId: '4',
workCenterType: mockWorkCenterTypes.find((wct) => wct.code === '4')!,
manufacturer: 'KUKA', manufacturer: 'KUKA',
model: 'KR 60-3', model: 'KR 60-3',
serialNumber: 'KU556677889', serialNumber: 'KU556677889',
@ -283,8 +270,6 @@ export const mockWorkCenters: PmWorkCenter[] = [
code: 'WEID-001', code: 'WEID-001',
name: 'Sarma Makinesi', name: 'Sarma Makinesi',
description: 'Otomatik robot kaynak sistemi', description: 'Otomatik robot kaynak sistemi',
workCenterId: '4',
workCenterType: mockWorkCenterTypes.find((wct) => wct.code === '4')!,
manufacturer: 'KUKA', manufacturer: 'KUKA',
model: 'KR 60-3', model: 'KR 60-3',
serialNumber: 'KU556677889', serialNumber: 'KU556677889',
@ -329,8 +314,6 @@ export const mockWorkCenters: PmWorkCenter[] = [
code: 'KEL-001', code: 'KEL-001',
name: 'Robot Kaynak Makinesi', name: 'Robot Kaynak Makinesi',
description: 'Otomatik robot kaynak sistemi', description: 'Otomatik robot kaynak sistemi',
workCenterId: '4',
workCenterType: mockWorkCenterTypes.find((wct) => wct.code === '4')!,
manufacturer: 'KUKA', manufacturer: 'KUKA',
model: 'KR 60-3', model: 'KR 60-3',
serialNumber: 'KU556677889', serialNumber: 'KU556677889',

View file

@ -10,8 +10,6 @@ export interface PmWorkCenter {
code: string code: string
name: string name: string
description?: string description?: string
workCenterId: string
workCenterType?: PmWorkCenterType
manufacturer?: string manufacturer?: string
model?: string model?: string
serialNumber?: string serialNumber?: string