tenant_panam 1.0.1 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/services/Urls/urls.ts","../src/services/axios.ts","../src/services/requests/managePerson/person.ts","../src/services/requests/manageRole/role.ts","../src/services/requests/manageTenant/tenant.ts","../src/services/requests/mangeSalary/salary.ts","../src/services/requests/mangeSalaryTemplate/salaryTemplates.ts","../src/services/requests/manageContract/contract.ts","../src/hooks/useTenant/useTenant.tsx","../src/hooks/useTenant/useTenantDropdown.tsx","../src/hooks/useTenant/useTenantUpload.tsx","../src/hooks/usePerson/usePerson.tsx","../src/hooks/usePerson/usePersonDropdown.tsx","../src/hooks/usePerson/usePersonUpload.tsx","../src/hooks/useSalaryTemplate/useSalaryTemplate.tsx","../src/hooks/useSalaryTemplate/useDropdownSalaryTemplate.tsx","../src/hooks/useSalaryTemplate/useUploadSalaryTemplate.tsx","../src/hooks/useSalaryTemplate/useSalaryTemplateWithId.tsx","../src/hooks/useSalary/useSalary.tsx","../src/hooks/useLogin/useLogin.tsx","../src/services/requests/login/login.ts","../src/hooks/useContract/useContract.tsx","../src/hooks/useContract/useContractPerson.tsx","../src/providers/ReactQueryProvider.tsx","../src/validations/validations.ts"],"sourcesContent":["export * from \"./services/index\"\r\nexport * from \"./hooks/index\"\r\nexport * from \"./providers/index\"\r\nexport * from \"./validations/index\"","\r\nexport const urls = {\r\n auth : {\r\n sendOtp : {\r\n url : \"auth/send-otp\"\r\n },\r\n verifyOtp : {\r\n url : \"auth/verify-otp\"\r\n },\r\n userInfo : {\r\n url : \"auth/get-user-info-by-token\"\r\n },\r\n },\r\n Person: {\r\n create: {\r\n url: \"/person/create-default-admin\"\r\n },\r\n upload: {\r\n url: \"/person/upload-person-batch-file\"\r\n },\r\n createperson: {\r\n url: \"/person\"\r\n },\r\n getperson: {\r\n url: \"/person/\"\r\n },\r\n deleteperson: {\r\n url: \"/person/\"\r\n },\r\n getlistpersones: {\r\n url: \"/person/list\"\r\n },\r\n getdropdownlist: {\r\n url: \"/person/dropdown-list\"\r\n },\r\n editperson: {\r\n url: \"/person\"\r\n },\r\n },\r\n Role:{\r\n getrole:{\r\n url:\"/role/\"\r\n },\r\n delete:{\r\n url:\"/role/\"\r\n },\r\n getlistrole:{\r\n url:\"/role/list\"\r\n },\r\n getdropdownlist:{\r\n url:\"/role/dropdown-list\"\r\n },\r\n create:{\r\n url:\"/role\"\r\n },\r\n editrole:{\r\n url:\"/role\"\r\n },\r\n },\r\n Salary: {\r\n create: {\r\n url: \"/salary/upload-monthly-salary-excel\"\r\n },\r\n getdownloadsalary: {\r\n url: \"/salary/download-salary-slip/\"\r\n },\r\n getSalaryWithMonthAndYear : {\r\n url : \"salary/download-salary-slip\"\r\n },\r\n getSalaryWithMonthAndYearAdmin : {\r\n url : \"salary/download-salary-slip-by-admin\"\r\n }\r\n },\r\n Salarytemplate: {\r\n create: {\r\n url: \"/salarytemplate\"\r\n },\r\n uploadtemplate: {\r\n url: \"/salarytemplate/upload-template-and-get-column-headers\"\r\n },\r\n getsalaryitem: {\r\n url: \"/salarytemplate/get-salary-item-category-dropdown-list\"\r\n },\r\n getsalary: {\r\n url: \"/salarytemplate/\"\r\n },\r\n deletesalary: {\r\n url: \"/salarytemplate/\"\r\n },\r\n getlistsalary: {\r\n url: \"/salarytemplate/list\"\r\n },\r\n getdropdownlist: {\r\n url: \"/salarytemplate/dropdown-list\"\r\n },\r\n editsalary: {\r\n url: \"/salarytemplate\"\r\n },\r\n\r\n },\r\n Tenant: {\r\n uploadlogo: {\r\n url: \"/tenant/upload-logo\"\r\n },\r\n createtenant: {\r\n url: \"/tenant\"\r\n },\r\n\r\n gettenant: {\r\n url: \"/tenant/\"\r\n },\r\n deletetenant: {\r\n url: \"/tenant/\"\r\n },\r\n gettenantlist: {\r\n url: \"/tenant/list\"\r\n },\r\n getdropdownlist: {\r\n url: \"/tenant/dropdown-list\"\r\n },\r\n editenant: {\r\n url: \"/tenant\"\r\n },\r\n \r\n },\r\n contract :{\r\n uploads : \"/contract/upload-contracts\",\r\n confirm :\"/contract/confirm-contracts/\",\r\n download : \"/contract/download-employment-contract\" ,\r\n list :\"/contract/get-contracts-list\",\r\n cotract : \"/contract/get-contracts-list/\"\r\n }\r\n};","import { createAxiosInstance } from \"common_panam\";\r\n\r\nconst http = createAxiosInstance({\r\n baseURL: \"https://salary-slip.arenapp.ir\",\r\n headers: {\r\n \"Content-Type\": \"application/json\"\r\n }\r\n})\r\nconst httpPdf = createAxiosInstance({\r\n baseURL: \"https://salary-slip.arenapp.ir\",\r\n headers: {\r\n \"Accept\": \"application/pdf\"\r\n }\r\n})\r\n\r\n\r\nconst httpFile = createAxiosInstance({\r\n baseURL: \"https://salary-slip.arenapp.ir\",\r\n headers: {\r\n 'Content-Type': 'multipart/form-data',\r\n }\r\n});\r\n\r\n\r\nexport { http, httpFile, httpPdf } ","import { listType } from \"common_panam\";\r\nimport { CreatePersonType, EditPersonType, ListPersonDropDownType, ListPersonType, PersonType, UploadFilePersonsType } from \"../../types/person\";\r\nimport { http, httpFile } from \"../../axios\";\r\nimport { CrudType, ListApiRepsonse, ListDropDownReponse } from \"../../types/global\";\r\nimport { urls } from \"../../Urls/urls\";\r\nimport { AxiosProgressEvent, AxiosResponse } from \"axios\";\r\n\r\n\r\n\r\nconst getListPersons = async (obj: listType, tenantId: string, userId: string) => {\r\n const result:AxiosResponse<ListApiRepsonse<PersonType>> = await http.get(`${urls.Person.getlistpersones.url}?filter=${obj.filter}&pageIndex=${obj.pageIndex}&sort=${obj.sort}&pageSize=${obj.pageSize}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\n\r\nconst getListDropdownPersons = async (obj: listType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<ListDropDownReponse> = await http.get(`${urls.Person.getdropdownlist.url}?filter=${obj.filter}&pageIndex=${obj.pageIndex}&sort=${obj.sort}&pageSize=${obj.pageSize}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\n\r\nconst createPerson = async (obj: CreatePersonType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<CrudType> = await http.post(urls.Person.createperson.url, obj, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n });\r\n return result;\r\n};\r\nconst createDefaultAdmin = async (obj: CreatePersonType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<CrudType> = await http.post(urls.Person.create.url, obj, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n });\r\n return result;\r\n};\r\nconst createPersonUploadFile = async (obj: UploadFilePersonsType, tenantId: string, userId: string, onUploadProgress?: (progressEvent: AxiosProgressEvent) => void) => {\r\n const formData = new FormData()\r\n formData.append(\"File\", obj.File)\r\n formData.append(\"TenantId\", obj.TenantId)\r\n\r\n\r\n const result: AxiosResponse<CrudType> = await httpFile.post(urls.Person.upload.url, formData, {\r\n headers: {\r\n 'Content-Type': 'multipart/form-data',\r\n TenantId: tenantId,\r\n UserId: userId,\r\n },\r\n onUploadProgress\r\n });\r\n return result;\r\n};\r\nconst getPersonData = async (obj: CrudType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<PersonType> = await http.get(`${urls.Person.getperson.url}${obj.id}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\nconst editPersonData = async (obj: EditPersonType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<CrudType> = await http.put(urls.Person.editperson.url, obj, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\nconst deleteperson = async (obj: CrudType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<CrudType> = await http.delete(`${urls.Person.deleteperson.url}${obj.id}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\n\r\n\r\nexport {\r\n createPerson,\r\n createPersonUploadFile,\r\n getPersonData,\r\n editPersonData,\r\n deleteperson,\r\n getListPersons,\r\n getListDropdownPersons,\r\n createDefaultAdmin\r\n}","import { AxiosResponse } from \"axios\";\r\nimport { listType } from \"common_panam\";\r\nimport { http } from \"../../axios\";\r\nimport { CrudType, ListApiRepsonse, ListDropDownReponse } from \"../../types/global\";\r\nimport { CreateRoleType, EditRoleType, RoleType } from \"../../types/role\";\r\nimport { urls } from \"../../Urls/urls\";\r\n\r\n\r\n\r\nconst getListRoles = async (obj: listType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<ListApiRepsonse<RoleType>> = await http.get(`${urls.Role.getlistrole.url}?filter=${obj.filter}&pageIndex=${obj.pageIndex}&sort=${obj.sort}&pageSize=${obj.pageSize}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\nconst getListDropdownRoles = async (obj: listType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<ListDropDownReponse> = await http.get(`${urls.Role.getdropdownlist.url}?filter=${obj.filter}&pageIndex=${obj.pageIndex}&sort=${obj.sort}&pageSize=${obj.pageSize}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\n\r\nconst createRole = async (obj: CreateRoleType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<CrudType> = await http.post(urls.Role.create.url, obj, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n });\r\n return result;\r\n};\r\n\r\n\r\nconst getRoleData = async (obj: CrudType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<RoleType> = await http.get(`${urls.Role.getrole.url}${obj.id}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\nconst editRoleData = async (obj: EditRoleType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<CrudType> = await http.put(urls.Role.editrole.url, obj, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\nconst deleteRole = async (obj: CrudType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<CrudType> = await http.delete(`${urls.Role.delete.url}${obj.id}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\n\r\n\r\nexport {\r\n createRole, deleteRole, editRoleData, getListDropdownRoles, getListRoles, getRoleData\r\n};\r\n\r\n\r\n","import { AxiosProgressEvent, AxiosResponse } from \"axios\"\r\nimport { listType } from \"common_panam\"\r\nimport { http, httpFile } from \"../../axios\"\r\nimport { urls } from \"../../Urls/urls\"\r\nimport { CreateTenantType, EditTenantType, ListTenantType, TenantType, UploadLogoTenantType } from \"../../types/tenant\"\r\nimport { CrudType, ListApiRepsonse, ListDropDownReponse } from \"../../types/global\"\r\nimport { ListPersonDropDownType } from \"../../types/person\"\r\n\r\n\r\nconst getListTenants = async (obj: listType) => {\r\n const result: AxiosResponse<ListApiRepsonse<TenantType>> = await http.get(`${urls.Tenant.gettenantlist.url}?filter=${obj.filter}&pageIndex=${obj.pageIndex}&sort=${obj.sort}&pageSize=${obj.pageSize}`, {\r\n headers: {\r\n TenantId: \"1\",\r\n UserId: \"1\"\r\n }\r\n })\r\n \r\n return result\r\n \r\n}\r\nconst getListDropdownTenants = async (obj: listType) => {\r\n const result: AxiosResponse<ListDropDownReponse> = await http.get(`${urls.Tenant.getdropdownlist.url}?filter=${obj.filter}&pageIndex=${obj.pageIndex}&sort=${obj.sort}&pageSize=${obj.pageSize}`, {\r\n headers: {\r\n TenantId: \"1\",\r\n UserId: \"1\"\r\n }\r\n })\r\n return result\r\n}\r\n\r\nconst createTenant = async (obj: CreateTenantType) => {\r\n const result: AxiosResponse<CrudType> = await http.post(urls.Tenant.createtenant.url, obj, {\r\n headers: {\r\n TenantId: \"1\",\r\n UserId: \"1\"\r\n }\r\n });\r\n return result;\r\n};\r\n\r\nconst uploadTenantLogo = async (obj: UploadLogoTenantType, tenantId: string, userId: string, onUploadProgress?: (progressEvent: AxiosProgressEvent) => void) => {\r\n const formData = new FormData()\r\n formData.append(\"File\", obj.File)\r\n formData.append(\"TenantId\", obj.tenantId)\r\n\r\n const result: AxiosResponse<CrudType> = await httpFile.post(urls.Tenant.uploadlogo.url, formData, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId\r\n },\r\n onUploadProgress\r\n });\r\n return result;\r\n};\r\nconst getTenantData = async (obj: CrudType) => {\r\n const result: AxiosResponse<TenantType> = await http.get(`${urls.Tenant.gettenant.url}${obj.id}`, {\r\n headers: {\r\n TenantId: \"1\",\r\n UserId: \"1\"\r\n }\r\n })\r\n return result\r\n}\r\nconst editTenantData = async (obj: EditTenantType) => {\r\n const result: AxiosResponse<CrudType> = await http.put(urls.Tenant.editenant.url, obj, {\r\n headers: {\r\n TenantId: \"1\",\r\n UserId: \"1\"\r\n }\r\n })\r\n return result\r\n}\r\nconst deleteTenant = async (obj: CrudType) => {\r\n const result: AxiosResponse<CrudType> = await http.delete(`${urls.Tenant.deletetenant.url}${obj.id}`, {\r\n headers: {\r\n TenantId: \"1\",\r\n UserId: \"1\"\r\n }\r\n })\r\n return result\r\n}\r\n\r\n\r\n\r\nexport {\r\n getListTenants,\r\n getListDropdownTenants,\r\n createTenant,\r\n uploadTenantLogo,\r\n getTenantData,\r\n editTenantData,\r\n deleteTenant\r\n}","import { AxiosResponse } from \"axios\";\r\nimport { CreateSalaryType, getSalaryDataType, getSalaryDataWithMonthAndYearByAdminType, getSalaryDataWithMonthAndYearType } from \"../../types/salary\";\r\nimport { http, httpFile, httpPdf } from \"../../axios\";\r\nimport { urls } from \"../../Urls/urls\";\r\nimport { ApiRepsonse } from \"../../types/global\";\r\n\r\nconst createSalaryData = async (obj: CreateSalaryType, tenantId: string) => {\r\n const formData = new FormData()\r\n formData.append(\"TemplateId\", obj.TemplateId)\r\n formData.append(\"File\", obj.File)\r\n formData.append(\"Month\", obj.Month)\r\n formData.append(\"Year\", obj.Year)\r\n\r\n const result: AxiosResponse<CreateSalaryType> = await httpFile.post(`${urls.Salary.create.url}`, formData, {\r\n headers: {\r\n TenantId: tenantId,\r\n }\r\n })\r\n return result\r\n}\r\nconst getSalaryData = async (obj: getSalaryDataType, tenantId: string) => {\r\n const result: AxiosResponse<getSalaryDataType> = await http.get(`${urls.Salary.getdownloadsalary.url}?guid=${obj.guid}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n }\r\n })\r\n return result\r\n}\r\nconst getSalaryWithMonthAndYear = async (obj: getSalaryDataWithMonthAndYearType, tenantId: string,) => {\r\n const result: any = await httpPdf.get(`${urls.Salary.getSalaryWithMonthAndYear.url}?year=${obj.year}&month=${obj.month}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n },\r\n responseType: 'blob'\r\n })\r\n return result\r\n}\r\nconst getSalaryWithMonthAndYearByAdmin = async (obj: getSalaryDataWithMonthAndYearByAdminType, tenantId: string,) => {\r\n const result: any = await httpPdf.get(`${urls.Salary.getSalaryWithMonthAndYearAdmin.url}?year=${obj.year}&month=${obj.month}&personId=${obj.personId}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n },\r\n responseType: 'blob'\r\n })\r\n return result\r\n}\r\n\r\nexport { getSalaryData, createSalaryData, getSalaryWithMonthAndYear, getSalaryWithMonthAndYearByAdmin }","import { AxiosProgressEvent, AxiosResponse } from \"axios\"\r\nimport { listType } from \"common_panam\"\r\nimport { urls } from \"../../Urls/urls\"\r\nimport { http, httpFile } from \"../../axios\"\r\nimport { ApiRepsonse, CrudType, ListApiRepsonse, ListDropDownReponse } from \"../../types/global\"\r\nimport { CreateTemplateSalaryType, EditTemplateSalaryType, ListTemplateSalaryDropDownType, ListTemplateSalaryType, TemplateSalaryType, UploadTemplateSalaryType } from \"../../types/salaryTemplate\"\r\n\r\nconst getListTemplateSalars = async (obj: listType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<ListApiRepsonse<TemplateSalaryType>> = await http.get(`${urls.Salarytemplate.getlistsalary.url}?filter=${obj.filter}&pageIndex=${obj.pageIndex}&sort=${obj.sort}&pageSize=${obj.pageSize}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\nconst getListDropdownTemplateSalars = async (obj: listType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<ListDropDownReponse> = await http.get(`${urls.Salarytemplate.getdropdownlist.url}?filter=${obj.filter}&pageIndex=${obj.pageIndex}&sort=${obj.sort}&pageSize=${obj.pageSize}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\n\r\nconst createTemplateSalary = async (obj: CreateTemplateSalaryType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<CrudType> = await http.post(urls.Salarytemplate.create.url, obj, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n });\r\n return result;\r\n};\r\n\r\nconst uploadTemplateSalary = async (obj: UploadTemplateSalaryType, tenantId: string, userId: string, onUploadProgress?: (progressEvent: AxiosProgressEvent) => void) => {\r\n const formData = new FormData()\r\n formData.append(\"File\", obj.File)\r\n\r\n\r\n const result: AxiosResponse<ApiRepsonse<string[]>> = await httpFile.post(urls.Salarytemplate.uploadtemplate.url, formData, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n },\r\n onUploadProgress\r\n },\r\n );\r\n return result;\r\n};\r\nconst getItemTemplateSalary = async (tenantId: string, userId: string) => {\r\n const result: AxiosResponse<ApiRepsonse<{ id: number, name: string }[]>> = await http(urls.Salarytemplate.getsalaryitem.url, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n });\r\n return result;\r\n};\r\n\r\nconst getTemplateSalaryData = async (obj: CrudType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<ApiRepsonse<TemplateSalaryType>> = await http.get(`${urls.Salarytemplate.getsalary.url}${obj.id}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\nconst editTemplateSalaryData = async (obj: EditTemplateSalaryType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<CrudType> = await http.put(urls.Salarytemplate.editsalary.url, obj, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\nconst deleteTemplateSalary = async (obj: CrudType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<CrudType> = await http.delete(`${urls.Salarytemplate.deletesalary.url}${obj.id}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\n\r\nexport {\r\n getListTemplateSalars,\r\n getListDropdownTemplateSalars,\r\n createTemplateSalary,\r\n getTemplateSalaryData,\r\n editTemplateSalaryData,\r\n deleteTemplateSalary,\r\n uploadTemplateSalary,\r\n getItemTemplateSalary\r\n}","import { AxiosProgressEvent, AxiosResponse } from \"axios\";\r\nimport { listType } from \"common_panam\";\r\nimport { http, httpFile, httpPdf } from \"../../axios\";\r\nimport { ConfirmContractType, CotractType, GetWithNameContractType, UploadContractType } from \"../../types/contract\";\r\nimport { CrudType, ListApiRepsonse, ListDropDownReponse } from \"../../types/global\";\r\nimport { urls } from \"../../Urls/urls\";\r\n\r\nconst url = urls.contract\r\n\r\nconst getListContracts = async (obj: listType, tenantId: string) => {\r\n const result: AxiosResponse<ListApiRepsonse<CotractType>> = await http.get(`${url.list}?filter=${obj.filter}&pageIndex=${obj.pageIndex}&sort=${obj.sort}&pageSize=${obj.pageSize}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n }\r\n })\r\n return result\r\n}\r\n\r\nconst getListContractsPerson = async (obj: listType, personId: number, tenantId: string) => {\r\n const result: AxiosResponse<ListApiRepsonse<CotractType>> = await http.get(`${url.cotract}${personId}?filter=${obj.filter}&pageIndex=${obj.pageIndex}&sort=${obj.sort}&pageSize=${obj.pageSize}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n }\r\n })\r\n return result\r\n}\r\nconst getContractWithFileName = async (obj: GetWithNameContractType, tenantId: string,) => {\r\n const result: any = await httpPdf.get(`${url.download}/${obj.fileName}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n },\r\n responseType: 'blob'\r\n })\r\n return result\r\n}\r\nconst confirmContract = async (obj: ConfirmContractType, tenantId: string,) => {\r\n const result: any = await http.put(`${url.download}${obj.contractId}/${obj.contractCode}`, {}, {\r\n headers: {\r\n TenantId: tenantId,\r\n },\r\n })\r\n return result\r\n}\r\nconst uploadContracts = async (\r\n obj: UploadContractType, tenantId: string, onUploadProgress?: (progressEvent: AxiosProgressEvent) => void\r\n) => {\r\n const formData = new FormData()\r\n formData.append(\"File\", obj.File)\r\n formData.append(\"From\", obj.From)\r\n formData.append(\"To\", obj.To)\r\n if (obj.Title) {\r\n formData.append(\"Title\", obj.Title)\r\n }\r\n\r\n\r\n const result: AxiosResponse<CrudType> = await httpFile.post(url.uploads, formData, {\r\n headers: {\r\n 'Content-Type': 'multipart/form-data',\r\n TenantId: tenantId\r\n },\r\n onUploadProgress\r\n });\r\n return result;\r\n}\r\n\r\nexport {\r\n confirmContract, getContractWithFileName, getListContracts,\r\n getListContractsPerson, uploadContracts\r\n};\r\n\r\n","\"use client\"\r\nimport { useMutation, useQuery, useQueryClient } from '@tanstack/react-query'\r\nimport { listType } from 'common_panam'\r\nimport { createTenant, CreateTenantType, CrudType, deleteTenant, editTenantData, EditTenantType, getListDropdownTenants, getListTenants } from '../../services'\r\n\r\nconst useTenant = (params: listType) => {\r\n const queryClient = useQueryClient()\r\n const { data, isPending, refetch, isRefetching } = useQuery({\r\n queryKey: [\"tenants\", params],\r\n queryFn: async ({ queryKey }: { queryKey: [string, listType] }) => {\r\n const result = await getListTenants(queryKey[1])\r\n \r\n return result.data\r\n },\r\n })\r\n\r\n const { isPending: createPending, mutate: createMutate } = useMutation({\r\n mutationFn: async (value: CreateTenantType) => {\r\n const res = await createTenant(value)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"tenants\"]\r\n })\r\n }\r\n })\r\n\r\n const { isPending: editPending, mutate: editMutate } = useMutation({\r\n mutationFn: async (value: EditTenantType) => {\r\n const res = await editTenantData(value)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"tenants\"]\r\n })\r\n }\r\n })\r\n\r\n const { isPending: deletePending, mutate: deleteMutate } = useMutation({\r\n mutationFn: async (value: CrudType) => {\r\n const res = await deleteTenant(value)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"tenants\"]\r\n })\r\n }\r\n })\r\n\r\n const { isPending: dropdownPending, mutate: dropdownMutate } = useMutation({\r\n mutationFn: async (value: listType) => {\r\n const res = await getListDropdownTenants(value)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"tenants\"]\r\n })\r\n }\r\n })\r\n\r\n return {\r\n tenantsList: {\r\n data,\r\n isPending,\r\n refetch,\r\n isRefetching,\r\n },\r\n createTenant: {\r\n createPending,\r\n createMutate,\r\n },\r\n editTenant: {\r\n editPending,\r\n editMutate,\r\n },\r\n deleteTenant: {\r\n deletePending,\r\n deleteMutate,\r\n },\r\n dropdownTenant: {\r\n dropdownPending,\r\n dropdownMutate,\r\n }\r\n }\r\n}\r\n\r\nexport default useTenant","import React from 'react'\r\nimport { getListDropdownTenants } from '../../services'\r\nimport { useQuery } from '@tanstack/react-query'\r\nimport { listType } from 'common_panam'\r\n\r\nconst useTenantDropdown = (params: listType) => {\r\n const { data, isPending, refetch, isRefetching } = useQuery({\r\n queryKey: [\"dropdowntenant\", params],\r\n queryFn: async ({ queryKey }: { queryKey: [string, listType] }) => {\r\n const res = await getListDropdownTenants(queryKey[1])\r\n return res.data\r\n },\r\n })\r\n return {\r\n tenantDropdown: {\r\n data,\r\n isPending,\r\n refetch,\r\n isRefetching,\r\n }\r\n }\r\n}\r\n\r\nexport default useTenantDropdown","\"use client\"\r\nimport { useMutation, useQueryClient } from '@tanstack/react-query'\r\nimport { uploadTenantLogo, UploadLogoTenantType } from '../../services'\r\n\r\n\r\n\r\nconst useTenantUpload = (tenantId: string, userId: string) => {\r\n const queryClient = useQueryClient()\r\n\r\n const { isPending: uploadlogoPending, mutate: uploadlogoMutate } = useMutation({\r\n mutationFn: async ({ value, onProgress }: { value: UploadLogoTenantType; onProgress: (percent: number) => void }) => {\r\n\r\n return uploadTenantLogo(value, tenantId, userId, (progressEvent) => {\r\n const percentCompleted = progressEvent.total ? Math.round((progressEvent.loaded / progressEvent.total) * 100) : 0\r\n onProgress(percentCompleted);\r\n });\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"tenants\"]\r\n })\r\n }\r\n })\r\n\r\n return {\r\n\r\n tenantLogoUpload: {\r\n uploadlogoPending,\r\n uploadlogoMutate\r\n },\r\n\r\n\r\n\r\n }\r\n}\r\n\r\nexport default useTenantUpload","\"use client\"\r\nimport { useMutation, useQuery, useQueryClient } from '@tanstack/react-query'\r\nimport { listType } from 'common_panam'\r\nimport { createDefaultAdmin, createPerson, CreatePersonType, createPersonUploadFile, CrudType, deleteperson, editPersonData, EditPersonType, getListDropdownPersons, getListPersons } from '../../services'\r\nimport { UploadFilePersonsType } from '../../services/types/person'\r\n\r\nconst usePerson = (params: listType, tenantId: string, userId: string) => {\r\n const queryClient = useQueryClient()\r\n const { data, isPending, refetch, isRefetching } = useQuery({\r\n queryKey: [\"persons\", params],\r\n queryFn: async ({ queryKey }: { queryKey: [string, listType] }) => {\r\n const result = await getListPersons(queryKey[1], tenantId, userId)\r\n return result.data\r\n },\r\n })\r\n\r\n const { isPending: createPending, mutate: createMutate } = useMutation({\r\n mutationFn: async (value: CreatePersonType) => {\r\n const res = await createPerson(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"persons\"]\r\n })\r\n }\r\n })\r\n // const { isPending: uploadFilePending, mutate: uploadFileMutate } = useMutation({\r\n // mutationFn: async (value: UploadFilePersonsType) => {\r\n // const res = await createPersonUploadFile(value, tenantId, userId)\r\n // return res.data\r\n // },\r\n // onSuccess: async () => {\r\n // const result = await queryClient.invalidateQueries({\r\n // queryKey: [\"persons\"]\r\n // })\r\n // }\r\n // })\r\n\r\n const { isPending: uploadFilePending, mutate: uploadFileMutate, data: uploadFileData } = useMutation({\r\n mutationFn: async ({ value, onProgress }: { value: UploadFilePersonsType; onProgress: (percent: number) => void }) => {\r\n return createPersonUploadFile(value, tenantId, userId, (progressEvent) => {\r\n const percentCompleted = progressEvent.total ? Math.round((progressEvent.loaded / progressEvent.total) * 100) : 0\r\n onProgress(percentCompleted); // ارسال درصد پیشرفت\r\n });\r\n },\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({\r\n queryKey: ['persons'],\r\n });\r\n },\r\n });\r\n const { isPending: createAdminPending, mutate: createAdminMutate } = useMutation({\r\n mutationFn: async (value: CreatePersonType) => {\r\n const res = await createDefaultAdmin(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"persons\"]\r\n })\r\n }\r\n })\r\n\r\n const { isPending: editPending, mutate: editMutate } = useMutation({\r\n mutationFn: async (value: EditPersonType) => {\r\n const res = await editPersonData(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"persons\"]\r\n })\r\n }\r\n })\r\n\r\n const { isPending: deletePending, mutate: deleteMutate } = useMutation({\r\n mutationFn: async (value: CrudType) => {\r\n const res = await deleteperson(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"persons\"]\r\n })\r\n }\r\n })\r\n\r\n const { isPending: dropdownPending, mutate: dropdownMutate } = useMutation({\r\n mutationFn: async (value: listType) => {\r\n const res = await getListDropdownPersons(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"persons\"]\r\n })\r\n }\r\n })\r\n\r\n return {\r\n peronsList: {\r\n data,\r\n isPending,\r\n refetch,\r\n isRefetching,\r\n },\r\n createPerson: {\r\n createPending,\r\n createMutate,\r\n },\r\n createAdminPerson: {\r\n createAdminPending,\r\n createAdminMutate,\r\n },\r\n editPerson: {\r\n editPending,\r\n editMutate,\r\n },\r\n deletePerson: {\r\n deletePending,\r\n deleteMutate,\r\n },\r\n dropdownPerson: {\r\n dropdownPending,\r\n dropdownMutate,\r\n },\r\n uploadFile: {\r\n uploadFilePending,\r\n uploadFileMutate,\r\n uploadFileData\r\n }\r\n }\r\n}\r\n\r\nexport default usePerson","import React from 'react'\r\nimport { getListDropdownPersons } from '../../services'\r\nimport { useQuery } from '@tanstack/react-query'\r\nimport { listType } from 'common_panam'\r\n\r\nconst usePersonDropdown = (params: listType, tenantId: string, userId: string) => {\r\n const { data, isPending, refetch, isRefetching } = useQuery({\r\n queryKey: [\"dropdownPersons\", params],\r\n queryFn: async ({ queryKey }: { queryKey: [string, listType] }) => {\r\n const res = await getListDropdownPersons(queryKey[1], tenantId, userId)\r\n return res.data\r\n },\r\n })\r\n\r\n\r\n\r\n return {\r\n personDropdown: {\r\n data,\r\n isPending,\r\n refetch,\r\n isRefetching,\r\n }\r\n }\r\n\r\n}\r\n\r\nexport default usePersonDropdown","\"use client\"\r\nimport { useMutation, useQueryClient } from '@tanstack/react-query'\r\nimport { listType } from 'common_panam'\r\nimport { createPersonUploadFile, CrudType, deleteperson, editPersonData, EditPersonType } from '../../services'\r\nimport { UploadFilePersonsType } from '../../services/types/person'\r\n\r\nconst useUploadPerson = (params: listType, tenantId: string, userId: string) => {\r\n const queryClient = useQueryClient()\r\n\r\n\r\n const { isPending: uploadFilePending, mutate: uploadFileMutate, data: uploadFileData } = useMutation({\r\n mutationFn: async ({ value, onProgress }: { value: UploadFilePersonsType; onProgress: (percent: number) => void }) => {\r\n return createPersonUploadFile(value, tenantId, userId, (progressEvent) => {\r\n const percentCompleted = progressEvent.total ? Math.round((progressEvent.loaded / progressEvent.total) * 100) : 0\r\n onProgress(percentCompleted); // ارسال درصد پیشرفت\r\n });\r\n },\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({\r\n queryKey: ['persons'],\r\n });\r\n },\r\n });\r\n const { isPending: editPending, mutate: editMutate } = useMutation({\r\n mutationFn: async (value: EditPersonType) => {\r\n const res = await editPersonData(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"persons\"]\r\n })\r\n }\r\n })\r\n\r\n const { isPending: deletePending, mutate: deleteMutate } = useMutation({\r\n mutationFn: async (value: CrudType) => {\r\n const res = await deleteperson(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"persons\"]\r\n })\r\n }\r\n })\r\n\r\n return {\r\n peronsList: {\r\n\r\n },\r\n editPerson: {\r\n editPending,\r\n editMutate,\r\n },\r\n deletePerson: {\r\n deletePending,\r\n deleteMutate,\r\n },\r\n\r\n uploadFile: {\r\n uploadFilePending,\r\n uploadFileMutate,\r\n uploadFileData\r\n }\r\n }\r\n}\r\n\r\nexport default useUploadPerson","\"use client\"\r\nimport { useMutation, useQuery, useQueryClient } from '@tanstack/react-query'\r\nimport { listType } from 'common_panam'\r\nimport { getTemplateSalaryData, getListTemplateSalars, createTemplateSalary, CreateTemplateSalaryType, CrudType, deleteTemplateSalary, EditTemplateSalaryType, editTemplateSalaryData, getListDropdownTemplateSalars, uploadTemplateSalary, UploadTemplateSalaryType, getItemTemplateSalary } from '../../services'\r\n\r\n\r\n\r\nconst useSalaryTemplate = (params: listType, tenantId: string, userId: string, enabled = true) => {\r\n const queryClient = useQueryClient()\r\n const { data, isPending, refetch, isRefetching } = useQuery({\r\n queryKey: [\"salarytemplate\", params],\r\n queryFn: async ({ queryKey }: { queryKey: [string, listType] }) => {\r\n const result = await getListTemplateSalars(queryKey[1], tenantId, userId)\r\n return result.data\r\n },\r\n enabled\r\n })\r\n const { isPending: createPending, mutate: createMutate } = useMutation({\r\n mutationFn: async (value: CreateTemplateSalaryType) => {\r\n const res = await createTemplateSalary(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"salarytemplate\"]\r\n })\r\n return result\r\n }\r\n })\r\n\r\n const { isPending: uploadTemplatePending, mutate: uploadtemplateMutate } = useMutation({\r\n mutationFn: async (value: UploadTemplateSalaryType) => {\r\n const res = await uploadTemplateSalary(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"salarytemplate\"]\r\n })\r\n }\r\n })\r\n\r\n\r\n\r\n const { isPending: editPending, mutate: editMutate } = useMutation({\r\n mutationFn: async (value: EditTemplateSalaryType) => {\r\n const res = await editTemplateSalaryData(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"salarytemplate\"]\r\n })\r\n }\r\n })\r\n\r\n const { isPending: deletePending, mutate: deleteMutate } = useMutation({\r\n mutationFn: async (value: CrudType) => {\r\n const res = await deleteTemplateSalary(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"salarytemplate\"]\r\n })\r\n }\r\n })\r\n\r\n const { isPending: getsalarytemplatePending, mutate: getsalarytemplateMutate } = useMutation({\r\n mutationFn: async (value: CrudType) => {\r\n const res = await getTemplateSalaryData(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"salarytemplate\"]\r\n })\r\n }\r\n })\r\n\r\n const { isPending: getItemTemplateSalaryPending, mutate: getItemTemplateSalaryMutate, data: categoryItemTemplates } = useMutation({\r\n mutationFn: async () => {\r\n const res = await getItemTemplateSalary( tenantId, userId)\r\n \r\n return res.data\r\n }\r\n })\r\n\r\n\r\n return {\r\n salaryTemplateList: {\r\n data,\r\n isPending,\r\n refetch,\r\n isRefetching,\r\n },\r\n createsalarytemplate: {\r\n createPending,\r\n createMutate,\r\n },\r\n editsalarytemplate: {\r\n editPending,\r\n editMutate,\r\n },\r\n deletesalarytemplate: {\r\n deletePending,\r\n deleteMutate,\r\n },\r\n getsalarytemplate: {\r\n getsalarytemplatePending,\r\n getsalarytemplateMutate,\r\n },\r\n uploadTemplateSalary: {\r\n uploadTemplatePending,\r\n uploadtemplateMutate\r\n },\r\n getItemTemplateSalary: {\r\n getItemTemplateSalaryPending,\r\n getItemTemplateSalaryMutate,\r\n categoryItemTemplates\r\n },\r\n\r\n }\r\n}\r\n\r\nexport default useSalaryTemplate","\"use client\"\r\nimport { useQuery } from '@tanstack/react-query'\r\nimport { listType } from 'common_panam'\r\nimport { getListDropdownTemplateSalars } from '../../services'\r\n\r\n\r\nconst useDropdownSalaryTemplate = (params: listType, tenantId: string, userId: string) => {\r\n\r\n const { data, isPending, refetch, isRefetching } = useQuery({\r\n queryKey: [\"salarytemplate\", params],\r\n queryFn: async ({ queryKey }: { queryKey: [string, listType] }) => {\r\n const result = await getListDropdownTemplateSalars(queryKey[1], tenantId,userId)\r\n return result.data\r\n },\r\n\r\n })\r\n\r\n return {\r\n salaryTemplateDropdown: {\r\n data,\r\n isPending,\r\n refetch,\r\n isRefetching,\r\n },\r\n\r\n }\r\n}\r\n\r\nexport default useDropdownSalaryTemplate","\"use client\"\r\nimport { useMutation, useQueryClient } from '@tanstack/react-query'\r\nimport { listType } from 'common_panam'\r\nimport { CrudType, deleteTemplateSalary, EditTemplateSalaryType, editTemplateSalaryData, uploadTemplateSalary, UploadTemplateSalaryType } from '../../services'\r\n\r\n\r\n\r\nconst useUploadSalaryTemplate = (tenantId: string, userId: string) => {\r\n const queryClient = useQueryClient()\r\n\r\n const { isPending: uploadTemplatePending, mutate: uploadtemplateMutate, data: uploadData } = useMutation({\r\n mutationFn: async ({ value, onProgress }: { value: UploadTemplateSalaryType; onProgress: (percent: number) => void }) => {\r\n\r\n return uploadTemplateSalary(value, tenantId, userId, (progressEvent) => {\r\n const percentCompleted = progressEvent.total ? Math.round((progressEvent.loaded / progressEvent.total) * 100) : 0\r\n onProgress(percentCompleted); // ارسال درصد پیشرفت\r\n });\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"salarytemplate\"]\r\n })\r\n }\r\n })\r\n\r\n\r\n\r\n const { isPending: editPending, mutate: editMutate } = useMutation({\r\n mutationFn: async (value: EditTemplateSalaryType) => {\r\n const res = await editTemplateSalaryData(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"salarytemplate\"]\r\n })\r\n }\r\n })\r\n\r\n const { isPending: deletePending, mutate: deleteMutate } = useMutation({\r\n mutationFn: async (value: CrudType) => {\r\n const res = await deleteTemplateSalary(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"salarytemplate\"]\r\n })\r\n }\r\n })\r\n\r\n\r\n return {\r\n\r\n editsalarytemplate: {\r\n editPending,\r\n editMutate,\r\n },\r\n deletesalarytemplate: {\r\n deletePending,\r\n deleteMutate,\r\n },\r\n uploadData,\r\n\r\n uploadTemplateSalary: {\r\n uploadTemplatePending,\r\n uploadtemplateMutate\r\n },\r\n\r\n\r\n\r\n }\r\n}\r\n\r\nexport default useUploadSalaryTemplate","\"use client\"\r\nimport React from 'react'\r\nimport { useQuery } from '@tanstack/react-query'\r\nimport { getTemplateSalaryData } from '../../services'\r\n\r\nconst useSalaryTemplateWithId = (templateId: string, tenantId: string, userId: string) => {\r\n\r\n const { data, isPending, refetch, isRefetching } = useQuery({\r\n queryKey: [\"salarytemplateItem\", templateId],\r\n queryFn: async ({ queryKey }: { queryKey: [string, string] }) => {\r\n const result = await getTemplateSalaryData({\r\n id: queryKey[1]\r\n }, tenantId, userId)\r\n return result.data\r\n },\r\n\r\n })\r\n\r\n\r\n\r\n return {\r\n salaryTemplateItem: {\r\n data,\r\n isPending,\r\n refetch,\r\n isRefetching,\r\n },\r\n }\r\n\r\n}\r\n\r\nexport default useSalaryTemplateWithId","\"use client\"\r\nimport { useMutation } from '@tanstack/react-query'\r\nimport { createSalaryData, CreateSalaryType, getSalaryData, getSalaryDataType } from '../../services'\r\nimport { getSalaryWithMonthAndYear, getSalaryWithMonthAndYearByAdmin } from '../../services/requests/mangeSalary/salary'\r\nimport { getSalaryDataWithMonthAndYearByAdminType, getSalaryDataWithMonthAndYearType } from '../../services/types/salary'\r\n\r\nconst useSalary = (tenantId: string) => {\r\n\r\n const { isPending: createPending, mutate: createMutate } = useMutation({\r\n mutationFn: async (value: CreateSalaryType) => {\r\n const res = await createSalaryData(value, tenantId)\r\n return res.data\r\n }\r\n })\r\n\r\n const { isPending: salaryDataPending, mutate: salaryDataMutate } = useMutation({\r\n mutationFn: async (value: getSalaryDataType) => {\r\n const res = await getSalaryData(value, tenantId)\r\n return res.data\r\n }\r\n })\r\n const { isPending: salaryDataWithMonthAndYearPending, mutate: salaryDataWithMonthAndYearMutate } = useMutation({\r\n mutationFn: async (value: getSalaryDataWithMonthAndYearType) => {\r\n const res = await getSalaryWithMonthAndYear(value, tenantId)\r\n\r\n return res.data\r\n }\r\n })\r\n\r\n\r\n const { isPending: salaryDataWithMonthAndYearByAdminPending, mutate: salaryDataWithMonthAndYearByAdminMutate } = useMutation({\r\n mutationFn: async (value: getSalaryDataWithMonthAndYearByAdminType) => {\r\n const res = await getSalaryWithMonthAndYearByAdmin(value, tenantId)\r\n\r\n return res.data\r\n }\r\n })\r\n\r\n\r\n\r\n\r\n return {\r\n\r\n createSalaryData: {\r\n createPending,\r\n createMutate,\r\n },\r\n getSalaryData: {\r\n salaryDataPending,\r\n salaryDataMutate,\r\n },\r\n getSalaryWithMonthAndYearData: {\r\n salaryDataWithMonthAndYearPending,\r\n salaryDataWithMonthAndYearMutate\r\n },\r\n getSalaryWithMonthAndYearByAdminData: {\r\n salaryDataWithMonthAndYearByAdminPending,\r\n salaryDataWithMonthAndYearByAdminMutate\r\n },\r\n\r\n }\r\n}\r\n\r\nexport default useSalary\r\n\r\n","\"use client\"\r\nimport { useMutation, useQuery, useQueryClient } from '@tanstack/react-query'\r\nimport { getUserInfo, sendOtpHandle, verifyOtpHandle } from '../../services/requests/login/login'\r\nimport { sendOtpType, verifyOtpType } from '../../services/types/login'\r\nimport Cookies from 'js-cookie'\r\n\r\nconst useLogin = (parmas: { enabled: boolean }) => {\r\n const queryClient = useQueryClient()\r\n const { data, isPending, refetch } = useQuery({\r\n queryKey: [\"user\"],\r\n queryFn: async () => {\r\n const accessToken = Cookies.get(\"accessToken\")\r\n if (accessToken) {\r\n const res = await getUserInfo()\r\n return res\r\n } else {\r\n throw new Error(\"لطفا ابتدا وارد شوید\")\r\n }\r\n },\r\n enabled: parmas.enabled,\r\n retry: 3\r\n })\r\n\r\n\r\n const { isPending: sendOtpPending, mutate: sendOtpMutate } = useMutation({\r\n mutationFn: async (value: sendOtpType) => {\r\n const res = await sendOtpHandle(value)\r\n return res.data\r\n },\r\n onSuccess: async (data) => {\r\n const test = queryClient.removeQueries({\r\n queryKey: [\"user\"]\r\n })\r\n \r\n }\r\n })\r\n const { isPending: verifyOtpPending, mutate: verifyOtpMutate } = useMutation({\r\n mutationFn: async (value: verifyOtpType) => {\r\n const res = await verifyOtpHandle(value)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.refetchQueries({\r\n queryKey: [\"user\"]\r\n })\r\n },\r\n })\r\n const { isPending: logOutPending, mutate: logOutMutate } = useMutation({\r\n mutationFn: async () => {\r\n Cookies.remove(\"accessToken\")\r\n queryClient.removeQueries({\r\n queryKey: ['user']\r\n })\r\n }\r\n })\r\n\r\n return {\r\n userInfo: {\r\n data, isPending, refetch\r\n },\r\n sendOtp: {\r\n sendOtpPending,\r\n sendOtpMutate\r\n },\r\n verifyOtp: {\r\n verifyOtpPending,\r\n verifyOtpMutate\r\n },\r\n logout: {\r\n logOutPending,\r\n logOutMutate\r\n }\r\n }\r\n\r\n}\r\n\r\nexport default useLogin\r\n","import { AxiosResponse } from \"axios\";\r\nimport { ApiRepsonse } from \"../../types/global\";\r\nimport { sendOtpType, userInfoType, verifyOtpType } from \"../../types/login\";\r\nimport { urls } from \"../../Urls/urls\";\r\nimport { http } from \"../../axios\";\r\n\r\n\r\n\r\nconst sendOtpHandle = async (obj: sendOtpType) => {\r\n const res: AxiosResponse<ApiRepsonse<{}>> = await http.get(`${urls.auth.sendOtp.url}?mobile=${obj.mobile}`)\r\n return res.data\r\n}\r\nconst verifyOtpHandle = async (obj: verifyOtpType) => {\r\n const res: AxiosResponse<ApiRepsonse<userInfoType>> = await http.post(`${urls.auth.verifyOtp.url}`, obj)\r\n return res.data\r\n}\r\nconst getUserInfo = async () => {\r\n const res: AxiosResponse<ApiRepsonse<userInfoType>> = await http.get(`${urls.auth.userInfo.url}`)\r\n return res.data\r\n}\r\n\r\n\r\nexport { sendOtpHandle, verifyOtpHandle, getUserInfo };\r\n","\"use client\"\r\nimport { useMutation, useQuery, useQueryClient } from '@tanstack/react-query'\r\nimport { listType } from 'common_panam'\r\nimport { ConfirmContractType, GetWithNameContractType, UploadContractType } from '../../services'\r\nimport { confirmContract, getContractWithFileName, getListContracts, uploadContracts } from '../../services/requests/manageContract'\r\n\r\nconst useContract = (params: listType, tenantId: string , enabled?: boolean) => {\r\n const queryClient = useQueryClient()\r\n const { data, isPending, refetch, isRefetching } = useQuery({\r\n queryKey: [\"contracts\", params],\r\n queryFn: async ({ queryKey }: { queryKey: [string, listType] }) => {\r\n const result = await getListContracts(queryKey[1], tenantId)\r\n return result.data\r\n },\r\n enabled : enabled === false ? false : true\r\n })\r\n const { isPending: downLoadPending, mutate: downLoadMutate } = useMutation({\r\n mutationFn: async (value: GetWithNameContractType) => {\r\n const res = await getContractWithFileName(value, tenantId)\r\n\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"contracts\"]\r\n })\r\n },\r\n })\r\n const { isPending: confirmPending, mutate: confirmMutate } = useMutation({\r\n mutationFn: async (value:ConfirmContractType ) => {\r\n const res = await confirmContract(value, tenantId)\r\n\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"contracts\"]\r\n })\r\n }\r\n })\r\n const { isPending: uploadFilePending, mutate: uploadFileMutate, data: uploadFileData } = useMutation({\r\n mutationFn: async ({ value, onProgress }: {\r\n value: UploadContractType; onProgress: (percent: number) => void\r\n }) => {\r\n return uploadContracts(value, tenantId, (progressEvent) => {\r\n const percentCompleted = progressEvent.total ? Math.round((progressEvent.loaded / progressEvent.total) * 100) : 0\r\n onProgress(percentCompleted); // ارسال درصد پیشرفت\r\n });\r\n },\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({\r\n queryKey: ['contracts'],\r\n });\r\n },\r\n });\r\n\r\n return {\r\n contractsList: {\r\n data,\r\n isPending,\r\n refetch,\r\n isRefetching,\r\n },\r\n downloadContract: {\r\n downLoadPending,\r\n downLoadMutate,\r\n },\r\n uploadContracts: {\r\n uploadFilePending,\r\n uploadFileMutate,\r\n uploadFileData\r\n },\r\n confirmContract: {\r\n confirmPending,\r\n confirmMutate\r\n }\r\n }\r\n\r\n}\r\n\r\nexport default useContract\r\n","\"use client\"\r\nimport { useQuery } from '@tanstack/react-query'\r\nimport { listType } from 'common_panam'\r\nimport { getListContractsPerson } from '../../services'\r\n\r\nconst useContractPerson = (params: listType, tenantId: string, personId: number) => {\r\n const { data, isPending, refetch, isRefetching } = useQuery({\r\n queryKey: [\"contracts\", params],\r\n queryFn: async ({ queryKey }: { queryKey: [string, listType] }) => {\r\n const result = await getListContractsPerson(queryKey[1], personId, tenantId)\r\n return result.data\r\n },\r\n })\r\n return {\r\n contractsPersonList: {\r\n data,\r\n isPending,\r\n refetch,\r\n isRefetching,\r\n },\r\n }\r\n}\r\n\r\nexport default useContractPerson\r\n","// src/QueryProvider.tsx\r\nimport React, { ReactNode, useState } from 'react';\r\nimport { QueryClient, QueryClientProvider } from '@tanstack/react-query';\r\n\r\n\r\ninterface QueryProviderProps {\r\n children: ReactNode;\r\n}\r\n\r\nconst QueryProvider: React.FC<QueryProviderProps> = ({ children }) => {\r\n const [queryClient] = useState(() => new QueryClient({\r\n defaultOptions: {\r\n \r\n queries: {\r\n refetchInterval: false,\r\n gcTime: 1000 * 60 * 10,\r\n staleTime: 1000 * 60 * 10,\r\n refetchOnWindowFocus: false,\r\n retry: 3\r\n },\r\n\r\n }\r\n },\r\n\r\n ));\r\n return (\r\n <QueryClientProvider client={queryClient}>\r\n {children}\r\n </QueryClientProvider>\r\n );\r\n};\r\n\r\nexport default QueryProvider;\r\n","import * as yup from 'yup'\r\n\r\n\r\n\r\nconst createTenantSchema = yup.object({\r\n name: yup.string().required(\"نام مجموعه الزامی میباشد\")\r\n})\r\n\r\n\r\nconst createTenantFileSchema = yup.object({\r\n File: yup.string().required(\" فایل الزامی میباشد\"),\r\n})\r\nconst getSalaryDataSchema = yup.object({\r\n guid: yup.string().required(\" شناسه فیش حقوقی الزامی میباشد\"),\r\n})\r\n\r\nconst createPersonSchema = yup.object({\r\n firstName: yup.string().required(\"نام الزامی میباشد\"),\r\n lastName: yup.string().required(\"نام خانوادگی الزامی میباشد\"),\r\n nationalId: yup.string().required(\"کد ملی الزامی میباشد\"),\r\n personnelId: yup.string().required(\"شماره پرسنلی الزامی میباشد\"),\r\n mobile: yup.string().required(\"موبایل الزامی میباشد\"),\r\n tenantId: yup.string().required(\".انتخاب مجموعه الزامی میباشد\")\r\n})\r\n\r\n\r\nconst createPersonUploadSchema = yup.object({\r\n File: yup.string().required(\" فایل الزامی میباشد\"),\r\n})\r\n\r\nconst logoUploadSchema = yup.object({\r\n File: yup\r\n .mixed<File>()\r\n .required(\"انتخاب فایل الزامی میباشد\"),\r\n tenantId: yup.string().required(\"شناسه الزامی میباشد\")\r\n})\r\n\r\n\r\nconst createTemplateSalarySchema = yup.object({\r\n templateName: yup.string().required(\"نام قالب فیش حقوقی الزامی میباشد\"),\r\n reportFileName: yup.string().required(\"عنوان فایل خروجی الزامی میباشد\"),\r\n colMappings: yup\r\n .array()\r\n .of(\r\n yup.object({\r\n colHeader: yup.string().required(\"عنوان ستون الزامی میباشد\"),\r\n colIndex: yup.number().required(),\r\n itemCategory: yup.number().required(),\r\n itemFormat: yup.number().required(),\r\n })\r\n )\r\n .required(\"colMappings الزامی است\") // اضافه کردن شرط required\r\n .default([]), // مقدار پیش‌فرض به عنوان آرایه خالی\r\n fixedItemMappings: yup\r\n .array()\r\n .of(\r\n yup.object({\r\n itemCategory: yup.number().required(),\r\n itemFormat: yup.number().required(),\r\n title: yup.string(),\r\n value: yup.string(),\r\n })\r\n )\r\n .required(\"fixedItemMappings الزامی است\") // اضافه کردن شرط required\r\n .default([]), // مقدار پیش‌فرض به عنوان آرایه خالی\r\n});\r\n\r\n\r\nconst createTemplateSalaryuploadSchema = yup.object({\r\n File: yup.string().required(\" فایل الزامی میباشد\"),\r\n})\r\n\r\nconst CreateSalarySchema = yup.object({\r\n TemplateId: yup.string().required(\"شناسه الگو فیش الزامی میباشد\"),\r\n Year: yup.string().required(\"سال الزامی میباشد\"),\r\n Month: yup.string().required(\"ماه الزامی میباشد\"),\r\n File: yup\r\n .mixed<File>()\r\n .required(\"انتخاب فایل الزامی میباشد\")\r\n})\r\n\r\nconst UploadContractSchema = yup.object({\r\n From: yup.string().required(\"شروع قراردادها الزامی میباشد\"),\r\n To: yup.string().required(\"اتمام قراردادها الزامی میباشد\"),\r\n // Title: yup.string().required(\"عنوان الزامی میباشد\"),\r\n File: yup\r\n .mixed<File>()\r\n .required(\"انتخاب فایل الزامی میباشد\")\r\n})\r\n\r\n\r\nconst CreateRoleSchema = yup.object({\r\n name: yup.string().required(\" نام الزامی میباشد\"),\r\n des: yup.string().required(\" توضیحات الزامی میباشد\"),\r\n})\r\n\r\n\r\n\r\n\r\nexport {\r\n createTenantSchema, createPersonSchema, createTemplateSalarySchema, CreateSalarySchema, CreateRoleSchema, createTenantFileSchema, createTemplateSalaryuploadSchema, createPersonUploadSchema, logoUploadSchema,\r\n getSalaryDataSchema, UploadContractSchema\r\n}"],"mappings":"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","names":["index_exports","__export","CreateRoleSchema","CreateSalarySchema","ReactQueryProvider_default","UploadContractSchema","confirmContract","createDefaultAdmin","createPerson","createPersonSchema","createPersonUploadFile","createPersonUploadSchema","createRole","createSalaryData","createTemplateSalary","createTemplateSalarySchema","createTemplateSalaryuploadSchema","createTenant","createTenantFileSchema","createTenantSchema","deleteRole","deleteTemplateSalary","deleteTenant","deleteperson","editPersonData","editRoleData","editTemplateSalaryData","editTenantData","getContractWithFileName","getItemTemplateSalary","getListContracts","getListContractsPerson","getListDropdownPersons","getListDropdownRoles","getListDropdownTemplateSalars","getListDropdownTenants","getListPersons","getListRoles","getListTemplateSalars","getListTenants","getPersonData","getRoleData","getSalaryData","getSalaryDataSchema","getSalaryWithMonthAndYear","getSalaryWithMonthAndYearByAdmin","getTemplateSalaryData","getTenantData","logoUploadSchema","uploadContracts","uploadTemplateSalary","uploadTenantLogo","urls","useContract_default","useContractPerson_default","useDropdownSalaryTemplate_default","useLogin_default","usePerson_default","usePersonDropdown_default","usePersonUpload_default","useSalary_default","useSalaryTemplate_default","useSalaryTemplateWithId_default","useTenant_default","useTenantDropdown_default","useTenantUpload_default","useUploadSalaryTemplate_default","__toCommonJS","urls","import_common_panam","http","httpPdf","httpFile","getListPersons","obj","tenantId","userId","__async","http","urls","getListDropdownPersons","createPerson","createDefaultAdmin","createPersonUploadFile","onUploadProgress","formData","httpFile","getPersonData","editPersonData","deleteperson","getListRoles","obj","tenantId","userId","__async","http","urls","getListDropdownRoles","createRole","getRoleData","editRoleData","deleteRole","getListTenants","obj","__async","http","urls","getListDropdownTenants","createTenant","uploadTenantLogo","tenantId","userId","onUploadProgress","formData","httpFile","getTenantData","editTenantData","deleteTenant","createSalaryData","obj","tenantId","__async","formData","httpFile","urls","getSalaryData","http","getSalaryWithMonthAndYear","httpPdf","getSalaryWithMonthAndYearByAdmin","getListTemplateSalars","obj","tenantId","userId","__async","http","urls","getListDropdownTemplateSalars","createTemplateSalary","uploadTemplateSalary","onUploadProgress","formData","httpFile","getItemTemplateSalary","getTemplateSalaryData","editTemplateSalaryData","deleteTemplateSalary","url","urls","getListContracts","obj","tenantId","__async","http","getListContractsPerson","personId","getContractWithFileName","httpPdf","confirmContract","uploadContracts","onUploadProgress","formData","httpFile","import_react_query","useTenant","params","queryClient","data","isPending","refetch","isRefetching","_0","__async","queryKey","getListTenants","createPending","createMutate","value","createTenant","result","editPending","editMutate","editTenantData","deletePending","deleteMutate","deleteTenant","dropdownPending","dropdownMutate","getListDropdownTenants","useTenant_default","import_react_query","useTenantDropdown","params","data","isPending","refetch","isRefetching","_0","__async","queryKey","getListDropdownTenants","useTenantDropdown_default","import_react_query","useTenantUpload","tenantId","userId","queryClient","uploadlogoPending","uploadlogoMutate","_0","__async","value","onProgress","uploadTenantLogo","progressEvent","percentCompleted","result","useTenantUpload_default","import_react_query","usePerson","params","tenantId","userId","queryClient","data","isPending","refetch","isRefetching","_0","__async","queryKey","getListPersons","createPending","createMutate","value","createPerson","result","uploadFilePending","uploadFileMutate","uploadFileData","onProgress","createPersonUploadFile","progressEvent","percentCompleted","createAdminPending","createAdminMutate","createDefaultAdmin","editPending","editMutate","editPersonData","deletePending","deleteMutate","deleteperson","dropdownPending","dropdownMutate","getListDropdownPersons","usePerson_default","import_react_query","usePersonDropdown","params","tenantId","userId","data","isPending","refetch","isRefetching","_0","__async","queryKey","getListDropdownPersons","usePersonDropdown_default","import_react_query","useUploadPerson","params","tenantId","userId","queryClient","uploadFilePending","uploadFileMutate","uploadFileData","_0","__async","value","onProgress","createPersonUploadFile","progressEvent","percentCompleted","editPending","editMutate","editPersonData","result","deletePending","deleteMutate","deleteperson","usePersonUpload_default","import_react_query","useSalaryTemplate","params","tenantId","userId","enabled","queryClient","data","isPending","refetch","isRefetching","_0","__async","queryKey","getListTemplateSalars","createPending","createMutate","value","createTemplateSalary","uploadTemplatePending","uploadtemplateMutate","uploadTemplateSalary","result","editPending","editMutate","editTemplateSalaryData","deletePending","deleteMutate","deleteTemplateSalary","getsalarytemplatePending","getsalarytemplateMutate","getTemplateSalaryData","getItemTemplateSalaryPending","getItemTemplateSalaryMutate","categoryItemTemplates","getItemTemplateSalary","useSalaryTemplate_default","import_react_query","useDropdownSalaryTemplate","params","tenantId","userId","data","isPending","refetch","isRefetching","_0","__async","queryKey","getListDropdownTemplateSalars","useDropdownSalaryTemplate_default","import_react_query","useUploadSalaryTemplate","tenantId","userId","queryClient","uploadTemplatePending","uploadtemplateMutate","uploadData","_0","__async","value","onProgress","uploadTemplateSalary","progressEvent","percentCompleted","result","editPending","editMutate","editTemplateSalaryData","deletePending","deleteMutate","deleteTemplateSalary","useUploadSalaryTemplate_default","import_react_query","useSalaryTemplateWithId","templateId","tenantId","userId","data","isPending","refetch","isRefetching","_0","__async","queryKey","getTemplateSalaryData","useSalaryTemplateWithId_default","import_react_query","useSalary","tenantId","createPending","createMutate","value","__async","createSalaryData","salaryDataPending","salaryDataMutate","getSalaryData","salaryDataWithMonthAndYearPending","salaryDataWithMonthAndYearMutate","getSalaryWithMonthAndYear","salaryDataWithMonthAndYearByAdminPending","salaryDataWithMonthAndYearByAdminMutate","getSalaryWithMonthAndYearByAdmin","useSalary_default","import_react_query","sendOtpHandle","obj","__async","http","urls","verifyOtpHandle","getUserInfo","import_js_cookie","useLogin","parmas","queryClient","data","isPending","refetch","__async","Cookies","getUserInfo","sendOtpPending","sendOtpMutate","value","sendOtpHandle","test","verifyOtpPending","verifyOtpMutate","verifyOtpHandle","result","logOutPending","logOutMutate","useLogin_default","import_react_query","useContract","params","tenantId","enabled","queryClient","data","isPending","refetch","isRefetching","_0","__async","queryKey","getListContracts","downLoadPending","downLoadMutate","value","getContractWithFileName","result","confirmPending","confirmMutate","confirmContract","uploadFilePending","uploadFileMutate","uploadFileData","onProgress","uploadContracts","progressEvent","percentCompleted","useContract_default","import_react_query","useContractPerson","params","tenantId","personId","data","isPending","refetch","isRefetching","_0","__async","queryKey","getListContractsPerson","useContractPerson_default","import_react","import_react_query","import_jsx_runtime","QueryProvider","children","queryClient","ReactQueryProvider_default","yup","createTenantSchema","createTenantFileSchema","getSalaryDataSchema","createPersonSchema","createPersonUploadSchema","logoUploadSchema","createTemplateSalarySchema","createTemplateSalaryuploadSchema","CreateSalarySchema","UploadContractSchema","CreateRoleSchema"]}
1
+ {"version":3,"sources":["../src/index.ts","../src/services/Urls/urls.ts","../src/services/axios.ts","../src/services/requests/managePerson/person.ts","../src/services/requests/manageRole/role.ts","../src/services/requests/manageTenant/tenant.ts","../src/services/requests/mangeSalary/salary.ts","../src/services/requests/mangeSalaryTemplate/salaryTemplates.ts","../src/services/requests/manageContract/contract.ts","../src/hooks/useTenant/useTenant.tsx","../src/hooks/useTenant/useTenantDropdown.tsx","../src/hooks/useTenant/useTenantUpload.tsx","../src/hooks/usePerson/usePerson.tsx","../src/hooks/usePerson/usePersonDropdown.tsx","../src/hooks/usePerson/usePersonUpload.tsx","../src/hooks/useSalaryTemplate/useSalaryTemplate.tsx","../src/hooks/useSalaryTemplate/useDropdownSalaryTemplate.tsx","../src/hooks/useSalaryTemplate/useUploadSalaryTemplate.tsx","../src/hooks/useSalaryTemplate/useSalaryTemplateWithId.tsx","../src/hooks/useSalary/useSalary.tsx","../src/hooks/useLogin/useLogin.tsx","../src/services/requests/login/login.ts","../src/hooks/useContract/useContract.tsx","../src/hooks/useContract/useContractPerson.tsx","../src/providers/ReactQueryProvider.tsx","../src/validations/validations.ts"],"sourcesContent":["export * from \"./services/index\"\r\nexport * from \"./hooks/index\"\r\nexport * from \"./providers/index\"\r\nexport * from \"./validations/index\"","\r\nexport const urls = {\r\n auth : {\r\n sendOtp : {\r\n url : \"auth/send-otp\"\r\n },\r\n verifyOtp : {\r\n url : \"auth/verify-otp\"\r\n },\r\n userInfo : {\r\n url : \"auth/get-user-info-by-token\"\r\n },\r\n },\r\n Person: {\r\n create: {\r\n url: \"/person/create-default-admin\"\r\n },\r\n upload: {\r\n url: \"/person/upload-person-batch-file\"\r\n },\r\n createperson: {\r\n url: \"/person\"\r\n },\r\n getperson: {\r\n url: \"/person/\"\r\n },\r\n deleteperson: {\r\n url: \"/person/\"\r\n },\r\n getlistpersones: {\r\n url: \"/person/list\"\r\n },\r\n getdropdownlist: {\r\n url: \"/person/dropdown-list\"\r\n },\r\n editperson: {\r\n url: \"/person\"\r\n },\r\n },\r\n Role:{\r\n getrole:{\r\n url:\"/role/\"\r\n },\r\n delete:{\r\n url:\"/role/\"\r\n },\r\n getlistrole:{\r\n url:\"/role/list\"\r\n },\r\n getdropdownlist:{\r\n url:\"/role/dropdown-list\"\r\n },\r\n create:{\r\n url:\"/role\"\r\n },\r\n editrole:{\r\n url:\"/role\"\r\n },\r\n },\r\n Salary: {\r\n create: {\r\n url: \"/salary/upload-monthly-salary-excel\"\r\n },\r\n getdownloadsalary: {\r\n url: \"/salary/download-salary-slip/\"\r\n },\r\n getSalaryWithMonthAndYear : {\r\n url : \"salary/download-salary-slip\"\r\n },\r\n getSalaryWithMonthAndYearAdmin : {\r\n url : \"salary/download-salary-slip-by-admin\"\r\n }\r\n },\r\n Salarytemplate: {\r\n create: {\r\n url: \"/salarytemplate\"\r\n },\r\n uploadtemplate: {\r\n url: \"/salarytemplate/upload-template-and-get-column-headers\"\r\n },\r\n getsalaryitem: {\r\n url: \"/salarytemplate/get-salary-item-category-dropdown-list\"\r\n },\r\n getsalary: {\r\n url: \"/salarytemplate/\"\r\n },\r\n deletesalary: {\r\n url: \"/salarytemplate/\"\r\n },\r\n getlistsalary: {\r\n url: \"/salarytemplate/list\"\r\n },\r\n getdropdownlist: {\r\n url: \"/salarytemplate/dropdown-list\"\r\n },\r\n editsalary: {\r\n url: \"/salarytemplate\"\r\n },\r\n\r\n },\r\n Tenant: {\r\n uploadlogo: {\r\n url: \"/tenant/upload-logo\"\r\n },\r\n createtenant: {\r\n url: \"/tenant\"\r\n },\r\n\r\n gettenant: {\r\n url: \"/tenant/\"\r\n },\r\n deletetenant: {\r\n url: \"/tenant/\"\r\n },\r\n gettenantlist: {\r\n url: \"/tenant/list\"\r\n },\r\n getdropdownlist: {\r\n url: \"/tenant/dropdown-list\"\r\n },\r\n editenant: {\r\n url: \"/tenant\"\r\n },\r\n \r\n },\r\n contract :{\r\n uploads : \"/contract/upload-contracts\",\r\n confirm :\"/contract/confirm-contracts/\",\r\n download : \"/contract/download-employment-contract\" ,\r\n list :\"/contract/get-contracts-list\",\r\n cotract : \"/contract/get-contracts-list/\"\r\n }\r\n};","import { createAxiosInstance } from \"common_panam\";\r\n\r\nconst http = createAxiosInstance({\r\n baseURL: \"https://salary-slip.arenapp.ir\",\r\n headers: {\r\n \"Content-Type\": \"application/json\"\r\n }\r\n})\r\nconst httpPdf = createAxiosInstance({\r\n baseURL: \"https://salary-slip.arenapp.ir\",\r\n headers: {\r\n \"Accept\": \"application/pdf\"\r\n }\r\n})\r\n\r\n\r\nconst httpFile = createAxiosInstance({\r\n baseURL: \"https://salary-slip.arenapp.ir\",\r\n headers: {\r\n 'Content-Type': 'multipart/form-data',\r\n }\r\n});\r\n\r\n\r\nexport { http, httpFile, httpPdf } ","import { listType } from \"common_panam\";\r\nimport { CreatePersonType, EditPersonType, ListPersonDropDownType, ListPersonType, PersonType, UploadFilePersonsType } from \"../../types/person\";\r\nimport { http, httpFile } from \"../../axios\";\r\nimport { CrudType, ListApiRepsonse, ListDropDownReponse } from \"../../types/global\";\r\nimport { urls } from \"../../Urls/urls\";\r\nimport { AxiosProgressEvent, AxiosResponse } from \"axios\";\r\n\r\n\r\n\r\nconst getListPersons = async (obj: listType, tenantId: string, userId: string) => {\r\n const result:AxiosResponse<ListApiRepsonse<PersonType>> = await http.get(`${urls.Person.getlistpersones.url}?filter=${obj.filter}&pageIndex=${obj.pageIndex}&sort=${obj.sort}&pageSize=${obj.pageSize}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\n\r\nconst getListDropdownPersons = async (obj: listType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<ListDropDownReponse> = await http.get(`${urls.Person.getdropdownlist.url}?filter=${obj.filter}&pageIndex=${obj.pageIndex}&sort=${obj.sort}&pageSize=${obj.pageSize}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\n\r\nconst createPerson = async (obj: CreatePersonType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<CrudType> = await http.post(urls.Person.createperson.url, obj, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n });\r\n return result;\r\n};\r\nconst createDefaultAdmin = async (obj: CreatePersonType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<CrudType> = await http.post(urls.Person.create.url, obj, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n });\r\n return result;\r\n};\r\nconst createPersonUploadFile = async (obj: UploadFilePersonsType, tenantId: string, userId: string, onUploadProgress?: (progressEvent: AxiosProgressEvent) => void) => {\r\n const formData = new FormData()\r\n formData.append(\"File\", obj.File)\r\n formData.append(\"TenantId\", obj.TenantId)\r\n\r\n\r\n const result: AxiosResponse<CrudType> = await httpFile.post(urls.Person.upload.url, formData, {\r\n headers: {\r\n 'Content-Type': 'multipart/form-data',\r\n TenantId: tenantId,\r\n UserId: userId,\r\n },\r\n onUploadProgress\r\n });\r\n return result;\r\n};\r\nconst getPersonData = async (obj: CrudType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<PersonType> = await http.get(`${urls.Person.getperson.url}${obj.id}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\nconst editPersonData = async (obj: EditPersonType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<CrudType> = await http.put(urls.Person.editperson.url, obj, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\nconst deleteperson = async (obj: CrudType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<CrudType> = await http.delete(`${urls.Person.deleteperson.url}${obj.id}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\n\r\n\r\nexport {\r\n createPerson,\r\n createPersonUploadFile,\r\n getPersonData,\r\n editPersonData,\r\n deleteperson,\r\n getListPersons,\r\n getListDropdownPersons,\r\n createDefaultAdmin\r\n}","import { AxiosResponse } from \"axios\";\r\nimport { listType } from \"common_panam\";\r\nimport { http } from \"../../axios\";\r\nimport { CrudType, ListApiRepsonse, ListDropDownReponse } from \"../../types/global\";\r\nimport { CreateRoleType, EditRoleType, RoleType } from \"../../types/role\";\r\nimport { urls } from \"../../Urls/urls\";\r\n\r\n\r\n\r\nconst getListRoles = async (obj: listType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<ListApiRepsonse<RoleType>> = await http.get(`${urls.Role.getlistrole.url}?filter=${obj.filter}&pageIndex=${obj.pageIndex}&sort=${obj.sort}&pageSize=${obj.pageSize}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\nconst getListDropdownRoles = async (obj: listType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<ListDropDownReponse> = await http.get(`${urls.Role.getdropdownlist.url}?filter=${obj.filter}&pageIndex=${obj.pageIndex}&sort=${obj.sort}&pageSize=${obj.pageSize}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\n\r\nconst createRole = async (obj: CreateRoleType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<CrudType> = await http.post(urls.Role.create.url, obj, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n });\r\n return result;\r\n};\r\n\r\n\r\nconst getRoleData = async (obj: CrudType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<RoleType> = await http.get(`${urls.Role.getrole.url}${obj.id}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\nconst editRoleData = async (obj: EditRoleType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<CrudType> = await http.put(urls.Role.editrole.url, obj, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\nconst deleteRole = async (obj: CrudType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<CrudType> = await http.delete(`${urls.Role.delete.url}${obj.id}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\n\r\n\r\nexport {\r\n createRole, deleteRole, editRoleData, getListDropdownRoles, getListRoles, getRoleData\r\n};\r\n\r\n\r\n","import { AxiosProgressEvent, AxiosResponse } from \"axios\"\r\nimport { listType } from \"common_panam\"\r\nimport { http, httpFile } from \"../../axios\"\r\nimport { urls } from \"../../Urls/urls\"\r\nimport { CreateTenantType, EditTenantType, ListTenantType, TenantType, UploadLogoTenantType } from \"../../types/tenant\"\r\nimport { CrudType, ListApiRepsonse, ListDropDownReponse } from \"../../types/global\"\r\nimport { ListPersonDropDownType } from \"../../types/person\"\r\n\r\n\r\nconst getListTenants = async (obj: listType) => {\r\n const result: AxiosResponse<ListApiRepsonse<TenantType>> = await http.get(`${urls.Tenant.gettenantlist.url}?filter=${obj.filter}&pageIndex=${obj.pageIndex}&sort=${obj.sort}&pageSize=${obj.pageSize}`, {\r\n headers: {\r\n TenantId: \"1\",\r\n UserId: \"1\"\r\n }\r\n })\r\n \r\n return result\r\n \r\n}\r\nconst getListDropdownTenants = async (obj: listType) => {\r\n const result: AxiosResponse<ListDropDownReponse> = await http.get(`${urls.Tenant.getdropdownlist.url}?filter=${obj.filter}&pageIndex=${obj.pageIndex}&sort=${obj.sort}&pageSize=${obj.pageSize}`, {\r\n headers: {\r\n TenantId: \"1\",\r\n UserId: \"1\"\r\n }\r\n })\r\n return result\r\n}\r\n\r\nconst createTenant = async (obj: CreateTenantType) => {\r\n const result: AxiosResponse<CrudType> = await http.post(urls.Tenant.createtenant.url, obj, {\r\n headers: {\r\n TenantId: \"1\",\r\n UserId: \"1\"\r\n }\r\n });\r\n return result;\r\n};\r\n\r\nconst uploadTenantLogo = async (obj: UploadLogoTenantType, tenantId: string, userId: string, onUploadProgress?: (progressEvent: AxiosProgressEvent) => void) => {\r\n const formData = new FormData()\r\n formData.append(\"File\", obj.File)\r\n formData.append(\"TenantId\", obj.tenantId)\r\n\r\n const result: AxiosResponse<CrudType> = await httpFile.post(urls.Tenant.uploadlogo.url, formData, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId\r\n },\r\n onUploadProgress\r\n });\r\n return result;\r\n};\r\nconst getTenantData = async (obj: CrudType) => {\r\n const result: AxiosResponse<TenantType> = await http.get(`${urls.Tenant.gettenant.url}${obj.id}`, {\r\n headers: {\r\n TenantId: \"1\",\r\n UserId: \"1\"\r\n }\r\n })\r\n return result\r\n}\r\nconst editTenantData = async (obj: EditTenantType) => {\r\n const result: AxiosResponse<CrudType> = await http.put(urls.Tenant.editenant.url, obj, {\r\n headers: {\r\n TenantId: \"1\",\r\n UserId: \"1\"\r\n }\r\n })\r\n return result\r\n}\r\nconst deleteTenant = async (obj: CrudType) => {\r\n const result: AxiosResponse<CrudType> = await http.delete(`${urls.Tenant.deletetenant.url}${obj.id}`, {\r\n headers: {\r\n TenantId: \"1\",\r\n UserId: \"1\"\r\n }\r\n })\r\n return result\r\n}\r\n\r\n\r\n\r\nexport {\r\n getListTenants,\r\n getListDropdownTenants,\r\n createTenant,\r\n uploadTenantLogo,\r\n getTenantData,\r\n editTenantData,\r\n deleteTenant\r\n}","import { AxiosResponse } from \"axios\";\r\nimport { CreateSalaryType, getSalaryDataType, getSalaryDataWithMonthAndYearByAdminType, getSalaryDataWithMonthAndYearType } from \"../../types/salary\";\r\nimport { http, httpFile, httpPdf } from \"../../axios\";\r\nimport { urls } from \"../../Urls/urls\";\r\nimport { ApiRepsonse } from \"../../types/global\";\r\n\r\nconst createSalaryData = async (obj: CreateSalaryType, tenantId: string) => {\r\n const formData = new FormData()\r\n formData.append(\"TemplateId\", obj.TemplateId)\r\n formData.append(\"File\", obj.File)\r\n formData.append(\"Month\", obj.Month)\r\n formData.append(\"Year\", obj.Year)\r\n\r\n const result: AxiosResponse<CreateSalaryType> = await httpFile.post(`${urls.Salary.create.url}`, formData, {\r\n headers: {\r\n TenantId: tenantId,\r\n }\r\n })\r\n return result\r\n}\r\nconst getSalaryData = async (obj: getSalaryDataType, tenantId: string) => {\r\n const result: AxiosResponse<getSalaryDataType> = await http.get(`${urls.Salary.getdownloadsalary.url}?guid=${obj.guid}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n }\r\n })\r\n return result\r\n}\r\nconst getSalaryWithMonthAndYear = async (obj: getSalaryDataWithMonthAndYearType, tenantId: string,) => {\r\n const result: any = await httpPdf.get(`${urls.Salary.getSalaryWithMonthAndYear.url}?year=${obj.year}&month=${obj.month}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n },\r\n responseType: 'blob'\r\n })\r\n return result\r\n}\r\nconst getSalaryWithMonthAndYearByAdmin = async (obj: getSalaryDataWithMonthAndYearByAdminType, tenantId: string,) => {\r\n const result: any = await httpPdf.get(`${urls.Salary.getSalaryWithMonthAndYearAdmin.url}?year=${obj.year}&month=${obj.month}&personId=${obj.personId}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n },\r\n responseType: 'blob'\r\n })\r\n return result\r\n}\r\n\r\nexport { getSalaryData, createSalaryData, getSalaryWithMonthAndYear, getSalaryWithMonthAndYearByAdmin }","import { AxiosProgressEvent, AxiosResponse } from \"axios\"\r\nimport { listType } from \"common_panam\"\r\nimport { urls } from \"../../Urls/urls\"\r\nimport { http, httpFile } from \"../../axios\"\r\nimport { ApiRepsonse, CrudType, ListApiRepsonse, ListDropDownReponse } from \"../../types/global\"\r\nimport { CreateTemplateSalaryType, EditTemplateSalaryType, ListTemplateSalaryDropDownType, ListTemplateSalaryType, TemplateSalaryType, UploadTemplateSalaryType } from \"../../types/salaryTemplate\"\r\n\r\nconst getListTemplateSalars = async (obj: listType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<ListApiRepsonse<TemplateSalaryType>> = await http.get(`${urls.Salarytemplate.getlistsalary.url}?filter=${obj.filter}&pageIndex=${obj.pageIndex}&sort=${obj.sort}&pageSize=${obj.pageSize}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\nconst getListDropdownTemplateSalars = async (obj: listType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<ListDropDownReponse> = await http.get(`${urls.Salarytemplate.getdropdownlist.url}?filter=${obj.filter}&pageIndex=${obj.pageIndex}&sort=${obj.sort}&pageSize=${obj.pageSize}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\n\r\nconst createTemplateSalary = async (obj: CreateTemplateSalaryType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<CrudType> = await http.post(urls.Salarytemplate.create.url, obj, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n });\r\n return result;\r\n};\r\n\r\nconst uploadTemplateSalary = async (obj: UploadTemplateSalaryType, tenantId: string, userId: string, onUploadProgress?: (progressEvent: AxiosProgressEvent) => void) => {\r\n const formData = new FormData()\r\n formData.append(\"File\", obj.File)\r\n\r\n\r\n const result: AxiosResponse<ApiRepsonse<string[]>> = await httpFile.post(urls.Salarytemplate.uploadtemplate.url, formData, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n },\r\n onUploadProgress\r\n },\r\n );\r\n return result;\r\n};\r\nconst getItemTemplateSalary = async (tenantId: string, userId: string) => {\r\n const result: AxiosResponse<ApiRepsonse<{ id: number, name: string }[]>> = await http(urls.Salarytemplate.getsalaryitem.url, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n });\r\n return result;\r\n};\r\n\r\nconst getTemplateSalaryData = async (obj: CrudType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<ApiRepsonse<TemplateSalaryType>> = await http.get(`${urls.Salarytemplate.getsalary.url}${obj.id}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\nconst editTemplateSalaryData = async (obj: EditTemplateSalaryType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<CrudType> = await http.put(urls.Salarytemplate.editsalary.url, obj, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\nconst deleteTemplateSalary = async (obj: CrudType, tenantId: string, userId: string) => {\r\n const result: AxiosResponse<CrudType> = await http.delete(`${urls.Salarytemplate.deletesalary.url}${obj.id}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n UserId: userId,\r\n }\r\n })\r\n return result\r\n}\r\n\r\nexport {\r\n getListTemplateSalars,\r\n getListDropdownTemplateSalars,\r\n createTemplateSalary,\r\n getTemplateSalaryData,\r\n editTemplateSalaryData,\r\n deleteTemplateSalary,\r\n uploadTemplateSalary,\r\n getItemTemplateSalary\r\n}","import { AxiosProgressEvent, AxiosResponse } from \"axios\";\r\nimport { listType } from \"common_panam\";\r\nimport { http, httpFile, httpPdf } from \"../../axios\";\r\nimport { ConfirmContractType, CotractType, GetWithNameContractType, UploadContractType } from \"../../types/contract\";\r\nimport { CrudType, ListApiRepsonse, ListDropDownReponse } from \"../../types/global\";\r\nimport { urls } from \"../../Urls/urls\";\r\n\r\nconst url = urls.contract\r\n\r\nconst getListContracts = async (obj: listType, tenantId: string) => {\r\n const result: AxiosResponse<ListApiRepsonse<CotractType>> = await http.get(`${url.list}?filter=${obj.filter}&pageIndex=${obj.pageIndex}&sort=${obj.sort}&pageSize=${obj.pageSize}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n }\r\n })\r\n return result\r\n}\r\n\r\nconst getListContractsPerson = async (obj: listType, personId: number, tenantId: string) => {\r\n const result: AxiosResponse<ListApiRepsonse<CotractType>> = await http.get(`${url.cotract}${personId}?filter=${obj.filter}&pageIndex=${obj.pageIndex}&sort=${obj.sort}&pageSize=${obj.pageSize}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n }\r\n })\r\n return result\r\n}\r\nconst getContractWithFileName = async (obj: GetWithNameContractType, tenantId: string,) => {\r\n const result: any = await httpPdf.get(`${url.download}/${obj.fileName}`, {\r\n headers: {\r\n TenantId: tenantId,\r\n },\r\n responseType: 'blob'\r\n })\r\n return result\r\n}\r\nconst confirmContract = async (obj: ConfirmContractType, tenantId: string,) => {\r\n const result: any = await http.put(`${url.download}${obj.contractId}/${obj.contractCode}`, {}, {\r\n headers: {\r\n TenantId: tenantId,\r\n },\r\n })\r\n return result\r\n}\r\nconst uploadContracts = async (\r\n obj: UploadContractType, tenantId: string, onUploadProgress?: (progressEvent: AxiosProgressEvent) => void\r\n) => {\r\n const formData = new FormData()\r\n formData.append(\"File\", obj.File)\r\n formData.append(\"From\", obj.From)\r\n formData.append(\"To\", obj.To)\r\n if (obj.Title) {\r\n formData.append(\"Title\", obj.Title)\r\n }\r\n\r\n\r\n const result: AxiosResponse<CrudType> = await httpFile.post(url.uploads, formData, {\r\n headers: {\r\n 'Content-Type': 'multipart/form-data',\r\n TenantId: tenantId\r\n },\r\n onUploadProgress\r\n });\r\n return result;\r\n}\r\n\r\nexport {\r\n confirmContract, getContractWithFileName, getListContracts,\r\n getListContractsPerson, uploadContracts\r\n};\r\n\r\n","\"use client\"\r\nimport { useMutation, useQuery, useQueryClient } from '@tanstack/react-query'\r\nimport { listType } from 'common_panam'\r\nimport { createTenant, CreateTenantType, CrudType, deleteTenant, editTenantData, EditTenantType, getListDropdownTenants, getListTenants } from '../../services'\r\n\r\nconst useTenant = (params: listType) => {\r\n const queryClient = useQueryClient()\r\n const { data, isPending, refetch, isRefetching } = useQuery({\r\n queryKey: [\"tenants\", params],\r\n queryFn: async ({ queryKey }: { queryKey: [string, listType] }) => {\r\n const result = await getListTenants(queryKey[1])\r\n \r\n return result.data\r\n },\r\n })\r\n\r\n const { isPending: createPending, mutate: createMutate } = useMutation({\r\n mutationFn: async (value: CreateTenantType) => {\r\n const res = await createTenant(value)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"tenants\"]\r\n })\r\n }\r\n })\r\n\r\n const { isPending: editPending, mutate: editMutate } = useMutation({\r\n mutationFn: async (value: EditTenantType) => {\r\n const res = await editTenantData(value)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"tenants\"]\r\n })\r\n }\r\n })\r\n\r\n const { isPending: deletePending, mutate: deleteMutate } = useMutation({\r\n mutationFn: async (value: CrudType) => {\r\n const res = await deleteTenant(value)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"tenants\"]\r\n })\r\n }\r\n })\r\n\r\n const { isPending: dropdownPending, mutate: dropdownMutate } = useMutation({\r\n mutationFn: async (value: listType) => {\r\n const res = await getListDropdownTenants(value)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"tenants\"]\r\n })\r\n }\r\n })\r\n\r\n return {\r\n tenantsList: {\r\n data,\r\n isPending,\r\n refetch,\r\n isRefetching,\r\n },\r\n createTenant: {\r\n createPending,\r\n createMutate,\r\n },\r\n editTenant: {\r\n editPending,\r\n editMutate,\r\n },\r\n deleteTenant: {\r\n deletePending,\r\n deleteMutate,\r\n },\r\n dropdownTenant: {\r\n dropdownPending,\r\n dropdownMutate,\r\n }\r\n }\r\n}\r\n\r\nexport default useTenant","import React from 'react'\r\nimport { getListDropdownTenants } from '../../services'\r\nimport { useQuery } from '@tanstack/react-query'\r\nimport { listType } from 'common_panam'\r\n\r\nconst useTenantDropdown = (params: listType) => {\r\n const { data, isPending, refetch, isRefetching } = useQuery({\r\n queryKey: [\"dropdowntenant\", params],\r\n queryFn: async ({ queryKey }: { queryKey: [string, listType] }) => {\r\n const res = await getListDropdownTenants(queryKey[1])\r\n return res.data\r\n },\r\n })\r\n return {\r\n tenantDropdown: {\r\n data,\r\n isPending,\r\n refetch,\r\n isRefetching,\r\n }\r\n }\r\n}\r\n\r\nexport default useTenantDropdown","\"use client\"\r\nimport { useMutation, useQueryClient } from '@tanstack/react-query'\r\nimport { uploadTenantLogo, UploadLogoTenantType } from '../../services'\r\n\r\n\r\n\r\nconst useTenantUpload = (tenantId: string, userId: string) => {\r\n const queryClient = useQueryClient()\r\n\r\n const { isPending: uploadlogoPending, mutate: uploadlogoMutate } = useMutation({\r\n mutationFn: async ({ value, onProgress }: { value: UploadLogoTenantType; onProgress: (percent: number) => void }) => {\r\n\r\n return uploadTenantLogo(value, tenantId, userId, (progressEvent) => {\r\n const percentCompleted = progressEvent.total ? Math.round((progressEvent.loaded / progressEvent.total) * 100) : 0\r\n onProgress(percentCompleted);\r\n });\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"tenants\"]\r\n })\r\n }\r\n })\r\n\r\n return {\r\n\r\n tenantLogoUpload: {\r\n uploadlogoPending,\r\n uploadlogoMutate\r\n },\r\n\r\n\r\n\r\n }\r\n}\r\n\r\nexport default useTenantUpload","\"use client\"\r\nimport { useMutation, useQuery, useQueryClient } from '@tanstack/react-query'\r\nimport { listType } from 'common_panam'\r\nimport { createDefaultAdmin, createPerson, CreatePersonType, createPersonUploadFile, CrudType, deleteperson, editPersonData, EditPersonType, getListDropdownPersons, getListPersons } from '../../services'\r\nimport { UploadFilePersonsType } from '../../services/types/person'\r\n\r\nconst usePerson = (params: listType, tenantId: string, userId: string) => {\r\n const queryClient = useQueryClient()\r\n const { data, isPending, refetch, isRefetching } = useQuery({\r\n queryKey: [\"persons\", params],\r\n queryFn: async ({ queryKey }: { queryKey: [string, listType] }) => {\r\n const result = await getListPersons(queryKey[1], tenantId, userId)\r\n return result.data\r\n },\r\n })\r\n\r\n const { isPending: createPending, mutate: createMutate } = useMutation({\r\n mutationFn: async (value: CreatePersonType) => {\r\n const res = await createPerson(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"persons\"]\r\n })\r\n }\r\n })\r\n // const { isPending: uploadFilePending, mutate: uploadFileMutate } = useMutation({\r\n // mutationFn: async (value: UploadFilePersonsType) => {\r\n // const res = await createPersonUploadFile(value, tenantId, userId)\r\n // return res.data\r\n // },\r\n // onSuccess: async () => {\r\n // const result = await queryClient.invalidateQueries({\r\n // queryKey: [\"persons\"]\r\n // })\r\n // }\r\n // })\r\n\r\n const { isPending: uploadFilePending, mutate: uploadFileMutate, data: uploadFileData } = useMutation({\r\n mutationFn: async ({ value, onProgress }: { value: UploadFilePersonsType; onProgress: (percent: number) => void }) => {\r\n return createPersonUploadFile(value, tenantId, userId, (progressEvent) => {\r\n const percentCompleted = progressEvent.total ? Math.round((progressEvent.loaded / progressEvent.total) * 100) : 0\r\n onProgress(percentCompleted); // ارسال درصد پیشرفت\r\n });\r\n },\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({\r\n queryKey: ['persons'],\r\n });\r\n },\r\n });\r\n const { isPending: createAdminPending, mutate: createAdminMutate } = useMutation({\r\n mutationFn: async (value: CreatePersonType) => {\r\n const res = await createDefaultAdmin(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"persons\"]\r\n })\r\n }\r\n })\r\n\r\n const { isPending: editPending, mutate: editMutate } = useMutation({\r\n mutationFn: async (value: EditPersonType) => {\r\n const res = await editPersonData(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"persons\"]\r\n })\r\n }\r\n })\r\n\r\n const { isPending: deletePending, mutate: deleteMutate } = useMutation({\r\n mutationFn: async (value: CrudType) => {\r\n const res = await deleteperson(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"persons\"]\r\n })\r\n }\r\n })\r\n\r\n const { isPending: dropdownPending, mutate: dropdownMutate } = useMutation({\r\n mutationFn: async (value: listType) => {\r\n const res = await getListDropdownPersons(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"persons\"]\r\n })\r\n }\r\n })\r\n\r\n return {\r\n peronsList: {\r\n data,\r\n isPending,\r\n refetch,\r\n isRefetching,\r\n },\r\n createPerson: {\r\n createPending,\r\n createMutate,\r\n },\r\n createAdminPerson: {\r\n createAdminPending,\r\n createAdminMutate,\r\n },\r\n editPerson: {\r\n editPending,\r\n editMutate,\r\n },\r\n deletePerson: {\r\n deletePending,\r\n deleteMutate,\r\n },\r\n dropdownPerson: {\r\n dropdownPending,\r\n dropdownMutate,\r\n },\r\n uploadFile: {\r\n uploadFilePending,\r\n uploadFileMutate,\r\n uploadFileData\r\n }\r\n }\r\n}\r\n\r\nexport default usePerson","import React from 'react'\r\nimport { getListDropdownPersons } from '../../services'\r\nimport { useQuery } from '@tanstack/react-query'\r\nimport { listType } from 'common_panam'\r\n\r\nconst usePersonDropdown = (params: listType, tenantId: string, userId: string) => {\r\n const { data, isPending, refetch, isRefetching } = useQuery({\r\n queryKey: [\"dropdownPersons\", params],\r\n queryFn: async ({ queryKey }: { queryKey: [string, listType] }) => {\r\n const res = await getListDropdownPersons(queryKey[1], tenantId, userId)\r\n return res.data\r\n },\r\n })\r\n\r\n\r\n\r\n return {\r\n personDropdown: {\r\n data,\r\n isPending,\r\n refetch,\r\n isRefetching,\r\n }\r\n }\r\n\r\n}\r\n\r\nexport default usePersonDropdown","\"use client\"\r\nimport { useMutation, useQueryClient } from '@tanstack/react-query'\r\nimport { listType } from 'common_panam'\r\nimport { createPersonUploadFile, CrudType, deleteperson, editPersonData, EditPersonType } from '../../services'\r\nimport { UploadFilePersonsType } from '../../services/types/person'\r\n\r\nconst useUploadPerson = (params: listType, tenantId: string, userId: string) => {\r\n const queryClient = useQueryClient()\r\n\r\n\r\n const { isPending: uploadFilePending, mutate: uploadFileMutate, data: uploadFileData } = useMutation({\r\n mutationFn: async ({ value, onProgress }: { value: UploadFilePersonsType; onProgress: (percent: number) => void }) => {\r\n return createPersonUploadFile(value, tenantId, userId, (progressEvent) => {\r\n const percentCompleted = progressEvent.total ? Math.round((progressEvent.loaded / progressEvent.total) * 100) : 0\r\n onProgress(percentCompleted); // ارسال درصد پیشرفت\r\n });\r\n },\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({\r\n queryKey: ['persons'],\r\n });\r\n },\r\n });\r\n const { isPending: editPending, mutate: editMutate } = useMutation({\r\n mutationFn: async (value: EditPersonType) => {\r\n const res = await editPersonData(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"persons\"]\r\n })\r\n }\r\n })\r\n\r\n const { isPending: deletePending, mutate: deleteMutate } = useMutation({\r\n mutationFn: async (value: CrudType) => {\r\n const res = await deleteperson(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"persons\"]\r\n })\r\n }\r\n })\r\n\r\n return {\r\n peronsList: {\r\n\r\n },\r\n editPerson: {\r\n editPending,\r\n editMutate,\r\n },\r\n deletePerson: {\r\n deletePending,\r\n deleteMutate,\r\n },\r\n\r\n uploadFile: {\r\n uploadFilePending,\r\n uploadFileMutate,\r\n uploadFileData\r\n }\r\n }\r\n}\r\n\r\nexport default useUploadPerson","\"use client\"\r\nimport { useMutation, useQuery, useQueryClient } from '@tanstack/react-query'\r\nimport { listType } from 'common_panam'\r\nimport { getTemplateSalaryData, getListTemplateSalars, createTemplateSalary, CreateTemplateSalaryType, CrudType, deleteTemplateSalary, EditTemplateSalaryType, editTemplateSalaryData, getListDropdownTemplateSalars, uploadTemplateSalary, UploadTemplateSalaryType, getItemTemplateSalary } from '../../services'\r\n\r\n\r\n\r\nconst useSalaryTemplate = (params: listType, tenantId: string, userId: string, enabled = true) => {\r\n const queryClient = useQueryClient()\r\n const { data, isPending, refetch, isRefetching } = useQuery({\r\n queryKey: [\"salarytemplate\", params],\r\n queryFn: async ({ queryKey }: { queryKey: [string, listType] }) => {\r\n const result = await getListTemplateSalars(queryKey[1], tenantId, userId)\r\n return result.data\r\n },\r\n enabled\r\n })\r\n const { isPending: createPending, mutate: createMutate } = useMutation({\r\n mutationFn: async (value: CreateTemplateSalaryType) => {\r\n const res = await createTemplateSalary(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"salarytemplate\"]\r\n })\r\n return result\r\n }\r\n })\r\n\r\n const { isPending: uploadTemplatePending, mutate: uploadtemplateMutate } = useMutation({\r\n mutationFn: async (value: UploadTemplateSalaryType) => {\r\n const res = await uploadTemplateSalary(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"salarytemplate\"]\r\n })\r\n }\r\n })\r\n\r\n\r\n\r\n const { isPending: editPending, mutate: editMutate } = useMutation({\r\n mutationFn: async (value: EditTemplateSalaryType) => {\r\n const res = await editTemplateSalaryData(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"salarytemplate\"]\r\n })\r\n }\r\n })\r\n\r\n const { isPending: deletePending, mutate: deleteMutate } = useMutation({\r\n mutationFn: async (value: CrudType) => {\r\n const res = await deleteTemplateSalary(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"salarytemplate\"]\r\n })\r\n }\r\n })\r\n\r\n const { isPending: getsalarytemplatePending, mutate: getsalarytemplateMutate } = useMutation({\r\n mutationFn: async (value: CrudType) => {\r\n const res = await getTemplateSalaryData(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"salarytemplate\"]\r\n })\r\n }\r\n })\r\n\r\n const { isPending: getItemTemplateSalaryPending, mutate: getItemTemplateSalaryMutate, data: categoryItemTemplates } = useMutation({\r\n mutationFn: async () => {\r\n const res = await getItemTemplateSalary( tenantId, userId)\r\n \r\n return res.data\r\n }\r\n })\r\n\r\n\r\n return {\r\n salaryTemplateList: {\r\n data,\r\n isPending,\r\n refetch,\r\n isRefetching,\r\n },\r\n createsalarytemplate: {\r\n createPending,\r\n createMutate,\r\n },\r\n editsalarytemplate: {\r\n editPending,\r\n editMutate,\r\n },\r\n deletesalarytemplate: {\r\n deletePending,\r\n deleteMutate,\r\n },\r\n getsalarytemplate: {\r\n getsalarytemplatePending,\r\n getsalarytemplateMutate,\r\n },\r\n uploadTemplateSalary: {\r\n uploadTemplatePending,\r\n uploadtemplateMutate\r\n },\r\n getItemTemplateSalary: {\r\n getItemTemplateSalaryPending,\r\n getItemTemplateSalaryMutate,\r\n categoryItemTemplates\r\n },\r\n\r\n }\r\n}\r\n\r\nexport default useSalaryTemplate","\"use client\"\r\nimport { useQuery } from '@tanstack/react-query'\r\nimport { listType } from 'common_panam'\r\nimport { getListDropdownTemplateSalars } from '../../services'\r\n\r\n\r\nconst useDropdownSalaryTemplate = (params: listType, tenantId: string, userId: string) => {\r\n\r\n const { data, isPending, refetch, isRefetching } = useQuery({\r\n queryKey: [\"salarytemplate\", params],\r\n queryFn: async ({ queryKey }: { queryKey: [string, listType] }) => {\r\n const result = await getListDropdownTemplateSalars(queryKey[1], tenantId,userId)\r\n return result.data\r\n },\r\n\r\n })\r\n\r\n return {\r\n salaryTemplateDropdown: {\r\n data,\r\n isPending,\r\n refetch,\r\n isRefetching,\r\n },\r\n\r\n }\r\n}\r\n\r\nexport default useDropdownSalaryTemplate","\"use client\"\r\nimport { useMutation, useQueryClient } from '@tanstack/react-query'\r\nimport { listType } from 'common_panam'\r\nimport { CrudType, deleteTemplateSalary, EditTemplateSalaryType, editTemplateSalaryData, uploadTemplateSalary, UploadTemplateSalaryType } from '../../services'\r\n\r\n\r\n\r\nconst useUploadSalaryTemplate = (tenantId: string, userId: string) => {\r\n const queryClient = useQueryClient()\r\n\r\n const { isPending: uploadTemplatePending, mutate: uploadtemplateMutate, data: uploadData } = useMutation({\r\n mutationFn: async ({ value, onProgress }: { value: UploadTemplateSalaryType; onProgress: (percent: number) => void }) => {\r\n\r\n return uploadTemplateSalary(value, tenantId, userId, (progressEvent) => {\r\n const percentCompleted = progressEvent.total ? Math.round((progressEvent.loaded / progressEvent.total) * 100) : 0\r\n onProgress(percentCompleted); // ارسال درصد پیشرفت\r\n });\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"salarytemplate\"]\r\n })\r\n }\r\n })\r\n\r\n\r\n\r\n const { isPending: editPending, mutate: editMutate } = useMutation({\r\n mutationFn: async (value: EditTemplateSalaryType) => {\r\n const res = await editTemplateSalaryData(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"salarytemplate\"]\r\n })\r\n }\r\n })\r\n\r\n const { isPending: deletePending, mutate: deleteMutate } = useMutation({\r\n mutationFn: async (value: CrudType) => {\r\n const res = await deleteTemplateSalary(value, tenantId, userId)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"salarytemplate\"]\r\n })\r\n }\r\n })\r\n\r\n\r\n return {\r\n\r\n editsalarytemplate: {\r\n editPending,\r\n editMutate,\r\n },\r\n deletesalarytemplate: {\r\n deletePending,\r\n deleteMutate,\r\n },\r\n uploadData,\r\n\r\n uploadTemplateSalary: {\r\n uploadTemplatePending,\r\n uploadtemplateMutate\r\n },\r\n\r\n\r\n\r\n }\r\n}\r\n\r\nexport default useUploadSalaryTemplate","\"use client\"\r\nimport React from 'react'\r\nimport { useQuery } from '@tanstack/react-query'\r\nimport { getTemplateSalaryData } from '../../services'\r\n\r\nconst useSalaryTemplateWithId = (templateId: string, tenantId: string, userId: string) => {\r\n\r\n const { data, isPending, refetch, isRefetching } = useQuery({\r\n queryKey: [\"salarytemplateItem\", templateId],\r\n queryFn: async ({ queryKey }: { queryKey: [string, string] }) => {\r\n const result = await getTemplateSalaryData({\r\n id: queryKey[1]\r\n }, tenantId, userId)\r\n return result.data\r\n },\r\n\r\n })\r\n\r\n\r\n\r\n return {\r\n salaryTemplateItem: {\r\n data,\r\n isPending,\r\n refetch,\r\n isRefetching,\r\n },\r\n }\r\n\r\n}\r\n\r\nexport default useSalaryTemplateWithId","\"use client\"\r\nimport { useMutation } from '@tanstack/react-query'\r\nimport { createSalaryData, CreateSalaryType, getSalaryData, getSalaryDataType } from '../../services'\r\nimport { getSalaryWithMonthAndYear, getSalaryWithMonthAndYearByAdmin } from '../../services/requests/mangeSalary/salary'\r\nimport { getSalaryDataWithMonthAndYearByAdminType, getSalaryDataWithMonthAndYearType } from '../../services/types/salary'\r\n\r\nconst useSalary = (tenantId: string) => {\r\n\r\n const { isPending: createPending, mutate: createMutate } = useMutation({\r\n mutationFn: async (value: CreateSalaryType) => {\r\n const res = await createSalaryData(value, tenantId)\r\n return res.data\r\n }\r\n })\r\n\r\n const { isPending: salaryDataPending, mutate: salaryDataMutate } = useMutation({\r\n mutationFn: async (value: getSalaryDataType) => {\r\n const res = await getSalaryData(value, tenantId)\r\n return res.data\r\n }\r\n })\r\n const { isPending: salaryDataWithMonthAndYearPending, mutate: salaryDataWithMonthAndYearMutate } = useMutation({\r\n mutationFn: async (value: getSalaryDataWithMonthAndYearType) => {\r\n const res = await getSalaryWithMonthAndYear(value, tenantId)\r\n\r\n return res.data\r\n }\r\n })\r\n\r\n\r\n const { isPending: salaryDataWithMonthAndYearByAdminPending, mutate: salaryDataWithMonthAndYearByAdminMutate } = useMutation({\r\n mutationFn: async (value: getSalaryDataWithMonthAndYearByAdminType) => {\r\n const res = await getSalaryWithMonthAndYearByAdmin(value, tenantId)\r\n\r\n return res.data\r\n }\r\n })\r\n\r\n\r\n\r\n\r\n return {\r\n\r\n createSalaryData: {\r\n createPending,\r\n createMutate,\r\n },\r\n getSalaryData: {\r\n salaryDataPending,\r\n salaryDataMutate,\r\n },\r\n getSalaryWithMonthAndYearData: {\r\n salaryDataWithMonthAndYearPending,\r\n salaryDataWithMonthAndYearMutate\r\n },\r\n getSalaryWithMonthAndYearByAdminData: {\r\n salaryDataWithMonthAndYearByAdminPending,\r\n salaryDataWithMonthAndYearByAdminMutate\r\n },\r\n\r\n }\r\n}\r\n\r\nexport default useSalary\r\n\r\n","\"use client\"\r\nimport { useMutation, useQuery, useQueryClient } from '@tanstack/react-query'\r\nimport { getUserInfo, sendOtpHandle, verifyOtpHandle } from '../../services/requests/login/login'\r\nimport { sendOtpType, verifyOtpType } from '../../services/types/login'\r\nimport Cookies from 'js-cookie'\r\n\r\nconst useLogin = (parmas: { enabled: boolean }) => {\r\n const queryClient = useQueryClient()\r\n const { data, isPending, refetch } = useQuery({\r\n queryKey: [\"user\"],\r\n queryFn: async () => {\r\n const accessToken = Cookies.get(\"accessToken\")\r\n if (accessToken) {\r\n const res = await getUserInfo()\r\n return res\r\n } else {\r\n throw new Error(\"لطفا ابتدا وارد شوید\")\r\n }\r\n },\r\n enabled: parmas.enabled,\r\n retry: 3\r\n })\r\n\r\n\r\n const { isPending: sendOtpPending, mutate: sendOtpMutate } = useMutation({\r\n mutationFn: async (value: sendOtpType) => {\r\n const res = await sendOtpHandle(value)\r\n return res.data\r\n },\r\n onSuccess: async (data) => {\r\n const test = queryClient.removeQueries({\r\n queryKey: [\"user\"]\r\n })\r\n \r\n }\r\n })\r\n const { isPending: verifyOtpPending, mutate: verifyOtpMutate } = useMutation({\r\n mutationFn: async (value: verifyOtpType) => {\r\n const res = await verifyOtpHandle(value)\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.refetchQueries({\r\n queryKey: [\"user\"]\r\n })\r\n },\r\n })\r\n const { isPending: logOutPending, mutate: logOutMutate } = useMutation({\r\n mutationFn: async () => {\r\n Cookies.remove(\"accessToken\")\r\n queryClient.removeQueries({\r\n queryKey: ['user']\r\n })\r\n }\r\n })\r\n\r\n return {\r\n userInfo: {\r\n data, isPending, refetch\r\n },\r\n sendOtp: {\r\n sendOtpPending,\r\n sendOtpMutate\r\n },\r\n verifyOtp: {\r\n verifyOtpPending,\r\n verifyOtpMutate\r\n },\r\n logout: {\r\n logOutPending,\r\n logOutMutate\r\n }\r\n }\r\n\r\n}\r\n\r\nexport default useLogin\r\n","import { AxiosResponse } from \"axios\";\r\nimport { ApiRepsonse } from \"../../types/global\";\r\nimport { sendOtpType, userInfoType, verifyOtpType } from \"../../types/login\";\r\nimport { urls } from \"../../Urls/urls\";\r\nimport { http } from \"../../axios\";\r\n\r\n\r\n\r\nconst sendOtpHandle = async (obj: sendOtpType) => {\r\n const res: AxiosResponse<ApiRepsonse<{}>> = await http.get(`${urls.auth.sendOtp.url}?mobile=${obj.mobile}`)\r\n return res.data\r\n}\r\nconst verifyOtpHandle = async (obj: verifyOtpType) => {\r\n const res: AxiosResponse<ApiRepsonse<userInfoType>> = await http.post(`${urls.auth.verifyOtp.url}`, obj)\r\n return res.data\r\n}\r\nconst getUserInfo = async () => {\r\n const res: AxiosResponse<ApiRepsonse<userInfoType>> = await http.get(`${urls.auth.userInfo.url}`)\r\n return res.data\r\n}\r\n\r\n\r\nexport { sendOtpHandle, verifyOtpHandle, getUserInfo };\r\n","\"use client\"\r\nimport { useMutation, useQuery, useQueryClient } from '@tanstack/react-query'\r\nimport { listType } from 'common_panam'\r\nimport { ConfirmContractType, GetWithNameContractType, UploadContractType } from '../../services'\r\nimport { confirmContract, getContractWithFileName, getListContracts, uploadContracts } from '../../services/requests/manageContract'\r\n\r\nconst useContract = (params: listType, tenantId: string , enabled?: boolean) => {\r\n const queryClient = useQueryClient()\r\n const { data, isPending, refetch, isRefetching } = useQuery({\r\n queryKey: [\"contracts\", params],\r\n queryFn: async ({ queryKey }: { queryKey: [string, listType] }) => {\r\n const result = await getListContracts(queryKey[1], tenantId)\r\n return result.data\r\n },\r\n enabled : enabled === false ? false : true\r\n })\r\n const { isPending: downLoadPending, mutate: downLoadMutate } = useMutation({\r\n mutationFn: async (value: GetWithNameContractType) => {\r\n const res = await getContractWithFileName(value, tenantId)\r\n\r\n return res.data\r\n }\r\n })\r\n const { isPending: confirmPending, mutate: confirmMutate } = useMutation({\r\n mutationFn: async (value:ConfirmContractType ) => {\r\n const res = await confirmContract(value, tenantId)\r\n\r\n return res.data\r\n },\r\n onSuccess: async () => {\r\n const result = await queryClient.invalidateQueries({\r\n queryKey: [\"contracts\"]\r\n })\r\n }\r\n })\r\n const { isPending: uploadFilePending, mutate: uploadFileMutate, data: uploadFileData } = useMutation({\r\n mutationFn: async ({ value, onProgress }: {\r\n value: UploadContractType; onProgress: (percent: number) => void\r\n }) => {\r\n return uploadContracts(value, tenantId, (progressEvent) => {\r\n const percentCompleted = progressEvent.total ? Math.round((progressEvent.loaded / progressEvent.total) * 100) : 0\r\n onProgress(percentCompleted); // ارسال درصد پیشرفت\r\n });\r\n },\r\n onSuccess: async () => {\r\n await queryClient.invalidateQueries({\r\n queryKey: ['contracts'],\r\n });\r\n },\r\n });\r\n\r\n return {\r\n contractsList: {\r\n data,\r\n isPending,\r\n refetch,\r\n isRefetching,\r\n },\r\n downloadContract: {\r\n downLoadPending,\r\n downLoadMutate,\r\n },\r\n uploadContracts: {\r\n uploadFilePending,\r\n uploadFileMutate,\r\n uploadFileData\r\n },\r\n confirmContract: {\r\n confirmPending,\r\n confirmMutate\r\n }\r\n }\r\n\r\n}\r\n\r\nexport default useContract\r\n","\"use client\"\r\nimport { useQuery } from '@tanstack/react-query'\r\nimport { listType } from 'common_panam'\r\nimport { getListContractsPerson } from '../../services'\r\n\r\nconst useContractPerson = (params: listType, tenantId: string, personId: number) => {\r\n const { data, isPending, refetch, isRefetching } = useQuery({\r\n queryKey: [\"contracts\", params],\r\n queryFn: async ({ queryKey }: { queryKey: [string, listType] }) => {\r\n const result = await getListContractsPerson(queryKey[1], personId, tenantId)\r\n return result.data\r\n },\r\n })\r\n return {\r\n contractsPersonList: {\r\n data,\r\n isPending,\r\n refetch,\r\n isRefetching,\r\n },\r\n }\r\n}\r\n\r\nexport default useContractPerson\r\n","// src/QueryProvider.tsx\r\nimport React, { ReactNode, useState } from 'react';\r\nimport { QueryClient, QueryClientProvider } from '@tanstack/react-query';\r\n\r\n\r\ninterface QueryProviderProps {\r\n children: ReactNode;\r\n}\r\n\r\nconst QueryProvider: React.FC<QueryProviderProps> = ({ children }) => {\r\n const [queryClient] = useState(() => new QueryClient({\r\n defaultOptions: {\r\n \r\n queries: {\r\n refetchInterval: false,\r\n gcTime: 1000 * 60 * 10,\r\n staleTime: 1000 * 60 * 10,\r\n refetchOnWindowFocus: false,\r\n retry: 3\r\n },\r\n\r\n }\r\n },\r\n\r\n ));\r\n return (\r\n <QueryClientProvider client={queryClient}>\r\n {children}\r\n </QueryClientProvider>\r\n );\r\n};\r\n\r\nexport default QueryProvider;\r\n","import * as yup from 'yup'\r\n\r\n\r\n\r\nconst createTenantSchema = yup.object({\r\n name: yup.string().required(\"نام مجموعه الزامی میباشد\")\r\n})\r\n\r\n\r\nconst createTenantFileSchema = yup.object({\r\n File: yup.string().required(\" فایل الزامی میباشد\"),\r\n})\r\nconst getSalaryDataSchema = yup.object({\r\n guid: yup.string().required(\" شناسه فیش حقوقی الزامی میباشد\"),\r\n})\r\n\r\nconst createPersonSchema = yup.object({\r\n firstName: yup.string().required(\"نام الزامی میباشد\"),\r\n lastName: yup.string().required(\"نام خانوادگی الزامی میباشد\"),\r\n nationalId: yup.string().required(\"کد ملی الزامی میباشد\"),\r\n personnelId: yup.string().required(\"شماره پرسنلی الزامی میباشد\"),\r\n mobile: yup.string().required(\"موبایل الزامی میباشد\"),\r\n tenantId: yup.string().required(\".انتخاب مجموعه الزامی میباشد\")\r\n})\r\n\r\n\r\nconst createPersonUploadSchema = yup.object({\r\n File: yup.string().required(\" فایل الزامی میباشد\"),\r\n})\r\n\r\nconst logoUploadSchema = yup.object({\r\n File: yup\r\n .mixed<File>()\r\n .required(\"انتخاب فایل الزامی میباشد\"),\r\n tenantId: yup.string().required(\"شناسه الزامی میباشد\")\r\n})\r\n\r\n\r\nconst createTemplateSalarySchema = yup.object({\r\n templateName: yup.string().required(\"نام قالب فیش حقوقی الزامی میباشد\"),\r\n reportFileName: yup.string().required(\"عنوان فایل خروجی الزامی میباشد\"),\r\n colMappings: yup\r\n .array()\r\n .of(\r\n yup.object({\r\n colHeader: yup.string().required(\"عنوان ستون الزامی میباشد\"),\r\n colIndex: yup.number().required(),\r\n itemCategory: yup.number().required(),\r\n itemFormat: yup.number().required(),\r\n })\r\n )\r\n .required(\"colMappings الزامی است\") // اضافه کردن شرط required\r\n .default([]), // مقدار پیش‌فرض به عنوان آرایه خالی\r\n fixedItemMappings: yup\r\n .array()\r\n .of(\r\n yup.object({\r\n itemCategory: yup.number().required(),\r\n itemFormat: yup.number().required(),\r\n title: yup.string(),\r\n value: yup.string(),\r\n })\r\n )\r\n .required(\"fixedItemMappings الزامی است\") // اضافه کردن شرط required\r\n .default([]), // مقدار پیش‌فرض به عنوان آرایه خالی\r\n});\r\n\r\n\r\nconst createTemplateSalaryuploadSchema = yup.object({\r\n File: yup.string().required(\" فایل الزامی میباشد\"),\r\n})\r\n\r\nconst CreateSalarySchema = yup.object({\r\n TemplateId: yup.string().required(\"شناسه الگو فیش الزامی میباشد\"),\r\n Year: yup.string().required(\"سال الزامی میباشد\"),\r\n Month: yup.string().required(\"ماه الزامی میباشد\"),\r\n File: yup\r\n .mixed<File>()\r\n .required(\"انتخاب فایل الزامی میباشد\")\r\n})\r\n\r\nconst UploadContractSchema = yup.object({\r\n From: yup.string().required(\"شروع قراردادها الزامی میباشد\"),\r\n To: yup.string().required(\"اتمام قراردادها الزامی میباشد\"),\r\n // Title: yup.string().required(\"عنوان الزامی میباشد\"),\r\n File: yup\r\n .mixed<File>()\r\n .required(\"انتخاب فایل الزامی میباشد\")\r\n})\r\nconst ConfirmContractSchema = yup.object({\r\n \"contract-id\": yup.number().required(\"تایید قرارداد ابزامی میباشد\")\r\n})\r\n\r\n\r\nconst CreateRoleSchema = yup.object({\r\n name: yup.string().required(\" نام الزامی میباشد\"),\r\n des: yup.string().required(\" توضیحات الزامی میباشد\"),\r\n})\r\n\r\n\r\n\r\n\r\nexport {\r\n createTenantSchema, createPersonSchema, createTemplateSalarySchema, CreateSalarySchema, CreateRoleSchema, createTenantFileSchema, createTemplateSalaryuploadSchema, createPersonUploadSchema, logoUploadSchema,\r\n getSalaryDataSchema, UploadContractSchema, ConfirmContractSchema\r\n}"],"mappings":"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","names":["index_exports","__export","ConfirmContractSchema","CreateRoleSchema","CreateSalarySchema","ReactQueryProvider_default","UploadContractSchema","confirmContract","createDefaultAdmin","createPerson","createPersonSchema","createPersonUploadFile","createPersonUploadSchema","createRole","createSalaryData","createTemplateSalary","createTemplateSalarySchema","createTemplateSalaryuploadSchema","createTenant","createTenantFileSchema","createTenantSchema","deleteRole","deleteTemplateSalary","deleteTenant","deleteperson","editPersonData","editRoleData","editTemplateSalaryData","editTenantData","getContractWithFileName","getItemTemplateSalary","getListContracts","getListContractsPerson","getListDropdownPersons","getListDropdownRoles","getListDropdownTemplateSalars","getListDropdownTenants","getListPersons","getListRoles","getListTemplateSalars","getListTenants","getPersonData","getRoleData","getSalaryData","getSalaryDataSchema","getSalaryWithMonthAndYear","getSalaryWithMonthAndYearByAdmin","getTemplateSalaryData","getTenantData","logoUploadSchema","uploadContracts","uploadTemplateSalary","uploadTenantLogo","urls","useContract_default","useContractPerson_default","useDropdownSalaryTemplate_default","useLogin_default","usePerson_default","usePersonDropdown_default","usePersonUpload_default","useSalary_default","useSalaryTemplate_default","useSalaryTemplateWithId_default","useTenant_default","useTenantDropdown_default","useTenantUpload_default","useUploadSalaryTemplate_default","__toCommonJS","urls","import_common_panam","http","httpPdf","httpFile","getListPersons","obj","tenantId","userId","__async","http","urls","getListDropdownPersons","createPerson","createDefaultAdmin","createPersonUploadFile","onUploadProgress","formData","httpFile","getPersonData","editPersonData","deleteperson","getListRoles","obj","tenantId","userId","__async","http","urls","getListDropdownRoles","createRole","getRoleData","editRoleData","deleteRole","getListTenants","obj","__async","http","urls","getListDropdownTenants","createTenant","uploadTenantLogo","tenantId","userId","onUploadProgress","formData","httpFile","getTenantData","editTenantData","deleteTenant","createSalaryData","obj","tenantId","__async","formData","httpFile","urls","getSalaryData","http","getSalaryWithMonthAndYear","httpPdf","getSalaryWithMonthAndYearByAdmin","getListTemplateSalars","obj","tenantId","userId","__async","http","urls","getListDropdownTemplateSalars","createTemplateSalary","uploadTemplateSalary","onUploadProgress","formData","httpFile","getItemTemplateSalary","getTemplateSalaryData","editTemplateSalaryData","deleteTemplateSalary","url","urls","getListContracts","obj","tenantId","__async","http","getListContractsPerson","personId","getContractWithFileName","httpPdf","confirmContract","uploadContracts","onUploadProgress","formData","httpFile","import_react_query","useTenant","params","queryClient","data","isPending","refetch","isRefetching","_0","__async","queryKey","getListTenants","createPending","createMutate","value","createTenant","result","editPending","editMutate","editTenantData","deletePending","deleteMutate","deleteTenant","dropdownPending","dropdownMutate","getListDropdownTenants","useTenant_default","import_react_query","useTenantDropdown","params","data","isPending","refetch","isRefetching","_0","__async","queryKey","getListDropdownTenants","useTenantDropdown_default","import_react_query","useTenantUpload","tenantId","userId","queryClient","uploadlogoPending","uploadlogoMutate","_0","__async","value","onProgress","uploadTenantLogo","progressEvent","percentCompleted","result","useTenantUpload_default","import_react_query","usePerson","params","tenantId","userId","queryClient","data","isPending","refetch","isRefetching","_0","__async","queryKey","getListPersons","createPending","createMutate","value","createPerson","result","uploadFilePending","uploadFileMutate","uploadFileData","onProgress","createPersonUploadFile","progressEvent","percentCompleted","createAdminPending","createAdminMutate","createDefaultAdmin","editPending","editMutate","editPersonData","deletePending","deleteMutate","deleteperson","dropdownPending","dropdownMutate","getListDropdownPersons","usePerson_default","import_react_query","usePersonDropdown","params","tenantId","userId","data","isPending","refetch","isRefetching","_0","__async","queryKey","getListDropdownPersons","usePersonDropdown_default","import_react_query","useUploadPerson","params","tenantId","userId","queryClient","uploadFilePending","uploadFileMutate","uploadFileData","_0","__async","value","onProgress","createPersonUploadFile","progressEvent","percentCompleted","editPending","editMutate","editPersonData","result","deletePending","deleteMutate","deleteperson","usePersonUpload_default","import_react_query","useSalaryTemplate","params","tenantId","userId","enabled","queryClient","data","isPending","refetch","isRefetching","_0","__async","queryKey","getListTemplateSalars","createPending","createMutate","value","createTemplateSalary","uploadTemplatePending","uploadtemplateMutate","uploadTemplateSalary","result","editPending","editMutate","editTemplateSalaryData","deletePending","deleteMutate","deleteTemplateSalary","getsalarytemplatePending","getsalarytemplateMutate","getTemplateSalaryData","getItemTemplateSalaryPending","getItemTemplateSalaryMutate","categoryItemTemplates","getItemTemplateSalary","useSalaryTemplate_default","import_react_query","useDropdownSalaryTemplate","params","tenantId","userId","data","isPending","refetch","isRefetching","_0","__async","queryKey","getListDropdownTemplateSalars","useDropdownSalaryTemplate_default","import_react_query","useUploadSalaryTemplate","tenantId","userId","queryClient","uploadTemplatePending","uploadtemplateMutate","uploadData","_0","__async","value","onProgress","uploadTemplateSalary","progressEvent","percentCompleted","result","editPending","editMutate","editTemplateSalaryData","deletePending","deleteMutate","deleteTemplateSalary","useUploadSalaryTemplate_default","import_react_query","useSalaryTemplateWithId","templateId","tenantId","userId","data","isPending","refetch","isRefetching","_0","__async","queryKey","getTemplateSalaryData","useSalaryTemplateWithId_default","import_react_query","useSalary","tenantId","createPending","createMutate","value","__async","createSalaryData","salaryDataPending","salaryDataMutate","getSalaryData","salaryDataWithMonthAndYearPending","salaryDataWithMonthAndYearMutate","getSalaryWithMonthAndYear","salaryDataWithMonthAndYearByAdminPending","salaryDataWithMonthAndYearByAdminMutate","getSalaryWithMonthAndYearByAdmin","useSalary_default","import_react_query","sendOtpHandle","obj","__async","http","urls","verifyOtpHandle","getUserInfo","import_js_cookie","useLogin","parmas","queryClient","data","isPending","refetch","__async","Cookies","getUserInfo","sendOtpPending","sendOtpMutate","value","sendOtpHandle","test","verifyOtpPending","verifyOtpMutate","verifyOtpHandle","result","logOutPending","logOutMutate","useLogin_default","import_react_query","useContract","params","tenantId","enabled","queryClient","data","isPending","refetch","isRefetching","_0","__async","queryKey","getListContracts","downLoadPending","downLoadMutate","value","getContractWithFileName","confirmPending","confirmMutate","confirmContract","result","uploadFilePending","uploadFileMutate","uploadFileData","onProgress","uploadContracts","progressEvent","percentCompleted","useContract_default","import_react_query","useContractPerson","params","tenantId","personId","data","isPending","refetch","isRefetching","_0","__async","queryKey","getListContractsPerson","useContractPerson_default","import_react","import_react_query","import_jsx_runtime","QueryProvider","children","queryClient","ReactQueryProvider_default","yup","createTenantSchema","createTenantFileSchema","getSalaryDataSchema","createPersonSchema","createPersonUploadSchema","logoUploadSchema","createTemplateSalarySchema","createTemplateSalaryuploadSchema","CreateSalarySchema","UploadContractSchema","ConfirmContractSchema","CreateRoleSchema"]}
package/dist/index.d.cts CHANGED
@@ -803,6 +803,11 @@ declare const UploadContractSchema: yup.ObjectSchema<{
803
803
  To: undefined;
804
804
  File: undefined;
805
805
  }, "">;
