tenant_panam 1.0.0 → 1.0.1

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) => {\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 })\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","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 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"]}
package/dist/index.d.cts CHANGED
@@ -676,7 +676,7 @@ declare const useLogin: (parmas: {
676
676
  };
677
677
  };
678
678
 
679
- declare const useContract: (params: listType, tenantId: string) => {
679
+ declare const useContract: (params: listType, tenantId: string, enabled?: boolean) => {
680
680
  contractsList: {
681
681
  data: ListApiRepsonse<CotractType> | undefined;
682
682
  isPending: boolean;
package/dist/index.d.ts CHANGED
@@ -676,7 +676,7 @@ declare const useLogin: (parmas: {
676
676
  };
677
677
  };
678
678
 
679
- declare const useContract: (params: listType, tenantId: string) => {
679
+ declare const useContract: (params: listType, tenantId: string, enabled?: boolean) => {
680
680
  contractsList: {
681
681
  data: ListApiRepsonse<CotractType> | undefined;
682
682
  isPending: boolean;