diff --git a/src/app/modules/colors/components/mix-editor/mix-editor.component.html b/src/app/modules/colors/components/mix-editor/mix-editor.component.html index 7a356dc..7417836 100644 --- a/src/app/modules/colors/components/mix-editor/mix-editor.component.html +++ b/src/app/modules/colors/components/mix-editor/mix-editor.component.html @@ -72,13 +72,12 @@ - {{material.name}} + {{materialDisplayName(material)}} diff --git a/src/app/modules/colors/components/mix-editor/mix-editor.component.ts b/src/app/modules/colors/components/mix-editor/mix-editor.component.ts index 41c9fd9..a0bdfef 100644 --- a/src/app/modules/colors/components/mix-editor/mix-editor.component.ts +++ b/src/app/modules/colors/components/mix-editor/mix-editor.component.ts @@ -4,7 +4,7 @@ import { MixMaterial, MixMaterialDto, mixMaterialsAsMixMaterialsDto, - Recipe, RecipeStep, + Recipe, sortMixMaterialsDto } from '../../../shared/model/recipe.model' import {ErrorHandlingComponent} from '../../../shared/components/subscribing.component' @@ -21,7 +21,6 @@ import {ConfirmBoxComponent} from '../../../shared/components/confirm-box/confir import {AccountService} from '../../../accounts/services/account.service' import {EmployeePermission} from '../../../shared/model/employee' import {ErrorService} from '../../../shared/service/error.service' -import {MatSelect} from '@angular/material/select' @Component({ selector: 'cre-mix-editor', @@ -156,6 +155,37 @@ export class MixEditorComponent extends ErrorHandlingComponent { return this.materials.filter(m => mixMaterial.materialId === m.id || this.mixMaterials.filter(mm => mm.materialId === m.id).length === 0) } + materialDisplayName(material: Material): string { + if (material.materialType.prefix) { + return `[${material.materialType.prefix}] ${material.name}` + } + return material.name + } + + sortedMaterials(materials: Material[]): Material[] { + return materials.sort((a, b) => { + const aPrefixName = a.materialType.prefix.toLowerCase() + const bPrefixName = b.materialType.prefix.toLowerCase() + + if (aPrefixName < bPrefixName) { + return -1 + } else if (aPrefixName > bPrefixName) { + return 1 + } else { + const aName = a.name.toLowerCase() + const bName = b.name.toLowerCase() + + if (aName < bName) { + return -1 + } else if (aName > bName) { + return 1 + } else { + return 0 + } + } + }) + } + get canDeleteMix() { return this.accountService.hasPermission(EmployeePermission.REMOVE_RECIPES) } diff --git a/src/app/modules/colors/pages/list/list.component.ts b/src/app/modules/colors/pages/list/list.component.ts index 84d98ac..21c3670 100644 --- a/src/app/modules/colors/pages/list/list.component.ts +++ b/src/app/modules/colors/pages/list/list.component.ts @@ -65,7 +65,8 @@ export class ListComponent extends ErrorHandlingComponent { } private recipeMatchesSearchQuery(recipe: Recipe) { - const matches = this.searchString(recipe.name) || + const matches = this.searchString(recipe.company.name) || + this.searchString(recipe.name) || this.searchString(recipe.description) || (recipe.sample && this.searchString(recipe.sample.toString())) this.hiddenRecipes[recipe.id] = !matches diff --git a/src/app/modules/material/service/material.service.ts b/src/app/modules/material/service/material.service.ts index ddf0ca4..709f0f1 100644 --- a/src/app/modules/material/service/material.service.ts +++ b/src/app/modules/material/service/material.service.ts @@ -45,7 +45,7 @@ export class MaterialService { const body = new FormData() body.append('name', name) body.append('inventoryQuantity', inventoryQuantity.toString()) - body.append('materialType', materialType.toString()) + body.append('materialTypeId', materialType.toString()) if (simdutFile && simdutFile.files) { body.append('simdutFile', simdutFile.files[0]) } @@ -57,7 +57,7 @@ export class MaterialService { body.append('id', id.toString()) body.append('name', name) body.append('inventoryQuantity', inventoryQuantity.toString()) - body.append('materialType', materialType.toString()) + body.append('materialTypeId', materialType.toString()) if (simdutFile) { body.append('simdutFile', simdutFile) }