refactor: update raw material loading to include 'unit_abbreviation' for improved material detail consistency across cutting services
This commit is contained in:
parent
ebd48d4cb4
commit
4135dcb4c3
@ -812,11 +812,14 @@ private function breakMaterialCircularReference(CuttingMaterial $material): void
|
|||||||
$rawMaterial = $price->rawMaterial;
|
$rawMaterial = $price->rawMaterial;
|
||||||
|
|
||||||
$material->setAttribute('variant', $price->variant);
|
$material->setAttribute('variant', $price->variant);
|
||||||
|
$material->setAttribute('stock_input', $price->stock_input);
|
||||||
|
$material->setAttribute('images', $price->getAttribute('images') ?? []);
|
||||||
|
|
||||||
if ($rawMaterial) {
|
if ($rawMaterial) {
|
||||||
$unitAbbreviation = $rawMaterial->unit->abbreviation();
|
$unitAbbreviation = $rawMaterial->unit->abbreviation();
|
||||||
$price->setAttribute('unit_abbreviation', $unitAbbreviation);
|
$price->setAttribute('unit_abbreviation', $unitAbbreviation);
|
||||||
$material->setAttribute('unit_abbreviation', $unitAbbreviation);
|
$material->setAttribute('unit_abbreviation', $unitAbbreviation);
|
||||||
|
$material->setAttribute('unit', $rawMaterial->unit->value);
|
||||||
$material->setAttribute('raw_material_id', $rawMaterial->id);
|
$material->setAttribute('raw_material_id', $rawMaterial->id);
|
||||||
$material->setAttribute('raw_material_name', $rawMaterial->name);
|
$material->setAttribute('raw_material_name', $rawMaterial->name);
|
||||||
$material->setAttribute('raw_material_unit_label', $rawMaterial->unit->label());
|
$material->setAttribute('raw_material_unit_label', $rawMaterial->unit->label());
|
||||||
|
|||||||
@ -23,14 +23,13 @@ const initialData = computed(() => ({
|
|||||||
other_cost: String(props.cutting.other_cost ?? 0),
|
other_cost: String(props.cutting.other_cost ?? 0),
|
||||||
materials: props.cutting.materials.map((item) => ({
|
materials: props.cutting.materials.map((item) => ({
|
||||||
raw_material_price_id: item.raw_material_price_id,
|
raw_material_price_id: item.raw_material_price_id,
|
||||||
raw_material_name: item.raw_material_price?.raw_material?.name ?? '',
|
raw_material_name: item.raw_material_name ?? '',
|
||||||
variant: item.raw_material_price?.variant ?? '',
|
variant: item.variant ?? '',
|
||||||
unit: item.raw_material_price?.raw_material?.unit ?? 'kilogram',
|
unit: item.unit ?? 'kilogram',
|
||||||
unit_abbreviation:
|
unit_abbreviation: item.unit_abbreviation ?? '',
|
||||||
item.raw_material_price?.raw_material?.unit_abbreviation ?? '',
|
stock_input: item.stock_input ?? '',
|
||||||
stock_input: item.raw_material_price?.stock_input ?? '',
|
|
||||||
material_usage: item.material_usage_input,
|
material_usage: item.material_usage_input,
|
||||||
images: item.raw_material_price?.images ?? [],
|
images: item.images ?? [],
|
||||||
})),
|
})),
|
||||||
results: props.cutting.results.map((item) => ({
|
results: props.cutting.results.map((item) => ({
|
||||||
product_variant_id: item.product_variant_id,
|
product_variant_id: item.product_variant_id,
|
||||||
|
|||||||
@ -134,6 +134,12 @@ export type CuttingEditItem = {
|
|||||||
materials: Array<{
|
materials: Array<{
|
||||||
raw_material_price_id: number;
|
raw_material_price_id: number;
|
||||||
material_usage_input: string;
|
material_usage_input: string;
|
||||||
|
variant?: string;
|
||||||
|
stock_input?: string;
|
||||||
|
images?: MediaItem[];
|
||||||
|
unit?: string;
|
||||||
|
unit_abbreviation?: string;
|
||||||
|
raw_material_name?: string;
|
||||||
raw_material_price?: {
|
raw_material_price?: {
|
||||||
variant: string;
|
variant: string;
|
||||||
stock_input?: string;
|
stock_input?: string;
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user