[WIP] Доработал отображение девектов: В, ИЗ, ИК

This commit is contained in:
DwCay
2023-06-16 20:14:13 +03:00
parent daad9d6a8d
commit 2476ce378e
7 changed files with 280 additions and 122 deletions

View File

@@ -81,37 +81,69 @@ export const getFilledConditions = (condition) => {
};
export function getToothImageConfig(data) {
let grey = "var(--border-light-grey-color grey)";
let yellow = "var(--bg-yellow-warning yellow)";
let red = "var(--border-red-color)";
let resulConfig = {};
Object.keys(data).forEach((key) => {
if (key === "general") {
resulConfig[key] = data[key];
} else {
let crownParts = {};
Object.keys(data[key]).forEach((part) => {
if (data[key][part].includes("П") || data[key][part].includes("Пт")) {
crownParts[part] = {
fill: "#FF6565",
injury: true,
};
} else if (
data[key][part].includes("Д") ||
data[key][part].includes("Пл") ||
data[key][part].includes("Кз")
) {
crownParts[part] = {
fill: "##FFB931",
injury: false,
};
} else {
crownParts[part] = {
fill: "#D3D4DC",
injury: false,
};
}
});
resulConfig[key] = {
...crownParts,
} else if (key === "crown") {
let keyConfig = {
general: {
fill: grey,
injury: false,
seal: false,
},
};
Object.keys(data[key]).forEach((part) => {
let partConfig = {
fill: grey,
injury: false,
};
if (part === "central" && data[key][part].includes("Пл")) {
partConfig.fill = yellow;
keyConfig.general.seal = true;
} else {
if (data[key][part].includes("П") || data[key][part].includes("Пт")) {
partConfig.grey = red;
partConfig.injury = true;
if (!keyConfig.general.seal) {
keyConfig.general.fill = red;
keyConfig.general.injury = true;
}
}
if (data[key][part].includes("Д")) {
partConfig.fill = yellow;
if (!keyConfig.general.seal && !keyConfig.general.injury) {
keyConfig.general.fill = yellow;
}
}
if (data[key][part].includes("К")) {
partConfig.injury = true;
keyConfig.general.injury = true;
}
}
keyConfig[part] = { ...partConfig };
});
resulConfig[key] = { ...keyConfig };
} else {
let keyConfig = {};
Object.keys(data[key]).forEach((part) => {
let partConfig = {
fill: grey,
injury: false,
};
if (data[key][part].includes("Пт")) {
partConfig.fill = red;
partConfig.injury = true;
}
if (data[key][part].includes("КЗ")) {
partConfig.fill = red;
}
keyConfig[part] = { ...partConfig };
});
resulConfig[key] = { ...keyConfig };
}
});
return resulConfig;