2023-10-19 11:44:56 +03:30
|
|
|
|
"use client";
|
|
|
|
|
|
|
2023-10-21 15:57:05 +03:30
|
|
|
|
import React, { useContext, useEffect, useRef, useState } from "react";
|
2023-10-19 11:44:56 +03:30
|
|
|
|
import { BottomSheet } from "react-spring-bottom-sheet";
|
|
|
|
|
|
import Input from "plugins/Input/page";
|
|
|
|
|
|
import AppContext from "@ctx/AppContext";
|
|
|
|
|
|
import SimpleReactValidator from "simple-react-validator";
|
|
|
|
|
|
import { toast } from "react-toastify";
|
|
|
|
|
|
import Buttonbriz from "plugins/Buttonbriz/page";
|
2023-10-19 20:02:54 +03:30
|
|
|
|
import DatePickerIran from "plugins/DatePickerIran/page";
|
2023-10-21 11:14:11 +03:30
|
|
|
|
import moment from "jalali-moment";
|
2023-10-21 15:57:05 +03:30
|
|
|
|
import validateIranPhone from "plugins/IranPhoneRegex";
|
2023-10-21 11:14:11 +03:30
|
|
|
|
const jalaliMoment = require("jalali-moment");
|
2023-10-19 11:44:56 +03:30
|
|
|
|
|
|
|
|
|
|
const BottomSheetCreateEmployees = (props) => {
|
|
|
|
|
|
const CTX = useContext(AppContext);
|
|
|
|
|
|
const [firstName, setFirstName] = useState("");
|
|
|
|
|
|
const [lastName, setLastName] = useState("");
|
|
|
|
|
|
const [phoneNumber, setPhoneNumber] = useState("");
|
2023-11-14 16:22:32 +03:30
|
|
|
|
// const [nationalId, setNationalId] = useState("");
|
2023-10-21 15:57:05 +03:30
|
|
|
|
const [gender, setGender] = useState(parseInt(0));
|
2023-11-14 16:22:32 +03:30
|
|
|
|
// const [birthDate, setBirthDate] = useState(null);
|
2023-10-21 11:14:11 +03:30
|
|
|
|
const [roleSelectCurrntData, setRoleSelectCurrntData] = useState("");
|
|
|
|
|
|
const [roleSelectData, setRoleSelectData] = useState([]);
|
2023-11-14 16:22:32 +03:30
|
|
|
|
|
2023-11-20 00:07:55 +03:30
|
|
|
|
// const [positionId, setPositionId] = useState("");
|
2023-11-14 16:22:32 +03:30
|
|
|
|
const [positionIdSelectData, setPositionIdSelectData] = useState("");
|
|
|
|
|
|
|
2023-10-19 11:44:56 +03:30
|
|
|
|
const [, forceUpdate] = useState();
|
|
|
|
|
|
|
|
|
|
|
|
const validator = useRef(
|
|
|
|
|
|
new SimpleReactValidator({
|
|
|
|
|
|
messages: {
|
|
|
|
|
|
required: "پر کردن این فیلد الزامی میباشد",
|
|
|
|
|
|
},
|
|
|
|
|
|
element: (message) => (
|
|
|
|
|
|
<>
|
|
|
|
|
|
<div className="text-right px-1 ">
|
|
|
|
|
|
<small className="text-red-600 t-ig-small ">{message}</small>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</>
|
|
|
|
|
|
),
|
|
|
|
|
|
})
|
|
|
|
|
|
);
|
|
|
|
|
|
const rolesChoose = CTX.state.rolesChoose;
|
|
|
|
|
|
const rolesData = CTX.state.rolesData;
|
2023-10-21 15:57:05 +03:30
|
|
|
|
const goToEditUser = CTX.state.goToEditUser;
|
|
|
|
|
|
const idEditUser = CTX.state.idEditUser;
|
|
|
|
|
|
const userData = CTX.state.userData;
|
2023-11-14 16:22:32 +03:30
|
|
|
|
const positionsData = CTX.state.positionsData;
|
2023-10-19 11:44:56 +03:30
|
|
|
|
|
|
|
|
|
|
const body = {
|
|
|
|
|
|
phoneNumber,
|
|
|
|
|
|
firstName,
|
|
|
|
|
|
lastName,
|
2023-11-14 16:22:32 +03:30
|
|
|
|
// birthDateTimeStamp:
|
|
|
|
|
|
// birthDate &&
|
|
|
|
|
|
// moment
|
|
|
|
|
|
// .utc(
|
|
|
|
|
|
// [birthDate.year, birthDate.month, birthDate.day],
|
|
|
|
|
|
// "jYYYY-jMM-jDDTHH"
|
|
|
|
|
|
// )
|
|
|
|
|
|
// .unix(),
|
2023-10-21 11:14:11 +03:30
|
|
|
|
gender: parseInt(gender),
|
2023-11-14 16:22:32 +03:30
|
|
|
|
// nationalId,
|
2023-10-19 11:44:56 +03:30
|
|
|
|
roleIds: rolesChoose,
|
2023-11-20 00:07:55 +03:30
|
|
|
|
// positionId,
|
2023-10-19 11:44:56 +03:30
|
|
|
|
};
|
|
|
|
|
|
|
2023-10-21 15:57:05 +03:30
|
|
|
|
const bodyUpdate = {
|
|
|
|
|
|
phoneNumber,
|
|
|
|
|
|
firstName,
|
|
|
|
|
|
lastName,
|
2023-11-14 16:22:32 +03:30
|
|
|
|
// birthDateTimeStamp:
|
|
|
|
|
|
// birthDate &&
|
|
|
|
|
|
// moment
|
|
|
|
|
|
// .utc(
|
|
|
|
|
|
// [birthDate.year, birthDate.month, birthDate.day],
|
|
|
|
|
|
// "jYYYY-jMM-jDDTHH"
|
|
|
|
|
|
// )
|
|
|
|
|
|
// .unix(),
|
2023-10-21 15:57:05 +03:30
|
|
|
|
gender: parseInt(gender),
|
2023-11-14 16:22:32 +03:30
|
|
|
|
// nationalId,
|
2023-10-21 15:57:05 +03:30
|
|
|
|
roleIds: rolesChoose,
|
|
|
|
|
|
userId: userData.id,
|
2023-11-20 00:07:55 +03:30
|
|
|
|
// positionId,
|
2023-10-21 15:57:05 +03:30
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
const clear = () => {
|
|
|
|
|
|
setFirstName("");
|
|
|
|
|
|
setLastName("");
|
|
|
|
|
|
setPhoneNumber("");
|
2023-11-14 16:22:32 +03:30
|
|
|
|
// setNationalId("");
|
2023-12-27 12:31:56 +03:30
|
|
|
|
setGender(parseInt(0));
|
2023-11-14 16:22:32 +03:30
|
|
|
|
// setBirthDate("");
|
2023-10-21 15:57:05 +03:30
|
|
|
|
setRoleSelectCurrntData("");
|
|
|
|
|
|
setRoleSelectData([]);
|
2023-11-20 00:07:55 +03:30
|
|
|
|
// setPositionId("");
|
2023-10-21 15:57:05 +03:30
|
|
|
|
CTX.setRolesChoose([]);
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
const handleCreateUser = (update) => {
|
|
|
|
|
|
if (validateIranPhone(phoneNumber)) {
|
|
|
|
|
|
if (validator.current.allValid()) {
|
|
|
|
|
|
if (update == "UPDATE") {
|
|
|
|
|
|
CTX.UpdateUser(bodyUpdate);
|
|
|
|
|
|
} else {
|
|
|
|
|
|
CTX.CreateUser(body);
|
|
|
|
|
|
}
|
|
|
|
|
|
} else {
|
|
|
|
|
|
toast.error("پرکردن همه ی فیلد ها واجب است", {
|
|
|
|
|
|
position: "bottom-right",
|
|
|
|
|
|
autoClose: 2000,
|
|
|
|
|
|
hideProgressBar: false,
|
|
|
|
|
|
closeOnClick: true,
|
|
|
|
|
|
pauseOnHover: true,
|
|
|
|
|
|
draggable: true,
|
|
|
|
|
|
progress: undefined,
|
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
|
|
validator.current.showMessages();
|
|
|
|
|
|
forceUpdate(1);
|
|
|
|
|
|
}
|
2023-10-19 11:44:56 +03:30
|
|
|
|
} else {
|
2023-10-21 15:57:05 +03:30
|
|
|
|
toast.error("شماره تماس را درست وارد کنید", {
|
2023-10-19 11:44:56 +03:30
|
|
|
|
position: "bottom-right",
|
|
|
|
|
|
autoClose: 2000,
|
|
|
|
|
|
hideProgressBar: false,
|
|
|
|
|
|
closeOnClick: true,
|
|
|
|
|
|
pauseOnHover: true,
|
|
|
|
|
|
draggable: true,
|
|
|
|
|
|
progress: undefined,
|
|
|
|
|
|
});
|
|
|
|
|
|
}
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
const deleteRole = (id) => {
|
|
|
|
|
|
CTX.setRolesChoose(rolesChoose.filter((el) => el !== id));
|
|
|
|
|
|
};
|
|
|
|
|
|
|
2023-10-21 15:57:05 +03:30
|
|
|
|
const handleBottomSheetCreateEmployeesOpen = (e) => {
|
|
|
|
|
|
setRoleSelectData(
|
|
|
|
|
|
rolesData.map((item) => ({
|
|
|
|
|
|
key: item.persianName,
|
|
|
|
|
|
value: item.id,
|
|
|
|
|
|
}))
|
|
|
|
|
|
);
|
|
|
|
|
|
|
2023-11-20 00:07:55 +03:30
|
|
|
|
// setPositionIdSelectData(
|
|
|
|
|
|
// positionsData.map((item) => ({
|
|
|
|
|
|
// key: item.name,
|
|
|
|
|
|
// value: item.id,
|
|
|
|
|
|
// }))
|
|
|
|
|
|
// );
|
2023-11-14 16:22:32 +03:30
|
|
|
|
|
2023-10-21 15:57:05 +03:30
|
|
|
|
if (e.type == "OPEN") {
|
|
|
|
|
|
CTX.GetRoles();
|
|
|
|
|
|
if (goToEditUser) {
|
|
|
|
|
|
CTX.GetUser(idEditUser);
|
|
|
|
|
|
}
|
|
|
|
|
|
} else if (e.type == "CLOSE") {
|
|
|
|
|
|
clear();
|
|
|
|
|
|
CTX.setGoToEditUser(false);
|
|
|
|
|
|
CTX.setIdEditUser(null);
|
|
|
|
|
|
CTX.setUserData([]);
|
|
|
|
|
|
}
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
useEffect(() => {
|
|
|
|
|
|
if (goToEditUser) {
|
2023-11-14 16:22:32 +03:30
|
|
|
|
// const date = moment
|
|
|
|
|
|
// .unix(userData.birthDateTimeStamp)
|
|
|
|
|
|
// .locale("fa")
|
|
|
|
|
|
// .format("YYYY/MM/DD")
|
|
|
|
|
|
// .split("/");
|
2023-10-21 15:57:05 +03:30
|
|
|
|
|
|
|
|
|
|
setFirstName(userData.firstName);
|
|
|
|
|
|
setLastName(userData.lastName);
|
|
|
|
|
|
setPhoneNumber(userData.phoneNumber);
|
2023-11-14 16:22:32 +03:30
|
|
|
|
// setNationalId(userData.nationalId);
|
2023-10-21 15:57:05 +03:30
|
|
|
|
setGender(userData.gender);
|
2023-11-14 16:22:32 +03:30
|
|
|
|
// setBirthDate({
|
|
|
|
|
|
// day: parseInt(date[2]),
|
|
|
|
|
|
// month: parseInt(date[1]),
|
|
|
|
|
|
// year: parseInt(date[0]),
|
|
|
|
|
|
// });
|
2023-10-21 15:57:05 +03:30
|
|
|
|
// setRoleSelectCurrntData("");
|
|
|
|
|
|
CTX.setRolesChoose(userData.roleIds);
|
2023-11-20 00:07:55 +03:30
|
|
|
|
// setPositionId(userData.positionId);
|
2023-10-21 15:57:05 +03:30
|
|
|
|
}
|
|
|
|
|
|
}, [userData]);
|
|
|
|
|
|
|
2023-10-19 11:44:56 +03:30
|
|
|
|
return (
|
|
|
|
|
|
<BottomSheet
|
2023-10-21 15:57:05 +03:30
|
|
|
|
onSpringStart={(e) => handleBottomSheetCreateEmployeesOpen(e)}
|
2023-10-19 11:44:56 +03:30
|
|
|
|
open={CTX.state.BottomSheetCreateEmployeesOpen}
|
|
|
|
|
|
onDismiss={() => CTX.setBottomSheetCreateEmployeesOpen(false)}
|
2023-10-26 00:26:44 +03:30
|
|
|
|
blocking={false}
|
2023-10-19 11:44:56 +03:30
|
|
|
|
>
|
2024-06-12 18:44:06 +03:30
|
|
|
|
<div className="text-center py-2 bg-secondary-950 ">
|
|
|
|
|
|
<p className="mb-0 text-primary-300 relative top-[-5px]">
|
|
|
|
|
|
افزودن کاربر جدید
|
|
|
|
|
|
</p>
|
2023-10-19 11:44:56 +03:30
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
<div className="bg-body-100 p-4 ">
|
|
|
|
|
|
<div className="">
|
|
|
|
|
|
<Input
|
|
|
|
|
|
lable="نام "
|
|
|
|
|
|
id="firstName-id"
|
|
|
|
|
|
name="firstName"
|
|
|
|
|
|
type={"text"}
|
|
|
|
|
|
value={firstName}
|
|
|
|
|
|
inputEvent={(e) => {
|
|
|
|
|
|
setFirstName(e.target.value);
|
|
|
|
|
|
validator.current.showMessageFor("firstName");
|
|
|
|
|
|
}}
|
|
|
|
|
|
style="text-right"
|
|
|
|
|
|
validator={true}
|
|
|
|
|
|
validatorData={validator.current.message(
|
|
|
|
|
|
"firstName",
|
|
|
|
|
|
firstName,
|
|
|
|
|
|
"required"
|
|
|
|
|
|
)}
|
|
|
|
|
|
/>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
<div>
|
|
|
|
|
|
<Input
|
|
|
|
|
|
lable="نام خانوادگی"
|
|
|
|
|
|
id="lastName-id"
|
|
|
|
|
|
name="lastName"
|
|
|
|
|
|
type={"text"}
|
|
|
|
|
|
value={lastName}
|
|
|
|
|
|
inputEvent={(e) => {
|
|
|
|
|
|
setLastName(e.target.value);
|
|
|
|
|
|
validator.current.showMessageFor("lastName");
|
|
|
|
|
|
}}
|
|
|
|
|
|
style="text-right"
|
|
|
|
|
|
validator={true}
|
|
|
|
|
|
validatorData={validator.current.message(
|
|
|
|
|
|
"lastName",
|
|
|
|
|
|
lastName,
|
|
|
|
|
|
"required"
|
|
|
|
|
|
)}
|
|
|
|
|
|
/>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
<div className="">
|
|
|
|
|
|
<Input
|
|
|
|
|
|
lable="جنسیت"
|
|
|
|
|
|
id="gender-id"
|
|
|
|
|
|
name="gender"
|
|
|
|
|
|
type={"text"}
|
|
|
|
|
|
value={gender}
|
|
|
|
|
|
inputEvent={(e) => {
|
|
|
|
|
|
setGender(e.target.value);
|
|
|
|
|
|
}}
|
|
|
|
|
|
style="text-right"
|
|
|
|
|
|
select={true}
|
|
|
|
|
|
selectData={[
|
2023-10-21 11:14:11 +03:30
|
|
|
|
{ key: "مرد", value: 0 },
|
|
|
|
|
|
{ key: "زن", value: 1 },
|
2023-10-19 11:44:56 +03:30
|
|
|
|
]}
|
|
|
|
|
|
/>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
2023-11-14 16:22:32 +03:30
|
|
|
|
{/* <DatePickerIran
|
2023-10-21 11:14:11 +03:30
|
|
|
|
datePickerEvent={(e) => setBirthDate(e)}
|
|
|
|
|
|
date={birthDate}
|
2023-10-26 00:26:44 +03:30
|
|
|
|
zindex="z-[1000]"
|
2023-11-14 16:22:32 +03:30
|
|
|
|
/> */}
|
2023-10-19 20:02:54 +03:30
|
|
|
|
|
2023-10-19 11:44:56 +03:30
|
|
|
|
<div className="">
|
|
|
|
|
|
<Input
|
|
|
|
|
|
lable="شماره تماس"
|
|
|
|
|
|
id="phoneNumber-id"
|
|
|
|
|
|
name="phoneNumber"
|
2023-12-07 13:46:57 +03:30
|
|
|
|
type={"number"}
|
2023-10-19 11:44:56 +03:30
|
|
|
|
value={phoneNumber}
|
|
|
|
|
|
inputEvent={(e) => {
|
|
|
|
|
|
setPhoneNumber(e.target.value);
|
|
|
|
|
|
validator.current.showMessageFor("phoneNumber");
|
|
|
|
|
|
}}
|
|
|
|
|
|
style="text-right"
|
|
|
|
|
|
validator={true}
|
|
|
|
|
|
validatorData={validator.current.message(
|
|
|
|
|
|
"phoneNumber",
|
|
|
|
|
|
phoneNumber,
|
|
|
|
|
|
"required"
|
|
|
|
|
|
)}
|
|
|
|
|
|
/>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
2023-11-14 16:22:32 +03:30
|
|
|
|
{/* <div className="">
|
2023-10-19 11:44:56 +03:30
|
|
|
|
<Input
|
|
|
|
|
|
lable="کد ملی"
|
|
|
|
|
|
id="nationalId-id"
|
|
|
|
|
|
name="nationalId"
|
|
|
|
|
|
type={"text"}
|
|
|
|
|
|
value={nationalId}
|
|
|
|
|
|
inputEvent={(e) => {
|
|
|
|
|
|
setNationalId(e.target.value);
|
|
|
|
|
|
}}
|
|
|
|
|
|
style="text-right"
|
|
|
|
|
|
/>
|
2023-11-14 16:22:32 +03:30
|
|
|
|
</div> */}
|
2023-10-19 11:44:56 +03:30
|
|
|
|
|
|
|
|
|
|
<div className="">
|
|
|
|
|
|
<Input
|
|
|
|
|
|
lable="سمت شغلی"
|
|
|
|
|
|
id="roleIds-id"
|
|
|
|
|
|
name="roleIds"
|
|
|
|
|
|
type={"text"}
|
2023-10-21 11:14:11 +03:30
|
|
|
|
value={roleSelectCurrntData}
|
2023-10-19 11:44:56 +03:30
|
|
|
|
inputEvent={(e) => {
|
2023-10-21 11:14:11 +03:30
|
|
|
|
setRoleSelectCurrntData(e.target.value);
|
2023-10-19 11:44:56 +03:30
|
|
|
|
|
|
|
|
|
|
if (!!rolesChoose.find((b) => b == e.target.value)) {
|
|
|
|
|
|
toast.error("نقش تکراری است", {
|
|
|
|
|
|
position: "bottom-right",
|
|
|
|
|
|
closeOnClick: true,
|
|
|
|
|
|
});
|
|
|
|
|
|
} else {
|
|
|
|
|
|
CTX.setRolesChoose((current) => [...current, e.target.value]);
|
|
|
|
|
|
}
|
|
|
|
|
|
}}
|
|
|
|
|
|
style="text-right"
|
|
|
|
|
|
validatorData={validator.current.message(
|
|
|
|
|
|
"phoneNumber",
|
|
|
|
|
|
phoneNumber,
|
|
|
|
|
|
"required"
|
|
|
|
|
|
)}
|
|
|
|
|
|
select={true}
|
2023-10-21 11:14:11 +03:30
|
|
|
|
selectData={roleSelectData}
|
2023-11-14 16:22:32 +03:30
|
|
|
|
defaultValue={"انتخاب کنید"}
|
2023-10-19 11:44:56 +03:30
|
|
|
|
/>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
<div className="flex flex-wrap mt-3 rtl">
|
|
|
|
|
|
{rolesChoose &&
|
|
|
|
|
|
rolesChoose.map((e) => (
|
|
|
|
|
|
<div className="flex bg-gray-300 p-1 rounded-full m-1 justify-start">
|
|
|
|
|
|
<div
|
|
|
|
|
|
className="w-[30px] h-[30px] rounded-full bg-gray-400 "
|
|
|
|
|
|
onClick={() => deleteRole(e)}
|
|
|
|
|
|
></div>
|
|
|
|
|
|
|
|
|
|
|
|
<div>
|
|
|
|
|
|
<p className="mb-0 px-3 text-sm mt-1">
|
2023-12-27 12:31:56 +03:30
|
|
|
|
{rolesData?.find((b) => b.id == e)?.persianName}
|
2023-10-19 11:44:56 +03:30
|
|
|
|
</p>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
))}
|
|
|
|
|
|
</div>
|
2023-10-21 15:57:05 +03:30
|
|
|
|
|
2023-11-20 00:07:55 +03:30
|
|
|
|
{/* <div className="">
|
2023-11-14 16:22:32 +03:30
|
|
|
|
<Input
|
|
|
|
|
|
lable="پوزیشن مد نظر"
|
|
|
|
|
|
id="positionId-id"
|
|
|
|
|
|
name="positionId"
|
|
|
|
|
|
type={"text"}
|
|
|
|
|
|
inputEvent={(e) => {
|
|
|
|
|
|
setPositionId(e.target.value);
|
|
|
|
|
|
}}
|
|
|
|
|
|
style="text-right"
|
|
|
|
|
|
validatorData={validator.current.message(
|
|
|
|
|
|
"positionId",
|
|
|
|
|
|
positionId,
|
|
|
|
|
|
"required"
|
|
|
|
|
|
)}
|
|
|
|
|
|
select={true}
|
|
|
|
|
|
selectData={positionIdSelectData}
|
|
|
|
|
|
defaultValue={"انتخاب کنید"}
|
|
|
|
|
|
/>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
<div className="flex flex-wrap mt-3 rtl">
|
|
|
|
|
|
<div className="flex bg-gray-300 p-1 rounded-full m-1 justify-start">
|
|
|
|
|
|
<div>
|
|
|
|
|
|
<p className="mb-0 px-3 text-sm mt-1">
|
|
|
|
|
|
{positionsData?.find((b) => b.id == positionId)?.name}
|
|
|
|
|
|
</p>
|
|
|
|
|
|
</div>
|
|
|
|
|
|
</div>
|
2023-11-20 00:07:55 +03:30
|
|
|
|
</div> */}
|
2023-11-14 16:22:32 +03:30
|
|
|
|
|
2023-10-21 15:57:05 +03:30
|
|
|
|
{goToEditUser ? (
|
|
|
|
|
|
<Buttonbriz
|
|
|
|
|
|
title="ویرایش کاربر"
|
|
|
|
|
|
color="INFO"
|
|
|
|
|
|
icon="CHECK"
|
|
|
|
|
|
buttonEvent={() => handleCreateUser("UPDATE")}
|
|
|
|
|
|
subButton={true}
|
|
|
|
|
|
subButtonTitle="حذف کاربر"
|
|
|
|
|
|
subButtonEvent={() => CTX.DeleteUser(idEditUser)}
|
|
|
|
|
|
/>
|
|
|
|
|
|
) : (
|
|
|
|
|
|
<Buttonbriz
|
|
|
|
|
|
title="ثبت کاربر"
|
|
|
|
|
|
color="PRIMARY"
|
|
|
|
|
|
icon="CHECK"
|
|
|
|
|
|
buttonEvent={() => handleCreateUser()}
|
|
|
|
|
|
/>
|
|
|
|
|
|
)}
|
2023-10-19 11:44:56 +03:30
|
|
|
|
</div>
|
|
|
|
|
|
</BottomSheet>
|
|
|
|
|
|
);
|
|
|
|
|
|
};
|
2023-10-21 11:14:11 +03:30
|
|
|
|
|
2023-10-19 11:44:56 +03:30
|
|
|
|
export default BottomSheetCreateEmployees;
|