Profile Employment Details Fields required Validation
This commit is contained in:
parent
0fa0510849
commit
998f6b6b94
@ -11,5 +11,5 @@ ReactDOM.createRoot(document.getElementById('root')).render(
|
||||
<BrowserRouter>
|
||||
<App />
|
||||
</BrowserRouter>
|
||||
</React.StrictMode>,
|
||||
</React.StrictMode>
|
||||
)
|
||||
@ -711,6 +711,12 @@ const CompanyProfile = () => {
|
||||
{ field: 'products', label: 'Products' },
|
||||
],
|
||||
4: [
|
||||
{ field: 'employmentEmiratiMale', label: 'Number of Emirati Male' },
|
||||
{ field: 'employmentNonEmiratiMale', label: 'Number of Non-Emirati Male' },
|
||||
{ field: 'employmentEmiratiFemale', label: 'Number of Emirati Female' },
|
||||
{ field: 'employmentNonEmiratiFemale', label: 'Number of Non-Emirati Female' },
|
||||
{ field: 'employmentTotalEmployees', label: 'Total Employees' },
|
||||
{ field: 'employmentTotalEmirati', label: 'Total Emirati' },
|
||||
// Employment fields are not required
|
||||
],
|
||||
}),
|
||||
@ -1271,6 +1277,7 @@ const CompanyProfile = () => {
|
||||
type="number"
|
||||
error={fieldErrors.employmentEmiratiMale}
|
||||
readOnly={modalMode === 'view'}
|
||||
required
|
||||
/>
|
||||
<TextField
|
||||
label="Number of Non-Emirati Male"
|
||||
@ -1281,6 +1288,7 @@ const CompanyProfile = () => {
|
||||
type="number"
|
||||
error={fieldErrors.employmentNonEmiratiMale}
|
||||
readOnly={modalMode === 'view'}
|
||||
required
|
||||
/>
|
||||
<TextField
|
||||
label="Number of Emirati Female"
|
||||
@ -1291,6 +1299,7 @@ const CompanyProfile = () => {
|
||||
type="number"
|
||||
error={fieldErrors.employmentEmiratiFemale}
|
||||
readOnly={modalMode === 'view'}
|
||||
required
|
||||
/>
|
||||
<TextField
|
||||
label="Number of Non-Emirati Female"
|
||||
@ -1299,6 +1308,7 @@ const CompanyProfile = () => {
|
||||
placeholder="Enter Count"
|
||||
width="100%"
|
||||
type="number"
|
||||
required
|
||||
error={fieldErrors.employmentNonEmiratiFemale}
|
||||
readOnly={modalMode === 'view'}
|
||||
/>
|
||||
@ -1309,6 +1319,7 @@ const CompanyProfile = () => {
|
||||
width="100%"
|
||||
type="number"
|
||||
readOnly
|
||||
required
|
||||
/>
|
||||
<TextField
|
||||
label="Total Emirati"
|
||||
@ -1317,6 +1328,7 @@ const CompanyProfile = () => {
|
||||
width="100%"
|
||||
type="number"
|
||||
readOnly
|
||||
required
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
@ -2612,7 +2624,13 @@ const handleView = async (id) => {
|
||||
{ field: 'corporateName', label: 'Corporate Name' },
|
||||
{ field: 'corporateAddress', label: 'Corporate Address' },
|
||||
{ field: 'corporateEmirate', label: 'Corporate Emirate' },
|
||||
{ field: 'corporateMobileNumber', label: 'Corporate Mobile Number' }
|
||||
{ field: 'corporateMobileNumber', label: 'Corporate Mobile Number' },
|
||||
{ field: 'employmentEmiratiMale', label: 'Emirati Male' },
|
||||
{ field: 'employmentEmiratiFemale', label: 'Emirati Female' },
|
||||
{ field: 'employmentNonEmiratiMale', label: 'Non-Emirati Male' },
|
||||
{ field: 'employmentNonEmiratiFemale', label: 'Non-Emirati Female' },
|
||||
{ field: 'employmentTotalEmirati', label: 'Total Emirati' },
|
||||
{ field: 'employmentTotalEmployees', label: 'Total Employees' }
|
||||
];
|
||||
|
||||
const handleDeleteConfirm = async () => {
|
||||
@ -2900,12 +2918,12 @@ const handleView = async (id) => {
|
||||
corporate_mobile_number: form.corporateMobileNumber || '',
|
||||
corporate_email: form.corporateEmail || '',
|
||||
corporate_website: form.corporateWebsite || '',
|
||||
emirati_male: Number(form.employmentEmiratiMale) || 0,
|
||||
emirati_female: Number(form.employmentEmiratiFemale) || 0,
|
||||
non_emirati_male: Number(form.employmentNonEmiratiMale) || 0,
|
||||
non_emirati_female: Number(form.employmentNonEmiratiFemale) || 0,
|
||||
total_emirati: Number(totalEmirati) || 0,
|
||||
total_employees: Number(employmentTotals) || 0,
|
||||
emirati_male: Number(form.employmentEmiratiMale) || '',
|
||||
emirati_female: Number(form.employmentEmiratiFemale) || '',
|
||||
non_emirati_male: Number(form.employmentNonEmiratiMale) || '',
|
||||
non_emirati_female: Number(form.employmentNonEmiratiFemale) || '',
|
||||
total_emirati: Number(totalEmirati) || '',
|
||||
total_employees: Number(employmentTotals) || '',
|
||||
created_by: currentUserId?.id,
|
||||
created_by_name: currentUserId?.name,
|
||||
establishment_user: {
|
||||
@ -2928,10 +2946,11 @@ const handleView = async (id) => {
|
||||
const createdRecord = apiResponse?.data;
|
||||
createdRecordId = createdRecord?.id ?? createdRecord?.establishment?.id ?? null;
|
||||
apiResultData = createdRecord;
|
||||
console.log('API Payload for creation:', apiPayload);
|
||||
setIsRefreshing(true);
|
||||
setTimeout(() => {
|
||||
window.location.reload();
|
||||
}, 1000);
|
||||
// setTimeout(() => {
|
||||
// window.location.reload();
|
||||
// }, 1000);
|
||||
} catch (apiError) {
|
||||
const apiMessage = apiError?.response?.data?.message || apiError?.message || '';
|
||||
if (apiMessage.includes("Field 'gender' doesn't have a default value")) {
|
||||
@ -3011,12 +3030,12 @@ const handleView = async (id) => {
|
||||
corporate_mobile_number: form.corporateMobileNumber || '',
|
||||
corporate_email: form.corporateEmail || '',
|
||||
corporate_website: form.corporateWebsite || '',
|
||||
emirati_male: Number(form.employmentEmiratiMale) || 0,
|
||||
emirati_female: Number(form.employmentEmiratiFemale) || 0,
|
||||
non_emirati_male: Number(form.employmentNonEmiratiMale) || 0,
|
||||
non_emirati_female: Number(form.employmentNonEmiratiFemale) || 0,
|
||||
total_emirati: (Number(form.employmentEmiratiMale) || 0) + (Number(form.employmentEmiratiFemale) || 0),
|
||||
total_employees: Number(form.employmentTotalEmployees) || 0,
|
||||
emirati_male: Number(form.employmentEmiratiMale) || '',
|
||||
emirati_female: Number(form.employmentEmiratiFemale) || 'null',
|
||||
non_emirati_male: Number(form.employmentNonEmiratiMale) || '',
|
||||
non_emirati_female: Number(form.employmentNonEmiratiFemale) || '',
|
||||
total_emirati: (Number(form.employmentEmiratiMale) || '') + (Number(form.employmentEmiratiFemale) || ''),
|
||||
total_employees: Number(form.employmentTotalEmployees) || '',
|
||||
updated_by: 1,
|
||||
updated_at: getCurrentISODate(),
|
||||
// Enhanced product handling for updates - only send product IDs that exist
|
||||
|
||||
@ -828,10 +828,10 @@ const EditCompanyProfile = () => {
|
||||
establishment_mobile_number: form.contactMobileNumber || "",
|
||||
establishment_contact_email: form.contactEmail || "",
|
||||
establishment_website: form.contactWebsite || "",
|
||||
emirati_male: Number(form.employmentEmiratiMale) || 0,
|
||||
emirati_female: Number(form.employmentEmiratiFemale) || 0,
|
||||
non_emirati_male: Number(form.employmentNonEmiratiMale) || 0,
|
||||
non_emirati_female: Number(form.employmentNonEmiratiFemale) || 0,
|
||||
emirati_male: Number(form.employmentEmiratiMale) || '',
|
||||
emirati_female: Number(form.employmentEmiratiFemale) || '',
|
||||
non_emirati_male: Number(form.employmentNonEmiratiMale) || '',
|
||||
non_emirati_female: Number(form.employmentNonEmiratiFemale) || '',
|
||||
total_emirati:
|
||||
(Number(form.employmentEmiratiMale) || 0) +
|
||||
(Number(form.employmentEmiratiFemale) || 0),
|
||||
@ -1438,6 +1438,7 @@ const EditCompanyProfile = () => {
|
||||
placeholder="Enter Count"
|
||||
width="100%"
|
||||
type="text"
|
||||
required
|
||||
inputMode="numeric"
|
||||
pattern="[0-9]*"
|
||||
error={fieldErrors.employmentEmiratiMale}
|
||||
@ -1455,6 +1456,7 @@ const EditCompanyProfile = () => {
|
||||
type="text"
|
||||
inputMode="numeric"
|
||||
pattern="[0-9]*"
|
||||
required
|
||||
error={fieldErrors.employmentNonEmiratiMale}
|
||||
/>
|
||||
<TextField
|
||||
@ -1470,6 +1472,7 @@ const EditCompanyProfile = () => {
|
||||
type="text"
|
||||
inputMode="numeric"
|
||||
pattern="[0-9]*"
|
||||
required
|
||||
error={fieldErrors.employmentEmiratiFemale}
|
||||
/>
|
||||
<TextField
|
||||
@ -1485,6 +1488,7 @@ const EditCompanyProfile = () => {
|
||||
type="text"
|
||||
inputMode="numeric"
|
||||
pattern="[0-9]*"
|
||||
required
|
||||
error={fieldErrors.employmentNonEmiratiFemale}
|
||||
/>
|
||||
<TextField
|
||||
@ -1494,6 +1498,7 @@ const EditCompanyProfile = () => {
|
||||
width="100%"
|
||||
type="number"
|
||||
readOnly
|
||||
required
|
||||
/>
|
||||
<TextField
|
||||
label="Total Emirati"
|
||||
@ -1502,6 +1507,7 @@ const EditCompanyProfile = () => {
|
||||
width="100%"
|
||||
type="number"
|
||||
readOnly
|
||||
required
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user