category group changes
parent
0300744d22
commit
42fa527e72
|
@ -65,6 +65,9 @@
|
|||
"groupTasks.groupTasksTableList.button.reload": "Neu laden",
|
||||
"groupTasks.groupTasksTableList.popover.title": "Sind Sie sicher, dass Sie die Gruppenkonfigurationen neu laden wollen?",
|
||||
"groupTasks.groupTasksTableList.popover.buttonOk": "Ja",
|
||||
"groupTasks.button.checkingForCategoryGroupChanges": "Prüfung auf Änderungen der Kategoriegruppen",
|
||||
"groupTasks.button.checkingForCategoryGroupChanges.checkingForCategoryGroupChanges.popover.title": "Sind Sie sicher, dass Sie die Kategoriegruppen prüfen wollen? (Während der Prüfung schaut der Server nach neuen Kategoriegruppen und löscht ggf. nicht mehr vorhandene)",
|
||||
"groupTasks.button.checkingForCategoryGroupChanges.popover.buttonOk": "Prüfen",
|
||||
"logCard.popover.groupTaskId.title": "Gruppenaufgabe",
|
||||
"logCard.popover.groupTaskStep.title": "Gruppenaufgabe Schritt",
|
||||
"logCard.popover.role.title": "Rolle",
|
||||
|
|
|
@ -65,6 +65,9 @@
|
|||
"groupTasks.groupTasksTableList.button.reload": "Reload",
|
||||
"groupTasks.groupTasksTableList.popover.title": "Are you sure you want to reload the group configs?",
|
||||
"groupTasks.groupTasksTableList.popover.buttonOk": "Yes",
|
||||
"groupTasks.button.checkingForCategoryGroupChanges": "Checking for changes to the category groups",
|
||||
"groupTasks.button.checkingForCategoryGroupChanges.checkingForCategoryGroupChanges.popover.title": "Are you sure you want to check the category groups? (During the check, the server looks for new category groups and deletes any that no longer exist)",
|
||||
"groupTasks.button.checkingForCategoryGroupChanges.popover.buttonOk": "Verify",
|
||||
"logCard.popover.groupTaskId.title": "Group Task",
|
||||
"logCard.popover.groupTaskStep.title": "Group Task Step",
|
||||
"logCard.popover.role.title": "Role",
|
||||
|
|
|
@ -901,7 +901,6 @@ function GroupTaskStepLogHandler({ currentGroupTaskId, log, files }) {
|
|||
{getTag(nonImageFile)}
|
||||
</div>
|
||||
);
|
||||
console.log("url", getDownloadUrl(nonImageFile));
|
||||
} else {
|
||||
elements.push(getTag(nonImageFile));
|
||||
}
|
||||
|
|
|
@ -1,10 +1,17 @@
|
|||
import { Result } from "antd";
|
||||
import { Button, Popconfirm, Result } from "antd";
|
||||
import { useContext, useState } from "react";
|
||||
import GroupTasksViewModal from "./GroupTasksViewModal";
|
||||
import GroupTypeSelectionModal from "./GroupTypeSelectionModal";
|
||||
import GroupTaskTableList from "./GroupTasksTableList";
|
||||
import { Constants, WebSocketContext, hasXYPermission } from "../../../utils";
|
||||
import {
|
||||
Constants,
|
||||
SentMessagesCommands,
|
||||
WebSocketContext,
|
||||
hasPermission,
|
||||
hasXYPermission,
|
||||
} from "../../../utils";
|
||||
import { useTranslation } from "react-i18next";
|
||||
import { ReloadOutlined } from "@ant-design/icons";
|
||||
|
||||
export default function GroupTasks({ isGroupTasksViewModalOpen }) {
|
||||
const [isGroupTypeSelectionModalOpen, setIsGroupTypeSelectionModalOpen] =
|
||||
|
@ -30,6 +37,13 @@ export default function GroupTasks({ isGroupTasksViewModalOpen }) {
|
|||
)
|
||||
);
|
||||
|
||||
const onCheckingForCategoryGroupChanges = () => {
|
||||
webSocketContext.SendSocketMessage(
|
||||
SentMessagesCommands.GroupTasksCheckingForCategoryGroupChanges,
|
||||
{}
|
||||
);
|
||||
};
|
||||
|
||||
return (
|
||||
<>
|
||||
{webSocketContext.CategoryGroups.length === 0 ? (
|
||||
|
@ -69,6 +83,35 @@ export default function GroupTasks({ isGroupTasksViewModalOpen }) {
|
|||
/>
|
||||
|
||||
<GroupTasksViewModal isOpen={isGroupTasksViewModalOpen} />
|
||||
|
||||
{hasPermission(
|
||||
webSocketContext.User.Permissions,
|
||||
Constants.PERMISSIONS.GROUP_TASKS.CHECKING_FOR_CATEGORY_GROUP_CHANGES
|
||||
) && (
|
||||
<div
|
||||
style={{
|
||||
display: "flex",
|
||||
justifyContent: "center",
|
||||
marginTop: 20,
|
||||
}}
|
||||
>
|
||||
<Popconfirm
|
||||
placement="top"
|
||||
okText={t(
|
||||
"groupTasks.button.checkingForCategoryGroupChanges.popover.buttonOk"
|
||||
)}
|
||||
cancelText={t("buttonCancel")}
|
||||
title={t(
|
||||
"groupTasks.button.checkingForCategoryGroupChanges.checkingForCategoryGroupChanges.popover.title"
|
||||
)}
|
||||
onConfirm={() => onCheckingForCategoryGroupChanges()}
|
||||
>
|
||||
<Button shape="round" icon={<ReloadOutlined />} size="large">
|
||||
{t("groupTasks.button.checkingForCategoryGroupChanges")}
|
||||
</Button>
|
||||
</Popconfirm>
|
||||
</div>
|
||||
)}
|
||||
</>
|
||||
);
|
||||
}
|
||||
|
|
45
src/utils.js
45
src/utils.js
|
@ -48,6 +48,8 @@ export const Constants = {
|
|||
XYView: "group_tasks.overview.XY.view",
|
||||
},
|
||||
HISTORY: "group_tasks.history",
|
||||
CHECKING_FOR_CATEGORY_GROUP_CHANGES:
|
||||
"group_tasks.checking_for_category_group_changes",
|
||||
},
|
||||
ALL_USERS: {
|
||||
CREATE_NEW_USER: "all_users.create_new_user",
|
||||
|
@ -185,6 +187,7 @@ const ReceivedMessagesCommands = {
|
|||
AllUsersNewUserCreated: 26,
|
||||
AllUsersUserDeleted: 27,
|
||||
AllUsersUserDeactivation: 28,
|
||||
GroupTasksCategoryGroupChanges: 29,
|
||||
};
|
||||
|
||||
// commands sent to the backend server
|
||||
|
@ -205,6 +208,7 @@ export const SentMessagesCommands = {
|
|||
AllUsersUserDeactivation: 14,
|
||||
ScannersUseScanners: 15,
|
||||
ScannersDisconnectScanner: 16,
|
||||
GroupTasksCheckingForCategoryGroupChanges: 17,
|
||||
};
|
||||
|
||||
export function WebSocketProvider({
|
||||
|
@ -341,12 +345,49 @@ export function WebSocketProvider({
|
|||
});
|
||||
break;
|
||||
case ReceivedMessagesCommands.GroupTasksReloaded:
|
||||
if (body.RemovedCategory !== undefined) {
|
||||
setCategoryGroups((arr) =>
|
||||
arr.filter((arr1) => arr1.category !== body.RemovedCategory)
|
||||
);
|
||||
|
||||
setUser((user) => {
|
||||
const updatedUser = { ...user };
|
||||
|
||||
updatedUser.Permissions = updatedUser.Permissions.filter(
|
||||
(arr) => !body.RemovedPermissions.some((a) => a === arr)
|
||||
);
|
||||
|
||||
return updatedUser;
|
||||
});
|
||||
|
||||
setAdminAreaRolesPermissions((arr) => {
|
||||
const newArr = [...arr];
|
||||
|
||||
newArr.forEach((role, i) => {
|
||||
if (role.Permissions !== null) {
|
||||
newArr[i].Permissions = role.Permissions.filter(
|
||||
(b) => !body.RemovedPermissions.some((c) => c === b)
|
||||
);
|
||||
}
|
||||
});
|
||||
|
||||
return newArr;
|
||||
});
|
||||
|
||||
notificationApi["info"]({
|
||||
message: `Category ${body.RemovedCategory} was removed`,
|
||||
duration: 2,
|
||||
});
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
setCategoryGroups((arr) => {
|
||||
const newArr = [...arr];
|
||||
|
||||
newArr[
|
||||
arr.findIndex((arr1) => arr1.category === body.Category)
|
||||
].groups = body.UpdatedGroups;
|
||||
].groups = body.CategoryGroups;
|
||||
|
||||
return newArr;
|
||||
});
|
||||
|
@ -826,6 +867,8 @@ export function WebSocketProvider({
|
|||
return newArr;
|
||||
});
|
||||
break;
|
||||
case ReceivedMessagesCommands.GroupTasksCategoryGroupChanges:
|
||||
break;
|
||||
|
||||
default:
|
||||
console.error("unknown command", cmd);
|
||||
|
|
Loading…
Reference in New Issue