806
+ declare const ConfirmContractSchema: yup.ObjectSchema<{
807
+ "contract-id": number;
808
+ }, yup.AnyObject, {
809
+ "contract-id": undefined;
810
+ }, "">;
806
811
  declare const CreateRoleSchema: yup.ObjectSchema<{
807
812
  name: string;
808
813
  des: string;
@@ -811,4 +816,4 @@ declare const CreateRoleSchema: yup.ObjectSchema<{
811
816
  des: undefined;
812
817
  }, "">;
813
818
 
814
- export { type ColMapping, type ConfirmContractType, type CotractType, type CreatePersonType, CreateRoleSchema, type CreateRoleType, CreateSalarySchema, type CreateSalaryType, type CreateTemplateSalaryType, type CreateTenantType, type CrudType, type DropdownItem, type EditPersonType, type EditRoleType, type EditTemplateSalaryType, type EditTenantType, type FixedItemMapping, type GetWithNameContractType, type ListPersonDropDownType, type ListPersonType, type ListRoleDropDownType, type ListRoleType, type ListTemplateSalaryDropDownType, type ListTemplateSalaryType, type ListTenantDropDownType, type ListTenantType, type PersonInfoType, type PersonType, QueryProvider, type RoleType, type TemplateSalaryType, type TenantInfoType, type TenantType, type TokenInfoType, UploadContractSchema, type UploadContractType, type UploadLogoTenantType, type UploadTemplateSalaryType, confirmContract, createDefaultAdmin, createPerson, createPersonSchema, createPersonUploadFile, createPersonUploadSchema, createRole, createSalaryData, createTemplateSalary, createTemplateSalarySchema, createTemplateSalaryuploadSchema, createTenant, createTenantFileSchema, createTenantSchema, deleteRole, deleteTemplateSalary, deleteTenant, deleteperson, editPersonData, editRoleData, editTemplateSalaryData, editTenantData, getContractWithFileName, getItemTemplateSalary, getListContracts, getListContractsPerson, getListDropdownPersons, getListDropdownRoles, getListDropdownTemplateSalars, getListDropdownTenants, getListPersons, getListRoles, getListTemplateSalars, getListTenants, getPersonData, getRoleData, getSalaryData, getSalaryDataSchema, type getSalaryDataType, type getSalaryDataWithMonthAndYearType, getSalaryWithMonthAndYear, getSalaryWithMonthAndYearByAdmin, getTemplateSalaryData, getTenantData, logoUploadSchema, type sendOtpType, uploadContracts, uploadTemplateSalary, uploadTenantLogo, urls, useContract, useContractPerson, useDropdownSalaryTemplate, useLogin, usePerson, usePersonDropdown, useUploadPerson as usePersonUpload, useSalary, useSalaryTemplate, useSalaryTemplateWithId, useTenant, useTenantDropdown, useTenantUpload, useUploadSalaryTemplate, type userInfoType, type verifyOtpType };
819
+ export { type ColMapping, ConfirmContractSchema, type ConfirmContractType, type CotractType, type CreatePersonType, CreateRoleSchema, type CreateRoleType, CreateSalarySchema, type CreateSalaryType, type CreateTemplateSalaryType, type CreateTenantType, type CrudType, type DropdownItem, type EditPersonType, type EditRoleType, type EditTemplateSalaryType, type EditTenantType, type FixedItemMapping, type GetWithNameContractType, type ListPersonDropDownType, type ListPersonType, type ListRoleDropDownType, type ListRoleType, type ListTemplateSalaryDropDownType, type ListTemplateSalaryType, type ListTenantDropDownType, type ListTenantType, type PersonInfoType, type PersonType, QueryProvider, type RoleType, type TemplateSalaryType, type TenantInfoType, type TenantType, type TokenInfoType, UploadContractSchema, type UploadContractType, type UploadLogoTenantType, type UploadTemplateSalaryType, confirmContract, createDefaultAdmin, createPerson, createPersonSchema, createPersonUploadFile, createPersonUploadSchema, createRole, createSalaryData, createTemplateSalary, createTemplateSalarySchema, createTemplateSalaryuploadSchema, createTenant, createTenantFileSchema, createTenantSchema, deleteRole, deleteTemplateSalary, deleteTenant, deleteperson, editPersonData, editRoleData, editTemplateSalaryData, editTenantData, getContractWithFileName, getItemTemplateSalary, getListContracts, getListContractsPerson, getListDropdownPersons, getListDropdownRoles, getListDropdownTemplateSalars, getListDropdownTenants, getListPersons, getListRoles, getListTemplateSalars, getListTenants, getPersonData, getRoleData, getSalaryData, getSalaryDataSchema, type getSalaryDataType, type getSalaryDataWithMonthAndYearType, getSalaryWithMonthAndYear, getSalaryWithMonthAndYearByAdmin, getTemplateSalaryData, getTenantData, logoUploadSchema, type sendOtpType, uploadContracts, uploadTemplateSalary, uploadTenantLogo, urls, useContract, useContractPerson, useDropdownSalaryTemplate, useLogin, usePerson, usePersonDropdown, useUploadPerson as usePersonUpload, useSalary, useSalaryTemplate, useSalaryTemplateWithId, useTenant, useTenantDropdown, useTenantUpload, useUploadSalaryTemplate, type userInfoType, type verifyOtpType };
package/dist/index.d.ts CHANGED
@@ -803,6 +803,11 @@ declare const UploadContractSchema: yup.ObjectSchema<{
803
803
  To: undefined;
804
804
  File: undefined;
805
805
  }, "">;
806
+ declare const ConfirmContractSchema: yup.ObjectSchema<{
807
+ "contract-id": number;
808
+ }, yup.AnyObject, {
809
+ "contract-id": undefined;
810
+ }, "">;
806
811
  declare const CreateRoleSchema: yup.ObjectSchema<{
807
812
  name: string;
808
813
  des: string;
@@ -811,4 +816,4 @@ declare const CreateRoleSchema: yup.ObjectSchema<{
811
816
  des: undefined;
812
817
  }, "">;
813
818
 
814
- export { type ColMapping, type ConfirmContractType, type CotractType, type CreatePersonType, CreateRoleSchema, type CreateRoleType, CreateSalarySchema, type CreateSalaryType, type CreateTemplateSalaryType, type CreateTenantType, type CrudType, type DropdownItem, type EditPersonType, type EditRoleType, type EditTemplateSalaryType, type EditTenantType, type FixedItemMapping, type GetWithNameContractType, type ListPersonDropDownType, type ListPersonType, type ListRoleDropDownType, type ListRoleType, type ListTemplateSalaryDropDownType, type ListTemplateSalaryType, type ListTenantDropDownType, type ListTenantType, type PersonInfoType, type PersonType, QueryProvider, type RoleType, type TemplateSalaryType, type TenantInfoType, type TenantType, type TokenInfoType, UploadContractSchema, type UploadContractType, type UploadLogoTenantType, type UploadTemplateSalaryType, confirmContract, createDefaultAdmin, createPerson, createPersonSchema, createPersonUploadFile, createPersonUploadSchema, createRole, createSalaryData, createTemplateSalary, createTemplateSalarySchema, createTemplateSalaryuploadSchema, createTenant, createTenantFileSchema, createTenantSchema, deleteRole, deleteTemplateSalary, deleteTenant, deleteperson, editPersonData, editRoleData, editTemplateSalaryData, editTenantData, getContractWithFileName, getItemTemplateSalary, getListContracts, getListContractsPerson, getListDropdownPersons, getListDropdownRoles, getListDropdownTemplateSalars, getListDropdownTenants, getListPersons, getListRoles, getListTemplateSalars, getListTenants, getPersonData, getRoleData, getSalaryData, getSalaryDataSchema, type getSalaryDataType, type getSalaryDataWithMonthAndYearType, getSalaryWithMonthAndYear, getSalaryWithMonthAndYearByAdmin, getTemplateSalaryData, getTenantData, logoUploadSchema, type sendOtpType, uploadContracts, uploadTemplateSalary, uploadTenantLogo, urls, useContract, useContractPerson, useDropdownSalaryTemplate, useLogin, usePerson, usePersonDropdown, useUploadPerson as usePersonUpload, useSalary, useSalaryTemplate, useSalaryTemplateWithId, useTenant, useTenantDropdown, useTenantUpload, useUploadSalaryTemplate, type userInfoType, type verifyOtpType };
819
+ export { type ColMapping, ConfirmContractSchema, type ConfirmContractType, type CotractType, type CreatePersonType, CreateRoleSchema, type CreateRoleType, CreateSalarySchema, type CreateSalaryType, type CreateTemplateSalaryType, type CreateTenantType, type CrudType, type DropdownItem, type EditPersonType, type EditRoleType, type EditTemplateSalaryType, type EditTenantType, type FixedItemMapping, type GetWithNameContractType, type ListPersonDropDownType, type ListPersonType, type ListRoleDropDownType, type ListRoleType, type ListTemplateSalaryDropDownType, type ListTemplateSalaryType, type ListTenantDropDownType, type ListTenantType, type PersonInfoType, type PersonType, QueryProvider, type RoleType, type TemplateSalaryType, type TenantInfoType, type TenantType, type TokenInfoType, UploadContractSchema, type UploadContractType, type UploadLogoTenantType, type UploadTemplateSalaryType, confirmContract, createDefaultAdmin, createPerson, createPersonSchema, createPersonUploadFile, createPersonUploadSchema, createRole, createSalaryData, createTemplateSalary, createTemplateSalarySchema, createTemplateSalaryuploadSchema, createTenant, createTenantFileSchema, createTenantSchema, deleteRole, deleteTemplateSalary, deleteTenant, deleteperson, editPersonData, editRoleData, editTemplateSalaryData, editTenantData, getContractWithFileName, getItemTemplateSalary, getListContracts, getListContractsPerson, getListDropdownPersons, getListDropdownRoles, getListDropdownTemplateSalars, getListDropdownTenants, getListPersons, getListRoles, getListTemplateSalars, getListTenants, getPersonData, getRoleData, getSalaryData, getSalaryDataSchema, type getSalaryDataType, type getSalaryDataWithMonthAndYearType, getSalaryWithMonthAndYear, getSalaryWithMonthAndYearByAdmin, getTemplateSalaryData, getTenantData, logoUploadSchema, type sendOtpType, uploadContracts, uploadTemplateSalary, uploadTenantLogo, urls, useContract, useContractPerson, useDropdownSalaryTemplate, useLogin, usePerson, usePersonDropdown, useUploadPerson as usePersonUpload, useSalary, useSalaryTemplate, useSalaryTemplateWithId, useTenant, useTenantDropdown, useTenantUpload, useUploadSalaryTemplate, type userInfoType, type verifyOtpType };