hrms-mgt/src/modules/05_placement/interface/index/Main.ts
Thanit Konmek 9d714b8716 หน้าแก้ไขข้อมูลส่วนตัว
แสดงวันจบการศึกษเป็นเลือก ปี หรือ วัน/เดือน/ปี
ซ่อนเป็นวุฒิการศึกษาในตำแหน่งไว้ก่อน
กรณีฟิลด์ isEducation เป็น true ให้ซ่อนปุ่มลบข้อมูล
เอาปุ่ม history หลังประวัติการศึกษากับใบอนุญาตประกอบอาชีพออก
ดักฟิลด์ "0000-0000-0000-0000" เป็นแสดงค่าว่าง

หน้าออกคำสั่ง step 4
2023-07-14 13:34:54 +07:00

211 lines
4 KiB
TypeScript

import type { zipCodeOption } from "../../components/PersonalDetail/profileType";
interface DataOption {
id: number | null;
name: string;
disable?: boolean;
}
interface DataOption1 {
id: string | null;
name: string | null;
disable?: boolean;
}
interface DataOptionInsignia {
id: string;
name: string;
typeName: string;
}
interface optionData {
id: string;
name: string;
}
interface EduOps {
levelOptions: optionData[];
positionPathOptions: optionData[];
}
interface InformationOps {
prefixOps: optionData[];
genderOps: optionData[];
bloodOps: optionData[];
statusOps: optionData[];
religionOps: optionData[];
employeeClassOps: optionData[];
employeeTypeOps: optionData[];
}
interface AddressOps {
provinceOps: optionData[];
districtOps: optionData[];
districtCOps: optionData[];
subdistrictOps: zipCodeOption[];
subdistrictCOps: zipCodeOption[];
}
interface InsigniaOps {
insigniaOptions: DataOptionInsignia[];
}
interface Pagination {
rowsPerPage: number;
}
interface treeTab {
id: string;
label: string;
children: treeTab[];
}
interface CheckboxItem {
id: number;
label: string;
}
interface Property {
name: string;
value: boolean;
}
interface PointExam {
pointA: number;
pointB: number;
pointC: number;
pointTotalA: number;
pointTotalB: number;
pointTotalC: number;
point: number;
pointTotal: number;
examNumber: number;
examRound: number;
pass: string | null;
}
interface Education {
id: string;
educationLevel: string;
educationLevelId: string;
institute: string;
degree: string;
field: string;
gpa: string;
country: string;
duration: string;
other: string;
fundName: string;
durationYear: number;
finishDate: Date;
isDate: string;
startDate: Date;
endDate: Date;
positionPath: string;
isEducation: boolean;
}
interface Family {
couple: string;
marryPrefix: string;
marryPrefixId: string;
marryFirstName: string;
marryLastName: string;
marryOccupation: string;
fatherPrefix: string;
fatherPrefixId: string;
fatherFirstName: string;
fatherLastName: string;
fatherOccupation: string;
motherPrefix: string;
motherPrefixId: string;
motherFirstName: string;
motherLastName: string;
motherOccupation: string;
}
interface Address {
registAddress: string;
registSubDistrict: string;
registSubDistrictId: string;
registZipCode: string;
registDistrict: string;
registDistrictId: string;
registProvince: string;
registProvinceId: string;
currentAddress: string;
currentSubDistrict: string;
currentSubDistrictId: string;
currentZipCode: string;
currentDistrict: string;
currentDistrictId: string;
currentProvince: string;
currentProvinceId: string;
registSame: string;
}
interface Certificate {
id: string;
certificateNo: string;
issuer: string;
issueDate: Date;
expireDate: Date;
certificateType: string;
}
const AddressDataDefualt: Address = {
registAddress: "",
currentAddress: "",
registSubDistrict: "",
registSubDistrictId: "",
registZipCode: "",
registDistrict: "",
registDistrictId: "",
registProvince: "",
registProvinceId: "",
currentSubDistrict: "",
currentSubDistrictId: "",
currentZipCode: "",
currentDistrict: "",
currentDistrictId: "",
currentProvince: "",
currentProvinceId: "",
registSame: "0",
};
const FamilyDataDefualt: Family = {
couple: "0",
marryPrefix: "",
marryPrefixId: "",
marryFirstName: "",
marryLastName: "",
marryOccupation: "",
fatherPrefix: "",
fatherPrefixId: "",
fatherFirstName: "",
fatherLastName: "",
fatherOccupation: "",
motherPrefix: "",
motherPrefixId: "",
motherFirstName: "",
motherLastName: "",
motherOccupation: "",
};
export type {
DataOption,
DataOptionInsignia,
treeTab,
InformationOps,
AddressOps,
Pagination,
EduOps,
DataOption1,
InsigniaOps,
CheckboxItem,
Property,
PointExam,
Education,
Family,
Address,
optionData,
Certificate,
};
export { AddressDataDefualt, FamilyDataDefualt };